• úvod
  • témata
  • události
  • tržiště
  • diskuze
  • nástěnka
  • přihlásit
    registrace
    ztracené heslo?
    DZAMLINGTitulkování profesionálně
    ESL
    ESL --- ---
    JIRZA: Já myslím, že Dzamling prostě chce mít i jedno makro, které jen kontroluje délku řádků. :o) Tady na konci to přece psal:

    DZAMLING
    JIRZA
    JIRZA --- ---
    DZAMLING: vždyť jste tak chtěli to mazání mezer :-)
    na začátek následujících řádků dej apostrof, je to hned na začátku:

    1:
    Application.Run MacroName:="Mezera_na_konci"
    If nasel Then
    Selection.HomeKey Unit:=wdStory
    GoTo 1
    End If

    To tě tak zdržuje nebo je prostě nechceš mazat?
    DZAMLING
    DZAMLING --- ---
    JIRZA: Super! Funguje! Myslím, že to spoustě lidí hodně usnadní práci. Ještě se zeptám: Kdybych chtěl, aby makro Delka jen kontrolovala délky řádků a nemazala ty mezery, co mám z makra vymazat?

    VANEK: Jasně, ale myslím, že hlavně na tu kontrolu počtu znaků se makro vyplatí.

    Nicméně nevíte někdo, co mám zadat, když chci najít řádky řekněme s více než 40 znaky? Jak psal FRANCIK o tom zadání ".{40}", tak mně to nefunguje. Když zadám "?{40}", tak to nefunguje taky, protože za "?" je považován i konec odstavce. Prostě nevím, jak zadat "jakýkoliv znak včetně mezery, nikoliv však konec odstavce".
    JIRZA
    JIRZA --- ---
    vyzkoušejte si to, jestli je to, co jste aspoň částečně chtěli: soubor ke stažení. Ještě tam chybí ta kontrola na tři a více řádek.
    VANEK
    VANEK --- ---
    DZAMLING + DZAMLING: Na druhou stranu, i většina těch ostatních věcí se dá udělat ručním zadáním příslušného regexpu do vyhledávání, ale opakovat to vždycky ručně je otrava; ten jeden-dva search+replace navíc už by nebyl nic proti ničemu.
    DZAMLING
    DZAMLING --- ---
    JIRZA: Uvidíme. Vyzkoušíme.
    JIRZA
    JIRZA --- ---
    DZAMLING: nejsem si tím docela jist. já mám v tuto chvíli jen verzi 2007. Ale snad to bude fungovat.
    DZAMLING
    DZAMLING --- ---
    JIRZA: Já 2003. Proboha, ono na tom záleží? Já myslel, že makra jsou univerzální.
    JIRZA
    JIRZA --- ---
    DZAMLING: zapomněl jsem se zeptat, jakou verzi používáte?
    DZAMLING
    DZAMLING --- ---
    Abych to shrnul, přípustné je tohle:

    max x znaků (enter)
    (enter)

    nebo

    max x znaků (enter)
    max x znaků (enter)
    (enter)

    A nikdy by nemělo nastat:

    (mezera)(enter)

    Ale jak říkám. Není to vysloveně nutné, protože si to každý může najít jako ^32^13 nebo mezera^p
    DZAMLING
    DZAMLING --- ---
    JIRZA: Super. To zvýraznění odstavce delšího než x znaků je to úplně nejdůležitější a ostatní je spíš už taková třešnička na dortu. Někdy ale může bejt lepší přídání hvězdičky. Bylo by těžké udělat druhou variantu, která by netučnila text, ale přidávala tu hvězdičku? (Snadno pak člověk ta místa najde, když zadá Vyhledej *. S tučným textem je to složitější - muselo by se zadat Vyhledej jakýkoliv znak Styl tučně.)

    Ad 2. V některých programech nastává problém, když jednotlivé titulky nejsou oddělené prázdným řádkem, tzn. když za každým titulkem nejsou dva entery. To znamená, když na tom dělícím řádku je třeba jen jedna mezera. Není vidět, ale v kině může způsobit malér.

    Ad 3. Vždycky by mělo nastat jedině to, že bude jeden nebo dva textové řádky, pak prázdný řádek a znova. Nikdy ne tři textové řádky.

    Každopádně jak říkám, tohle člověk celkem snadno zjistí zrakem. Nejdůležitější je ta kontrola maximálního počtu znaků na řádek. Takže kdybys tam doplňoval ty další funkce, nech prosím i původní makro jen s tou první funkcí.
    ESL
    ESL --- ---
    JIRZA: Já myslím, že 2. bylo myšleno jako mezera na konci řádku, tj. pokud řádek nekončí znakem, ale jednou nebo více mezerami, mezery mají jít do pryč.

    A ta 3. - makro by mělo ohlídat, jestli je všude jeden nebo dva řádky textu a po něm/nich jeden řádek prázdný. Tj. pokud jsou třeba tři řádky textu, mělo by je to označit nějakým znakem (třeba tou hvězdičkou, nebo klidně i tím boldem), aby se člověk mohl podívat a sám už rozhodnout, jak s tím ručně naloží - tj. kde má být mezititulkový předěl - to stroj sám nepozná. A pokud někde bude místo prázdného řádku řádků víc, má je to smrsknout právě na ten jeden prázdný řádek. (Je to srozumitelné? Já mám pocit, že se dneska vyjadřuju nedosti jasně.)
    JIRZA
    JIRZA --- ---
    DZAMLING: a teď k tomu co navrhujte:
    1. to teoreticky splňuju, jen tam nevkládám znaky navíc
    2. jsem tak úplně nepochopil. Vymazat mezeru i když je právě jen jedna? Dej mi nějakej příklad. Dvě mezery za sebou chápu.
    3. Teoreticky chápu, ale jak si představuješ, že budou odděleny řádky v tom dvojřádku, aby makro poznalo, že mezi ně nemá vložit řádek?
    JIRZA
    JIRZA --- ---
    DZAMLING: jo, dokázal. Zatím jsem něco zkoušel - aby to prošlo celej text a tam, kde ma odstavec víc jak x znaků, to ten odstavec zvýrazní (místo normálního fontu, použije bold) a druhé makro pak vrátí ten bold zpátky.
    Zdá se mi jednodušší zrakem dohledat zvýrazněný tučný odstavec. Na začátku se to zeptá kolik znaků má kontrolovat, jako default je nastaveno 40 a stačí to odklepout entrem, na konci makra to napíše o kolik odstavců se jedná.
    DZAMLING
    DZAMLING --- ---
    ESL: OK, tak já se to pokusím zobecnit. Navrhoval bych následující specifikaci.

    1. Pokud je mezi dvěma konci odstavce více než 40 znaků (včetně mezer), pak za tyto znaky bez mezery (před ten druhý konec odstavce) přidat hvězdičku.

    2. Vymazat mezery z řádků (tzn. v prostoru mezi dvěma konci odstavce), kde je právě jen jedna nebo víc mezer.

    3. Zkontrolovat, zda celý soubor vypadá tak, že je vždy jeden řádek nebo dvouřádek následovaný prázdným řádkem (tzn. 2 x enter) a pak zase další řádek/dvouřádek. Tzn. tam, kde jsou po sobě víc než dva textové řádky, vložit opět hvězdičku, a z dvou nebo více prázdných řádků udělat jeden.

    Kontrolu dvojmezer bych tam osobně nedával, protože to může člověk udělat snadno pomocí Ctrl+H / dvě mezery / jedna mezera. Troj- a víceřádky bych taky automaticky nenechával dělit, protože je podle mě lepší, když se na to člověk podívá a vyřeší to podle svého rozhodnutí.

    JIRZA, ty bys to makro dokázal vytvořit?
    ESL
    ESL --- ---
    DZAMLING: Já jsem měla nějaké takové, které to dávalo do správného fontu, mám dojem, kontrolovalo počet znaků a strukturu jeden řádek titulek + jeden řádek volný nebo dva řádky titulek a jeden řádek volný a taky to rušilo dvojmezery. Samo to rušilo mezery navíc a volné řádky navíc a vkládalo to volný řádek tam, kde nebyl, ale měl být. A kde bylo víc znaků na řádek, než bylo třeba, psalo to hvězdičku - snadno se vyhledává. Doufám, že nemotám víc věcí naráz, já jsem měla těch pomocníčků na různé texty víc.
    DZAMLING
    DZAMLING --- ---
    JIRZA: Dovolím si navrhnout, co by makro mělo umět, ale ať mě doplní FRANCIK.

    Podle mě stačí takto: Pokud je mezi dvěma konci odstavce více než 40 znaků (včetně mezer), pak za ně bez mezery (před ten druhý konec odstavce) přidat řekněme _!

    Například:

    Původně:
    Dopadlo to ale tak, že všechno dělala sama.

    Po projetí makrem:
    Dopadlo to ale tak, že všechno dělala sama._!

    A dál bych navrhoval zkontrolovat, jestli v textu nejsou řádky obsahující jen mezery, tzn. jestli někde mezi dvěma konci odstavce není jedna či více mezer. Tam by se taky mohlo přilepit _!

    ESL, doplníš nebo specifikuješ, co přesně dělalo to tvoje makro?
    JIRZA
    JIRZA --- ---
    FRANCIK: napiš co chceš, aby ti to makro přesně udělalo.
    DZAMLING
    DZAMLING --- ---
    FRANCIK: Mně to nefunguje :-(. Fakt stačí napsat jenom .{40}? Má být zaškrtnuté "Použít zástupné znaky"?
    FRANCIK
    FRANCIK --- ---
    Tak jsem makro nevyprosil. Získal jsem ale aspoň jeden trik, jak řádky přes 40 znaků najít a zvýraznit. Do hledáníá stačí napsat ".{40}". (A zaškrtnout zvýraznit všechny položky nalezené...)
    A funguje ve Wordu i v OpenOffice.
    Kliknutím sem můžete změnit nastavení reklam