abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
dnes 19:33 | Nová verze

Byla vydána nová major verze 2.9.0 multiplatformního svobodného frameworku pro zpracování obrazu G'MIC (GREYC's Magic for Image Computing, Wikipedie). Přehled novinek i s náhledy na PIXLS.US. Zmínit lze například generování moaré animací. Ukázka na YouTube.

Ladislav Hagara | Komentářů: 0
včera 17:33 | Zajímavý článek

Nová čísla časopisů od nakladatelství Raspberry Pi: MagPi 91 (pdf) a 92 (pdf), HackSpace 29 (pdf), Hello World 12 (pdf), Wireframe 33 (pdf), 34 (pdf) a 35 (pdf).

Ladislav Hagara | Komentářů: 1
včera 16:11 | IT novinky

Společnost FriendlyElec začala prodávat svůj nejnovější miniaturní jednodeskový počítač NanoPi R2S. Počítač v ceně 22 dolarů zaujme především dvěma Gigabit Ethernet porty.

Ladislav Hagara | Komentářů: 34
27.3. 07:00 | Zajímavý článek

David Malcolm se ve svém příspěvku na blogu vývojářů Red Hatu rozepsal o statické analýze a nové volbě -fanalyzer v GCC 10. Ukázkové příklady lze vyzkoušet také online na stránce Compiler Explorer.

Ladislav Hagara | Komentářů: 1
26.3. 20:22 | IT novinky

Český hydrometeorologický ústav doposud poskytoval data z meteorologických měření pouze za úplatu, přestože jde o veřejnou instituci. Dlouhodobě se tím zabýval Jan Cibulka, datový novinář Českého rozhlasu. Dosavadní praxe se však nyní mění – Cibulka syrová historická data získal a zveřejnil včetně vzorové žádosti dle zákona o právu na informace o životním prostředí. Podle chystaného zákona o zabezpečení hydrometeorologické služby by měla odpadnout i nutnost o data explicitně žádat.

Fluttershy, yay! | Komentářů: 62
26.3. 18:22 | IT novinky

Router Turris Omnia 2020 získal certifikaci FCC nezbytnou pro prodej na americkém trhu. S tím souvisí, že je nyní tento router k dostání také prostřednictvím internetového obchodu Amazon.com. Nová verze routeru, která je v nabídce za 334 USD, má stříbrný kovový design a je vybavena operačním systémem Turris OS 4.0. Mimo to jsou její součástí i automatické bezpečnostní aktualizace a nově také testovací verze nového systému zabezpečení Sentinel, který umožňuje ještě rychleji reagovat na síťové hrozby.

Ladislav Hagara | Komentářů: 1
26.3. 16:44 | Zajímavý software

Projekt KDE představuje nové uživatelské rozhraní Plasma Bigscreen pro využití s velkými obrazovkami pro přehrávání multimédií. Vedle technologií Plasma integruje také Mycroft k ovládání hlasem. Ke stažení je betaverze pro Raspberry Pi 4.

Fluttershy, yay! | Komentářů: 3
26.3. 15:11 | Zajímavý software

Microsoft aktualizoval dokumentaci ke svému bezpečnostnímu softwaru Microsoft Defender Advanced Threat Protection (Microsoft Defender ATP) for Linux. Aktuálně je k dispozici veřejná preview verze. Oficiálně podporovány jsou linuxové distribuce Red Hat Enterprise Linux, CentOS, Ubuntu, Debian, SUSE Linux Enterprise Server a Oracle Linux. Původně Windows Defender byl loni přejmenován na Microsoft Defender, poněvadž byl přenesen také na macOS.

Ladislav Hagara | Komentářů: 3
26.3. 07:00 | Zajímavý článek

Ars Technica rozebírá na open source cílenou FUD zprávu, kterou v reakci na začlenění ovladače pro souborový systém exFAT do jádra Linux (posvěcené Microsoftem) šíří firma Paragon Software, která nabízí mj. alternativní, komerční ovladače exFAT.

Fluttershy, yay! | Komentářů: 20
25.3. 14:55 | Upozornění

