[cstex] Dotazy ke ConTeXtu (Layers+test znaku s diakritikou)

Jaroslav Hajtmar hajtmar at gyza.cz
Sun Apr 1 22:28:38 CEST 2007


Dobry den.

Dekuji panu Zikovi za nasmerovani ... 
http://www.pragma-ade.com/general/manuals/metafun-p.pdf bylo presne co 
jsem potreboval.
Diky i za vysvetleni vyhodnocovani podminek... to ze ConTeXt pracuje s 
aktivnimi znaky koneckoncu pan Wagner vicemene predpokladal ...

 > Zkuste \showthe\catcode`\ž
 > Obávám se, že diakritika je řešena pomocí aktivních znaků, zatímco v
 > plainu jste zvyklý na TCX tabulky, případně encTeX. V UTF-8 při
 > použití aktivních znaků se můžete dočkat ještě mnoha jiných
 > nepříjemných překvapení.>

Kazdopadne komentar pana Wagnera k UTF8 zcasti vysvetluje i to, proc mi 
nektera plainovska makra nepracuji pokud mam zapnuto kodovani UTF8 - 
proto porad pouzivam CP1250

Jeste jednou diky.
Jarda Hajtmar




Vit Zyka napsal(a):
> Jaroslav Hajtmar wrote:
>   
>> Dobry den.
>> Googloval jsem o stosest, ale nenasel jsem zadne rozumne informace o 
>> praci s Layers v ConTeXtu. Mj. nejsou ani v oficialnich manualech.
>>     
>
> Mozna je neco v menaulu o MetaFanu.
>
>   
>> Krome nekolika prikladu na http://wiki.contextgarden.net jsem nic 
>> nenasel a uzivani jednotlivych prikladu je pro mne spis experimentovanim 
>> metodou pokusu a omylu... Nekde jsem cetl, ze Layers se pouzivaji hlavne 
>> k moznosti absolutniho pozicovani objektu na strance ... rad bych se 
>>     
>
> ano, to je velmi vyhodne. Pouzivam to napriklad takto:
>
> -------------------------------
> \setupbackgrounds[text][background={color,TextBgPos,foreground,TextFrPos}]
>
> \definelayer[TextBgPos][position=no,corner=top,height=\paperheight]
> \definelayer[TextFrPos][position=no,corner=top,height=\paperheight]
>
> \def\putOn[#1](#2,#3){%
>    \doifnextcharelse[
>      {\doputOn[#1](#2,#3)}%
>      {\doputOn[#1](#2,#3)[rb]}%
> }
> \def\doputOn[#1](#2,#3)[#4]{%
>    \setlayer[#1][x=#2,y=#3,location=#4]%
> }
> \def\putOnText{\putOn[TextBgPos]}
> \def\putOverText{\putOn[TextFrPos]}
> -------------------------------
>
> Vice prikladu ve zdrojaku napr. zde
> http://source.contextgarden.net/tex/context/base/page-lyr.tex?search=layer
>
>   
>> ovsem dozvedel nekde vice informaci o moznostech tohoto nastroje,  
>> hlavne o moznosti pripadne pruhlednosti a nepruhlednosti vrstev atd ...
>>     
>
> vrstvy jsou pruhledne; pokud chtete 'videt' pod vami napsany text ci pod 
> pozadi (background), musite psat ci kreslit pruhlednou barvou (viz 
> zmineny manual o MetaFanu).
>
>   
>> Dale bych se rad zeptal na to, jak ConTeXt pracuje s primitivy \if \else 
>> \fi pri testovani ceskych znaku ...
>> Pro ukazku meho dotazu :
>>
>> \def\test#1{\if#1ž žena\else muž\fi\par}
>> \def\testA#1{\if#1m muž\else žena\fi\par}
>>
>> \test{ž}
>> \test{m}
>>     
>
> \if testuje tokeny az po uplne expanzi. Ceske znaky jsou v ConTeXtu 
> (konkretne pri vasem zadani \enableregime[cp1250]) aktivni, takze 
> porovnavate
>    \zcaron ž
>    m ž
> coz je v obou pripadech false.
>
> Lepsi je testovat takto:
>    \def\test#1{\ifx#1\zcaron žena\else muž\fi\par}
>
> nebo pro jistotu
>    \def\Myzcaron{ž}
>    \def\test#1{\ifx#1\Myzcaron žena\else muž\fi\par}
>
> S pozdravem
> Vit Zyka
>
>   
>> \testA{ž}
>> \testA{m}
>>
>> dá výsledek:
>> muž
>> muž
>> žena
>> muž
>>
>> ConTeXt mam nastaven na :
>> \enableregime[cp1250]
>> \mainlanguage[cz]
>> a textovy zdrojovy text je samozrejme kodovan v odpovidajicim kodovani. 
>> Vyse uvedeny priklad je jen zjednodusenim meho problemu (normalne 
>> testuji nejake znaky nactene z textove databaze (CSV) kodovane 
>> samozrejme v prislusnem kodovani ).
>>
>> Pripada mi,  ze ConTeXt neni schopen otestovat pismeno "ž" (obecne s 
>> diakritikou) ... Ja to samozrejme obesel druhym testem, ale jde mi o to, 
>> ze v pdfPlainu mi to prvni makro tj. makro \test funguje uplne 
>> normalne... Doplnuji i to, ze jsem zkousel experimentovat i s kodovanim 
>> a nefungovalo mi to ani pri \enableregime[utf8] Muzete mi nekdo prosim 
>> poradit v cem je asi problem?
>>
>> Diky za rady ..
>> Jarda Hajtmar
>>     
>
>
> _______________________________________________
> csTeX mailing list
> csTeX at cs.felk.cvut.cz
> http://lists.felk.cvut.cz/mailman/listinfo/cstex
>
>
>
>   



More information about the csTeX mailing list