EncTeX a Win32 [Re: encTeX -- moznost prekodovani vstupu pro web2c TeX]

Hans GINZEL hans at mail.kolej.mff.cuni.cz
Tue Sep 16 20:38:33 CEST 1997



On Tue, 9 Sep 1997, [ISO-8859-2] Vladimír Solnický {Vladimir Solnicky} wrote:

> On Tue, 9 Sep 1997, Jiri Osoba wrote:
> 
> > Dale tam bude jeden dost zavazny problem: Konzolove aplikace ve
> > Win32 (abych byl presny, tak mam zkusenosti pouze s Win95CZ)
Windows NT bezi komplet v CP1250.
> > pouzivaji fonty nikoliv 1250 (ve kterem nejspis bude napsan vstupni
> > text), ale 852 a zpravy na terminalu tak nebudou spravne kodovane.
> > Jinak bude interpretovan i vstup z terminalu ...
> 
> > Reseni pomoci ruznych xchr a xord se mi nejevi jako nejlepsi, protoze
> > to pusobi i pro vystup do .logu ale hlavne do \write. A neustale
> > prepinat kodovani ... to by bylo prilis zavisle.
> > 

Standardni cesky windowsovsky (95) ovladac klavesnice vam v command- 
promptovem okenku ani nepovoli vstup s ceskymi znaky. Zbyva
natahnout nejaky stary klasicky dosovsky ovladac ceske klavesnice nebo
Alt+cislo znaku na numericke klavesnici. Znaky se ovsem zobrazi v Latin 2.

Samozrejme i Windows 95 se nechaji prinutit k tomu, aby v Dos-promptovem
okenku pouzivali font kodovany podle cp1250 nebo bratru Kameniku.
To asi ale neni obecne vhodne reseni.

> > Napadaji me 2 cesty:
> > 1. udelat TeX jako okenni aplikaci (aby to vypadalo jako rsxwin)
Dulezite je, aby se zachovalo "standardni chovani" programu. Mam na mysli
cteni ze standardniho vstupu, zapis na standardni vystup, moznost
presmerovavni, ...

> > 2. v tex.web uplatnit 2 kodovaci vektory - jeden pro soubory, druhy
> > pro terminal.
> 
> Obousmerne prekodovavani mezi kodovou strankou konzole a kodovou strankou
> Windows provadi dvojice standardnich funkci OemToAnsi a AnsiToOem podle
> nastaveni sytemu. Jako jedine systemove ciste reseni bych povazoval
> pouziti techto funkci (pro vystup na konzoli, pro nazvy souboru, mozna i
> pro neco dalsiho). Usetri se tim i nastaveni tohoto prevodu, protoze se v
> kazdem prostredi pouzije ten, ktery uz uzivatel stejne ma nastaveny pro
> ostatni aplikace.

Alespon me tento prevod pomoci xlateeke.bin z TeXWin.zip chodi jen ve
Windows 3.11. V 95tkach se vzdy prekodovava z/do Latin 2.

> 
> Zda je ovsem systemove cisty pristup k Windows slucitelny se cistym
> pristupem k TeXu, to nevim ...
Vstupne vystupni zalezitosti se proste nezavisle na systemu udelat nedaji.

Dalsi reseni vidim treba v pouziti nejakeho jineho (nez command.com)
hezkeho wokenkoveho shellu. Napriklad KornShel (ksh) pro Windows 32. Hral
jsem si s nim tedy jen pod NTckama.

Vzhledem k tomu, ze CP1250 a ISO Latin 2 jso shoduji v znacne casti
tabulky, lze kodovani vstupnich souboru resit jednoduse na urovni TeXu.
Staci na zacatku nacist nasledujici soubor 1250_il2.tex:

%%% Converting characters from Windows encoding
%%%    (CP1250) into ISO Latin 2 encoding.
%%% Hans GINZEL <Hans at koelj.mff.cuni.cz>

\catcode`^^89=13 \def^^89{^^8d}	% promile
\catcode`^^a7=13 \def^^a7{\S }	% section
\catcode`^^b6=13 \def^^b6{\P }	% paragraph

\catcode`^^8a=13 \def^^8a{^^a9}	% S-caron
\catcode`^^8d=13 \def^^8d{^^ab}	% T-caron
\catcode`^^8e=13 \def^^8e{^^ae}	% Z-caron
\catcode`^^9a=13 \def^^9a{^^b9}	% s-caron
\catcode`^^9d=13 \def^^9d{^^bb}	% t-caron
\catcode`^^9e=13 \def^^9e{^^be}	% z-caron
\catcode`^^bc=13 \def^^bc{^^a5}	% L-caron
\catcode`^^be=13 \def^^be{^^b5}	% l-caron

Pokud se vygeneruje format napriklad timto prikazovym radkem
%%% Example of format geanearation
% initex \let\origdump=\dump \let\dump=\endinput \input csplain.ini
%      \input 1250_il2 \let\dump=\origdump \let\origdump=\undefined \dump
nemusime dale o nic starat.
Bohuzel na terminalu a va vystupnich souborech zustavaji strisky.

Prijemne TeXani, radeji pod Unixem, preje

                                             Hans GINZEL





More information about the csTeX mailing list