S touto zprávičkou bylo na AbcLinuxu vydáno přesně 25 000 zpráviček. První z nich vyšla 4. října 2003. Leoš Literák v ní oznámil, že AbcLinuxu nově podporuje také zprávičky.

Ladislav Hagara | Komentářů: 34
Se kterými dopady COVID-19 už jste se přímo osobně setkali?
 (3%)
 (53%)
 (38%)
 (38%)
 (36%)
 (6%)
 (20%)
Celkem 420 hlasů
 Komentářů: 42, poslední dnes 15:35
Rozcestník

TeX

TODO
Informace o skupině
Založena: 24. 8. 2008
Členů: 47
Článků: 0
Wiki stránek: 1
Dotazů: 108
Akcí: 0
Čtenost: 35 %
Skóre: 29

www.AutoDoc.Cz

Dotaz: pdflatex: dělení slov v uvozovkách

23.12.2016 14:34 mirek19 | skóre: 4
pdflatex: dělení slov v uvozovkách
Přečteno: 1314×
Všechny srdečně zdravím. Narazil jsem na problém, že první slovo textu po uzavření do uvozovek, např. \uv{nejvyšší ...} se přestane dělit. Už jsem podobný problém řešil, tak vím, čím to asi je a zkusil jsem před dělené slovo vložit mezeru : \uv{ nejvyšší}. Podle předpokladu se slovo rozdělilo správně. Jen mezera mezi levými uvozovkami a slovem ja trapas. Tak jsem mezeru nahradil \uv{\hspace[0pt}nejvyšší} a už to vypadá dobře. Jenže vkládat \hspace všude (nevím, který text se během úprav dostane na konec řádku) se mi nechce a navíc se obávám, že se takto může stát, že řádek se zlomí tak, že uvozovky budou jako poslední znak na řádku a text začne na řádku novém. Vyzkoušel jsem pár jiných maker v této situaci (např. \textbf{}) a tento problém se nikde neobjevil.

Nevíte někdo, co s tím, popřípadě, je-li to chyba makra jako takového, na koho se obrátit s žádostí o úpravu? Používám Fedoru 23 a texlive přímo z této distribuce.

Odpovědi

wamba avatar 23.12.2016 16:11 wamba | skóre: 38 | blog: wamba
Rozbalit Rozbalit vše Re: pdflatex: dělení slov v uvozovkách
hm skutečně to tak dělá, není třeba v českém pravopise takové pravidlo? Nicméně můžete redefinovat \uv:

