{"nbformat":4,"nbformat_minor":0,"metadata":{"colab":{"name":"2022-01-15-sphinx.ipynb","provenance":[{"file_id":"https://github.com/recohut/nbs/blob/main/raw/Sphinx.ipynb","timestamp":1644614930599}],"collapsed_sections":[],"mount_file_id":"1I6hFhTBLbvsTvzKZUNbF-QZfb2Fiuhze","authorship_tag":"ABX9TyNQcE6aHLh2Q96x96n+9DZ+"},"kernelspec":{"name":"python3","display_name":"Python 3"}},"cells":[{"cell_type":"markdown","source":["# Sphinx"],"metadata":{"id":"nIh7bl4NsDe2"}},{"cell_type":"code","metadata":{"id":"cMhgW-nzdD5H","executionInfo":{"status":"ok","timestamp":1621143185436,"user_tz":-330,"elapsed":9326,"user":{"displayName":"Sparsh Agarwal","photoUrl":"","userId":"13037694610922482904"}},"outputId":"ec3510fe-9551-4961-dd37-28671982e04a","colab":{"base_uri":"https://localhost:8080/","height":887}},"source":["!pip install -U Sphinx"],"execution_count":null,"outputs":[{"output_type":"stream","text":["Collecting Sphinx\n","\u001b[?25l Downloading https://files.pythonhosted.org/packages/a7/5b/50ccdef4683ffac13fdf4cc80fa9ced84849fd4eca444dec22e6c937a1e2/Sphinx-4.0.1-py3-none-any.whl (2.9MB)\n","\u001b[K |████████████████████████████████| 2.9MB 5.0MB/s \n","\u001b[?25hRequirement already satisfied, skipping upgrade: Pygments>=2.0 in /usr/local/lib/python3.7/dist-packages (from Sphinx) (2.6.1)\n","Collecting sphinxcontrib-htmlhelp\n","\u001b[?25l Downloading https://files.pythonhosted.org/packages/36/62/8222554b29b3acde8420128d6d3999c5904d40922ef4b6ccb370e2be7421/sphinxcontrib_htmlhelp-1.0.3-py2.py3-none-any.whl (96kB)\n","\u001b[K |████████████████████████████████| 102kB 6.1MB/s \n","\u001b[?25hRequirement already satisfied, skipping upgrade: docutils<0.18,>=0.14 in /usr/local/lib/python3.7/dist-packages (from Sphinx) (0.17.1)\n","Collecting sphinxcontrib-applehelp\n","\u001b[?25l Downloading https://files.pythonhosted.org/packages/dc/47/86022665a9433d89a66f5911b558ddff69861766807ba685de2e324bd6ed/sphinxcontrib_applehelp-1.0.2-py2.py3-none-any.whl (121kB)\n","\u001b[K |████████████████████████████████| 122kB 30.3MB/s \n","\u001b[?25hRequirement already satisfied, skipping upgrade: Jinja2<3.0,>=2.3 in /usr/local/lib/python3.7/dist-packages (from Sphinx) (2.11.3)\n","Requirement already satisfied, skipping upgrade: alabaster<0.8,>=0.7 in /usr/local/lib/python3.7/dist-packages (from Sphinx) (0.7.12)\n","Requirement already satisfied, skipping upgrade: imagesize in /usr/local/lib/python3.7/dist-packages (from Sphinx) (1.2.0)\n","Requirement already satisfied, skipping upgrade: sphinxcontrib-serializinghtml in /usr/local/lib/python3.7/dist-packages (from Sphinx) (1.1.4)\n","Collecting sphinxcontrib-qthelp\n","\u001b[?25l Downloading https://files.pythonhosted.org/packages/2b/14/05f9206cf4e9cfca1afb5fd224c7cd434dcc3a433d6d9e4e0264d29c6cdb/sphinxcontrib_qthelp-1.0.3-py2.py3-none-any.whl (90kB)\n","\u001b[K |████████████████████████████████| 92kB 7.5MB/s \n","\u001b[?25hCollecting sphinxcontrib-jsmath\n"," Downloading https://files.pythonhosted.org/packages/c2/42/4c8646762ee83602e3fb3fbe774c2fac12f317deb0b5dbeeedd2d3ba4b77/sphinxcontrib_jsmath-1.0.1-py2.py3-none-any.whl\n","Requirement already satisfied, skipping upgrade: snowballstemmer>=1.1 in /usr/local/lib/python3.7/dist-packages (from Sphinx) (2.1.0)\n","Collecting sphinxcontrib-devhelp\n","\u001b[?25l Downloading https://files.pythonhosted.org/packages/c5/09/5de5ed43a521387f18bdf5f5af31d099605c992fd25372b2b9b825ce48ee/sphinxcontrib_devhelp-1.0.2-py2.py3-none-any.whl (84kB)\n","\u001b[K |████████████████████████████████| 92kB 7.9MB/s \n","\u001b[?25hRequirement already satisfied, skipping upgrade: requests>=2.5.0 in /usr/local/lib/python3.7/dist-packages (from Sphinx) (2.23.0)\n","Requirement already satisfied, skipping upgrade: setuptools in /usr/local/lib/python3.7/dist-packages (from Sphinx) (56.1.0)\n","Requirement already satisfied, skipping upgrade: packaging in /usr/local/lib/python3.7/dist-packages (from Sphinx) (20.9)\n","Requirement already satisfied, skipping upgrade: babel>=1.3 in /usr/local/lib/python3.7/dist-packages (from Sphinx) (2.9.1)\n","Collecting MarkupSafe<2.0\n"," Downloading https://files.pythonhosted.org/packages/c2/37/2e4def8ce3739a258998215df907f5815ecd1af71e62147f5eea2d12d4e8/MarkupSafe-1.1.1-cp37-cp37m-manylinux2010_x86_64.whl\n","Requirement already satisfied, skipping upgrade: certifi>=2017.4.17 in /usr/local/lib/python3.7/dist-packages (from requests>=2.5.0->Sphinx) (2020.12.5)\n","Requirement already satisfied, skipping upgrade: chardet<4,>=3.0.2 in /usr/local/lib/python3.7/dist-packages (from requests>=2.5.0->Sphinx) (3.0.4)\n","Requirement already satisfied, skipping upgrade: urllib3!=1.25.0,!=1.25.1,<1.26,>=1.21.1 in /usr/local/lib/python3.7/dist-packages (from requests>=2.5.0->Sphinx) (1.24.3)\n","Requirement already satisfied, skipping upgrade: idna<3,>=2.5 in /usr/local/lib/python3.7/dist-packages (from requests>=2.5.0->Sphinx) (2.10)\n","Requirement already satisfied, skipping upgrade: pyparsing>=2.0.2 in /usr/local/lib/python3.7/dist-packages (from packaging->Sphinx) (2.4.7)\n","Requirement already satisfied, skipping upgrade: pytz>=2015.7 in /usr/local/lib/python3.7/dist-packages (from babel>=1.3->Sphinx) (2018.9)\n","\u001b[31mERROR: datascience 0.10.6 has requirement folium==0.2.1, but you'll have folium 0.8.3 which is incompatible.\u001b[0m\n","Installing collected packages: sphinxcontrib-htmlhelp, sphinxcontrib-applehelp, sphinxcontrib-qthelp, sphinxcontrib-jsmath, sphinxcontrib-devhelp, MarkupSafe, Sphinx\n"," Found existing installation: MarkupSafe 2.0.0\n"," Uninstalling MarkupSafe-2.0.0:\n"," Successfully uninstalled MarkupSafe-2.0.0\n"," Found existing installation: Sphinx 1.8.5\n"," Uninstalling Sphinx-1.8.5:\n"," Successfully uninstalled Sphinx-1.8.5\n","Successfully installed MarkupSafe-1.1.1 Sphinx-4.0.1 sphinxcontrib-applehelp-1.0.2 sphinxcontrib-devhelp-1.0.2 sphinxcontrib-htmlhelp-1.0.3 sphinxcontrib-jsmath-1.0.1 sphinxcontrib-qthelp-1.0.3\n"],"name":"stdout"},{"output_type":"display_data","data":{"application/vnd.colab-display-data+json":{"pip_warning":{"packages":["sphinxcontrib"]}}},"metadata":{"tags":[]}}]},{"cell_type":"code","metadata":{"id":"UKF95PEurHqy"},"source":["# import sys\n","# sys.path.append(\"/content/drive/MyDrive\")\n","# import mykeys\n","\n","# project_name = \"4CED0278\"\n","# path = \"/content/\" + project_name\n","# !mkdir \"{path}\"\n","# %cd \"{path}\"\n","\n","# import sys\n","# sys.path.append(path)\n","\n","# !git config --global user.email \"\"\n","# !git config --global user.name \"sparsh-ai\"\n","\n","# !git init\n","# !git remote add origin2 https://\"{mykeys.git_token}\":x-oauth-basic@github.com/sparsh-ai/\"{project_name}\".git\n","\n","# !git pull origin2 master"],"execution_count":null,"outputs":[]},{"cell_type":"code","metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"Vlmc5BV3tHGs","executionInfo":{"status":"ok","timestamp":1610473730740,"user_tz":-330,"elapsed":119372,"user":{"displayName":"Sparsh Agarwal","photoUrl":"","userId":"13037694610922482904"}},"outputId":"e46dc2c2-3f06-47f5-ef02-df8726d33b7b"},"source":["!sphinx-quickstart"],"execution_count":null,"outputs":[{"output_type":"stream","text":["\u001b[01mWelcome to the Sphinx 3.4.3 quickstart utility.\u001b[39;49;00m\n","\n","Please enter values for the following settings (just press Enter to\n","accept a default value, if one is given in brackets).\n","\n","\u001b[01mSelected root path: .\u001b[39;49;00m\n","\n","You have two options for placing the build directory for Sphinx output.\n","Either, you use a directory \"_build\" within the root path, or you separate\n","\"source\" and \"build\" directories within the root path.\n","\u001b[35m> Separate source and build directories (y/n) [n]: \u001b[39;49;00m\n","\n","The project name will occur in several places in the built documentation.\n","\u001b[35m> Project name: \u001b[39;49;00mMovieLens Recommender System\n","\u001b[35m> Author name(s): \u001b[39;49;00mSparsh Agarwal\n","\u001b[35m> Project release []: \u001b[39;49;00m1.0.0\n","\n","If the documents are to be written in a language other than English,\n","you can select a language here by its language code. Sphinx will then\n","translate text that it generates into that language.\n","\n","For a list of supported codes, see\n","https://www.sphinx-doc.org/en/master/usage/configuration.html#confval-language.\n","\u001b[35m> Project language [en]: \u001b[39;49;00m\n","\n","Creating file /content/4CED0278/conf.py.\n","Creating file /content/4CED0278/index.rst.\n","Creating file /content/4CED0278/Makefile.\n","Creating file /content/4CED0278/make.bat.\n","\n","\u001b[01mFinished: An initial directory structure has been created.\u001b[39;49;00m\n","\n","You should now populate your master file /content/4CED0278/index.rst and create other documentation\n","source files. Use the Makefile to build the docs, like so:\n"," make builder\n","where \"builder\" is one of the supported builders, e.g. html, latex or linkcheck.\n","\n"],"name":"stdout"}]},{"cell_type":"code","metadata":{"id":"EsYbN5n2t4QC"},"source":["!pip install -q sphinx-rtd-theme"],"execution_count":null,"outputs":[]},{"cell_type":"code","metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"BA0krP7CuO-A","executionInfo":{"status":"ok","timestamp":1610480876265,"user_tz":-330,"elapsed":2229,"user":{"displayName":"Sparsh Agarwal","photoUrl":"","userId":"13037694610922482904"}},"outputId":"aafc42d6-271b-4590-cdd4-c5b7933ec062"},"source":["%%writefile conf.py\n","\n","project = 'MovieLens Recommender System'\n","copyright = '2021, Sparsh Agarwal'\n","author = 'Sparsh Agarwal'\n","\n","release = '1.0.0'\n","extensions = ['sphinx.ext.autodoc',\n"," 'nbsphinx',\n"," 'sphinx.ext.mathjax',\n"," 'sphinx.ext.githubpages',\n"," 'IPython.sphinxext.ipython_console_highlighting',\n"," 'rst2pdf.pdfbuilder'\n","]\n","source_suffix = ['.rst', '.ipynb']\n","templates_path = ['_templates']\n","exclude_patterns = ['_build', 'Thumbs.db', '.DS_Store']\n","html_theme = 'sphinx_rtd_theme'\n","html_static_path = ['_static']\n","master_doc = 'index'\n","pdf_documents = [('index', u'rst2pdf', u'Sample rst2pdf doc', u'Sparsh Agarwal'),]\n","\n","import os\n","import sys\n","sys.path.insert(0, os.path.abspath('.'))"],"execution_count":null,"outputs":[{"output_type":"stream","text":["Overwriting conf.py\n"],"name":"stdout"}]},{"cell_type":"code","metadata":{"id":"1wZvoYtkufpV"},"source":["!pip install sphinx\n","!pip install nbconvert\n","!pip install pandoc\n","!pip install latex\n","!pip install nbsphinx"],"execution_count":null,"outputs":[]},{"cell_type":"code","metadata":{"id":"WxYGwS2ru3tO"},"source":["!cp \"/content/drive/MyDrive/Colab Notebooks/tutorial_temp.ipynb\" ."],"execution_count":null,"outputs":[]},{"cell_type":"code","metadata":{"id":"N4ijhJmK6SwO"},"source":["# !mkdir documentation\n","!rm -r ./documentation"],"execution_count":null,"outputs":[]},{"cell_type":"code","metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"YjVl0I4EwHcu","executionInfo":{"status":"ok","timestamp":1610474487407,"user_tz":-330,"elapsed":2350,"user":{"displayName":"Sparsh Agarwal","photoUrl":"","userId":"13037694610922482904"}},"outputId":"bdcfc001-60b4-4d9b-a718-9fcd2e7d5c08"},"source":["%%writefile index.rst\n","\n",".. MovieLens Recommender System documentation master file, created by\n"," sphinx-quickstart on Tue Jan 12 17:48:52 2021.\n"," You can adapt this file completely to your liking, but it should at least\n"," contain the root `toctree` directive.\n","\n","Welcome to MovieLens Recommender System's documentation!\n","========================================================\n","\n",".. toctree::\n"," :maxdepth: 2\n"," :caption: Contents:\n","\n"," tutorial_temp\n","\n","\n","\n","Indices and tables\n","==================\n","\n","* :ref:`genindex`\n","* :ref:`modindex`\n","* :ref:`search`\n"],"execution_count":null,"outputs":[{"output_type":"stream","text":["Overwriting index.rst\n"],"name":"stdout"}]},{"cell_type":"code","metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"pecM_NGywj-8","executionInfo":{"status":"ok","timestamp":1610480484655,"user_tz":-330,"elapsed":1246,"user":{"displayName":"Sparsh Agarwal","photoUrl":"","userId":"13037694610922482904"}},"outputId":"13a9f355-e387-48f0-a229-de24e366cf46"},"source":["%%writefile readthedocs.yml\n","\n","# python version\n","python:\n"," version: 3.8\n"," method: pip\n"," install:\n"," - requirements: requirements.txt\n","\n","# build a PDF\n","formats:\n"," - none\n","\n","sphinx:\n"," configuration: conf.py"],"execution_count":null,"outputs":[{"output_type":"stream","text":["Overwriting readthedocs.yml\n"],"name":"stdout"}]},{"cell_type":"code","metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"WnQb7X7HHgKJ","executionInfo":{"status":"ok","timestamp":1610480550730,"user_tz":-330,"elapsed":1830,"user":{"displayName":"Sparsh Agarwal","photoUrl":"","userId":"13037694610922482904"}},"outputId":"cf41ca6c-2020-4a8c-8f12-7cdaf3754f5f"},"source":["%%writefile requirements.txt\n","\n","python==3.8\n","pandoc\n","nbformat\n","jupyter_client\n","ipython\n","nbconvert\n","sphinx>=1.5.1\n","ipykernel\n","sphinx_rtd_theme\n","nbsphinx"],"execution_count":null,"outputs":[{"output_type":"stream","text":["Writing requirements.txt\n"],"name":"stdout"}]},{"cell_type":"code","metadata":{"id":"67BgFQa3xmkR"},"source":["# !sphinx-build -b pdf . build/pdf\n","# !make html"],"execution_count":null,"outputs":[]},{"cell_type":"code","metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"NUjA3E7kykTr","executionInfo":{"status":"ok","timestamp":1610480561416,"user_tz":-330,"elapsed":5003,"user":{"displayName":"Sparsh Agarwal","photoUrl":"","userId":"13037694610922482904"}},"outputId":"2a68730f-3960-4c9c-cc8f-eca6068fe50e"},"source":["# !git checkout -b sphinx\n","!git add .\n","!git commit -m 'commit'\n","!git push origin2 sphinx"],"execution_count":null,"outputs":[{"output_type":"stream","text":["[sphinx 7f43bd2] commit\n"," 2 files changed, 18 insertions(+), 2 deletions(-)\n"," create mode 100644 requirements.txt\n","Counting objects: 4, done.\n","Delta compression using up to 2 threads.\n","Compressing objects: 100% (4/4), done.\n","Writing objects: 100% (4/4), 499 bytes | 499.00 KiB/s, done.\n","Total 4 (delta 1), reused 0 (delta 0)\n","remote: Resolving deltas: 100% (1/1), completed with 1 local object.\u001b[K\n","To https://github.com/sparsh-ai/4CED0278.git\n"," cd134e5..7f43bd2 sphinx -> sphinx\n"],"name":"stdout"}]},{"cell_type":"code","metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"d55898QQ31aL","executionInfo":{"status":"ok","timestamp":1610480819345,"user_tz":-330,"elapsed":6444,"user":{"displayName":"Sparsh Agarwal","photoUrl":"","userId":"13037694610922482904"}},"outputId":"282f6ae9-edbe-4ec8-878e-7b318186eaf9"},"source":["!pip install -q rst2pdf"],"execution_count":null,"outputs":[{"output_type":"stream","text":["\u001b[K |████████████████████████████████| 174kB 5.8MB/s \n","\u001b[K |████████████████████████████████| 2.6MB 12.6MB/s \n","\u001b[?25h"],"name":"stdout"}]},{"cell_type":"code","metadata":{"id":"PXyQs2DaIwL0"},"source":[""],"execution_count":null,"outputs":[]}]}