Richard Stallman dnes v Liberci přednáší o svobodném softwaru a svobodě v digitální společnosti. Od 16:30 v aule budovy G na Technické univerzitě v Liberci. V anglickém jazyce s automaticky generovanými českými titulky. Vstup je zdarma i pro širokou veřejnost.
sudo-rs, tj. sudo a su přepsáné do programovacího jazyka Rust, nahradí v Ubuntu 25.10 klasické sudo. V plánu je také přechod od klasických coreutils k uutils coreutils napsaných v Rustu.
Fedora se stala oficiální distribucí WSL (Windows Subsystem for Linux).
Společnost IBM představila server IBM LinuxONE Emperor 5 poháněný procesorem IBM Telum II.
Byla vydána verze 4.0 multiplatformního integrovaného vývojového prostředí (IDE) pro rychlý vývoj aplikaci (RAD) ve Free Pascalu Lazarus (Wikipedie). Přehled novinek v poznámkách k vydání. Využíván je Free Pascal Compiler (FPC) 3.2.2.
Podpora Windows 10 končí 14. října 2025. Připravovaná kampaň Konec desítek (End of 10) může uživatelům pomoci s přechodem na Linux.
Již tuto středu proběhne 50. Virtuální Bastlírna, tedy dle římského číslování L. Bude L značit velikost, tedy více diskutujících než obvykle, či délku, neboť díky svátku lze diskutovat dlouho do noci? Bude i příští Virtuální Bastlírna virtuální nebo reálná? Nejen to se dozvíte, když dorazíte na diskuzní večer o elektronice, softwaru, ale technice obecně, který si můžete představit jako virtuální posezení u piva spojené s učenou
… více »Český statistický úřad rozšiřuje Statistický geoportál o Datový portál GIS s otevřenými geografickými daty. Ten umožňuje stahování datových sad podle potřeb uživatelů i jejich prohlížení v mapě a přináší nové možnosti v oblasti analýzy a využití statistických dat.
Kevin Lin zkouší využívat chytré brýle Mentra při hraní na piano. Vytváří aplikaci AugmentedChords, pomocí které si do brýlí posílá notový zápis (YouTube). Uvnitř brýlí běží AugmentOS (GitHub), tj. open source operační systém pro chytré brýle.
Jsem si vědom, že to je úkol nelehký. V dnešní době Google dokumentů, v době, kdy je klávesnice počítače stále více nahrazována gesty několika prstů na dotykové obrazovce (a zřejmě v nedaleké budoucnosti bude stačit dělat na počítač ksichty), je povídání o možnosti programování procesu elektronické sazby poněkud odvážné a může být i mimoběžné s dnešním obvyklým chápáním počítačů. Přesto věřím, že mezi linuxovými uživateli je mnoho těch, kterým klávesnice, programování a příkazový řádek stále říkají pane a budeme si snad rozumět.
Před více než třiceti lety Donald Knuth vytvořil TeX [tech] a dal ho světu zdarma k dispozici. Od té doby se bezezbytku vyplnilo, co říkal: dokumenty zpracované TeXem tehdy na naprosto rozličných a roztodivných počítačových systémech (od mainframů po první stolní počítače) jsou zpracovány stejně do posledního nanometru dnes jako před třiceti lety. Je zde absolutní nezávislost na systému i na čase. Ovšem chápu, že tím v současné době asi nikoho neohromím. Lidé se dnes oprávněně ptají, jaký TeX za těch 30 let prodělal vývoj. Knuth po deseti letech práce na TeXu jej v roce 1989 zmrazil. Své rozhodnutí zveřejnil v textu, který nazýváme TeXtament (viz např. Knuthovu stránku a odstavec označený Errata). Existují ale následníci TeXu, kteří jsou samozřejmou součástí každé moderní TeXové distribuce a mají poměrně pokročilé vlastnosti. I o nich budeme mluvit v dalších dílech seriálu.
TeX umožňuje při přípravě dokumentu oddělit jeho obsah od formy v míře, která je pro dosažení konkrétního cíle nejvýhodnější. Původní myšlenka předpokládala rozdělení uživatelů na autory a typografy-programátory. Typograf pomocí jazyka TeXu definuje design výstupního dokumentu a vymezí značky, které bude používat autor. Značek pro jednoduché dokumenty nemusí být mnoho: odstavce se oddělují prázdným řádkem a dále stačí používat značky pro zvýraznění textu (např. kurzívou), pro vymezení nadpisu a podnadpisu a pro řazení informací do výčtů. Autor textu pak tyto značky ve svém díle používá. Dá se to zhruba přirovnat k jazyku html, ale je to daleko přehlednější a při psaní pohodlnější. Dokument pak nechá autor zpracovat TeXem a vyleze mu PDF s typografií, kterou pro něj navrhl typograf a naprogramoval ji pomocí sady maker TeXu.
V roli typografa-programátora se jako první výrazněji uplatnil Leslie Lamport a vytvořil LaTeX. Je to sada maker pro TeX, která na jedné straně definuje skupinu značek pro autory textů a na druhé straně definuje vzhled výstupu. Tento vzhled se dá modifikovat různými doplňkovými sadami maker, tzv. styly, které rovněž připravují typografové-programátoři. LaTeX je určen pro psaní zejména odborných publikací. LaTeX pochopitelně není jediný způsob, jak použít TeX, takže jej v seriálu sice občas zmíním, ale jen okrajově.
Jiným příkladem takového oddělení obsahu od formy mohou být šablony pro závěrečné práce studentů vysokých škol. V případě šablon CTUstyle (pro ČVUT) a CUstyle (pro UK) jsem roli typografa-programátora přijal osobně a od studentů očekávám, že budou autory textu, kteří pouze využijí popsané značkování. Vzhledem k tomu, že jsem dokumentaci napsal v tomto značkování, mohou studenti také využít při pořizování svých textů metodu analogie.
Autoři matematických textů nemají příliš mnoho na výběr ani po třiceti letech. Dosud není znám software, který by v pohodlnosti pořizování matematických textů a v kvalitě výstupu překonal TeX.
Zajímáte-li se o typografii (nebo se dokonce živíte typografií), chcete vládnout nad automatickým sazečem a odmítáte situaci, kdy ten automat naopak ovládá vás, máte jedinečnou možnost použít TeX. Dostanete do rukou nástroj, kterým řídíte proces tvorby sazby do posledního detailu tak, jak chcete vy, a ne tak, jak naprogramoval někdo jiný. Rozmístění textu, obrázků a dalších grafických prvků je naprosto ve vašich rukou a jak již bylo řečeno, dáváte automatickému sazeči pokyny, které poslušně plní s nanometrovou přesností. Pochopitelně při takových ambicích je nutno zvládnout jazyk TeXu a zřejmě opustit roli uživatele LaTeXu, tedy pouhého autora textu, který používá již hotové značky.
Řešíte-li úlohu vyžadující dávkový způsob zpracování (vizitky, dopisy, hrací karty, jízdní řády, šachové diagramy, křížovky, rozvrhy), je TeX rozumnou volbou pro tvorbu požadovaného výstupu.
Chcete-li vytvořit třeba PDF dokument s rozličně automaticky sestavenými prvky sazby (křížové klikací reference, plovoucí záhlaví, automatické generování obsahů a rejstříků, netradiční pojetí strany, prolinkování vícejazyčné sazby, propojení textu s automatickým mluvítkem schopným přečíst i matematické rovnice, provázané odkazy do více různých PDF dokumentů atd.), je zde k dispozici TeX. Problém je jen jediný: musíte umět používat jazyk TeXu, který je dnešním programátorům bohužel velmi vzdálen od toho, na co jsou zvyklí.
Uvedeného problému jsem si vědom, a proto v tuto chvíli dokončuji novou knížku TeX pro pragmatiky, která by měla usnadnit také začátečníkům seznámit se s TeXem. Má předchozí knížka TeXbook naruby byla určena pro typografy-programátory a neměla před sebou odrazový můstek, který by mohl použít nejprve začátečník. Tímto můstkem by mohla tedy být má nová knížtička. Její text je už nyní v nehotovém stavu na internetu.
Zkuste na příkazový řádek napsat příkaz tex. Pokud se Vám představí:
This is TeX, Version 3.1415...
máte TeXovou distribuci nainstalovánu. Pokud ji nemáte, zkuste instalovat buď odpovídající balíček z Vaší linuxové distribuce nebo stáhněte přímo distribuci TeXlive podle návodu na webových stránkách. Předpokládám, že dnes vesměs všechny linuxové balíčkovací systémy přebírají TeXlive, ovšem patrně s nějakým zpožděním. Jak hluboké je toto zpoždění poznáte, až si vyzkoušíte následující minimální dokument.
Do souboru pokus.tex napište nějakým svým oblíbeným textovým editorem:
Ahoj světe! \bye
a tento soubor zpracujte příkazem:
pdfcsplain pokus
Příkaz pdfcsplain (je součástí TeXové distribuce) spustí TeX s formátem csplain s výstupem do PDF. Co to přesně je, si povíme v některém z dalších dílů.
Může se stát, že nebude správně zpracováno písmeno ě ve slově světe. Podívejte se do výstupního PDF nějakým prohlížečem a zkontrolujte to. Je-li tam problém, pak zkontrolujte dvě věci. Za prvé: vstupní soubor pokus.tex musí být napsán v kódování UTF-8. Za druhé: je třeba mít dostatečně čerstvou verzi csplainu.
Problém z druhého důvodu může být způsben tím, že změna implicitního kódování vstupu v csplainu z původního ISO-8859-2 na UTF-8 proběhla poměrně nedávno, v prosinci 2012. V souvislosti s tím krátce odbočím a popíšu způsob šíření novinek v csplainu.
Jakmile na svých webových stránkách zveřejním novou verzi výchozího souboru csplain.tar.gz, přes noc se automaticky překopíruje na master server CTANu (archiv TeXového softwaru) a během dalších cca dvou dnů se odtud automaticky převezme do TeXových distribucí (TeXlive, MikTeX) a do mirrorů po celém světě. Provede-li uživatel TeXlive nebo MikTeXu obnovu balíčku csplain ze sítě, je zde jistota, že necelý týden po mém zveřejnění má novou verzi ve svém počítači.
Linuxové balíčkovací systémy typicky přebírají TeXlive jako celek a někdy s notným zpožděním. TeXlive je každoročně v květnu označen verzí podle roku (např. TeXlive 2013). Máte-li tedy v linuxové distribuci TeXlive ve verzi 2013, neměli byste mít problém. Máte-li starší, zřejmě budete mít problém s háčkovaným e. Upgrade csplainu uvnitř balíčku TeXlive nemusí být snadný. TeXlive má sice svůj vlastní balíčkovací nástroj tlmgr, ten je ale k dispozici jen tehdy, když TeXlive instalujete samostatně mimo balíčky své linuxové distribuce.
Věřím, že problém s háčkovaným e bude mít minimum uživatelů a můžeme se tedy
vrátit k minimálnímu příkladu. Je zde vidět, že pro jednoduché věci (tisk
jediného výkřiku) stačí jednoduché značkování: je zde jediná značka \bye
,
kterou dáváte najevo, že má TeX ukončit svou činnost. Konec souboru samotný
totiž není pro TeX signálem k ukončení činnosti: místo toho přechází na
čtení dalších informací z terminálu. Ačkoli je někdy příjemné si s TeXem
popovídat na terminálu, začátečníky to spíše irituje. Ti pak musejí utnout
takovou komunikaci například pomocí Ctrl-D.
Věřím, že čtenáři nebudou chtít utnout komunikaci o TeXu po přečtení prvního dílu seriálu a rádi si počkají na další díly. Budu se těšit.
Už jsem se zmínil o LaTeXu, takže by nebylo fér zatajit, jak vypadá náš minimální dokument, rozhodnete-li se TeX používat jen jako autor textů s připraveným značkováním a typografickým řešením z LaTeXu. Toto značkování je poněkud ukecanější a stejný minimální dokument pokus.tex v něm vypadá takto:
\documentclass{article} \usepackage[utf8]{inputenc} \usepackage[T1]{fontenc} \begin{document} Ahoj světe! \end{document}
Dokument můžete vyzkoušet zpracovat příkazem:
pdflatex pokus
Kolem vlastního výkřiku, který se má vysázet, nyní vidíme ve zdrojovém souboru několik povinných
značek, které nutí uživatele LaTeXu k jisté disciplíně. Musejí
například pomocí \documentclass
specifikovat základní typ dokumentu a
obskládat dokument pomocí \begin{document}
a \end{document}
.
Čtenáři, kteří již někdy TeX viděli, možná namítnou, že v ukázkách není
zavedena čeština, tedy vzory dělení slov zůstávají nastaveny jen implicitní
anglické. To je pravda. Ovšem minimální dokument obsahuje tak krátký
výkřik, že jej TeX do více řádků lámat nebude a dělení slov nevyužije.
Pokud byste ale chtěli napsat něco delšího, pak je třeba přepnout na české
vzory dělení slov. V případě LaTeXového značkování je třeba vložit k řádkům \usepackage
další \usepackage[czech]{babel}
a v případě csplainu je třeba přidat na začátek značku \chyph
.
Nástroje: Tisk bez diskuse
Tiskni
Sdílej:
Je nějaký důvod v tom nepokračovat i mimo školu? V předchozí práci jsme měli část dokumentaci psanou v MS Wordu (bohužel) a část v DocBooku a převáděnou přes TeX do PDF. A i dokumentace některých partnerů/dodavatelů byla vytvořena v TeXu či LaTeXu. Sám ve svých projektech taky (La)TeX používám.
Posílat si dokumenty1 e-mailem a postupně je upravovat je právě tragédie. Oproti tomu otevřené textové formáty2 se dají krásně spravovat pomocí verzovacích systémů3 a máš tam perfektní přehled o historii dokumentu, nebudou se ti ztrácet verze, lidi si nebudou přepisovat práci, nerozpadne se ti to na víc větví, aniž bys o tom věděl…
Chápu, že gramotnost některých lidí je dost nízká, ale to se dá řešit přes web – když už nic lepšího, tak nějaká wiki, ve které se společně tvoří a hotový dokument se pak vyexportuje do PDF.
[1] navíc v nějakém obskurním a prakticky proprietárním formátu
[2] (La)TeX, XML, XHTML nebo různé wiki formáty
[3] sakra, už to musím konečně dopsat
Sada TeXových maker je dobrý nápad. A můžeš díky tomu mít i perfektní sémantiku… Akorát se to hodí do nějakého důvěryhodného prostředí, kde to lidi budou používat rozumně a ne zneužívat prakticky neomezené možnosti TeXu (třeba k vytvoření nějakého šíleného dokumentu, DoSování, ohrožení bezpečnosti atd.). Nebo je nějaký způsob jak filtrovat značky/příkazy? Tohle právě používám v XSLT – vstupem je libovolný XHTML dokument (klidně i s nestandardními značkami) a moje šablona si z toho vezme jen vybrané elementy – ty nějak interpretuje – a z těch ostatních zbudou jen textové uzly.
Chtělo by to pro tyhle účely nějakou omezenou podmnožinu: TeX jako dokument, ne TeX jako program.
jj, to je jedna věc a dá se to řešit takhle „zvenku“ (spuštěním pod jiným uživatelem, SELinux, AppArmor, virtualizace)… Ale druhá věc je filtrování na úrovni jazyka – např. povolím jen tučné a skloněné písmo, odrážky a odkazy, ale když tam někdo nacpe podtržené písmo, vlastní CSS třídy, nebo nějaké šílené zanořené divy, tak mu z toho zbude jen ten text, protože na tohle tam XSL šablona záměrně není.
BTW: existuje nějaký SAX parser pro TeX? Abych si mohl odchytávat události, jednotlivé uzly dokumentu a nějak si je zpracovat – třeba převést do jiného formátu, nebo filtrovat, transformovat a dál poslat upravený TeX k vysázení?
Překvapení. Toto jsem opravdu nečekal a opravdu se těším na další díly.
Mohu se zeptat, jak moc je pdfcsplain uzpůsoben UTF-8? Jedná se jen o implicitně zavedené mapování, nebo jdou změny hlouběji? Unicode byla jedna z věcí, proč jsem přešel na Xe(La)TeX.
csplain.fmt
. A vskutku, nikde v balíčcích není Kdyby byl člověk moc náročnej, tak máš samozřejmě recht - pdfku z Texu se žádná html přiblížit nemůžeJak se to vezme. Když si s tím člověk dá práci, Prince XML dokáže z HTML vykouzlit moc pěkné věci.
A pak je ještě možnost psát dokument bez ohledu na výsledný formát a převod řešit až jako nezávislý úkol. Takhle funguje DocBook. Srdce typografa sice zapláče, ale když to člověk překousne, tak to tolik nebolí.