I've seen this question asked here before, for example, here, or here, or the most useful here. But I believe my problem is different than theirs, or I am doing something incorrectly.
My python file hello_world
is:
import numpy as np
"""
This is the header
"""
def say_hi(name):
"""
This is just a test
:param param1: this is the name
:returns returns the name entered
"""
print(name)
return None
I create a folder docs
, where I run sphinx-quickstart
. I get the conf.py
and index.rst
which I change to:
# Configuration file for the Sphinx documentation builder.
#
# This file only contains a selection of the most common options. For a full
# list see the documentation:
# https://www.sphinx-doc.org/en/master/usage/configuration.html
# -- Path setup --------------------------------------------------------------
# If extensions (or modules to document with autodoc) are in another directory,
# add these directories to sys.path here. If the directory is relative to the
# documentation root, use os.path.abspath to make it absolute, like shown here.
#
import os
import sys
sys.path.insert(0, os.path.abspath('..'))
# -- Project information -----------------------------------------------------
project = 'project'
copyright = '2021, lol'
author = 'lol'
# The full version, including alpha/beta/rc tags
release = '0.0.1'
# -- General configuration ---------------------------------------------------
# Add any Sphinx extension module names here, as strings. They can be
# extensions coming with Sphinx (named 'sphinx.ext.*') or your custom
# ones.
extensions = [
]
# Add any paths that contain templates here, relative to this directory.
templates_path = ['_templates']
# List of patterns, relative to source directory, that match files and
# directories to ignore when looking for source files.
# This pattern also affects html_static_path and html_extra_path.
exclude_patterns = ['_build', 'Thumbs.db', '.DS_Store']
# -- Options for HTML output -------------------------------------------------
# The theme to use for HTML and HTML Help pages. See the documentation for
# a list of builtin themes.
#
html_theme = 'alabaster'
# Add any paths that contain custom static files (such as style sheets) here,
# relative to this directory. They are copied after the builtin static files,
# so a file named "default.css" will overwrite the builtin "default.css".
html_static_path = ['_static']
So, I told sphinx what path to look for. I add the line modules
to index.rst
as indicated in this tutorial. So, that file looks like this:
.. project documentation master file, created by
sphinx-quickstart on Mon Jul 19 21:46:14 2021.
You can adapt this file completely to your liking, but it should at least
contain the root `toctree` directive.
Welcome to project's documentation!
===================================
.. toctree::
:maxdepth: 2
:caption: Contents:
modules
Indices and tables
==================
* :ref:`genindex`
* :ref:`modindex`
* :ref:`search`
Then, I run sphinx-apidoc -o . ..
, and finally make html
.
That process generates an html file, but it doesn't have any documentation image
Does anyone know how to fix this? or does anyone know a tutorial that actually works? Thanks!
Edit*
Sphinx outputs a warning when running make html
: WARNING: Unknown directive type "automodule"
. I googled it and found this https://cloud.tencent.com/developer/ask/111346 . after including extensions = ['sphinx.ext.autodoc']
to the index.rst file, it outputs this:
There seems to be a problem with my formatting though, but that's a different issue.