| Age | Commit message (Collapse) | Author |
|
The logic for the various titles on any given page is:
∃README
∃title block
<title> ⇒ title block
<header> <h1> ⇒ title block
TOC <h1> ⇒ "Index for {target}"
∄title block
<title> ⇒ "{target}" or "README"
<header> <h1> ⇒ ∅
TOC <h1> ⇒ "Index for {target}"
∄README
<title> ⇒ "Index for {target}"
<header> <h1> ⇒ "Index"
TOC <h1> ⇒ ∅
|
|
Likewise, use relative links so that things work when just browsing
files locally without a server.
Next: tweak or remove redundant titles.
|
|
With relative links, so that I can just view HTML files on my disk
without spawning a webserver.
|
|
Thereby allowing non-markdown READMEs.
This needs refactoring; I need sleep.
|
|
Note that neither .cache/config.lua nor .cache/site-tree.json get
updated when EXTENSIONS changes. This could be hacked as follows:
config = EXTENSIONS="$(EXTENSIONS)"
ifneq "$(shell test -f $(config_token) && cat $(config_token))" \
"$(shell ./generate-config-token.py $(config))"
.PHONY: $(lua_config) $(site_tree) $(config_token)
endif
Plus a recipe for config_token, and some dependencies on it.
|
|
|
|
|
|
Will be useful to avoid duplicating changes to Lua filters.
|
|
|
|
Will reduce friction to code things cleanly.
|
|
|
|
They seem to be basically nonexistent now, as well as unsupported.
Sources:
https://netmarketshare.com/browser-market-share.aspx?id=browsersDesktopVersions
https://analytics.wikimedia.org/dashboards/browsers/#desktop-site-by-browser/browser-family-and-major-tabular-view
|
|
|
|
To make output more intelligible.
|
|
Replace .md/.org extension with .html.
The output of "make" is now ugly as sin.
|
|
|
|
Maybe not the best idea, since the dependency chain will trigger a
site-wide rebuild everytime the README is edited. Ah well.
|
|
|
|
Still a few wrinkles to iron out, e.g. the toplevel page's <title>.
|
|
|
|
Seems kind of wasteful to recompute it every time. Also, now
subsequent scripts don't have to care about file extensions anymore.
|
|
Make generate-deps.py compute the list of indices instead of relying
on the list of source folders that contain text files, otherwise we
will miss intermediate folders that do not contain any file.
Remove TODO entry to maintain Makefile dependencies to scripts: that
sounds too tedious. Let's assume that at some point the Makefile and
these scripts will be bundled together into a proper package.
|
|
If an intermediate folder contains no leaf page, the previous code
does not add it to the parent directory's subfolders.
Still needs support from generate-deps.py.
|
|
Also don't run pandoc in a pipeline within a Makefile recipe: pipefail
is not set, so generate-index.py failures will not be bubbled up.
|
|
|
|
So that I can re-use generate-index.py for READMEs.
|
|
This way I can concatenate the output with regular indices.
|
|
So that I can add a special recipe for them, where I'll concatenate
the directory index.
|
|
|
|
|
|
It's not clear whether or not Python supports '\0' for null: the
reference[1] says nothing about this specific escape sequence, but
Python 3.7 seems to recognize it…
repr('\0') says "'\\x00'", so let's use that.
[1]: https://docs.python.org/3/reference/lexical_analysis.html#string-and-bytes-literals
|
|
|
|
|
|
|
|
I prefer thinking of slashes as concatenation operators, always
accompanied by operands on both sides. I don't like them hanging
there at the end of my variables, which is what $(dir …) causes.
|
|
"Uppercase = public API, lowercase = internal plumbing".
|
|
|
|
Since it already computes the list of pages.
I'm not comfortable with the pattern substitution, the implicit "slash
management" is not obvious.
|
|
|
|
|
|
|
|
|