summaryrefslogtreecommitdiff
path: root/macros/latex/required/babel/base/babel.ins
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
committerNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
commite0c6872cf40896c7be36b11dcc744620f10adf1d (patch)
tree60335e10d2f4354b0674ec22d7b53f0f8abee672 /macros/latex/required/babel/base/babel.ins
Initial commit
Diffstat (limited to 'macros/latex/required/babel/base/babel.ins')
-rw-r--r--macros/latex/required/babel/base/babel.ins249
1 files changed, 249 insertions, 0 deletions
diff --git a/macros/latex/required/babel/base/babel.ins b/macros/latex/required/babel/base/babel.ins
new file mode 100644
index 0000000000..ea54bbbf07
--- /dev/null
+++ b/macros/latex/required/babel/base/babel.ins
@@ -0,0 +1,249 @@
+%%
+%% This file will generate fast loadable files and documentation
+%% driver files from the doc files in this package when run through
+%% LaTeX or TeX.
+%%
+%% Copyright 2012-2019 Javier Bezos and Johannes L. Braams.
+%% Copyright 1989-2008 Johannes L. Braams and any individual authors
+%% listed elsewhere in this file. All rights reserved.
+%%
+%% This file is part of the Babel system.
+%% --------------------------------------
+%%
+%% It may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.3
+%% of this license or (at your option) any later version.
+%% The latest version of this license is in
+%% http://www.latex-project.org/lppl.txt
+%% and version 1.3 or later is part of all distributions of LaTeX
+%% version 2003/12/01 or later.
+%%
+%% This work has the LPPL maintenance status "maintained".
+%%
+%% The Current Maintainer of this work is Javier Bezos.
+%%
+%% The list of derived (unpacked) files belonging to the distribution
+%% and covered by LPPL is defined by the unpacking scripts (with
+%% extension .ins) which are part of the distribution.
+%%
+\def\filedate{2019/07/19}
+\def\batchfile{babel.ins}
+\input docstrip.tex
+
+{\ifx\generate\undefined
+\Msg{**********************************************}
+\Msg{*}
+\Msg{* This installation requires docstrip}
+\Msg{* version 2.3c or later.}
+\Msg{*}
+\Msg{* An older version of docstrip has been input}
+\Msg{*}
+\Msg{**********************************************}
+\errhelp{Move or rename old docstrip.tex.}
+\errmessage{Old docstrip in input path}
+\batchmode
+\csname @@end\endcsname
+\fi}
+
+% Modify docstrip. A pseudo-guard is defined to set variables:
+% <<name=value>>. These variables are used with <@name@> Two further
+% pseudo-guards define "block" variables: <<*name>> and <</name>>
+% delimite the lines to be retrived with <@name@>. Note the verbatim
+% guard is overridden, but it's not used here. This is done in two
+% passes: 1) with saving true, there is a dummy pass, generating
+% nothing, but blocks are read and saved; 2) with saving false, blocks
+% are always ignored, but replacing <@name@>. While <@name@> can be
+% used freely outside <<>>, it's only allowed inside <<>> if
+% previously defined. Deeper nesting is not allowed.
+
+\def\replaceVar#1<@#2{%
+ #1%
+ \ifx\endLine#2\else
+ \expandafter\replaceVarX\expandafter#2%
+ \fi}
+
+\def\replaceVarX#1@>{\csname #1Var\endcsname\replaceVar}
+
+\def\normalLine#1\endLine{%
+ \advance\codeLinesPassed\@ne
+ \maybeMsg{.}%
+ \edef\inLine{\replaceVar#1<@\endLine}%
+ \let\do\putline@do
+ \ifcollect
+ \xdef\varCollect{\varCollect^^J\inLine}%
+ \else
+ \activefiles
+ \fi}
+
+\newif\ifcollect
+\newif\ifsaving
+
+\def\verbOption<#1#2>>#3{%
+ \ifx#1*%
+ \maybeMsg{<<*#2>>}%
+ \global\collecttrue
+ \gdef\varCollect##1{}%
+ \else\ifx#1/%
+ \global\collectfalse
+ \ifsaving
+ \expandafter\ifx\csname #2Var\endcsname\relax
+ \global\expandafter\let\csname #2Var\endcsname\varCollect
+ \else
+ \toks@\expandafter\expandafter\expandafter{%
+ \csname #2Var\expandafter\endcsname\expandafter^^J%
+ \varCollect}%
+ \expandafter\xdef\csname #2Var\endcsname{\the\toks@}%
+ \fi
+ \fi
+ \else
+ \varOptionI#1#2>%
+ \fi\fi}
+
+\def\varOptionI#1=#2>{%
+ \maybeMsg{<<#1=#2>>}%
+ \ifsaving
+ \expandafter\gdef\csname #1Var\endcsname{#2}%
+ \fi}
+
+% Preambles
+
+\declarepreamble\mainpreamble
+\endpreamble
+
+\def\MetaPrefix{--}
+\declarepreamble\luapreamble
+\endpreamble
+\let\MetaPrefix\DoubleperCent
+
+\keepsilent
+\askonceonly
+
+\usedir{tex/generic/babel}
+
+\usepreamble\mainpreamble
+
+% Dummy, it just read "modules" to be used when generating
+% the actual file. There must be a better way.
+\savingtrue
+\generate{\usepreamble\empty
+ \usepostamble\empty
+ \file{babel.log}{\from{babel.dtx}{dummy}}}
+\savingfalse
+
+\generate{\file{babel.sty}{\from{babel.dtx}{package}}
+ \file{babel.def}{\from{babel.dtx}{core}}
+ \file{switch.def}{\from{babel.dtx}{kernel}}
+ \file{hyphen.cfg}{\from{babel.dtx}{patterns}}
+ \file{nil.ldf}{\from{babel.dtx}{nil}}
+ \file{xebabel.def}{\from{babel.dtx}{xetex}}
+ \file{luababel.def}{\from{babel.dtx}{luatex}}
+ \file{txtbabel.def}{\from{babel.dtx}{texxet}}
+ }
+
+% Support for plain users
+\generate{\file{plain.def}{\from{babel.dtx}{plain}}
+ \file{bplain.tex}{\from{babel.dtx}{bplain}}
+ \file{blplain.tex}{\from{babel.dtx}{blplain}}
+ }
+
+% compatibility files
+\def\compatfile#1{\file{#1.sty}{\from{bbcompat.dtx}{styfile,#1}}}
+
+\generate{%
+ \compatfile{esperanto}
+ \compatfile{afrikaans}
+ \compatfile{dutch}
+ \compatfile{american}
+ \compatfile{british}
+ \compatfile{english}
+ \compatfile{UKenglish}
+ \compatfile{USenglish}
+ \compatfile{germanb}
+ \compatfile{austrian}
+ \compatfile{ngermanb}
+ \compatfile{naustrian}
+ \compatfile{irish}
+ \compatfile{scottish}
+ \compatfile{welsh}
+ \compatfile{breton}
+ }
+\generate{%
+ \compatfile{francais}
+ \compatfile{italian}
+ \compatfile{portuges}
+ \compatfile{spanish}
+ \compatfile{catalan}
+ \compatfile{galician}
+ \compatfile{danish}
+ \compatfile{norsk}
+ \compatfile{swedish}
+ \compatfile{finnish}
+ \compatfile{magyar}
+ \compatfile{greek}
+ \compatfile{croatian}
+ \compatfile{czech}
+ \compatfile{slovak}
+ \compatfile{polish}
+ }
+\generate{%
+ \compatfile{estonian}
+ \compatfile{romanian}
+ \compatfile{slovene}
+ \compatfile{russianb}
+ \compatfile{ukraineb}
+ \compatfile{turkish}
+ \compatfile{lsorbian}
+ \compatfile{usorbian}
+ \compatfile{bahasa}
+ \compatfile{hebrew}
+ \compatfile{basque}
+ \compatfile{latin}
+ \compatfile{icelandic}
+ \compatfile{serbian}
+ \compatfile{bulgarian}
+ }
+\generate{%
+ \compatfile{samin}
+ \compatfile{interlingua}
+ \compatfile{albanian}
+ \compatfile{bahasam}
+ }
+
+% MakeIndex style files
+
+\usedir{makeindex/babel}
+
+\generate{\file{bbind.ist}{\from{bbidxglo.dtx}{idx}}
+ \file{bbglo.ist}{\from{bbidxglo.dtx}{glo}}}
+
+% lua code
+
+\def\MetaPrefix{--}
+\usepreamble\luapreamble
+\nopostamble
+\generate{\file{babel-data-bidi.lua}{\from{babel.dtx}{bididata}}}
+\generate{\file{babel-data-cjk.lua}{\from{babel.dtx}{cjkdata}}}
+\generate{\file{babel-bidi-basic-r.lua}{\from{babel.dtx}{basic-r}}}
+\generate{\file{babel-bidi-basic.lua}{\from{babel.dtx}{basic}}}
+
+\Msg{***********************************************************}
+\Msg{*}
+\Msg{* To finish the installation you have to move all the files}
+\Msg{* with names ending in .ldf, .sty, .def or .lua into a}
+\Msg{* directory searched by TeX}
+\Msg{*}
+\Msg{* For making a format the following files have to be in a}
+\Msg{* directory which is searched by IniTeX:}
+\Msg{* \space\space hyphen.cfg}
+\Msg{* \space\space language.dat}
+\Msg{* \space\space and files with hyphenation patterns}
+\Msg{*}
+\Msg{* To produce source listings you can run babel.dtx}
+\Msg{* through LuaLaTeX. Deja Vu fonts are required.}
+\Msg{*}
+\Msg{*}
+\Msg{* Happy TeXing}
+\Msg{*}
+\Msg{***********************************************************}
+
+