neděle 7. listopadu 2010

Jednoznakové předložky v Adobe InDesign ošetřeny pomocí GREP v definici odstavcového stylu

Jednoznakové předložky dělají při DTP problémy od nepaměti. Snad žádný program je sám od sebe nikdy neošetřoval a bylo třeba vždy používat buďto nějaký modul, plugin, nebo i externí prográmek, kterým se musel text před sazbou upravit. Adobe InDesign ovšem od verze CS3 disponuje úúúúúúúúúžasnou věcí a tou je GREP - takové jako regulární výrazy. V CS3 je sice implementován jen ve vyhledávání, ale od verze CS4 je GREP i v definici odstavcových stylů. V návodu pro InDesign CS4 je to popsáno v kapitole Vytváření stylů GREP, kde najdete popis i odkazy na videa a další návody, jako třeba 5 Cool Things You Can Do with GREP Styles.

Princip práce s GREPem v definici odstavců je jednoduchý - nejdříve si nadefinujte znakový styl, potom si v odstavcovém stylu nadefinujete jaký text se má v textu vyhledávat a automaticky ostylovávat tím kterým znakovým stylem. Ač "ručně" to nelze, GREP znakové styly umožňuje kombinovat.

A právě tohoto lze využít kromě různých "hrátek" také k přilepování jednoznakových předložek. Nejdříve si nadefinujte znakový styl, třeba "nobreak", který má zakázáno rozdělní slov.


Potom do odstavcového stylu, nejlépe toho, ze kterého pak budete odvozovat všechny ostatní, nadefinujte, co všechno by se nemělo dělit, včetně dohledání jednoznakových předložek jednoduchým výrazem
(\<[szkvaiouSZKVAIOU]) \<


V této definici je dále i nedělení čísel s mezerou uvnitř, primitivní nedělení jednotek za číslem, nerozdělení procentní hodnoty a nerozdělování zkratky "o. s." A vše zaručeně funguje. Samo. Automaticky.

(Pokud máte pořád jen InDesign CS3, musíte si vystačit s ruční obluhou "Hledat a nahradit".)

Předložkám či GREPu se také věnují texty Jednoznakové předložky, InDesign a GREP a Adobe InDesign CS3 zblízka: GREP.

3 komentáře:

  1. díky moc, opravdu prijemna vychytavka. jana p.

    OdpovědětVymazat
  2. Dobrý deň, vyzerá dobre, ale vymyslel som taký GREP Find/Change, že nájde len spojky, ktoré ich ja definujem, a Change to bude len "nonbreakable space":
    Find what bude:
    (((?<=([ ][vV][o])) )|((?<=([ ][nN][a])) )|((?<=([ ][bB][ez])) )|((?<=([ ][cC][ez])) )|((?<=([ ][dD][o]))

    )|((?<=([ ][kK])) )|((?<=([ ][nN][ad])) )|((?<=([ ][oO])) )|((?<=([ ][oO][d])) )|((?<=([ ][pP][o])) )|((?<=

    ([ ][pP][od])) )|((?<=([ ][pP][re])) )|((?<=([ ][pP][ri])) )|((?<=([ ][sS])) )|((?<=([ ][uU])) )|((?<=([ ]

    [vV])) )|((?<=([ ][zZ])) )|((?<=([ ][zZ][a])) )|((?<=([ ][kK][u])) )|((?<=([ ][zZ][o])) )|((?<=([ ][aA]))

    )|((?<=([ ][sS][o])) ))

    OdpovědětVymazat

MAKE Magazine

Technology Review RSS Feeds

Nejčtenější příspěvky