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 00:11 | Nová verze

    Open source modální textový editor Helix, inspirovaný editory Vim, Neovim či Kakoune, byl vydán ve verzi 25.07. Přehled novinek se záznamy terminálových sezení v asciinema v oznámení na webu. Detailně v CHANGELOGu na GitHubu.

    Ladislav Hagara | Komentářů: 0
    včera 20:44 | IT novinky

    Americký výrobce čipů Nvidia získal od vlády prezidenta Donalda Trumpa souhlas s prodejem svých pokročilých počítačových čipů používaných k vývoji umělé inteligence (AI) H20 do Číny. Prodej těchto čipů speciálně upravených pro čínský trh by tak mohl být brzy obnoven, uvedla firma na svém blogu. Americká vláda zakázala prodej v dubnu, v době eskalace obchodního sporu mezi oběma zeměmi. Tehdy to zdůvodnila obavami, že by čipy mohla využívat čínská armáda.

    Ladislav Hagara | Komentářů: 3
    včera 17:22 | Nová verze

    3D software Blender byl vydán ve verzi 4.5 s prodlouženou podporou. Podrobnosti v poznámkách k vydání. Videopředstavení na YouTube.

    Ladislav Hagara | Komentářů: 0
    14.7. 22:22 | Komunita

    Open source webový aplikační framework Django slaví 20. narozeniny.

    Ladislav Hagara | Komentářů: 0
    14.7. 16:11 | Komunita

    V Brestu dnes začala konference vývojářů a uživatelů linuxové distribuce Debian DebConf25. Na programu je řada zajímavých přednášek. Sledovat je lze online.

    Ladislav Hagara | Komentářů: 0
    14.7. 11:33 | IT novinky

    Před 30 lety, tj. 14. července 1995, se začala používat přípona .mp3 pro soubory s hudbou komprimovanou pomocí MPEG-2 Audio Layer 3.

    Ladislav Hagara | Komentářů: 26
    14.7. 10:55 | IT novinky

    Výroba 8bitových domácích počítačů Commodore 64 byla ukončena v dubnu 1994. Po více než 30 letech byl představen nový oficiální Commodore 64 Ultimate (YouTube). S deskou postavenou na FPGA. Ve 3 edicích v ceně od 299 dolarů a plánovaným dodáním v říjnu a listopadu letošního roku.

    Ladislav Hagara | Komentářů: 20
    13.7. 17:55 | Zajímavý projekt

    Společnost Hugging Face ve spolupráci se společností Pollen Robotics představila open source robota Reachy Mini (YouTube). Předobjednat lze lite verzi za 299 dolarů a wireless verzi s Raspberry Pi 5 za 449 dolarů.

    Ladislav Hagara | Komentářů: 17
    11.7. 16:44 | Komunita

    Dnes v 17:30 bude oficiálně vydána open source počítačová hra DOGWALK vytvořena v 3D softwaru Blender a herním enginu Godot. Release party proběhne na YouTube od 17:00.

    Ladislav Hagara | Komentářů: 3
    11.7. 14:55 | Humor

    McDonald's se spojil se společností Paradox a pracovníky nabírá také pomocí AI řešení s virtuální asistentkou Olivii běžící na webu McHire. Ian Carroll a Sam Curry se na toto AI řešení blíže podívali a opravdu je překvapilo, že se mohli přihlásit pomocí jména 123456 a hesla 123456 a získat přístup k údajům o 64 milionech uchazečů o práci.

    Ladislav Hagara | Komentářů: 16
    Jaký je váš oblíbený skriptovací jazyk?
     (59%)
     (26%)
     (7%)
     (3%)
     (1%)
     (1%)
     (4%)
    Celkem 399 hlasů
     Komentářů: 16, poslední 8.6. 21:05
    Rozcestník

    Dotaz: plainTeX - jak spočítat řádky na stránkách

    5.7.2007 15:27 Jiri Tomasek
    plainTeX - jak spočítat řádky na stránkách
    Přečteno: 493×
    Zdravím,

    chci upravit tex soubor tak, aby spočítal řádky a znaky na stránce a nějak získaná data uchoval.

    Napadlo mě, že bych mohl po vytisknutí každého tokenu testovat, zda za ním tex vytiskne nový řádek nebo novou stránku a takto jen inkrementovat příslušné hodnoty.

    Takže můj dotaz zní: Jak otestuji, že tex na aktuální pozici vytiskne nový řádek/stránku? Nebo nešlo by to celé jednoduššeji?

    Díky všem za odpovědi

    Odpovědi

    5.7.2007 15:40 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: plainTeX - jak spočítat řádky na stránkách

    TeX funguje trochu jinak, než si představujete, tedy úplně jinak, než když píšete na stroji. V okamžiku, kdy se řeší stránkový zlom, už nepracujete s jednotlivými znaky, ale s nalámanými řádky. Teoreticky byste úpravou zdrojáku TeXu mohl nějaké počítání znaků a řádků zavést, ale bylo potřeba ošetřit tolik výjimek a speciálních případů, že by to stejně nemělo valný smysl. Spíš by možná stála za úvahu dodatečná analýza DVI souboru - pro začátek zkuste dvi2tty a wc.

    P.S.: jednoduše - jednodušeji

    5.7.2007 17:14 robertK | skóre: 26 | blog: Klokanuv_blog | Brno
    Rozbalit Rozbalit vše Re: plainTeX - jak spočítat řádky na stránkách
    ty řádky na stránce by se daly spočítat ve výstupní rutině. musel byste rozebrat box 255 na řádky pomocí unpenlaty, unskip a removelastbox (nebo tak nějak, možná si ty příkazy nepamatuju přesně, je to popsáno v Texbooku naruby při popisu úpravy sazby z levého na pravý praporek).
    5.7.2007 20:51 Jiri Tomasek
    Rozbalit Rozbalit vše Re: plainTeX - jak spočítat řádky na stránkách
    Díval jsem se do Texbooku a mám zatím 2 nadějné postupy, zatím bohužel ani jeden nefunguje.

    Zde je 1. pokus:

    \newcount\tempnum
    \output={%
      \global\tempnum=0
      \loop \unskip \unpenalty \setbox2=\lastbox \the\box2
         \advance\tempnum by1
      \if ?? \repeat
    }
    

    Pokouším se vždycky přečíst řádek, vypsat ho a inkrementovat \tempnum.

    Ale zasekl jsem se... Jak mám ukončit ten cyklus, když už nemám odkud brát boxy?

    [2. postup by využíval \prevgraf, kde, jak jsem zjistil, je po přečtení každého odstavce počet jeho řádků, ale nastal podobný problém jako u 1. řešení. Ale toto řešení je možná zbytečně složité.]
    6.7.2007 12:35 robertK | skóre: 26 | blog: Klokanuv_blog | Brno
    Rozbalit Rozbalit vše Re: plainTeX - jak spočítat řádky na stránkách
    Je tam nejaky primitiv ifvoid, ktery testuje jestli je box prazdny

    Fakt se mi to nechce zkouset, jenom bych se inspiroval makrem \toright, ktere je v Texbooku naruby na strane 265. Vzal bych ho tak jak je a pridal bych tam pocitani radku. Inkrementoval bych pro jistotu pomoci global a citac s poctem radku bych nuloval pri kazdem vyvolani output rutiny.
    7.7.2007 12:20 Jiri Tomasek
    Rozbalit Rozbalit vše Re: plainTeX - jak spočítat řádky na stránkách
    Tak mám 1. funkční verzi. Pořádně ale nechápu, proč se tam tolik řeší glue, asi by to šlo i nějak lépe.

    \newcount\linenum
    \global\linenum=0 
    
    \output={%
      \setbox1=\vbox{%
          \unvbox255
          \skip0=\lastskip
          \unskip
          \global\setbox255=\vbox{\vskip\skip0}
          \loop \setbox0=\lastbox \skip0=\lastskip \unskip
              \advance\skip0 by\lastskip \unskip
              \advance\skip0 by\lastskip \unskip \unpenalty
              \ifhbox0 \setbox0=\hbox to\hsize{\unhbox0}
              \global\setbox255=\vbox{\vskip\skip0 \box0 \unvbox255}
              \global\advance\linenum by1
          \repeat
      }%
      \wlog{RADKU:\the\linenum}
      \global\linenum=0
      \plainoutput
    }
    

    Ještě bych se rád zeptal na tyto úseky:

    \global\setbox255=\vbox{\vskip\skip0} - proč to zaručí, že bude ve výsledku všude správně glue?

    \setbox1=\vbox{...} - box1 nikde nepoužívám, k čemu je tohle dobré?

    A ještě nechápu, proč to tiskne vždycky o řádek víc, než má stránka ve skutečnosti. Je to proto, že to počítá i číslo stránky?
    7.7.2007 23:50 robertK | skóre: 26 | blog: Klokanuv_blog | Brno
    Rozbalit Rozbalit vše Re: plainTeX - jak spočítat řádky na stránkách
    A ještě nechápu, proč to tiskne vždycky o řádek víc, než má stránka ve skutečnosti. 
    Je to proto, že to počítá i číslo stránky?
    Asi to tak bude, v tom boxuje i zahlavi a zapati. Na ostatni otazky doporucuji cz.comp.cstex.
    8.7.2007 09:20 Jiri Tomasek
    Rozbalit Rozbalit vše Re: plainTeX - jak spočítat řádky na stránkách
    OK, díky za všechny informace

    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.