Following these instructions: https://www.sphinx-doc.org/en/master/development/tutorials/todo.html
Steps:
Here is what needs to be done:
mkdir todo-sphinx-directive cd todo-sphinx-directive sphinx-quickstart mkdir source/_ext Create an _ext folder in source sudo apt-get install python3-venv python -m venv ver3.7 python -m site connorstom@penguin:~/aprojects/todo-sphinx-directive$ python -m site sys.path = [ '/home/connorstom/aprojects/todo-sphinx-directive', '/usr/lib/python37.zip', '/usr/lib/python3.7', '/usr/lib/python3.7/lib-dynload', '/home/connorstom/.local/lib/python3.7/site-packages', '/usr/local/lib/python3.7/dist-packages', '/usr/lib/python3/dist-packages', ] USER_BASE: '/home/connorstom/.local' (exists) USER_SITE: '/home/connorstom/.local/lib/python3.7/site-packages' (exists) ENABLE_USER_SITE: True
Example of a site and how they build todcumentation
https://pythonhosted.org/CodeChat/conf.py.html
Here are some commands and the response
connorstom@penguin:~/.local/bin$ echo $PATH /home/connorstom/.local/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games connorstom@penguin:~/.local/bin$ /usr/bin/python --version Python 2.7.16 connorstom@penguin:~/.local/bin$ whereis python python: /usr/bin/python3.7 /usr/bin/python3.7m /usr/bin/python3.7-config /usr/bin/python3.7m-config /usr/bin/python2.7 /usr/bin/python /usr/bin/python2.7-config /usr/lib/python3.7 /usr/lib/python2.7 /etc/python3.7 /etc/python2.7 /etc/python /usr/local/bin/python3.9 /usr/local/bin/python3.9-config /usr/local/lib/python3.7 /usr/local/lib/python3.9 /usr/local/lib/python2.7 /usr/include/python3.7m /usr/include/python3.7 /usr/include/python2.7 /usr/share/python /usr/share/man/man1/python.1.gz connorstom@penguin:~/.local/bin$ which python /usr/bin/python connorstom@penguin:~/.local/bin$ type -a python python is aliased to `python3' python is /usr/bin/python connorstom@penguin:~/.local/bin$ python -m site sys.path = [ '/home/connorstom/.local/bin', '/usr/lib/python37.zip', '/usr/lib/python3.7', '/usr/lib/python3.7/lib-dynload', '/home/connorstom/.local/lib/python3.7/site-packages', '/usr/local/lib/python3.7/dist-packages', '/usr/lib/python3/dist-packages', ] USER_BASE: '/home/connorstom/.local' (exists) USER_SITE: '/home/connorstom/.local/lib/python3.7/site-packages' (exists) ENABLE_USER_SITE: True
Create a new Python file in the _ext folder called todo.py
modify conf.py
import os import sys sys.path.append(os.path.abspath("./_ext")) extensions = ['helloworld']
You can now use the extension in a file. For example:
Some intro text here...
use the following directive anywhere and it will get expanded by the python program
directive: | ::todolist:: |
---|
Some more text here... The sample above would generate:
Some intro text here...:
<list of todo's go here>
Some more text here...
edit the file index.rst, which uses the directive, and view the generated index.html:
make html cd build/html python3 -m http.server http://0.0.0.0:8000/
Unlimited Scale and Free Web Hosting with GitHub Pages and Cloudflare https://www.toptal.com/github/unlimited-scale-web-hosting-github-pages-cloudflare
https://medium.com/@shobhitrathi10/github-io-getting-started-e0d643dac850
the format of your github.io page will be
username.github.io/RepositoryName
This bug report shows how to publish on github.io sphinx-doc/sphinx#3382
suhailvs commented on Jul 30, 2018 update of @wxianxin
Create an empty .nojekyll file in the root folder to turn off Jekyll. Create an index.html file in the root folder with contents: <meta http-equiv="refresh" content="0; url=./_build/html/index.html" /> Run make html then add, commit and push the repo. In the GitHub Pages box in the project Settings page, choose to use master branch. Visit https://<username>.github.io/<repo>
The page should be viewable at https://coding-to-music.github.io/todo-sphinx-directive/