Byla vydána nová major verze 5.0.0 svobodného multiplatformního nástroje BleachBit (GitHub, Wikipedie) určeného především k efektivnímu čištění disku od nepotřebných souborů.
Na čem pracují vývojáři webového prohlížeče Ladybird (GitHub)? Byl publikován přehled vývoje za duben (YouTube).
Provozovatel čínské sociální sítě TikTok dostal v Evropské unii pokutu 530 milionů eur (13,2 miliardy Kč) za nedostatky při ochraně osobních údajů. Ve svém oznámení to dnes uvedla irská Komise pro ochranu údajů (DPC), která jedná jménem EU. Zároveň TikToku nařídila, že pokud správu dat neuvede do šesti měsíců do souladu s požadavky, musí přestat posílat data o unijních uživatelích do Číny. TikTok uvedl, že se proti rozhodnutí odvolá.
Společnost JetBrains uvolnila Mellum, tj. svůj velký jazykový model (LLM) pro vývojáře, jako open source. Mellum podporuje programovací jazyky Java, Kotlin, Python, Go, PHP, C, C++, C#, JavaScript, TypeScript, CSS, HTML, Rust a Ruby.
Vývojáři Kali Linuxu upozorňují na nový klíč pro podepisování balíčků. K původnímu klíči ztratili přístup.
V březnu loňského roku přestal být Redis svobodný. Společnost Redis Labs jej přelicencovala z licence BSD na nesvobodné licence Redis Source Available License (RSALv2) a Server Side Public License (SSPLv1). Hned o pár dní později vznikly svobodné forky Redisu s názvy Valkey a Redict. Dnes bylo oznámeno, že Redis je opět svobodný. S nejnovější verzí 8 je k dispozici také pod licencí AGPLv3.
Oficiální ceny Raspberry Pi Compute Modulů 4 klesly o 5 dolarů (4 GB varianty), respektive o 10 dolarů (8 GB varianty).
Byla vydána beta verze openSUSE Leap 16. Ve výchozím nastavení s novým instalátorem Agama.
Devadesátková hra Brány Skeldalu prošla portací a je dostupná na platformě Steam. Vyšel i parádní blog autora o portaci na moderní systémy a platformy včetně Linuxu.
Lidi dělají divné věci. Například spouští Linux v Excelu. Využít je emulátor RISC-V mini-rv32ima sestavený jako knihovna DLL, která je volaná z makra VBA (Visual Basic for Applications).
Existuje několik znaků, které se při sazbě běžně používají, ale nejsou běžně přístupné na klávesnici. Například to, co vidíme na klávesnici jako „vodorovná čárečka nad účařím“ většinou vytvoří spojovník (-). Ten se používá pro slovní spojení typu „slovník česko-anglický“ nebo pro dělení slov na koncích řádků. Kromě toho se v sazbě používá pomlčka na půlčtverčík (–). Ta se používá například ve významu od–do. Existuje také pomlčka na celý čtverčík (—) a konečně je někdy potřeba použít znak mínus (−), který v daném fontu nemusí mít nic společného s žádnými předchozími pomlčkami. Jeho zásada je taková, že musí vypadat zcela stejně jako znak plus jen s tím rozdílem, že mu chybí svislý tah.
Jak se k tomu problému staví lidé, kteří na klávesnici najdou jedinou
„vodorovnou čárečku nad účařím“? Často ku škodě věci se na to vybodnou. Jak se
k tomu postavil Knuth při tvorbě TeXu? Navrhnul k dosažení pomlček prosté
zdvojování a ztrojování toho, co lze napsat z klávesnice a co je
zaneseno do ASCII kódování. Tedy --
vytvoří pomlčku na půlčtverčík
a ---
pomlčku na čtverčík. Nikdo se nemůže vymlouvat na obtížnost
psaní, toto se dá skutečně napsat snadno. I v ASCII textech je navíc takové
vyjádření pomlčky dostatečně jasné a názorné a dá se používat například
v emailech. Knuthova implementace tohoto jevu pomocí fontových ligatur už není
zcela ideální, protože pokud natáhneme font, který tuto specialitu nectí, tak to
prostě nefunguje. Je-li příslušný TeX vybaven encTeXem, je možné tuto vlastnost
udělat na úrovni input procesoru takto:
\mubyte \endash --\endmubyte \chardef\endash=123
V tomto příkladu se ovšem setkáváme s dalším problémem: pomlčka (–) je
v různě kódovaných fontech umístěna různě. Původně (podle Knutha) na pozici
123, později v T1 kódování na pozici 21 a konečně v unikódových fontech
na pozici 8211, tedy U+2013. Pokud TeX umí načíst unikódový font, tak zase neumí
encTeX, takže by bylo potřeba přemluvit input procesor jiným způsobem (například na
úrovni lua skriptu). Ve skutečnosti ale XeTeX i luaTeX nabízí možnost při
natažení fontu přidat ke skutečným fontovým ligaturám též tzv. TeXové ligatury, tj.
proměnu --
na pomlčku atd. Takže s pomlčkami ani tam není
problém.
Ve starých antikvárních tiscích najdete pomlčku se šířkou někde mezi současnou pomlčkou na půlčtverčík a čtverčík. Má šířku zhruba tři čtvrtiny čtverčíku. To ve fontech nenajdeme, protože americká sazba to nezná a digitální typografie je k nám zpětně importována z Ameriky. Chcete-li ctít tyto tradice, je potřeba si tu pomlčku vytvořit. Následuje ukázka dvou možností, jak na to jít:
\mubyte \enndash --\endmubyte \chardef\endash=123 \def\enndash{\endash\kern-.25em\endash} nebo: \mubyte \enndash --\endmubyte \def\enndash{\vrule height .28em depth-.255em width.75em\relax}
Je taky možné vychytat nedbalost autorů při psaní pomlček tak, že vyhledáme
encTeXem výskyty ASCII znaku -
s mezerami po obou stranách
a nahradíme pomlčkou. Podobně je možné zapracovat Knuthovu myšlenku snadného
psaní pomlček a anglických uvozovek také pro české uvozovky. Budeme je
psát pomocí dvou čárek (,,
) a dvou obrácených apostrofů
(‘‘
).
\mubyte\enndashspaces\space\space-\space\endmubyte \def\enndash{\vrule height .28em depth-.255em width.75em\relax} \def\enndashspaces{\ifmmode-\else~\enndash\space\fi} \mubyte\clqq,,\endmubyte \mubyte\crqq‘‘\endmubyte Tady je ,,zkouška‘‘ textu - uvidíte, co to udělá.
V kódu makra jste si mohli všimnout, že pokud najdeme znak -
v matematickém módu, necháme ho na pokoji a TeX vysází mínus. Jinak
vysázíme pomlčku.
O tom, kdy se píše která pomlčka a na které další znaky dát při sazbě pozor, pojednává velice pěkně webová stránka typografa Martina Peciny. Dozvíte se tam i základní typografické pojmy, jako například co je čtverčík (v sekci písmo/stupeň písma). Dříve se takovými věcmi zabývali jen sazeči, kteří na to měli normy a ovládali řemeslo. Dnes to patří k základnímu vzdělání podobně, jako schopnost napsat správně tvrdé nebo měkké i/y. Dnes totiž na počítači vytváří sazbu téměř kdokoli.
Mezera mezi slovy je určena třemi nezávislými parametry:
Základní šířku běžné mezislovní mezery a její ochotu roztažitelnosti a stlačitelnosti stanoví výtvarník fontu. Základní šířka bývá kolem třetiny čtverčíku. Kromě běžných mezer se na některých místech doporučuje dávat různě zúžené mezery (například ve zkratce s. r. o. nebo mezi jednotkou a číslem 100 km). Další příklady uvádí Martin Pecina v souvislosti s trojtečkou.
V TeXu jsou parametry mezislovní mezery (základní šířka, ochota
roztažitelnosti a stlačitelnosti) uloženy v metrice fontu. Ochota mezery se
zlomit je „normální“, v TeXu je to označeno penaltou 0. Kromě toho lze před
každou mezeru předřadit hodnotu penalty v rozsahu od -10000
(zlom se
provede za každých okolností) po 10000
(úplný zákaz zlomu). Ochotu
roztažitelnosti a stlačitelnosti lze nastavit příkazem \hskip
pomocí
parametrů plus
a minus
. Zcela určená mezera v TeXu
tedy vypadá takto:
\penalty <penalta> \hskip <základní velikost> plus <roztažení> minus <stlačení> například: \penalty 5000 \hskip 2em plus 1em minus1.5em
Příklad ukazuje mezeru velikosti dvou čtverčíků s vysokou neochotou se zlomit (penalta 5000) a s možností se roztáhnout na (zhruba) tři čtverčíky a stlačit na půl čtverčíku.
Pro různé případy si můžete napsat makra mezer různých vlastností jen za použití
příkazů \penalty
a \hskip
. Klasická nezlomitelná mezera má
v TeXu přidělen znak vlnka a je definována takto:
\catcode‘\~=13 \def~{\penalty 10000 \space}
Přitom \space
díky \def\space{ }
vyprodukuje běžnou
mezislovní mezeru s roztažitelností a stlačitelností tak, jak to určil
výtvarník fontu.
Mám pocit, že TeX byl první software, jehož autor si uvědomil nezávislost všech parametrů mezery a správně ji implementoval. S nesprávným spojováním více vlastností mezer do jedné se bohužel potýkáme dodnes. Například momentálně připomínkuji v rámci připomínkového řízení návrh revize normy ČSN 6910 „Úprava dokumentů zpracovaných textovými procesory“. Mají tam uveden pojem „pevná mezera“ jako mezera konstantní šířky a navíc nezlomitelná. Přitom tento pojem mají v příloze propojen s kódem mezery U+00A0, o které se v Unicode tabulce ovšem můžeme dočíst jen to, že je to „nobreaking space“, tedy žádná mezera konstantní šířky! Podrobně jsem jim to vysvětlil a připomínkoval. Odpověď: připomínka se zamítá. Jsou natvrdlí. Jak k tomu přijdou tvůrci softwaru, kteří správně implementují mezeru U+00A0 jako nezlomitelnou pružnou? Dnes se takový software už konečně dá nalézt. Mám na mysli nepříklad ne-microsoftí webové prohlížeče. Konečně tedy vidíme při formátování do bloku za neslabičnými předložkami správně stejně roztažené/stlačené mezery jako ostatní mezery mezi slovy. Ovšem mnoho lidí tam bohužel bude pořád cpát mezery konstantní šířky a tím rušit čtenáře. Takže nerespektují základní zásadu typografie.
V americké sazbě je ještě jedna zvláštnost daná tamější tradicí. Mezery mezi
větami mají být větší. Na psacím stroji kdysi bouchli Američané po každé tečce za
větou dvakrát do mezerníku. Knuth proto zajistil mezerám za větou ochotnější
roztažitelnost než ostatním mezerám. Přidělil kvůli tomu jednotlivým znakům tzv.
\sfcode
. Podrobněji viz TeXbook naruby,
stranu 104. V Evropě naopak měli typografové tendenci mezeru za tečkou
zmenšovat, protože pak vizuálně vypadá stejně velká, jako mezera mezislovní.
Nakonec se z toho zrodil kompromis, mezeru za tečkou aspoň nezvětšovat.
K tomu je třeba nastavit znakům poněkud jiné \sfcode
, než implicitní
Knuthovo nastavení. To zařídí makro \frenchspacing
. Toto makro se spustí
v csplainu při přepnutí na české nebo slovenské dělení slov příkazem
\chyph
nebo \shyph
.
Při formátování odstavce do bloku mají pružit mezislovní mezery. V žádném případě není možné měnit rozestup mezi jednotlivými písmeny uvnitř slova. Třebaže některý software na to má prostředky, jednoznačně to čtenáře ruší a je to tedy z typografického hlediska nepřípustné. Rozestupy mezi písmeny uvnitř slov se řídí pravidly metriky, tj. šířkami jednotlivých znaků a tabulkou výjimek s ligaturami a kerningovými páry.
Někdy se při formátování odstavce může stát, že jsou mezery nakupeny pod sebou a vytvářejí tzv. řeky. Ruční sazeči měli za úkol toto hlídat a v případě, kdy k tomu dojde, vyřešit odstavec jinak. TeX tuto situaci nehlídá a neřeší, ovšem za celou dobu mé sazečské praxe jsem nenarazil na případ, kdy by toto měl být problém. Mezery totiž mají v TeXu tendenci se nejen roztahovat, ale i stlačovat, což fenomén řek v podstatě eliminuje.
Někdy se mi stává, že dva řádky pod sebou začínají nebo končí zcela stejným slovem. To taky ruší a není automaticky ošetřeno. Když na to narazím, musím případ vyřešit individuálně.
V pdfTeXu je zanesena možnost snížit velikost roztažení nebo stlačení mezislovních mezer mírnou deformací písma v horizontálním směru jednotlivě na každém řádku. Tato deformace v každém případě musí být čtenářem neviditelná, jinak by to bylo hrubým porušením typografických pravidel. Přitom, když se povede vhodnou deformaci písma najít, zmenší se roztažení mezer a výsledek je daleko lepší. Můžete se podívat na ukázku.
Další vychytávkou je vystrkávání interpunkce na okrajích řádků mimo
obdélník, ve kterém je blok odstavce. Obdélník odstavce pak překvapivě
působí vizuálně vyrovnaněji. Problém je možné řešit v klasickém TeXu
způsobem popsaným v TeXbooku naruby na
straně 213. V pdfTeXu jsou na to připraveny také přímo primitivní
příkazy \rpcode
a \lpcode
, viz sekci 11.10
v TeXu pro pragmatiky.
Tímto dílem seriálu bych se chtěl se čtenáři abclinuxu.cz rozloučit. Děkuji všem za přízeň a za pozitivní a vesměs fundované reakce v diskusích pod články. Myslím si, že vzájemné obohacení bylo oboustranné.
Věřím, že se mi aspoň částečně podařilo ukázat, že se TeXem dají dělat překvapivá kouzla. Neznám jiný software, kterým by se dal takto efektivně programovat proces přípravy sazby. Abyste mohli sazbu programovat a mít ji do posledního nanometru pod kontrolou, stačí jediné: umět TeX. Snad ze seriálu vyplynulo, že stojí za to tuto jedinou překážku nějak překonat a začít se TeXem pořádněji zabývat. Budete pak umět třeba takové věci, jaké jsou uvedeny v této ukázce.
Nástroje: Tisk bez diskuse
Tiskni
Sdílej:
\,
, ale možná přejdu na dvě různé šířky a zvážím užší zlomitelnou mezeru, která je čas od času potřeba.
Faktická poznámka k článku: česká typografie m-dash nezná.
S nesprávným spojováním více vlastností mezer do jedné se bohužel potýkáme dodnes.S tímhle mě hrozně štve Word, že nezlomitelnou mezeru udělá zároveň nepružnou a viditelně užší než ostatní. Když někdy potřebuji nacpat text do relativně úzkých sloupců, tak tyto rozdíly bijí do očí zhruba stejně, jako neslabičné předložky na konci řádků. Čili nikdy to nevypadá hezky. Pokud je zároveň vypnuté dělení slov (default), hrůza se umocní. Jeden z dobrých důvodů používat TeX. Díky za tento díl i celý seriál!
Word neni urcen na tvorbu hezky vypadajicich textu, ale na komunikaci s byrokraty.Ano, to je jeden důvod, proč ho občas používám. Druhý je, že je na rozdíl od TeXu instalován na většině počítačů, ke kterým při práci přijdu a nejsem admin. Třetí důvod je jedna příjemná funkce, kterou používám při promítání zadání testu v učebně. Jmenuje se to Zobrazení -> Čtení na celé obrazovce. Text se mi na projektoru rychle přeskládá tak, že na levé polovině je zadání pro skupinu A, napravo B. Ale zápory už převažují, pro příští školní rok si na to promítání zadání připravím šablonu v XeLaTeXu.