např. \renewcommand\uv[1]{\quotedblbase #1\textquotedblleft
This would have been so hard to fix when you don't know that there is in fact an easy fix.
23.12.2016 19:06 Filip Jirsák | skóre: 67 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: pdflatex: dělení slov v uvozovkách
není třeba v českém pravopise takové pravidlo?
Není. (A nebylo by to pravidlo v pravopise, ale v typografických zvyklostech, ale není ani tam.) Spíš bych to viděl na technický problém, jestli se třeba místa možného dělení neurčují před aplikací maker nebo uvozovka není považována za součást slova (neznámý znak) a pak se nedokáže pro dané slovo najít místo pro dělení? Nechovají se takhle i jiná makra? Platí to samé i pro poslední slovo (i když neznámý znak na konci slova by dělení nemusel vadit)? Chová se to stejně, i když místa pro dělení vyznačíte přímo v textu (aby to nezáviselo na algoritmickém dělení nebo na slovníku)?
24.12.2016 00:12 mirek19 | skóre: 4
Rozbalit Rozbalit vše Re: pdflatex: dělení slov v uvozovkách
1. Zkoušel jsem několik jiných maker a žádné se tak nezachovalo.

2. Poslední slovo se vždy dělí v pořádku, jak má.

3. V případě přímo vyznačených míst pro dělení \uv{nev\-vyš\-ší} je slovo děleno normálně, jak má.

4. Jak jsem psal, řešil jsem dřív podobný problém v diskusi: https://groups.google.com/forum/#!topic/cz.comp.cstex/U-v-o44UofI, kdy se nedělilo slovo za příkazem \marginpar{} . Nakonec to vyřešilo odstranění mezery před \marginpar{}. V podstatě šlo o to, že makro \marginpar{} vložilo před následující slovo něco, co způsobilo, že TeX to slovo pak nepovažuje za vhodné k dělení. Pokud je i v případě \uv{} ten samý důvod, tak tu ovšem neplatí to samé řešení, protože v případě \marginpar{} byl problém mezi makrem a následujícím slovem, a tedy šel řešit naúrovni textu, jenže tady je problém uvnitř makra \uv{}, a tedy na úrovni textu neřešitelný (vložení mezery nepovažuji za řešení, redefinice makra není na úrovni textu).
24.12.2016 09:41 Filip Jirsák | skóre: 67 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: pdflatex: dělení slov v uvozovkách
Předpokládám, že je to tedy tím, že se uvozovky (nebo něco jiného) berou jako součást slova, a tím pádem nefunguje algoritmus pro určení míst dělení slova nebo vyhledávání ve slovníku (podobně jako ten \marginpar{}). Napadá mne jediné, co by to makro mohlo dělat víc, než jen vkládat uvozovky – dělat „zavěšené uvozovky“, tj. uvozovky na začátku nebo na konci řádku vysouvat mírně za okraj textu. Dělá se to tak s interpunkcí na konci řádku, protože interpunkce dělá na řádku hlavně bílé místo, takže když vyjde na okraj a nevysune se ven, vypadá to, že je tam v okraji textu „zub“. V případě počátečních uvozovek pak má smysl dělat to samé na začátku řádku.
24.12.2016 11:16 mirek19 | skóre: 4
Rozbalit Rozbalit vše Re: pdflatex: dělení slov v uvozovkách
Ano, rozumím. Nicméně stále zůstává otázka, co s tím... Napadá mě jedině obrátit se na někoho, kdo je schopen makro \uv{} upravit.
24.12.2016 11:18 ttt
Rozbalit Rozbalit vše Re: pdflatex: dělení slov v uvozovkách
Předpokládám, že je to tedy tím, že se uvozovky (nebo něco jiného) berou jako součást slova
Spíš ne. Jako součást slova se berou znaky, které mají nenulový [pre]\lccode[/pre], tedy převoditelné na malé písmeno. Problém bude v podmínkách, kdy je možné slovo dělit. Musí (mimo jiné)

• před slovem (po přeskočení dalších znaků*) být mezera typu hglue.

• za slovem (po přeskočení dalších znaků*) nebýt linka, box nebo písmeno.

* další znak je znak s nulovým \lccode

Tipuju, že samotné \uv bude v pořádku, ale problém bude až s uvozovkami, které jsou vkládané pomocí \clqq, \crqq. Našel jsem několik definic, ale nebyl jsem moudrý z toho, která se používá., zobrazit se mi to nepodařilo. Mezi nimi i takové, které obsah obalily do boxu, který zabrání dělení. Kromě zavěšených uvozovek třeba zachovávají spacefactor (řídí velikost mezery) tak, aby se řídil podle posledního písmene nebo posunují uvozovky o fous doleva/doprava.

24.12.2016 13:39 mirek19 | skóre: 4
Rozbalit Rozbalit vše Re: pdflatex: dělení slov v uvozovkách
Ano, tohle je ai nejpřesnější. Ovšem z mého pohledu ne příliš znalého uživatele je jedno, jestli problém je v makru nebo v uvozovkách. Prostě je mimo úroveň textu a bylo by fajn najít řešení.

Pro mě je jediná možnost pokaždé projít závěrečnou verzi textu a doplnit ručně místa k dělení na patřičná místa. A pak znovu, protože tím doplněním se změnil zlom, takže se na konec řádku mohla dostat jiná slova. Ale takto přijdu jen na ta místa, kde se nezlomené slovo vysadí částečně za okraj textu (overfull hbox). Na jiných místech se vysází nezlomená slova korektně, ale sazba není tak dobrá, jak by mohla, což je škoda.
25.12.2016 03:23 ttt
Rozbalit Rozbalit vše Re: pdflatex: dělení slov v uvozovkách
Makro \uv je definované* jako {\leavevmode \clqq #1\crqq }. \leavevmode řeší problém na začátku odstavce. Pak je potřeba zjistit, co dělá problém, jestli \clqq nebo \crqq nebo obojí - podíval jsem se, jak se to chová, když to odeberu. Ukázalo se, ze \clqq. Patrně tedy končí něčím jiným než mezerou typu glue*. Co s tím?

Nacpat tam mezeru nulové velikosti, která se nijak neprojeví. Tedy to, co jsi experimentálně zjistil. Tím se vyřeší problém s rozdělením slova, ale jak správně píšeš, vznikne nový - v této mezeře může nastat řádkový zlom a uvozovky zůstanou jako poslední znak na řádku. To už má jednoduché řešení, před tu mezeru se vloží \nobreak, což zamezí zlomu. Pokud jsem nic neopomněl, je korektní řešení předefinovat \uv jako {\leavevmode\clqq\nobreak\hskip0pt #1\crqq}

--

* Ve skutečnosti je tam ještě test, jestli to neběží v kompabilním módu. Příkaz, jak zjistit, jestli expanduje na výše uvedené je pár příspěvků níž.

** Může se lišit podle použitých balíků, zkoušel jsem to s kombinací
\documentclass[a4]{article}
\usepackage[czech]{babel}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
S takovou kombinací je \clqq definované jako {\kern.1em\quotedblbase\kern-.0158em\relax}, tedy skutečně končí kernem, ne mezerou typu glue.
25.12.2016 14:11 mirek19 | skóre: 4
Rozbalit Rozbalit vše Re: pdflatex: dělení slov v uvozovkách
Jo, tak se to zdá být vyřešené. Mám přesně tu zkoušenou kombinaci, jen místo article používám book. Trochu mě překvapuje, že se definice uvozovek mění podle jiných balíků, ale už se ničemu nedivím a věřím, že to má své důvody (ještě jsem se nesetkal s ničím bezdůvodným v těchto případech).

V této souvislosti ještě řeším vnoření uvozovek. Makro \uviq mi nefunguje a nefunguje. Ale pokud si nadefinuju vnořené uvozovky stejným způsobem jako je uvedená redefinice \uv jen použiju \clq, \crq, \frqq, flqq tak by to mělo fungovat taky korektně. Mám pravdu? Jen si musím ručně ohlídat úroveň, popřípadě dodefinovat nějaký čítač, což by taky mělo být v pohodě.

Díky
23.12.2016 23:52 mirek19 | skóre: 4
Rozbalit Rozbalit vše Re: pdflatex: dělení slov v uvozovkách
Ano, redefinice věc vyřešila. Ale nedělá původní makro ještě něco jiného, je opravdu tak jednoduché? Co si vzpomínám, tak se v něm řeší nějaký problémy na krajích odstavců nebo tak něco..... Ale to fakt nevím.
24.12.2016 02:58 ttt
Rozbalit Rozbalit vše Re: pdflatex: dělení slov v uvozovkách
Co makro uv dělá lze zjistit pomocí \expandafter\show\csname uv \endcsname. V mém případě nic navíc:
> \uv =\long macro:
#1->{\leavevmode \clqq #1\crqq }.
pavlix avatar 24.12.2016 00:09 pavlix | skóre: 54 | blog: pavlix
Rozbalit Rozbalit vše Re: pdflatex: dělení slov v uvozovkách
Není lepší tam ty uvozovky narvat rovnou? Mimochodem já to pořád tvrdím, že je tex bullshit (i když pořád asi nejlepší, co máme) a že by se to nemělo přeceňovat.
Já už tu vlastně ani nejsem. Abclinuxu umřelo.
24.12.2016 11:57 ttt
Rozbalit Rozbalit vše Re: pdflatex: dělení slov v uvozovkách
Myslím si, že jsem tu okolo 3 hodiny ranní poslal příspěvek se vzorovým kódem, kde mi dělení funguje, ale obsahoval i anglickou citaci z TexBooku. Nemohl skončit ve spamu? Taky jsem ho mohl neodeslat ... Zajímá mě ten zdroják, po ránu se mi nedaří replikovat, ale tehdy to určitě fungovalo.

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267   www.czech-server.cz
© 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.