File: hyplain.tex

package info (click to toggle)
texlive-extra 2024.20250309-2
  • links: PTS, VCS
  • area: main
  • in suites: forky, trixie
  • size: 5,368,476 kB
  • sloc: perl: 401,582; xml: 41,345; python: 38,753; cs: 25,850; sh: 18,555; makefile: 17,174; ansic: 13,023; java: 12,811; javascript: 9,898; lisp: 1,876; csh: 1,347; ruby: 618; awk: 183; tcl: 142; pascal: 138; cpp: 124; sed: 92; haskell: 5
file content (39 lines) | stat: -rw-r--r-- 1,387 bytes parent folder | download | duplicates (10)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
%%% This is part of the hyplain package by Enrico Gregorio
%%% You are allowed to do anything you want with this as long
%%% as you cite the source and change name to the file
%%% (but don't rename it plain.tex)
%%% 
%%% Its purpose is to load plain.tex but not hyphen.tex
%%% in order to be able to define more languages than
%%% American English.
%%%
%%% By running iniTeX on this file, you end up with a
%%% plain TeX format with some new facilities for changing
%%% the language (see hyrules.tex and hydoc.tex)

\catcode`\{=1 % left brace is begin-group character
\catcode`\}=2 % right brace is end-group character
\catcode`\@=11 % Now @ is a letter

%%% Save the original meaning of \input
\let\orig@input\input

%%% D. E. Knuth has decreed that plain.tex cannot be modified
%%% except for preloaded fonts. But we can always use some
%%% TeX trick; since the file is immutable, it will contain
%%% the line `\input hyphen'; at that point we restore the
%%% original meaning of \input and input hyrules.tex instead
%%% of hyphen.tex
\def\input hyphen {\let\input\orig@input \input hyrules }

%%% Here we load plain.tex
\orig@input plain

%%% We change the contents of \fmtname
\def\fmtname{plain (multiple language support)}
%%% Just a reminder for \fmtversion which we keep identical
%%% to the plain TeX version number
% \def\fmtversion{3.14159265}
\def\hyplainversion{1.0}

\dump