LaTeX z Cwebu? (Bylo: zvetseni sirky odstavce)

Wagner, Zdenek WAGNER at icpf.cas.cz
Thu Nov 2 14:04:51 CET 1995


 ---
> Zdenek Wagner pise (v odpoved na dotaz Josefa Kroba):
>
> [...... o zmenach sirky textu ]
>
> > vzoreckem. Bezne to pouzivam ve spojeni s CWEBem (pro normalni text
> > potrebuji prostor pro marginal notes, ale pro rejstrik a obsah chci
vyuzivat
> > plnou sirku papiru, pricemz rejstrik je ve dvou sloupcich). Takove makro
> > pouzivam vzdy ve vertikalnim rezimu v jednosloupcove sazbe, pri zmena
sirky
> > behem vicesloupcove sazby by asi zpusobila zverstva.
>
> Prosim napovezte mne tapajicimu, jak mozno prinutit CWEB k vystupu
> v LaTeXu? (2e?) Je na to nejake prostredi, do ktereho se cely vystup
> vlozi, nebo se delaji nejake zmeny (predpokladam, ze dosti podstatne)
> v souboru cwebmac.tex?
>
Existuje podpora pro LaTeX 2.09, je to CWEB.STY, autorem je Joachim Schrod.
Je k tomu jeste par dalsich stylu napr pro tisk tabulek (znak | je pouzivan
cwebem, takze se musi nahradit). Vse je popsano v prislusne dokumentaci. Lze
to pouzit i v 2e v compatibility mode. Udelal jsem si CWEB.CLS, ktery asi na
5 radkach zavola puvodni CWEB.STY, ale pracuje v 2e rezimu. Mozna jej JS
nekam umistil, pokud ne, mohu jej poslat.
>
> Kdyz uz jsme se dostali k CWEBu a ja mam zrovna nejaky casek nazbyt....
> Shrnu sve zkusenosti -- a zajimaly by mne nazory/zkusenosti ostatnich.
> Rekl bych, ze to sem patri, nebot nejvetsi koncentrace cesky hovoricich
> literarnich programatoru je pravdepodobne okolo tohoto listu.
>
> Presvedciv se o vyhodach *dobre* dokumentovanych programu, prezentovanych
> ve sledu toku myslenek, zacal jsem asi pred pul rokem experimentovat
> s CWEBem v jazyce C. Zrovna pred tydnem jsem velmi ocenil, ze jsem si
> psal poradnou dokumentaci.... Ted se snazim literarne programovat v C++.
> Sve poznatky bych shrnul zhruba nasledovne:
>
> :1:  V C++ se zmenene poradi kusu kodu vyuziva hlavne v deklaracich trid,
> t.j. pri specifikaci rozhrani objektu. Hlavne tam je treba si mnohe
ujasnit,
> a mnohe komentovat. Naopak pri vlastni implementaci uz poradi definic
metod
> neni dulezite, vse jiz bylo deklarovano. Jazyk samotny vede ke kompaktnimu
> kodu metod, ktere je mozno zapsat v jedinem useku (pri dobre OO analyze
> problemu!). Protoze to hlavni -- co ma metoda delat -- uz bylo vysvetleno
> v deklaraci rozhrani, jsou komentare pred/v implementaci co platne hlavne
> pri vysvetlovani nejakeho ne uplne pruhledneho algoritmu.

Souhlasim. Je zde vlastne o jeden stupen strukturovanosti navic, takze rada
komentaru je zbytecna.
>
> :2:  Z jedineho WEBovskeho souboru (.ww) mi TANGLE vygeneruje jak hlavicku
> (.hh), tak implementaci (.cc). Zde se nazory asi budou lisit; ja mam rad
vse,
> co spolu souvisi, pohromade. Pouzivam Makefile, a tak jsem musel vyresit
> to, aby se mi nekompiloval cely projekt, kdykoli zmenim neco jenom
> v implementacni casti. Delam to tak, ze vsechny hlavickove soubory
> se porovnavaji s jejich zalohou, vzniklou pri minule kompilaci.
> Nedoslo-li ke zmene v hlavicce, udelam touch na nejake datum
> v davne minulosti a tim odriznu rekompilaci toho,
> co by se jinak diky tedo hlavicce rekompilovalo.

Tento problem jsem jiz resil. Udelal jsem to pro OS/2, ale pro starsi verzi
CWEBu. Nyni jeste zbyva, abych to udelal pro CWEB nejnovejsi. Mozna to
Silvio Levy vlozi jako standard do nejake pristi verze. Je to funkce
integrovana primo v ctangle a pracuje podobne jako v nuwebu.
>
> :3:  Ze vsech systemu pro literarni programovani, ktere jsem okoukl,
> (jeste FunnelWEB, NoWEB a Tango-Weevil) vysazi CWEB & plainTeX
bezkonkurencne
> nejlepsi vystup. Takrka dokonaly je pro jazyk C, v C++ se obcas vyskytnou
> rusive prvky. Snad nejvice rusive pusobi vlozeni vertikalni mezery
> po deklaraci lokalni promenne -- to lze v C++ delat i uprostred prikazu.
> Take neni zcela trivialni prinutit jej spravne interpretovat hlavicku
definice
> pretizeneho operatoru new nebo delete. Chce to trochu zkusenosti s @[ a
@].
>
> :4:  Neni to sice prilis casto, ale cas od casu bych kus literarniho kodu
> rad vlozil do nejake publikace. Ty ale pisi v LaTeXu2e, coz nehodlam
menit.

V zasade lze CWEB prinutii, aby cweave produkoval vystup pro LaTeX, tedy je
to vlastne jen otazka texovych maker a pridani prikazu \documentclass,
\begin{document} a \end{document} do weboveho zdrojaku. Pokud by se casti
programu mely pretahnout do publikace, ktera ma jiny format nez CWEB,
vyzadovalo by to trochu texoveho programovani. Nastesti je samotny CWEB.STY
"literate program", takze by to nemelo byt tak tezke.

> Na druhe strane, kvalita vystupu tech literarne programovacich systemu,
> o kterych vim, ze podporuji LaTeX, se mi jevi jako nedostatecna (cituji
> jednoho sveho kamarada: skromnost je blbost ;-) . (Tim nerikam, ze by byly
> uplne spatne. Podpora vice programovacich jazyku vsak vetsinou znamena,
> ze se delaji kompromisy v kvalite vystupu.)
>
> Proto ve mne poznamka pana Wagnera o kombinaci CWEBu a LaTeXu vyvolala
> zajem a zvedavost. A take by me moc zajimaly nazory ostatnich.
>
>
>          S pozdravem
>                          @<pavoukum zdar@>@;
>
>                                                   Jan Dvorak
,~~~/        /`               /     /|      /~~~
   /        /           |_/  /__/  ' |     /
  /     /~~/ /~~/ /~~/ /~~/ /\       | /| / /~~/ /~~/ /~~/ /~~/ /~~~
 /   , /  / /~~~ /  / /~~~ /  \      |/ |/ /  /_/  / /  / /~~~ /
 ~~~~  ~~~  ~~~ '  '  ~~~ '    `     '  '  ~~~  ~~/ '  '  ~~~ '
                              Zdenek Wagner______/



More information about the csTeX mailing list