diff options
| author | 2024-04-23 00:38:24 -0400 | |
|---|---|---|
| committer | 2024-04-23 00:38:24 -0400 | |
| commit | 0199f695e93782d728bd31857afe54f4df92f351 (patch) | |
| tree | 34e9030a05a89461d222172615c74891fba1e5ef /docs/internals.rst | |
| parent | 22b8f5dae59e876643e8e3002f72282f3e8608c5 (diff) | |
| parent | 9b0e86a8e74768c4fe848fb5ce8d754292db4e3e (diff) | |
Update upstream source from tag 'upstream/8.3.0'
Update to upstream version '8.3.0'
with Debian dir bc13791b86ab63e4473e92288f1749c55a6ad540
Diffstat (limited to 'docs/internals.rst')
| -rw-r--r-- | docs/internals.rst | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/docs/internals.rst b/docs/internals.rst index 6b49e92..a3b7af2 100644 --- a/docs/internals.rst +++ b/docs/internals.rst @@ -15,7 +15,7 @@ So, this is a short document explaining what each piece of Nikola does and how it all fits together. Nikola is a Pile of Plugins - Most of Nikola is implemented as plugins using `Yapsy <http://yapsy.sourceforge.net/>`_. + Most of Nikola is implemented as plugins (using a custom plugin manager inspired by Yapsy). You can ignore that they are plugins and just think of them as regular python modules and packages with a funny little ``.plugin`` file next to them. @@ -44,7 +44,7 @@ The Build Command Nikola's goal is similar, deep at heart, to a Makefile. Take sources, compile them into something, in this case a website. Instead of a Makefile, Nikola uses -`doit <https://pydoit.org>`_ +`doit <https://pydoit.org>`_. Doit has the concept of "tasks". The 1 minute summary of tasks is that they have: @@ -64,7 +64,11 @@ basename:name .. sidebar:: More about tasks If you ever want to do your own tasks, you really should read the doit - `documentation on tasks <https://pydoit.org/tasks.html>`_ + `documentation on tasks <https://pydoit.org/tasks.html>`_. + + Notably, by default doit redirects ``stdout`` and ``stderr``. To get a + proper PDB debugging shell, you need to use doit's own + `set_trace <https://pydoit.org/tools.html#set-trace>`_ function. So, what Nikola does, when you use the build command, is to read the configuration ``conf.py`` from the current folder, instantiate |
