%
% polish.dsi 0.2c
%
% Written by Eberhard Mattes and Janusz S. Bie\'n
%
% This data file is intended for processing Polish texts typeset with
% so called PL fonts (included in MeX distribution),
% CM fonts and PLHB.STY (available e.g. from LISTSERV@PLEARN.edu.pl
%              with the command GET PLHB STY) and
% Zlatuska's virtual fonts generated by ACCENTS programs
%
% The default output table is code page 852, the unofficial mazovia
% code is also supported; the pidginx output table renders z with
% dot as x.
%

(include plain.dsi)

(output mazovia
  pc437
  (a-ogonek 134)
  (A-ogonek 143)
  (c-acute  140)
  (C-acute  149)
  (e-ogonek 145)
  (E-ogonek 144)
  (l-stroke 146)
  (L-stroke 156)
  (n-acute  164)
  (N-acute  165)
  (o-acute  162)
  (O-acute  163)
  (s-acute  158)
  (S-acute  152)
  (z-dot    166)
  (Z-dot    161)
  (z-acute  167)
  (Z-acute  160)
)

% symbol names below are based on ISO 6937
(output pidgin
  ascii
  (A-breve        `A)
  (A-ogonek       `A)
  (C-acute        `C)
  (C-caron        `C)
  (D-caron        `D)
  (E-caron        `E)
  (E-ogonek       `E)
  (G-breve        `G)
  (L-acute        `L)
  (L-caron        `L) %Yes, this is how it is called!
  (L-stroke       `L)
  (N-acute        `N)
  (N-caron        `N)
  (eNg            `N)
  (O-double-acute `O)
  (R-acute        `R)
  (R-caron        `R)
  (S-acute        `S)
  (S-caron        `S)
  (S-cedilla      `S)
  (T-caron        `T)
  (T-cedilla      `T)
  (U-double-acute `U)
  (U-ring         `U)
  (Y-diaeresis    `Y)
  (Z-acute        `Z)
  (Z-caron        `Z)
  (Z-dot          `Z)
  (IJ             (`I `J))
  (I-dot          `I)
  (d-stroke       `d )
  (a-breve        `a)
  (a-ogonek       `a)
  (c-acute        `c)
  (c-caron        `c)
  (d-caron        `d) %Yes, this is how it is called!
  (e-caron        `e)
  (e-ogonek       `e)
  (g-breve        `g)
  (l-acute        `l)
  (l-caron        `l) %Yes, this is how it is called!
  (l-stroke       `l)
  (n-acute        `n)
  (n-caron        `n)
  (eng            `n)
  (o-double-acute `o)
  (r-acute        `r)
  (r-caron        `r)
  (s-acute        `s)
  (s-caron        `s)
  (s-cedilla      `s)
  (t-caron        `t)
  (t-cedilla      `t)
  (u-double-acute `u)
  (u-ring         `u)
  (y-diaeresis    `y)
  (z-acute        `z)
  (z-caron        `z)
  (z-dot          `z)
  (ij             (`i `j))
  (A-grave        `A)
  (A-acute        `A)
  (A-circumflex   `A)
  (A-tilde        `A)
  (A-diaeresis    `A)
  (A-ring         `A)
  (AE             (`A `E))
  (C-cedilla      `C)
  (E-grave        `E)
  (E-acute        `E)
  (E-circuflex    `E)
  (E-diaeresis    `E)
  (I-grave        `I)
  (I-acute        `I)
  (I-circumflex   `I)
  (I-diaeresis    `I)
  (D-stroke       `D) % also capital eth
  (N-tilde        `N)
  (O-grave        `O)
  (O-acute        `O)
  (O-circumflex   `O)
  (O-tilde        `O)
  (O-diaeresis    `O)
  (OE             (`O `E) )
  (O-slash        `O)
  (U-grave        `U)
  (U-acute        `U)
  (U-circumflex   `U)
  (U-diaeresis    `U)
  (Y-acute        `Y)
  (Thorn          (`T `H))
  (SS             (`S `S))
  (a-grave        `a)
  (a-acute        `a)
  (a-circumflex   `a)
  (a-tilde        `a)
  (a-diaeresis    `a)
  (a-ring         `a)
  (ae             (`a `e))
  (c-cedilla      `c)
  (e-grave        `e)
  (e-acute        `e)
  (e-circumflex   `e)
  (e-diaeresis    `e)
  (i-grave        `i)
  (i-acute        `i)
  (i-circumflex   `i)
  (i-diaeresis    `i)
  (eth            `d)
  (n-tilde        `n)
  (o-grave        `o)
  (o-acute        `o)
  (o-circumflex   `o)
  (o-tilde        `o)
  (o-diaeresis    `o)
  (oe             (`o `e))
  (o-slash        `o)
  (u-grave        `u)
  (u-acute        `u)
  (u-circumflex   `u)
  (u-diaeresis    `u)
  (y-acute        `y)
  (thorn          (`t `h))
)

(output pidginx
  pidgin
  (z-dot          `x)
  (Z-dot          `X)
)

(conversion PLHB-accents
  ((WORDSPACE left_hook a) a-ogonek)
  ((WORDSPACE left_hook A) A-ogonek)
  ((WORDSPACE left_hook e) e-ogonek)
  ((WORDSPACE left_hook E) E-ogonek)
)

(conversion PLHB
  formatting
  accents
  PLHB-accents
  f_ligatures
)

(conversion PLHB-hyphen
  PLHB
  ((hyphen NEWLINE) )
)

(conversion PLHB-wordlist
  PLHB
  (WORDSPACE NEWLINE)
  (NEWPAGE NEWLINE)
  ((NEWLINE hyphen) NEWLINE)
)

(conversion PLHB-hyphen-wordlist
  hyphen wordlist
)
