Portál AbcLinuxu, 5. května 2025 21:04
Co používáte na tisk programů?
Celkem obvyklá situace - mám nějaké adresáře se zdrojáky nějakého projektu, hlavičkové soubory, části programů v různých jazycích atd - a potřebuji si to vytisknout, bez nutnosti nějakého klikání sem a tam.
Tj. představuji si nějakou utilitu, která mi proleze celý ten adresářový strom, podle přípon pozná, co je to zač, prožene to nějakým filtrem, který ty zdrojáky nějak inteligentně zformátuje (např. zvýraznění syntaxe dle pravidel daného jazyka, obsloužení dlouhých řádků, aby nenarušily identaci, obsloužení vdov a sirotků, aby se mi netiskla třeba jedna závorka z podporogramu na začátek nové stránky atd., tj. například začátek definice funkce na novou stránku), doplní záhlaví stránek (např. název modulu a číslo stránky), doplní k tomu všemu obsah a výsledek bude nějaká kniha nejlépe v PDF, nebo v TeXu, nebo v LaTeXu, aby se v tom dalo dobře číst, snadno orientovat, lehce studovat, zkrátka aby byla radost na takový program pohledět.
Myslím si, že tisk programů je celkem obvyklá činnost, která by se dala nějak takhle zautomatizovat, ale zatím se mi na toto téma nepodařilo nic najít.
Jaký je cíl tisku programu? Hledat vlastní chyby a možná zlepšení? Pak by to mělo stačit postupně po jednotlivých zdrojácích, protože po pár opravách bude "kniha" zastaralá. Studium programu? To je lepší elektronicky (možnost skoků na reference, atp.). Dokumentace vlastního programu pro někoho jiného? To je asi jediné co mne napadá jako rozumné, ale poměr zajímavé/administrativní balast bývá dost vysoký, a nějaký úvod a rozumné uspořádání dílů je téměr nezbytné.
Jediné kdy jsem to viděl fungovat bylo pokud na to myslel autor od začátku - například různé literal programmingy (např. Knuthův web/cweb, viz třeba TeX the program, nebo i na jazyku nezávislý noweb). Jinak (ale často i tak) se radost pohledět bude konat dost těžko.
Možná i proto není moc nástrojů pro ex post. Většinou je dostatečně komplikované zajistit aby vypadala rozumně (ani ne hezky) automaticky generovaná dokumentace API, natož samotného kódu.
No, hodně štěstí. Možná by byly zajímavé odpovědi při znovupoložení otázku jako "Jak se zorientovat ve velkém projektu".
Pokud to opravdu chcete:
nenscript
Pak napriklad tisk zdrojaku z nejake slozky je mozny:
Do souboru: nenscript *.c -p doposcriptsouboru.ps -E --color
Na tiskarnu: nenscript *.c -E --colorA pak muzou byt pro Vas zajimave parametry: --highlight , --help-highlight
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.