The documentation for KQCircuits is created from the .rst files in the docs folder using Sphinx. To build the documentation locally, open the command line in the docs folder and write make html. If you want to completely rebuild the documentation, run make clean to remove the built files first.

The API documentation is generated from the .rst files in docs/api folder, which are generated automatically by sphinx-apidoc when you run make html. The template files used to generate these are in docs/templates/apidoc.

There are some custom Sphinx extensions used in the documentation generation, these are in the docs/sphinxext folder. Also the docs/ script is used by make html to create a .png image of every PCell into the pcell_images directory, these get included in the API documentation.

The docstring of PCell classes may contain a .. MARKERS_FOR_PNG x,y x_2,y_2, ... line that will annotate the generated .png image with “rulers” documenting the important dimensions of the design. The rulers are placed according to KLayout’s rules for rulers going through a specified point. These annotations should preferably also have the name of the parameter controlling the illustrated dimensions, like .. MARKERS_FOR_PNG x,y,param_name. Some times KLayout’s automatic ruler placement is not satisfactory in this case the user may specify both starting and ending points of the ruler .. MARKERS_FOR_PNG x,y,x2,y2[,param_name].