sile-typesetter / sile

The SILE Typesetter — Simon’s Improved Layout Engine
https://sile-typesetter.org
MIT License
1.63k stars 96 forks source link

Command help location is unreliable #1195

Open Omikhleia opened 2 years ago

Omikhleia commented 2 years ago

Greetings

SILE 0.10.15 on Ubuntu 20.04

Here is a dump subset of the SILE.Help keys, and the where field of each element.

discretionary: baseclass
dotfill: leaders
dots: autodoc-test.sil
eject: </usr/share/sile/classes/plain.lua:111>
em: </usr/share/sile/classes/plain.lua:111>
enskip: </usr/share/sile/classes/plain.lua:111>
enspace: </usr/share/sile/classes/plain.lua:111>
epigraph: experimental
epigraph:font: experimental
epigraph:source:font: experimental
filbreak: </usr/share/sile/classes/plain.lua:111>
folios: folio
foliostyle: folio

What's wrong with it:

alerque commented 2 years ago

Confession time? I've actually never made any use of the inline help system at all. Maybe zero. If the documentation doesn't get me going on something I go straight to the source code via a fancy fuzzy grep system to find the function definition. When things go wrong the stack trace is far more useful for finding where things are being done.

This should probably be overhauled to be consistent, but before we do that I think we should decide who and what it is for, when and where it shows, and from there how it should function. Then we should overhaul the built in functions and packages to actually meet that need.

ctrlcctrlv commented 2 years ago

I didn't even know we had an inline help system. I usually just ripgrep inside /usr/share/sile :upside_down_face: