Zalomení: plugin do WordPressu pro předložky k, s, v, z

Rubrika: WordPress — 31. 7. 2009 — Vytisknout Vytisknout

Začnu citací z webových stránek Ústavu pro jazyk český, Akademie věd České Republiky:

Upravujeme-li písemný dokument, radí nám Pravidla českého pravopisu nepsat neslabičné předložky v, s, z, k na konec řádku, ale psát je na stejný řádek se slovem, které nese přízvuk (např. ve spojení k mostu, s bratrem, v Plzni, z nádraží). Typografické normy jsou ještě přísnější: podle některých je nepatřičné ponechat na konci řádku jakékoli jednopísmenné slovo, tedy také předložky a spojky a, i, o, u;. Někteří pisatelé dokonce nechtějí z estetických důvodů ponechávat na konci řádků jakékoli jednoslabičné výrazy (např. ve, ke, ku, že, na, do, od, pod).

Takže jednoduše, předložky k, s, vz by neměly zůstat trčet osamocené na konci řádku jako poslední slovo, ale měly by být dohromady na jednom řádku se slovem, kterému předcházejí, tedy měly by se přesunout na další řádek. Velice dobře si vzpomínám, jak jsme se toto pravidlo učili ve škole v češtině a jak byla tato chyba při diktátech a slohových prací zakroužkována červenou propiskou a známka byla hned horší. Ale ono to má svůj smysl, aby tomu tak bylo, text je totiž lépe čitelný.

Tato záležitost samozřejmě nedělá problém jen školákům, ale také (nebo spíš především) počítačovým programům. Pamatuji se, jaká sláva to byla, když MS Word začal toto reflektovat a za uvedené předložky začal automaticky vkládat tvrdou mezeru. Jedná se ovšem o výjimku a většina systémů toto neumí. Samozřejmě je vhodné, aby toto uměl právě počítačový program a neřešil to uživatel. Je skutečně zapotřebí dát tvrdou mezeru za každou tuto předložku, nejen za ty, které zůstaly trčet na koncích řádků (důvodem je, že dopsáním další věty doprostřed odstavce nebo změnou šířky sloupce se celý text přeformátuje a muselo by se to dělat znova). A to po uživateli nelze chtít.

Řekněme si na rovinu, že z typografického hlediska není tvrdá mezera vůbec vhodným řešením. Tvrdá mezera je totiž definována jako nedělitelná mezera o šířce písmene ‘n’. Proto pokud si ve Wordu nastavíte zarovnání odstavce k oběma okrajům, můžete si všimnout, jak se běžné mezery mezi jednotlivými slovy natáhly, ale pozor, tvrdé mezery po neslabičných předložkách zůstaly stále stejně široké jako písmena. Vypadá to hloupě, ale bohužel Word jiné řešení neumí. Skutečné sazečské programy umožňují označit kus textu a nastavit, že ten nesmí být rozdělen řádkováním, a potom se mezera roztáhne na správnou šířku, ale text není rozdělen do dvou řádků. Takové je ideální řešení, ale u běžných programů na něj musíme bohužel zapomenout.

Příklad

No a protože WordPress je v tomto směru pole neorané, byl zde prostor pro to, abych vytvořil svůj druhý plugin do tohoto publikačního systému. A tak je zde a Vy si jej můžete stáhnout. Stačí ho nahrát do Vašeho WordPressu, aktivovat a voilà! Mezera za dotyčnými předložkami bude nahrazena tvrdou mezerou a nestane se, že by předložka zůstala trčet na konci řádku. Tedy texty můžete úplně normálně psát a používat klávesu mezera a plugin zajistí, že při zobrazení WordPressem bude ošetřeno případné zalomení v nežádoucím místě.

Plugin má i jednoduchou konfiguraci, kde si můžete zaškrtnout tři skupiny slov (předložky, spojky a zkratky), pro které má dojít k uvedenému zásahu a případně i specifikovat, o jaké konkrétní předložky, spojky a zkratky se jedná.

Realizace je provedena doplněním této funkcionality do již stávající funkce wp_posterize(). Proto je nahrazování prováděno jen na textech, které WordPress zpracovává touto funkcí – např. články. Texty, které nejsou touto funkcí zpracovány (např. texty ve widgetech) zůstanou tak jak jsou.

Konfigurace pluginu Zalomení

Konfigurace pluginu Zalomení

Vím, že v této chvíli plugin řeší pouze 3 z mnoha případů, kdy by bylo zapotřebí slova nerozdělit. Objemově se ovšem jedná o 99% potřebných případů — ostatní případy již nejsou tak časté. Proto nebudu slibovat, jestli některé další případy do pluginu postupně doplněním. Vyloučené to není, ale nespoléhejte na to. (Pokud by se chtěl nějaký programátor připojit a ty další případy do pluginu doplnit, ať se mi ozve mailem).

  Zalomení plug-in pro WordPress (77,1 kB, 544 stažení)

Související články na honza.info:

  1. Plug-in Zalomení zabrání rozdělení formátovaných čísel Po nějaké době používání svého plug-inu Zalomení pro publikační systém WordPress jsem objevil několik slabých míst a také nějakou další funkcionalitu, kterou bych tam chtěl mít. A tak...
  2. Plugin Zalomení aktualizován pro nový WordPress 2.9 Vyšel nový WordPress 2.9. Na internetu je o této skutečnosti spousta článků, takže nebudu zbytečně psát o tom, co se lépe dozvíte jinde. Nová verze WordPressu ovšem...
  3. Jak na české formátování čísel ve WordPressu WordPress je výborný publikační systém, a to nemám na mysli jen systém samotný, ale i češtinu, která je pro WordPress k dispozici. Bohužel zde máme jednu maličkost, která...
  4. Plugin TopList.cz umí odfiltrovat administrátory webu Před časem jsem vyrobil plugin TopList.cz pro systém WordPress, díky němuž lze snadno integrovat tuto populární českou statistickou službu do blogu založeného právě na známém...
  5. Integrace TopList.cz do WordPressu Člověk rád sleduje statistiky, jak mu chodí na stránky uživatelé. Jedním z nejoblíbenějších služeb pro tento monitoring u nás je server toplist.cz. Nejedná se sice o super detailní...

Komentáře: 7 »

  1. baron (31. 7. 2009, 16.21) TURKEY TURKEY Mozilla Firefox Mozilla Firefox 3.5.1 Windows Windows XP

    Works great, thank you

  2. zimmi (31. 7. 2009, 17.02) CZECH REPUBLIC CZECH REPUBLIC Opera Opera 9.80 Windows Windows XP

    Tak jsem dnes plugin vyzkoušel, bohužel to dopadlo takhle. Nevím proč, ale je to škoda. Běžím na WP 2.8.2

  3. honza (1. 8. 2009, 8.24) CZECH REPUBLIC CZECH REPUBLIC Google Chrome Google Chrome 3.0.193.1 Windows Windows XP

    Ahoj zimmi, zjevně je někde chyba, najdeme to, ozvu se ti na mail, který jsi uvedl při vložení komentáře.

  4. zimmi (11. 2. 2010, 16.37) CZECH REPUBLIC CZECH REPUBLIC Opera Opera 9.80 Windows Windows XP

    Zdravím,
    tak běžím na WP 2.9.1 a naprosto nic nechápu, protože na jedné instalaci (http://knihy.zimmi.cz) to funguje, a na druhé (http://www.zimmi.cz) to háže chybu a plugin nemůže být správně aktivován.
    Nevíš, jestli se to nemůže bít s něčím jiným?

  5. honza (12. 2. 2010, 11.28) CZECH REPUBLIC CZECH REPUBLIC Google Chrome Google Chrome 4.0.249.89 Windows Windows Server 2003

    Ahoj, už jsem se setkal s jiným uživatelem, který měl podobný problém, a pomohla tomu „reinstalace“ WordPressu na jeho webu. Od té chvíle mu to běží úplně v pohodě. Ale s čím se to mlátilo předtím, to bohužel nevím.

  6. honza (1. 3. 2010, 16.02) CZECH REPUBLIC CZECH REPUBLIC Google Chrome Google Chrome 4.0.249.89 Windows Windows Server 2003

    Tak jen stručná informace, už je to na zimmiho blogu opraveno a plugin funguje tak, jak se od něj čeká.

  7. martin (29. 4. 2010, 15.06) CZECH REPUBLIC CZECH REPUBLIC Mozilla Firefox Mozilla Firefox 3.6.3 Windows Windows XP

    Díky moc, dobrá práce.

RSS komentářů k tomuto příspěvku. TrackBack URL

Napsat komentář


Credits

Běží na systému WordPress 2.9.2 Vytvořeno s editorem UltraEdit