diff options
author | Karl Berry <karl@freefriends.org> | 2006-01-09 00:44:09 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2006-01-09 00:44:09 +0000 |
commit | dec3d98ebe442d7ea93efbaa8dd2e2be8149a467 (patch) | |
tree | 64b660a18f1b3b95331a3c0ac2ba45c395e0bd88 /Master/texmf-dist/doc/generic/babel | |
parent | f9ba1f4431124f48769a2666d5d9ec921345ca71 (diff) |
doc 3
git-svn-id: svn://tug.org/texlive/trunk@79 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/doc/generic/babel')
22 files changed, 6302 insertions, 0 deletions
diff --git a/Master/texmf-dist/doc/generic/babel/00readme.heb b/Master/texmf-dist/doc/generic/babel/00readme.heb new file mode 100644 index 00000000000..b4ae253092a --- /dev/null +++ b/Master/texmf-dist/doc/generic/babel/00readme.heb @@ -0,0 +1,605 @@ +% \iffalse meta-comment +% +% Copyright 1989-2005 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 Johannes Braams. +% +% The list of all files belonging to the Babel system is +% given in the file `manifest.bbl. See also `legal.bbl' for additional +% information. +% +% 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. +% \fi + Hebrew Package for babel system and LaTeX2e + +This new support package for Hebrew language is based on the old LaTeX 2.09 +hebrew.sty and is backward compatible with it. A new babel-based language +switching interface is also supported. + +Bi-directional support uses TeX--XeT or newer e-TeX engine. + +The package is available on-line at http://www.dsg.technion.ac.il/heblatex/ +or at ftp://tochna.technion.ac.il/pub/staff/lavva/heblatex/. It consists of: + + 1. Hebrew package for babel/LaTeX 2e: heblatex.tar.gz or heblatex.zip. + 2. Hebrew fonts (available also on CTAN or ftp.cc.huji.ac.il): + hebfonts.tar.gz or hebfonts.zip. + 3. Examples of hebrew documents: hebexmpl.tar.gz or hebexmpl.zip. + 4. This README.html file, available also in plain text format as + README.txt. + +The babel/LaTeX 2e edition of the hebrew package, as well as documentation +(including this README file) was developed and will be supported by Boris +Lavva, lavva@tx.technion.ac.il. Please direct your additions, modifications, +bug fixes and comments to this address. + +------------------------------------------------------ +Table of contents + + Acknowledgement + Copyright + Installation + Hebrew package usage + Input code pages + Font encodings + Bi-directional sectioning commands + Table of contents, List of figures, List of tables + Hebrew calendar + Document class for preparing Hebrew/English or English/Hebrew thesis + Compatibility with LaTeX 2.09 style + Future work + +------------------------------------------------------ +Acknowledgment + +The following people have contributed to Hebrew package in one way or +another, knowingly or unknowingly. In alphabetical order: +Irina Abramovici, Yaniv Bargury, Yael Dubinsky, Sergio Fogel, Dan Haran, +Rama Porrat, Michail Rozman, Alon Ziv. + +Johannes Braams is the author of babel - a multilingual support for LaTeX. + +Tatiana Samoilov and Vitaly Surazhsky found a number of serious bugs in +preliminary version of Hebrew package. + +A number of other people have contributed comments and information. Specific +contributions are acknowledged within the documentation. + +I want to thank my wife, Vita, and son, Mishka, for their infinite love and +patience. + +If you made a contribution and I haven't mentioned it, don't worry, it was +an accident. I'm sorry. Just tell me and I will add you to the next version. + +------------------------------------------------------ +Copyright + +The copyright similar to other LaTeX 2e packages is added to prevent +inconsistency in version numbers and wide-spread distribution of unsupported +macro files (which was common with the old distributions). + +Changes, bug fixes and additions are always welcome, but they should be or +distributed under other name, or incorporated in this package (by mailing +me). + + -------------------------------------------------- + + Copyright 1997-1998 Boris Lavva and any individual authors listed + elsewhere in this file. All rights reserved. + + For further copyright information, and conditions for modification and + distribution, see any other copyright notices in this file. + + This file is contributed to the Babel system, release 3.6. + + -------------------------------------------------- + This system is distributed in the hope that + it will be useful, but WITHOUT ANY WARRANTY; without even the implied + warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + + For error reports concerning UNCHANGED versions of this file no more + than one year old, see bugs.txt. + + Please do not request updates from me directly. Primary distribution + will be through the CTAN archives. + + IMPORTANT COPYRIGHT NOTICE: + + You are NOT ALLOWED to distribute this file alone. + + You are allowed to distribute this file under the condition that it + is distributed together with all the files listed in manifest.txt. + + If you receive only some of these files from someone, complain! + + Permission is granted to customize the declarations in this file to + serve the needs of your installation, provided that you comply with the + conditions in the file legal.txt. + + However, NO PERMISSION is granted to distribute a modified version of + this file under its original name. + + MODIFICATION ADVICE: + If you want to customize this file, it is best to make a copy of the + source file(s) from which it was produced. Use a different name for your + copy(ies) and modify the copy(ies); this will ensure that your modifications + do not get overwritten when you install a new release of the standard system. + + You can then easily distribute your modifications by distributing the + modified and renamed copy of the source file, together with a suitable + .ins file, taking care to observe the conditions in legal.txt; this will + ensure that other users can safely use your modifications. + +------------------------------------------------------ +Installation + + 1. Full LaTeX 2e distribution should be installed, including TeX--XeT or + e-TeX. Known such distributions include: + o teTeX 0.9 for UNIX with e-TeX + (ftp://ftp.informatik.uni-hannover.de/home/te/private/.0.9/) + o NTeX for UNIX with TeX--XeT + (http://darfnix.mathematik.uni-stuttgart.de/pub/tex/ntex/) + o Web2C for Windows 95 and NT (see at CTAN:systems/win32, for + example, ftp://ftp.dante.de/tex-archive/systems/win32/) + o TeX Live CD-ROMs distributed by TeX Users Group (TUG), see details + at http://www.tug.org. + 2. If e-TeX is installed, check if its format is available in extended + mode, by running elatex or latex on some .tex file: + ----------------------------------------------------------------------- + + This is e-TeX, Version 3.14159-1.1 (Web2c 7.0) + entering extended mode + ----------------------------------------------------------------------- + + The second line should be "entering extended mode". + 3. If TeX--XeT is installed, it will use a LaTeX 2e format file, called + laxet.fmt from the formats directory. This directory is commonly + located at texmf/web2c or texmf/web2c/ini subdirectories. To produce + format file, run initexxet program on the following laxet.ini file: + ----------------------------------------------------------------------- + + % Prevent dumping of LaTeX2e + \let\xxdump=\dump + \let\dump=\endinput + % LaTeX2e format + \input latex.ltx + % Read latex2e.add + \openin1=latex2e.add + \ifeof1\closein1\message{latex2e.add not found} + \else\closein1\input latex2e.add + \fi + % dump + \let\dump=\xxdump + \let\xxdump=\undefined + \dump + ----------------------------------------------------------------------- + + Put the resulting file laxet.fmt to the formats directory and link (or + copy) the virtexxet program as laxet. + 4. Download the babel sources from the CTAN sites, directory + macros/latex/packages/babel. This version of Hebrew package is tested + with babel version 3.6. + 5. Apply the following changes to the standard babel sources: + o babel.dtx -- after the line 916 (greek) add: + \DeclareOption{hebrew}{\input{rlbabel.def}\input{hebrew.ldf}} + o bbcompat.dtx -- after the line 134 (welsh) add: + %<+hebrew>\input rlbabel.def\input hebrew.ldf\relax + o babel.ins -- after the line 346 (bahasa) add: + \generate{\compatfile{hebrew}} + 6. Download the hebrew package, fonts and examples from the above + mentioned place. + 7. Open heblatex to the babel sources directory. + 8. Run latex babel.ins and then latex hebrew.ins. + 9. Move all *.cls, *.sty, *.def, *.fd, *.ldf to the babel directory + searchable by TeX (run MakeTeXls-R or similar program). Usually, babel + is located at TEXROOT/share/texmf/tex/latex/packages/babel or + TEXROOT/share/texmf/tex/generic/babel. + 10. Install hebrew fonts from hebfonts as following: + o Find your public font sources directory, it is usually: + TEXROOT/share/texmf/fonts/source/public. + o Unpack hebfonts file into the abovenamed public directory. It will + create a new directory called hebrew inside public. + o Find your special.map file - it is usually found at + TEXROOT/share/texmf/fontname/special.map and add the following + lines at the end of this file: + @c Hebrew fonts + jerus10 public hebrew + deads10 public hebrew + oldjaf10 public hebrew + telav10 public hebrew + crml10 public hebrew + crmlsl10 public hebrew + fr public hebrew + frbx public hebrew + frsl public hebrew + hclassic public hebrew + hcaption public hebrew + redis7 public hebrew + redis8 public hebrew + redis9 public hebrew + redis10 public hebrew + redis12 public hebrew + redis17 public hebrew + redisb10 public hebrew + rediss8 public hebrew + rediss9 public hebrew + rediss10 public hebrew + rediss12 public hebrew + shold10 public hebrew + shscr10 public hebrew + shstk10 public hebrew + o Run REHASH from texconfig utility or program MakeTeXls-R or newer + mktexlsr (if available) to build a new ls-R database in + TEXROOT/share/texmf directory. You can add inserted file names + manually to ls-R if you cannot find abovenamed programs. + o Note that only 7-bit (old code) fonts are used by new Hebrew + package. + 11. You can check if your installation succeed by LaTeXing examples from + hebexmpl file. + +Finally, you can prepare the LaTeX documentation of all components of the +new Hebrew package by running: + + ------------------------------------ + + latex hebrew.dtx + makeindex -s bbind.ist hebrew.idx + makeindex -s bbglo.ist -o hebrew.gls hebrew.glo + latex hebrew.dtx + latex hebrew.dtx + + ------------------------------------ + +The same procedure can be applied on babel.dtx (or babel.drv) to create the +babel documentation. Files bbind.ist and bbglo.ist are included with babel +installation. + +------------------------------------------------------ +Hebrew package usage + +The usage is simple, for example: + +\documentclass[12pt,twoside]{book} +\usepackage[hebrew,english,russian,danish,greek,...]{babel} + +LaTeX 2.09 style is also supported (in compatibility mode) to process +existing documents, for example: + +\documentstyle[12pt,hebrew_newcode]{article} + +Languages can be switched by the following macros: + + 1. \sethebrew or \unsethebrew + 2. \selectlanguage{hebrew}, \selectlanguage{english}, etc. + 3. \begin{otherlanguage}{hebrew} ... \end{otherlanguage}, or any other + language + 4. \R{hebrew text} inside the latin text + 5. \L{latin text} inside the hebrew text + +First three commands are equivalent: first one provides switching interface, +compatible with LaTeX 2.09 hebrew style, while second and third --- +babel-based interface. + +Last two commands are used for language and direction switching inside +paragraph. + +hmbox and embox macros should be used for inserting Hebrew and English text +(respectively) inside a mathematical formula. + +------------------------------------------------------ +Input code pages + +Hebrew package supports the following input code pages: + + 1. 7-bit hebrew encoding, also known as old code, defined by Israeli + Standard 960 (si960) + 2. IBM PC code page also known as pc code (cp862) + 3. WINDOWS code page also known as new code (cp1255) + 4. ISO 8859-8 Hebrew/Latin code page commonly used in UNIX, also known as + new code (8859-8 also known as new code) + +The default input encoding can be set using option defined above in +parentheses with inputenc style (but *before* babel), for example : + +\usepackage[cp1255]{inputenc} + +Input encoding can be changed also inside the document by the \inputencoding +command, for example: + +\inputencoding{cp862} + +------------------------------------------------------ +Font encodings + +Various font encodings can be used, including, of course, Local Hebrew +Encoding (LHE), with the aid of fontenc style (but *before* babel), for +example: + +\usepackage[LHE,OT2,LCY,T1]{fontenc} + +Many useful font-switching commands are provided in hebfont package which +can be included *after* the babel: + +\usepackage{hebfont} + +These commands are in format \text<font>{Hebrew text}, for example: +\textoj{Text printed with Old Jaffa font}, \textredis{Text printed with +redis font}. + +In addition, for backward compatibility in LaTeX 2.09 documents, the four +old font-switching commands are supported: +{\jm ...}, {\oj ...}, {\ds ...} and {\ta ...} for Jerusalem, Old Jaffa, Dead +Sea and Tel-Aviv fonts respectively. + +The following TeX fonts are supported: + + * Jerusalem (used as default font) + * Dead Sea (used as bold font) + * Tel-Aviv (used as sans-serif or typewriter font) + * Old Jaffa (used as italic or slanted font and for emphasize) + * Hebrew classic normal and slanted (command \textclas) + * Shalom Old Style (command \textshold) + * Shalom Script (command \textshscr) + * Shalom Stick (command \textshstk) + * Carmel normal and slanted (command \textcrml) + * Frank Ruehl normal, bold and slanted (command \textfr) + * Redis normal, bold and slanted (command \textredis) + +------------------------------------------------------ +Bi-directional sectioning commands + +These commands inserts both Hebrew title to the RL table of contents or list +of figures/tables, and English (or other LR language) title to the LR table +of contents or list of figures/tables. + + 1. \bpart{hebrew}{english} + 2. \bchapter{hebrew}{english} + 3. \bsection{hebrew}{english} + 4. \bsubsection{hebrew}{english} + 5. \bsubsubsection{hebrew}{english} + 6. \bcaption{hebrew}{english} + 7. \bchapternn{hebrew}{english} - replaces \chapter* + 8. \bsectionnn{hebrew}{english} - replaces \section* + +A number of additional bi-directional commands are defined in the +hebtech.cls - thesis document class file, described below. + +------------------------------------------------------ +Table of contents, List of figures, List of tables + +Both Right-to-Left and Left-to-Right versions of the tables (toc, lof and +lot) can be generated simultaneously. The LR files have the default +extensions (.toc, .lof and .lot), while the RL files have reversed +extensions (.cot, .fol and .tol). For example, to include RL tables at the +beginning and LR tables before the end of the document: + + ------------------------------------ + + \begin{document} + \sethebrew + \tableofcontents % Generates .cot file + \listoffigures % Generates .fol file + \listoftables % Generates .tol file + ... + \unsethebrew + \tableofcontents % Generates .toc file + \listoffigures % Generates .lof file + \listoftables % Generates .lot file + \end{document} + + ------------------------------------ + +All 6 files are generated simultaneously in two latex passes ! + +------------------------------------------------------ +Hebrew calendar + +Original Hebrew calendar style was created by Michail Rozman, and corrected +by Rama Porrat, Michail Rozman and Dan Haran. + +This style was adjusted to LaTeX 2e by Boris Lavva, and provided in hebcal +package. It can be included *after* the babel: + +\usepackage{hebcal} + +The following 2 user-level commands are provided with the package: + +\newcount\hd \newcount\hm \newcount\hy + +\hd=10 \hm=3 \hy=1992 + +\HebrewDate{\hd}{\hm}{\hy} + +which converts the requested Gregorian date to Hebrew calendar date and +prints it in Hebrew or English (depends on the current language) and: + +\HebrewToday or \hebrewtoday + +which prints the current Hebrew date (today) . + +------------------------------------------------------ +Document class for preparing Hebrew/English or English/Hebrew thesis + +A useful document class file hebtech for preparing M.Sc. and Ph.D. theses +for the Technion (English/Hebrew and Hebrew/English) is included with this +package too. I believe that it can be adjusted for the needs of other +academic institutions in Israel too. This class automatically includes babel +with hebrew and english option, hebfont and hebcal packages. + +The original version for LaTeX 2.09 and old code Hebrew was created in 1994 +by Irina Abramovici, at Taub Computer Center, Technion. + +How to use this document class? + +\documentclass[12pt]{hebtech} + +The following parameters should be included in thesis preamble (before +\begin{document}): + + 1. Thesis title + \title{hebrew}{english} + 2. Thesis author + \author{hebrew}{english} + 3. Department name, e.g. Electrical Engineering Department + \dept{hebrew}{english} + 4. Domain of research, e.g. Food Processing + \dom{hebrew}{english} + 5. Main advisor + \advisori{hebrew}{english} + 6. Second advisor, if exists + \advisorii{hebrew}{english} + 7. Main sponsor + \donori{hebrew}{english} + 8. Additional sponsor, if exists + \donorii{hebrew}{english} + 9. Set thestype counter to: + o 1 --- for a research thesis + o 2 --- for a project thesis + o 3 --- for a final paper + + \setcounter{thestype}{1} + 10. Set grade counter to: + o 1 --- for master of science + o 2 --- for master + o 3 --- for master of technology + o 4 --- for doctor of science + + \setcounter{grade}{1} + 11. Date is optional, if not included, today's date will be used. The + Gregorian date entered will be printed and get converted the Jewish + date. + \date{28}{2}{1998} + 12. Page style is optional too, if not included, plain will be used. + \pagestyle{thesis} + +In the main document the following additional commands and environments can +be used: + + 1. \makecover - creates Hebrew or English cover page, depending on the + current language. + 2. \maketitle - creates Hebrew or English title page, depending on the + current language. + 3. \begin{acknowledgment} ... \end{acknowledgment} - builds the + acknowledgment page and adds inserted customized acknowledgment in + Hebrew or English, depending on the current language. + 4. \begin{dedication} ... \end{dedication} - builds the dedication page in + Hebrew or English, depending on the current language. + 5. \tableofcontents, \listoffigures, \listoftables - builds tables + depending on the current language (all 6 tables can be used + simultaneously). + 6. \begin{abstract} ... \end{abstract} - builds the abstract pages in + Hebrew or English, depending on the current language, adds contents + line to the 2 tables of contents. + 7. \frontmatter, \mainmatter, \backmatter - should be inserted at the + beginning, before the main part, and at the ending of the thesis to + change numbering and other style parameters. + 8. \bibliography{...} - now adds "References" line to the 2 tables of + contents: English and Hebrew. + +Some useful bi-directional commands, for figures and tables provided in this +file too: + + 1. \bcaptionf{hebrew}{english} - similar to \bcaption but answers to + thesis formatting requirements at the Technion, used for figures. + 2. \bcaptionff{to RL lof}{to LR lof}{hebrew}{english} - a customized one + for figures. + 3. \bcaptiont{hebrew}{english} - similar to \bcaption but answers to + thesis formatting requirements at the Technion, used for tables. + 4. \bcaptiontt{to RL lot}{to LR lot}{hebrew}{english} - a customized one + for tables. + +------------------------------------------------------ +Compatibility with LaTeX 2.09 style + +Generally, the new package is compatible with LaTeX 2.09 style file +hebrew.sty, i.e. in most cases one can use the new package on old documents +without any errors. Howver, it does not support Plain TeX, please use +heb_macros.tex, or other TeX macro file for Hebrew instead. + +A few incompatibilities are described below: + + * The macros with Hebrew names are not provided, for example, macro + \hadgesh when the command name "hadgesh" is given in Hebrew is not + supported. The reason is that in new LaTeX 2e it is forbidden to use + 8-bit macros, because all characters 128-255 became to be "active". + However, the following English-coded equivalents are supported for + backward compatibility with LaTeX 2.09 style and can be used even in + the new documents: + 1. \hebday (replaced "hayom"). + 2. \hebcopy (for use in letter style) + 3. \hebincl (for use in letter style) + 4. \hebpage (for use in letter style) + 5. \hebto (for use in letter style) + 6. \hadgesh (produces ``poor man's bold'' - heavy printout, it is + advisable to use real bold fonts, e.g. DeadSea instead) + 7. \piska (can be used only in compatibility mode) + 8. \piskapiska (can be used only in compatibility mode) + 9. \makafgadol (=\textendash) + 10. \makafanak (=\textemdash) + 11. \geresh (=\textquoteright) + 12. \opengeresh (=\textquoteright) + 13. \closegeresh (=\textquoteleft) + 14. \openquote (=\textquotedblright) + 15. \closequote (=\textquotedblleft) + 16. \leftquotation (=\textquotedblright) + 17. \rightquotation (=\textquotedblleft) + 18. \undertext (=\underline, can be used only in compatibility mode) + * In \documentstyle line the following 3 styles can be used in Hebrew + documents: + 1. \documentstyle[hebrew_oldcode,...]{...} in old 7-bit documents + (instead of "hebrew"!). + 2. \documentstyle[hebrew_newcode,...]{...} in 8-bit UNIX or Windows + documents. + 3. \documentstyle[hebrew_p,...]{...} in 8-bit DOS documents. + * hebcal style should always be used (instead of older hebcal_p and + hebcal_newcode). + * Font names for the included 7-bit fonts were renamed (for the sake of + multiplatform support) to lowercase names with no more than 8 + characters as following: + o jerus10.mf - for Jerusalem (10pt) + o deads10.mf - for Dead Sea (10pt) + o telav10.mf - for TelAviv (10pt) + o oldjaf10.mf - for Old Jaffa (10pt) + o shold10.mf - for Shalom Old Style (10pt) + o shscr10.mf - for Shalom Script (10pt) + o shstk10.mf - for Shalom Stick (10pt) + o Some other font-related files were renamed too (to lowercase and < + 8 characters): + + frank_ruehl.mf became frruehl.mf + + redisfont.mf became redisfnt.mf + + redisbx10.mf became redisb10.mf + o All other font names remain unchanged + +------------------------------------------------------ +Future work + + 1. Visual enviroments i.e. tabular, tabbing and array have to be supported + for hebrew. Now only left-to-right direction of lines is supported. + 2. Update hebrew package for the future babel-3.7 release. + 3. Hebrew points and dots ("nikud") support should be added, so it can be + used in font-independent way. + Currently, nikud can be used only on font-dependent way: only shalom + and classic families of fonts provide nikud, and hebrew point glyphs + are located in different places. + 4. Machintosh Hebrew/English input code page support should be added. + 5. Type1/TrueType Hebrew fonts should be supported. + +------------------------------------------------------ +Created by Boris Lavva, lavva@tx.technion.ac.il +Last modified March 1, 1998 diff --git a/Master/texmf-dist/doc/generic/babel/00readme.txt b/Master/texmf-dist/doc/generic/babel/00readme.txt new file mode 100644 index 00000000000..da95f418547 --- /dev/null +++ b/Master/texmf-dist/doc/generic/babel/00readme.txt @@ -0,0 +1,77 @@ + Babel Distribution Guide + + 29 March 2005 + + +Welcome to the Babel system! + +This file contains the distribution guide for version 3.8 of the +Babel system. The Babel system is distributed under the terms of +the LaTeX Project Public License version 1.3 or later. A copy of +the LPPL can be found in the LaTeX distribution. + +The Babel system supports multilingual typesetting. +This version of the Babel system is compatible with LaTeX2e. +Whenever the instructions talk about LaTeX, read LaTeX2e. + +This system is maintained by Johannes Braams in cooperation with +various people around the world. + +The Babel system is described in: + + * The LaTeX Companion 2nd edn., Mittelbach and Goossens et al, Addison-Wesley + + +This distribution is described in the files ending with .txt. You +should read install.txt before starting to install Babel. + + * 00readme.txt is this file. + + * changes.txt is a chronological list of the changes to babel + + * install.txt describes how to install Babel. + * install.OzTeX-4 describes how to install Babel on a Mac with a + recent OzTeX distribution (4.0+). + * install.OzTeX-pre4 describes how to install Babel on a Mac with an + old OzTeX distribution (before 4.0). + + * manifest.bbl lists all the files in the Babel distribution. + + * bugs.txt describes how to submit a bug report for Babel. + + * todo.txt lists a few things that haven't been done yet + + * howtoget.txt lists the places where to get the Babel system and + other related software. + +You are not allowed to change the files in this distribution. + +If you want to add your own options to extend Babel with local +language definitions you can do that by adding \DeclareOption +statements to a configuration file, bblopt.cfg. + +If you like the babel system, please send me a postcard with a nice +postage stamp for my collection! + +Please do not request updates from me. Distribution is done only +through mail servers and TeX organisations. + + +Please send bug reports to the LaTeX bug reporting address, +latex-bugs@latex-project.org. Please read the file bugs.txt in this +distribution and follow the guidelines. + +WARNINGS: +--------- +- The file wnhyphen.tex (russian hyphenation pattern file) contains + changes of uppercase and lowercase codes. Amongst these is + \uccode`\~=`\^ which may lead to unexpected results when the ~ + occurs in the argument of \uppercase + +Send any suggestions, additions, complaints, to me: +e-mail: babel at braams.cistron.nl +address: Kersengaarde 33 + 2723 BP Zoetermeer + The Netherlands +Note that I am more likely to respond to e-mail. +--- Copyright 1997,2005 Johannes Braams. All rights reserved --- diff --git a/Master/texmf-dist/doc/generic/babel/GreekFonts.txt b/Master/texmf-dist/doc/generic/babel/GreekFonts.txt new file mode 100644 index 00000000000..4bc082f60e6 --- /dev/null +++ b/Master/texmf-dist/doc/generic/babel/GreekFonts.txt @@ -0,0 +1,28 @@ + + The Greek fonts + + + The latest version of the "babel" package supports the Greek language. In + order to be able to use the "greek" option correctly someone must have + the correct fonts properly installed. The "greek" option uses the new + fonts designed by Claudio Beccari (beccari@polito.it). The fonts are + complete, i.e., there are shapes for every possible combination. Moreover, + the fonts include the big slide size fonts, which were missing in the + previous font bundle. + + Where to find them + + All the necessary Greek fonts reside in any of the CTAN nodes. They + reside in the directory languages/greek/cb. The font bundle includes + hyphenation patterns plus usage information for the greek option. + + October 15, 1997 + + Apostolos Syropoulos + + snail mail: 366, 28th October Str. + GR-671 00 Xanthi, GREECE + + electronic + mail: apostolo@platon.ee.duth.gr or + apostolo@obelix.ee.duth.gr diff --git a/Master/texmf-dist/doc/generic/babel/announce.txt b/Master/texmf-dist/doc/generic/babel/announce.txt new file mode 100644 index 00000000000..04541542785 --- /dev/null +++ b/Master/texmf-dist/doc/generic/babel/announce.txt @@ -0,0 +1,39 @@ + Hi, + + This is the announcement of babel release 3.8, + + What's new in release 3.8? + Actually babel 3.8 is very much like the later releases of + babel 3.7. Support for a number of languages has been added. + Here is a list of the changes since babel 3.7h: + - Shorthands are expandable again. The disadvantage is that + one has to type '{}a when the acute accent is used as a + shorthand character. The advantage is that a number of other + problems (such as the breaking of ligatures, etc.) have + vanished. + - Two new commands, \shorthandon and \shorthandoff have + been introduced to enable to temporarily switch off one or more + shorthands. + - The support for Hebrew has been updated by Tzafrir Cohen + - Support for Slovak has been extended with shorthand + definitions. + - Support for typesetting Sanskrit in transliteration will + be made available in a later release of babel. + - Support for typesetting Kannada, Devnagari and Tamil will + be made available in a later release of babel. + - Support for typesetting interlingua is now available, thanks to + Peter Kleiweg <kleiweg@let.rug.nl>. + + The last remark: where can you get babel 3.8? + It is available in the directory + /tex-archive/macros/latex/rewuired/babel on CTAN. + + Happy LaTeXing! + + Johannes Braams + +TeXniek, Kersengaarde 33, +2723 BP Zoetermeer The Netherlands. +Phone : +31 79 352 28 19 E-mail : johannes at braams.cistron.nl +Fax : +31 70 343 41 85 +------------------------------------------------------------------------------- diff --git a/Master/texmf-dist/doc/generic/babel/babel.pdf b/Master/texmf-dist/doc/generic/babel/babel.pdf Binary files differnew file mode 100644 index 00000000000..9bfc6264d1d --- /dev/null +++ b/Master/texmf-dist/doc/generic/babel/babel.pdf diff --git a/Master/texmf-dist/doc/generic/babel/bugs.txt b/Master/texmf-dist/doc/generic/babel/bugs.txt new file mode 100644 index 00000000000..d5a4b8c715a --- /dev/null +++ b/Master/texmf-dist/doc/generic/babel/bugs.txt @@ -0,0 +1,81 @@ + Babel Error Reports + + 20 February 2004 + +ERROR REPORTS + +Before you report an error please check that: + + * The error has not already been reported. If you have WWW + access, you can search the LaTeX bugs database using this URL: + + http://www.latex-project.org/bugs.html + + * The error is not caused by software other than the Babel software + that is produced and maintained by me (please report problems with + other software to the authors or suppliers of that software). + + * The error is not caused by using an obsolete version of any file or + of other software. + + * You are using the original version of all files, not one that has + been modified elsewhere. + +If you think you have found a genuine bug in a recent version of the +Babel software please report it in the same way as bugs for LaTeX2e +are reported: + + * Prepare a *short* test file that clearly demonstrates your + problem; see below for a discussion of `short'. + + * Run this file through latex to obtain the transcript file + (often .log) since you will need to submit this file also. + + * Generate a bug report template by running the file + latexbug.tex through LaTeX2e. + + * Fill in the spaces in the generated template file. Please note that + the reporting language is *English* irregardless of the fact, that + the address you are sending the bug report to, might not be in an + English speaking country. Reports received in a language other than + English might not be understandable for the person currently + looking at bug reports! + + * Include all necessary information, especially a complete input + file, a complete transcript file, and all other files used (if they + are not standard). + + Please check carefully to ensure that any non-standard files are + essential to the bug; and remember that I cannot debug files not + supplied by me. + + Any such non-standard files should be included in a `filecontents' + environment at the start of your input file. This allows me to + run your test file without a lot of manual preparation; this is + essential since we have to deal with many reports, not just with + the one written by you. + + * Please note that it is important to make the input file as small + as possible since this will enable me to find and fix the error + quickly. It also helps me because then I can often use it as test + file for future releases. + + I would expect most files to be less than 60 lines, and very + rarely to be longer than 100 lines. + + This can often be achieved by defining a command to be some + arbitrary text and using this several times if it is necessary to + generate longer bits of text. + +Error reports concerning UNCHANGED versions of Babel files should be +sent by E-mail to: + + latex-bugs@latex-project.org + +You will receive an acknowledgement by E-mail containing at the +beginning of its subject line a problem reference of the form +category/number, e.g. babel/1234. Please use this subject line in ALL +further E-mails concerning the problem. Otherwise your reply will be +categorized and filed separately. + +--- Copyright 2004 Johannes Braams. All rights reserved --- diff --git a/Master/texmf-dist/doc/generic/babel/changes.txt b/Master/texmf-dist/doc/generic/babel/changes.txt new file mode 100644 index 00000000000..cc860ecba1c --- /dev/null +++ b/Master/texmf-dist/doc/generic/babel/changes.txt @@ -0,0 +1,2563 @@ + +This file lists changes to the Babel files in reverse chronological order. +NOTE: This file is based on the developers' personal change-log files +and is provided for convenience only. It therefore makes no claims to +completeness or accuracy and it contains some references to files that +are not part of the distribution. + +========================================================================== + + +2005-05-21 Johannes Braams <babel at latex-project.org) + + * base/babel.dtx (subsubsection{\pkg{varioref}}): The varioref + \Ref needs to be able to expand \ref; in order to make this work + we now redefine \Ref_ to call \org@ref (found by Frank Mitelbach). + +2005-05-18 Johannes Braams <babel at latex-project.org) + + * hebrew/hebrew.fdd: Typo's in the docstrip guards prevented the + command \ProvidesFile to appear in HE8nachlieli.fd (PR3774), the + file HE8frankruehl.fd was completely useless + + * base/babel.dtx (subsection{marks}): The way Babel dealt with + adding language information to the marks appeared to rely on + LaTeX's definition of \markboth and \markright, but broke with + classes such as amsart that contain a different definition (PR + 3750 and 3756). Also, the use of \noexpand brok with fancyhdr; + replaced with \protect (found by Frank Mitelbach) + + * italian/italian.dtx: Received a new version of italian.dtx from + Claudio Beccari + +2005-03-31 Johannes Braams (babel at latex-project.org) + + * welsh/welsh.dtx : Translation for `Glossary' provided by Owen + Thomas (owen at llambed.freeserve.co.uk); he also informed me that + the string `a viz' should not be part of the definition for + \today. + +2005-03-30 Johannes Braams (babel at latex-project.org) + + * latin/latin.dtx: Added a comment character in the definition of + \today to prevent an unwanted space in the output. Reported by + Richard Verhoeven (richard.verhoeven at web.de). + +2005-03-24 Johannes Braams (babel at latex-project.org) + + * base/babel.dtx: Andrew Youn (aty at mintaka.sdsu.edu) and + Hillmar Preusse (hille42 web.de) supplied many error corrections + and enhancements to the text. + +2005-03-02 Johannes Braams (babel at latex-project.org) + + * frenchb/frenchb.dtx : Received a new version from Daniel flipo + +2004-11-21 Johannes Braams (babel at latex-project.org) + + * cyrillic/russianb.dtx : Removed the comment character that + disabled the copde line in which the shorthand ", is declared. PR + 3669 requested this shorthand to be activated. Reported by ichail + Vidiassov (master at iaas.msu.ru) + + * base/babel.dtx (subsection{Shorthands}): Added an error message + for the case where \aliasshorthand is used in a document without + prio declaration in the preamble of the new shorthand + character. PR 3590, reported by Igor A. Kotelnikov (i.a.kotelnikov + at inp.nsk.su) + +2004-11-17 Johannes Braams (babel at latex-project.org) + + * magyar/magyar.dtx : Added a numer of comment characters after + PR3720 reported a spurious space in the output. The PR was + reported by Zoltan Gotthardt (gotty at freemail.hu). + +2004-06-14 Johannes Braams (babel at latex-project.org) + + * english/english.dtx : The selection of hyphenation patters was + biased towards the American patterns. Removed this bias. This + change was prompted by comments from Walter Schmidt (w.a.schmidt\ + at gmx.net). + +2004-06-12 Johannes Braams (babel at latex-project.org) + + * base/babel.dtx: Added support for Australian and New + Zealand spelling. + * english/english.dtx: Added support for Australian and New + Zealand spelling upon request from Harald Harders (h.harders at + tu-bs.de) + +2004-05-26 Johannes Braams (babel at latex-project.org) + + * base/babel.dtx (subsection{marks}): When the mark commands are + used with empty argumetns, we don't want to add anything to the + marks. PR3674, found by Ulrich Dirr ud at art-satz.de, stated + that empty marks were no longer empty. + +2004-05-21 Johannes Braams (babel at latex-project.org) + + * russianb.dtx, ukraineb.dtx, bulgarian.dtx : The command for tanh + (\th) conflicts with the T1 definition of \th (the letter + thorn). Therefore changed the definition to be valid only for the + respective language and in math mode only. (PR 3649, found by + Benjamin BAYART (bayartb at jmpl.fr.eu.org)) + +2004-05-02 Johannes Braams (babel at latex-project.org) + + * base/babel.dtx (subsection{Shorthands for quotation marks}): Now + use \ProvideTextCommand and friends instead of + \DeclareRobustCommand to define the quotation marks in order to + keep kerning working (PR3482, 3661, both reported by Harald + Harders, h.harders at tu-bs.de). + +2004-04-19 Johannes Braams (babel at latex-project.org) + + * base/babel.dtx : The code that is executed when the hhline + package is loaded needed an extra \string before the colon to + prevent unwanted expansion of the colon in some circumstances. + +2004-04-15 Johannes Braams (babel at latex-project.org) + + * frenchb/frenchb.dtx : Received a new version from Daniel flipo + +2004-02-20 Johannes Braams (babel at latex-project.org) + + * hebrew/hebrew.dtx: Updated distribution with new files from + Tzafrir Cohen from his ivritex package + + * magyar/magyar.dtx : Use \nobreakspace indefinition of + fnum@figure and fnum@table + + * slovak/slovak.dtx : Tobias Schlemmer (Tobias.Schlemmer at + web.de) provided an extension to the support for Slovak with + shorthand definitions. + +2004-02-19 Johannes Braams (babel at latex-project.org) + + * greek/greek.dtx : Commented out the redefinitions of + \fnum@figure and \fnum@tabel as they are no longer necessary and + proved to be a problem together with the koma class. Pointed out + by Markus Kohm (komascript at gmx.info) and "Matthias M. Weber" + (mmw at aretaios.de) + + * base/babel.dtx (subsection{Umlauts and trema's}): PR 3603 + mentions a problem in \LaTeX when \add@accent occurs in vertical + mode; this problem can occur with \umlauthigh and \umlatlow as + well. Implemented the same fix: add \leavevemode. Reported by: + Gianfranco Boggio-Togna (gbt at acm.org). + + * polish/polish.dtx : The double closing quote was defined using + \textquotedblleft, it should be \textquotedblright according to + Zbigniew Jedrzejewski-Szmek (zjed@ at tempac.okwf.fuw.edu.pl) + +2004-02-18 Johannes Braams (babel at latex-project.org) + + * czech/czech.dtx : Translation for `Glossary' provided by + (tonda.misek at post.cz) (PR 3610) + +2003-11-26 Johannes Braams (babel at latex-project.org) + + * base/babel.dtx (subsection{Multiple languages}): Since the equal + sign may be used in TeX programming it needs to have it's default + category code during language definition file processing. When + turkish is loaded this isn't the case. Therefor the macros + Ldfinit, ldf@quit and ldf@finish have been changed accordingly. + Problem reported in PR 3398 by myself as occuring with latin. + +2003-11-20 Johannes Braams (babel at latex-project.org) + + * catalan/catalan.dtx : Fixed a typo, + found by Ignasi Furió (ignasi.furio at uib.es) \AtBeginDocuemnt + + * magyar/magyar.dtx : Translation for `Glossary' provided by + franciszek holop (fred at pentacom.sk) + +2003-11-17 Johannes Braams (babel at latex-project.org) + + * danish/danish.dtx : The default setting of the hyphenmin + parameters was missing; noticed by Arne Glenstrup + (panic at com.dtu.dk). + + * catalan/catalan.dtx : Translation for `Glossary' provided by + (antispam at wanadoo.es) + + * bahasa/bahasa.dtx : Translation for `Glossary' provided by + (Jörg Knappen) (joerg.knappen at uni-mainz.de) + + * base/babel.dtx (subsection{Shorthands}): Changed the definition + of \active@prefix to take \@unexpandable@rotect into account in + order to make sure that the showkeys package shows the correct + label (PR3547 by Cyril Carrez (cyril.carrez at enst.fr) + + * english/english.dtx : The default setting of the hyphenmin + parameters was missing. + +2003-11-16 Johannes Braams (babel at latex-project.org) + + * base/babel.dtx (subsection{Multiple languages}): Added a + seperate error message for the case where the hyphenation patterns + where loade, but the option wasn't specified. (PR 3329 by + was at VR-Web.de (Walter Schmidt)) + +2003-11-15 Johannes Braams (babel at latex-project.org) + + * base/babel.dtx (subsection{marks}): Added the command + \bbl@resotre@actives to markright and and markboth. This is needed + for the situation when the output routine kicks in while + \@safe@actives is in effect. PR3335 from Werner Lemberg + (wl@gnu.org) shows that this can happen while LaTeX is processing + a bibitem. + +2003-11-14 Johannes Braams (babel at latex-project.org) + + * spanish/spanish.dtx: Received a new version from Javier Bezos + + * frenchb/frenchb.dtx : Received a new version from Daniel flipo + +2003-11-13 Johannes Braams (babel at latex-project.org) + + * base/babel.dtx (subsection{Multiple languages}): removed a line + with \let\bbl@pop@language\relax as it prevents the stack + mechanism from working (PR3583, Daniel Flipo) + (subsection{Language options}): Added the interlingua option, + support provided by Peter Kleiweg (kleiweg at let.rug.nl) and Alberto + Mardegan (mardy at despammed.com) + +2003-10-07 Johannes Braams (babel at latex-project.org) + + * magyar/magyar.dtx : When \l@magyar and \l@hungarian were both + undefined to begin with \l@hungarian staied undefined. Fixed this. + +2003-10-04 Johannes Braams (babel at latex-project.org) + + * hebrew/hebrwe.dtx: Fixed \hebr and \gim which gave missing + endcsname errors; added two \fi to \@@gim which were missing + +2003-09-29 Johannes Braams (babel at latex-project.org) + + * magyar/magyar.dtx : Added \def\@safe@activesfalse{} to + \hun@tempadef to fix PR3426, submitted by Bálint Aradi + (aradi at surphy.fat.bme.hu) + +2003-09-19 Johannes Braams (babel at latex-project.org) + + * catalan/catalan.dtx: The commands \l and \L didn't work when the + package fontenc with encoding T1 was loaded after + babel. Postponing them to \begin{document} helps. + +2003-09-18 Johannes Braams (babel at latex-project.org) + + * magyar/magyar.dtx: The \if-\else-\fi construction which checks + the existnece of \l@magyar and \l@hungarian was malformed, in + effect making l@hungarian undefined when hte patterns were loaded + under that name + +2003-09-12 Johannes Braams (babel at latex-project.org) + + * base/babel.dtx (subsection{Shorthands}): The fix for PR 3383 + didn't make it into the code corretly. \aliasshorthand was broken + as well, the new shorthand was not "deactivated" by verbatim. + +2003-08-25 Johannes Braams (babel at latex-project.org) + + * greek/athnum.dtx: Received a new version from Apostolos + Syropoulos + * french/french.dtx: Received a new version from Daniel flipo + +2003-06-15 Johannes Braams (babel at latex-project.org) + + * base/babel.dtx (subsection{Language options}): Create fd file + with fontfamily substitutes with a lowerase filename + +2003-06-14 Johannes Braams (babel at latex-project.org) + + * bulgarian/bulgarian.dtx (section{The Bulgarian language}): Added + missing closing brace in definition of \@alph@eng; found by Hilmar + Preusse (hille42 at web.de); reported as PR3533 + +2003-06-10 Johannes Braams (babel at latex-project.org) + + * romanian/romanian.dtx : Translation for `Glossary' provided by + Costin Stroie (thubi at med.pub.ro) + +2003-06-07 Johannes Braams (babel at latex-project.org) + + * base/babel.dtx (subsection{Language options}): No longer load + Bernard Gaulle french.ldf when the option `french' was specified; + always load frencb.ldf instead. This change was made after reports + that documents are no longer portable when the option `french' is + used. + +2003-05-23 Johannes Braams (babel at latex-project.org) + + * base/babel.dtx (subsubsection{General}): Now define + \FOREIGNLANGUAGE unconditonally as it might turn up in the + argument of \MakeUpperCase (PR3438) + + * galician/galician.dtx : Translation for `Glossary' provided by + Xoán Pedracova (xpedra at com.uvigo.es) + + * portuges/portuges.dtx : Translation for `Glossary' provided by + Camilo Yamauchi Campo (ccampo at icmc.sc.usp.br) and Xoán Pedracova + (xpedra at com.uvigo.es) + +2003-04-14 Johannes Braams (babel at latex-project.org) + + * italian/italian.dtx: Received a new version of italian.dtx from + Claudio Beccari, removing functionality that has become available + in the LaTeX Kernel. + + * latin/latin.dtx: Received a new version of latin.dtx from + Claudio Beccari; solving PR 3523. + +2003-04-10 Johannes Braams (babel at latex-project.org) + + * greek/greek.dtx : When loading polutoniko greek after frenchb + LaTeX crashes because frenchb makes the `!' an active + charcter. Found by christian at justen-mack.de (Christian Justen) + (PR 3505) + +2003-04-10 Johannes Braams (babel at latex-project.org) + + * bulgarian/bulgarian.dtx : Fixed typo which prevented \@SS to be + defined. Found by "Dimitar Vandev" (vandev at math.bas.bg) + + * danish/danish.dtx : Translation for `Glossary' provided by + Morten H{\o}gholm (moho01ab at student.cbs.dk) in PR 3500 + +2003-04-09 Johannes Braams (babel at latex-project.org) + + * frenchb/frenchb.dtx : New version (1.6b) from Daniel which now + takes guillemets in OT1 from OT4, no longer from OT2/wncyr, thus + providing better cooperation between franch and russian. + +2003-03-19 Johannes Braams (babel at latex-project.org) + + * base/babel.dtx (subsection{Encodig issues (part 1)}): the + command \textlatin needs to start with \leavevmode in order to + start a paraghraph before the group instead of inside it. found by + Frank Mittelbach. + * greek/greek.dtx (subsection{Greek numbering}): Similar change + for \textgreek. + * frenchb/frenchb.dtx : New version (1.6a) from Daniel which + offers the possibility of having footnotes typeset as required by + the French `Imprimerie Nationale'. + +2003-03-18 Johannes Braams (babel at latex-project.org) + + * base/babel.dtx (subsection{Multiple languages}): Use a stack + mechanism to keep track of nested languages. When more than one + level of nesting occurs TeX's grouping mechanism no longer works + as needed. Problem first mentioned by Daniel Flipo + (Daniel.Flipo at univ-lille1.fr) in july 2002. + +2002-01-09 Johannes Braams (babel at latex-project.org) + + * icelandic/icelandic.dtx : Added translation for Glossary as + supplied by Erlendur S Ŝorsteinsson (esth at erlendur.com) + +2002-01-07 Johannes Braams (babel at latex-project.org) + + * esperanto/esperanto.dtx : Added translation for Glossary as + supplied by Dominique Unruh (dominique at unruh.de) + + * basque/basque.dtx : Received a new version from Juan + Aguirregabiria, change the ur;'s for the patterns file, translated + Glossary, revised definition of "-. + +2001-11-16 Johannes Braams (babel at latex-project.org) + + * swedish/swedish.dtx : Fixed a changes entry (reported by Frederic + Boulanger (Frederic.Boulanger at supelec.fr)) + * hebrew/hebrew.dtx : Fixed a changes entry (reported by Frederic + Boulanger (Frederic.Boulanger at supelec.fr)) + +2001-11-15 Johannes Braams (babel at latex-project.org) + + * magyar/magyar.dtx: Corrected checksum. (reported by Frederic + Boulanger (Frederic.Boulanger at supelec.fr)) + +2001-11-13 Johannes Braams (babel at latex-project.org) + + * finnish/finnish.dtx : According to Niilo Siljamo + (Niilo.Siljamo at fmi.fi) and Matti Rintala (matti.rintala at tut.fi) + the definition of "= should use \bbl@allowhyphens instead of + \allowhyphens. (PR 3378) + +2001-11-11 Johannes Braams (babel at latex-project.org) + + * base/babel.dtx (subsection{Shorthands}): The user level + shorthands were broken. Fixed this by using the \lccode + trick. PR 3383 found by Nicolae-Alexandru Nicorovici + (nicolae at physics.usyd.edu.au). + +2001-03-12 Johannes Braams (babel at latex-project.org) + + * swedish/swedish.dtx, finnish/finnish.dtx : Translations for + `Glossary' were provided by Martin Vermeer mv at liisa.pp.fi + +2001-03-05 Johannes Braams (babel at latex-project.org) + + * magyar/magyar.dtx : Make sure the the `-character has catcode + 12 when the .aux file is being read in the second time. (see also + change to catalan.dtx d.d. 1999-11-29. + Found by Gyori Sandor (gyori at szit.bme.hu) + +2001-03-01 Johannes Braams (babel at latex-project.org) + + * frenchb/frenchb.dtx (subsection{Caption names}): Added a missing + comment character. + + * base/babel.dtx: Added a number of missing comment characters + which could produce spurious whitespace in documents. + Found by Daniel Flipo (flipo at univ-lille1.fr). + +2001-02-21 Johannes Braams (babel at latex-project.org) + + * cyrillic/{russianb,ukraineb}.dtx : commented out the code that + was copied from amsmath as it genereated a textfont 7 error. This + was reported in PR3226 and PR3245 + +2001-02-20 Johannes Braams (babel at latex-project.org) + + * galician/galician.dtx : Added translation for Proof, provided by + "Emilio Perez Gonzalez" (eperez at cesatel.net). + +2001-02-19 Johannes Braams (babel at latex-project.org) + + * catalan/catalan.dtx : Added setting of hyphenation parameters to + two as required by the Catalan hyphenation patterns cahyph.tex. + +2001-02-16 Johannes Braams (babel at latex-project.org) + + * portuges/portuges.dtx : According to the Portuguese hyphenation + pattern file the \righthyphenmin value should be set to 3 instead + of 2. + Reported by "Walter Schmidt" (was at VR-Web.de) (PR3303) + + * greek/grmath.dtx: New version of this file from Apostolo with + two new options, grlog and enlog. + + * frenchb/frenchb.dtx : New version (1.5d) from Daniel which makes + french the internal name instead of frenchb. + +2001-02-13 Johannes Braams (babel at latex-project.org) + + * cyrillic/ukraineb.dtx : Added the translation for "glossary" as + provided by Andrij Shvaika (ashv at icmp.lviv.ua) in PR3306 + +2001-02-09 Johannes Braams (babel at latex-project.org) + + * base/babel.dtx (subsection{Language options}): Added options + canadien and acadian. + (subsection{Multiple languages}): The CJK package adds an extra + level of grouping to the document through a redefinition of the + \documentclass macro. + Found by Daniel FLIPO (flipo at univ-lille1.fr). + (subsubsection{\pkg{fancyhdr}}): In order to prevent unexpected + results in documents that use fancyhdr combined with the book + class we need to define \FOREIGNLANGUAGE. + Found by Piet van Oostrum (piet at cs.uu.nl) (PR3238) + + * frenchb/frenchb.dtx : New version (1.5) from Daniel Flipo; + Added support for canadien and acadian on request from "Garst + R. Reese" (reese at isn.net) and the LyX developpers. + +2001-02-07 Johannes Braams (babel at latex-project.org) + + * base/babel.dtx (subsection{Language options}): Added the + canadian option on request from "Garst R. Reese" (reese at isn.net) + and the LyX developpers. + + * english/english.dtx : Added support for loading with the option + canadian. + +2001-02-06 Johannes Braams (babel at latex-project.org) + + * german/ngermanb.dtx : Made the option ngermanb act as if ngerman + was specified. + + * greek/greek.dtx : Regression testing revealed that ^^9f can't be + fed to \initiate@active@char as such. It seemed to work, but made + the caret active and brok in combination with a language that + already had made the caret active. To circumvent this greek now + uses the decimal number notation (159) instead of ^^9f where + possible and makes the tilde act as ^^9f for the purpose of + declaring it active. + +2001-01-26 Johannes Braams (babel at latex-project.org) + + * german/(n)germanb.dtx : Added \frenchspacing to extrasgerman as + it is in german.sty. Reported in PR3090 by Heiko Oberdiek + (oberdiek at ruf.uni-freiburg.de). + +2001-01-19 Johannes Braams (babel at latex-project.org) + + * base/bbcompat.dtx: Added options for USenglish and UKenglish and + made sure that the right files are created from bbcompat for plain + TeX users. British.sty (and the others) were missing. Found by + Bernard Treves Brown (mcnbjtb at fs4.in.umist.ac.uk). + +2001-01-12 Johannes Braams (babel at latex-project.org) + + * norsk/norsk.dtx : Changed \ccname and \alsoname according to a + message from Dag Langmyhr (dag at ifi.uio.no) and Karl Ove + Hufthammer (huftis at bigfoot.com) + +2000-12-11 Johannes Braams (babel at latex-project.org) + + * italian/italian.dtx : Added the translation for Glossary as + provided by Claudio Beccari (Beccari at polito.it). + +2000-10-28 Johannes Braams (babel at latex-project.org) + + * norsk/norsk.dtx: Replaced Glossary with its translation from + Rune Kleveland (runekl at math.uio.no) + + * frenchb/frenchb.dtx: Daniel Flipo added + \ThinSpaceInFrenchNumbers + +2000-10-26 Johannes Braams (babel at latex-project.org) + + * greek/greek.fdd : Added more font sizes to make the CB fonts + compatible with the EC fonts as suggested by Ken Smith + (kgs at maths.uq.edu.au) + +2000-10-25 Johannes Braams (babel at latex-project.org) + + * greek/greek.dtx: The final sigma in all names should appear as + `s' instead of `c' + +2000-10-04 Johannes Braams (babel at latex-project.org) + + * samin/samin.dtx: Replaced the word `Glossary' with its + translation supplied by Regnor Jernsletten + (Regnor.Jernsletten at sami.uit.no) + +2000-10-02 Johannes Braams (babel at latex-project.org) + + * base/babel.dtx (subsection{Shorthands}): When the acute has been + made active for one language, an it gets switched to 'non-active' + for a second language we get a "double superscript" error. using + \textormath prevents this. + Found by Javier Bezos (jbezos at wanadoo.es) (PR3266) + + * base/bbplain.dtx: Added \textquotedblleft and \textquoteleft + after PR 3263, found by Enn Saar, (saar at aai.ee) + +2000-10-01 Johannes Braams (babel at latex-project.org) + + * base/babel.dtx (subsection{Cross referencing macros}): The + optional argument of \cite is used for typesetting. Therefor the + shorthands need only to be turned off in the second + argument. Redefinition of \@citex changed accordingly, also taking + care of natbib and cite.sty versions of it. + Found by Javier Bezos (jbezos at wanadoo.es) (PR3262) + +2000-09-26 Johannes Braams (babel at latex-project.org) + + * base/babel.dtx (subsection{Language options}): Added the + samin option; support was provided by Regnor Jernsletten + (Regnor.Jernsletten at sami.uit.no) + +2000-09-25 Johannes Braams (babel at latex-project.org) + + * base/babel.dtx (subsection{Multiple languages}): Use + the \cs{aftergroup} mechanism to keep the language grouping + correct in auxiliary files ; this involves an extra level of + expansion with \bbl@set@language. + PR3091, found by Igor A. Kotelnikov (kotelnikov at nsu.ru) + +2000-09-22 Johannes Braams (babel at latex-project.org) + + * all relevant language files: Now use \providehyphenmins in order + to provide default values instead of overruling any settings from + the hyphenation patterns file. + +2000-09-21 Johannes Braams (babel at latex-project.org) + + * base/babel.dtx (subsection{Language options}): Added the + bulgarian option; support was provided by Georgi Boshnakov + (mcbssgb2 at fs2.umist.ac.uk) + +2000-09-19 Johannes Braams (babel at latex-project.org) + + * all language files: Added \glossaryname with the default + translation of "Glossary" after a suggestion from Thomas Henlich + (henlich at mmers1.mw.tu-dresden.de) + + * polish/polish.dtx: according to "Adalbert Jahnz" + (ad_jahnz at hotmail.com) the definitions of \refname and \bibname + were swapped. Corrected. + + * finnish/finnish.dtx: The definition of \- still used + \allowhyphens instead of bbl@allowhyphens; found by Matti Hollberg + (hollberg at arska.fys.utu.fi) and Rintala Matti (bitti at cs.tut.fi) + + * base/babel.dtx (subsection{Macros common to a number of + languages}): The macro \save@fs@q starts a paragraph inside a + group when called in vertical mode.It shouldn't do that. Donald + Arseneau (ASND at erich.triumf.ca) proposed a different + implementation in PR3219 + +2000-06-29 Johannes Braams (babel at latex-project.org) + + * base/babel.dtx (subsubsection{\pkg{ifthen}}): When babel changes + the definition of \ifthenelse in order to give \pageref it's + original definition it needs to revert \pageref to its babel + version inside the 2nd and 3rd arguments; not after the + \ifthenelse instruction. + PR 3224, found by Heiko Oberdiek (oberdiek at ruf.uni-freiburg.de) + +2000-02-29 Johannes Braams (babel at latex-project.org) + + * norsk/norsk.dtx: The shorthands are the same for both spelling + variants; no need to use \CurrentOption in \declare@shorthand. The + way it was done didn't work anyway, + Found by Rune Kleveland (runekl at math.uio.no) + +2000-02-18 Johannes Braams (babel at latex-project.org) + + * base/babel.dtx (subsection{Multiple languages}): Added the + command \providehyphenmins to be used in the .ldf files. It will + check whether the hyphenmin parameters were set by the hypheantion + pattern file. + +2000-02-04 Johannes Braams (babel at latex-project.org) + + * greek/greek.dtx : After \selectlanguage{polutonikogreek} the + fonts were not reset when returning to an english environment + PR3168, found by Maarten Wisse, (mwisse at theo.uu.nl) + +2000-01-28 Johannes Braams (babel at latex-project.org) + + * norsk/norsk.dtx : In the definition of "- we should use + \bbl@allowhyphens instead of \allowhyphens. + Found by Rune Kleveland (runekl at math.uio.no) + +2000-01-21 Johannes Braams (babel at latex-project.org) + + * english/english.dtx : When the option USenglish was used the + format of the date was *not* american. Also, in some cases the + control sequence \l@<\Currentoption> was not properly + defined. Found by Walter Schmidt (walter.schmidt at arcormail.de) + +2000-01-20 Johannes Braams (babel at latex-project.org) + + * swedish/swedish.dtx: Additions from Erik Östhols + (erik_osthols at yahoo.com): + - The unnecessary version of "=, which I really only included at + the time because it was there in germanb.dtx, from whence I stole + most (all?) of my ideas then, has been modified to something that + is actually useful for typesetting Swedish, and which was (again) + stolen from the finnish.dtx file. + - The likewise unnecessary "~, again stolen from germanb without + my having a clear idea of why it would be useful, has been + deleted. + - The new and *very* useful version of \- as found in + e. g. finnish.dtx has been included. + - The definitions of "a, "A, "o etc. have been changed to allow + subsequent hyphenation, as in current versions of germanb. + - As typesetting the date as "20 januari 2000" is, if not + uncommon, then at least much less common than some other varieties + of formatting of dates in Sweden, two commands have been added to + provide for the much more common "20/1 2000" and "2000-01-20". + +2000-01-08 Johannes Braams (babel at latex-project.org) + + * polish/polish.dtx : The definition of \datepolish contained an + unwanted space which appeared in the output., Found by Ilya Beylin + (ilya at cs.chalmers.se). + +1999-12-18 Johannes Braams (babel at latex-project.org) + + * base/babel.dtx (subsection{Shorthands}): Introduced an extra + level of expansion in the definition of an active caret + + * esperant/esperant.dtx : Moved the check for math mode in the + definition of the ^ to babel.def in case some other language needs + to have ^ as a shorthand character as well. + +1999-12-16 Johannes Braams (babel at latex-project.org) + + * catalan/catalan.dtx : Make sure that the shorthand characters + are turned off outside of catalan. Found by Javier Bezos + (jbezos at arrakis.es) + This also holds for other language definitions: basque.dtx, + breton.dtx, danish.dtx, finnish.dtx, galician.dtx, german.dtx, + icelandic.dtx, ngerman.dtx, norsk.dtx, polish.dtx, portuges.dtx, + serbian.dtx, slovene.dtx, swedish.dtx, usorbian.dtx. + +1999-12-01 Johannes Braams (babel at latex-project.org) + + * base/babel.dtx (subsection{Shorthands}): Need to redefine + \prim@s as well as \pr@m@s as plain TeX uses \next and LaTeX uses + \@let@token. Found by Javier Bezos (jbezos at arrakis.es) + +1999-11-29 Johannes Braams (babel at latex-project.org) + + * catalan/catalan.dtx : Make sure the the `-character has catcode + 12 when the .aux file is being read in the second time. If it is + active when \catcode``\active is read errors result. Found by + Javier Bezos (jbezos at arrakis.es) + +1999-11-22 Johannes Braams (babel at latex-project.org) + + * basque/basque.dtx: fixed a few doc errors as suggested by + Jean-François Mertens (jfm at core.ucl.ac.be) + + * norsk/norsk.dtx : Added the french double quotes, changed the + definition of "f based on the german definition; enhanced + documentation; all by Rune Kleveland (runekl at math.uio.no) + +1999-09-30 Johannes Braams (babel at latex-project.org) + + * esperant/esperant.dtx : Added a chack for math mode to the + definition of the active ^. + +1999-09-29 Johannes Braams (babel at latex-project.org) + + * greek/greek.dtx : The greek language support now makes use of + the language attribute feature. But in order not to break older + documents some extra code is needed to make the option + polutonikogreek work. + +1999-09-16 Johannes Braams (babel at latex-project.org) + + * base/bbplain.dtx (section{Support for formats based on + \textsc{plain}\TeX}): Added the command \@ifundefined which is + used in the definition of active charcters since Babel 3.6Z + +1999-09-06 Johannes Braams (babel at latex-project.org) + + * base/babel.dtx (subsection{Shorthands}): The change from 08/27 + was rubbish; now use \let instead of \edef + +1999-08-27 Johannes Braams (babel at latex-project.org) + + * cyrillic/{russianb,ukraineb}.dtx : Made not using the inputenc + package a warning rather than an Error message after user + requests. + +1999-08-19 Johannes Braams (babel at latex-project.org) + + * base/babel.dtx (subsection{Shorthands}): The proposed fix for + PR3050 doesn't work; use \strip@prefix\meaning. + +1999-08-18 Johannes Braams (babel at latex-project.org) + + * frenchb/frenchb.dtx (subsection{Date and clean up}): No longer + use \edef to define \today; the accent commands are not expandable + and generate error messaages. (PR 3083, found by Thomas Esser + (te at informatik.uni-hannover.de)) + +1999-06-22 Johannes Braams (babel at latex-project.org) + + * base/babel.dtx (subsection{Shorthands}): When the shorthand + character is already active make sure it gets expanded once + instead of fully when \normal@char<char> is defined. This can be + acheived by using \expandafter\noexpand (PR 3050, found by Joachim + Becker (jbecker1 at gwdg.de)) + +1999-04-30 Johannes Braams (babel at latex-project.org) + + * base/babel.dtx (subsection{Shorthands}): Only realy initiate a + shorthand once (suggested by Javier Bezos) + + * italian/italian.dtx : Claudio Beccari introduced the " as a + shorthand to insert the compound word mark (when the encoding is + T1) and added support for ISO 31/XI regulations + +1999-04-29 Johannes Braams (babel at latex-project.org) + + * greek/greek.fdd (section{The encoding definition file}): Removed + the refinition of \& from the encoding file as it doesn't belong + there. + + * greek/greek.dtx : Now switch the definition of \& via + \extrasgreek (removed from the font encoding file); the greek + fonts do not contain an &-sign. + +1999-04-22 Johannes Braams (babel at latex-project.org) + + * base/babel.dtx (subsection{Multiple languages}): In some + situations \lefthyphenmin remained equal to -1. This setting is + now inside the group in which patterns are read. Also added the + explicit setting of the hyphenmin paramters for language=0 as this + didn't happen when the first pattern file changes \lefthyphenmin. + For synonym languages the hyphenmin parameters were not set, this + is now accomplished by storing the \languagename in \process@line + Suggested by Vladimir Volovich (vvv at vvv.vsu.ru) + +1999-04-21 Johannes Braams (babel at latex-project.org) + + * base/babel.dtx (subsection{Cross referencing macros}): It was + reported by Richard Walker (Richard.Walker at cs.anu.edu.au) + (PR 3023) and "Igor A. Kotelnikov" (kotelnikov at nsu.ru) that babel + brok the cite package This could be solved by *not* redefining + \bibcite when the cite package is loaded. + During testing it became clear that running the document the first + time produced an error; solved by adding an \AtBeginDocument + action. (babel 3.6v) + +1999-04-20 Johannes Braams (babel at latex-project.org) + + * base/bbcompat.dtx: Added code to issue a sensible error when the + .sty files are loaded from LaTeXe; but made sure the document can + be processed without complaints about \ProvidesLanguage not defined. + (PR3020, Richard Walker (Richard.Walker at cs.anu.edu.au)) + Made sure the .sty and .ldf files can be used from plain TeX + without hyphen.cfg preloaded. + + * base/babel.dtx (section{The Kernel of Babel}): When plain.def is + loaded from switch.def we need to define \adddialect first in + order to access the second part. (babel 3.6u) + +1999-04-20 Johannes Braams (babel at latex-project.org) + + * babel.dtx (subsection{Shorthands}): Removed the braces again + (PR3022) as the cure poses more problems than it solves. Will + need to find a different solution for the active ^ in esperanto. + +1999-04-18 Johannes Braams (babel at latex-project.org) + + * turkish/turkish.dtx : Incorporated corrections received quite + some time ago from "H. Turgut Uyar" (uyar at cs.itu.edu.tr) + +1999-04-16 Johannes Braams (babel at latex-project.org) + + * greek.dtx, babel.dtx : Moved redefinition of \@roman and \@Roman + back the the greek language support because of the problems it + causes with the AMS document classes. This problem needs to be + solved in a different way; \@roman needs to be used in expansion + only places. + Reported by Jean-Francois Mertens (jfm at core.ucl.ac.be)(PR 3017) + +1999-04-13 Johannes Braams (babel at latex-project.org) + + * babel.dtx (subsection{Cross referencing macros}): The + redefinition of \bibcite didn't work for the natbib package; a + redefinition that works for natbib doesn't work without it. + Now bibcite defines itself during the processing of the .aux file + which is done *before* the \AtBeginDocument commands are executed. + Found by Niilo Siljamo (siljamo at sateenkaari.meteo.helsinki.fi) + (PR 3011) (babel 3.6s) + +1999-04-12 Johannes Braams (babel at latex-project.org) + + * babel.dtx (subsection{Language options}): Re-instated the + loading of babel.def right at the begining of babel.sty as it is + needed to define \ProvidesLanguage. The need for postponing it has + gone, because \bbl@redefine is no longer used as a warning + mechanism against missing options (changed in 3.6p dd 9/4/99) + Found by Werner Struckmann (struck at ips.cs.tu-bs.de) (PR 3006) and + "Walter Schmidt" (wschmi at ibm.net) (PR 3014) babel 3.6r + +1999-04-12 Johannes Braams (babel at latex-project.org) + + * babel.dtx (subsection{Encodig issues (part 1)}): The parsing of + \@filelist to determine the latinencoding turend out to fail when a + file with (default) extension .tex has been loaded. Now use + \@ifl@aded, assuming all encoding .def files have a ProvidesFile + entry. Found by "Igor A. Kotelnikov" (kotelnikov at nsu.ru), + suggesion by Vladimir Volovich (vvv at vvv.vsu.ru) babel 3.6q + +1999-04-10 Johannes Braams (babel at latex-project.org) + + * polish.dtx : Replaced the word `Proof' with its translation + supplied by Andrzej Komisarski (andkom at kki.net.pl) + +1999-04-10 Johannes Braams (babel at latex-project.org) + + * babel.dtx (subsection{Language options}): Added the options + ngerman and naustrian to support the new german orthography, as + supplied by "Walter Schmidt" (wschmi at ibm.net) + +1999-04-09 Johannes Braams (babel at latex-project.org) + + * babel.dtx (subsection{marks}): The solution for PR2990 wasn't + perfect; the arguments to the \mark... commands need to be stored + in a token register prior to using \edef. + (subsection{Language options}): Now check for the existence of + \bbl@main@language instead of redefining \bbl@redefine to detect + missing options. + +1999-04-09 Johannes Braams (babel at latex-project.org) + + * bahasa.dtx : February should be Pebruari according to + Mohammad DAMT (mdamt at cakraweb.com) + + * babel.dtx : Changed the argument handlling of \process@line in + order to prevent a trailing space from becoming part of a control + sequence when defining a synonym + (from a line such as `=english %') + Found by Thomas Esser (te at informatik.uni-hannover.de), (PR 2851) + +1999-04-08 Johannes Braams (babel at latex-project.org) + + * babel.dtx (subsection{marks}): Removed th use of \head@lang in + passing the current language into the marks. This didn't work for + amsart.cls. Found a new solution wich works for the stansdard + document classes as well as for amsart. + Reported by Vittorio Coti Zelati (zelati at cds.unina.it) (PR 2990) + +1999-04-07 Johannes Braams (babel at latex-project.org) + + * babel.dtx (subsection{Encodig issues}): Needed to move the + \AtBeginDocument test for the loading of fontenc right up front of + babel.sty; also added a test for `manual' selection of T1 without + loading fontenc (via \renewcommand\encodingdefault{T1}) as + suggested by Claudio Beccari (Beccari at polito.it) + +1999-04-05 Johannes Braams (babel at latex-project.org) + + * babel.dtx : Had to implement a diferent way to check for fontenc + with T1 encoding; now pare \@filelst (PR 3002) + +1999-04-05 Johannes Braams (babel at latex-project.org) + + * babel.dtx (subsection{Multiple languages}): Need to set + default values for lefthyphenmin and righthyphenmin globally now + that the patterns are read in a group. + + * catalan.dtx, danish.dtx, dutch.dtx, estonian.dtx, finnish.dtx, + galician.dtx, polish.dtx, portuges.dtx, spanish.dtx, germanb.dtx, + swedish.dtx usorbian.dtx : changed the definition of "- as + \allowhyphens is a no-op with T1 now. That is alright for accented + letters but *not* for "- in these files. + Found by Niilo Siljamo (siljamo at sateenkaari.meteo.helsinki.fi) + (PR 2993, 2995) + +1999-04-03 Johannes Braams (babel at latex-project.org) + + * greek/greek.dtx : Made \greeknumeral accept a counter as its + argument. found by Andreas Schwab + (schwab at issan.informatik.uni-dortmund.de) (PR 3000) + + * greek/greek.fdd : Got a new version from Apostolos; repaired a + few typo's found by Andreas Schwab + (schwab at issan.informatik.uni-dortmund.de) (PR 2997) + + * cyrillic/ukraineb.dtx (section{The Ukrainian language}): + Replaced \CYRUKRI with \CYRII in \authorname, typo, found by + Andrij Shvaika (ashv at icmp.lviv.ua) + + * babel.dtx (section{The Package File}): Don't load babel.def from + babel.sty, but rather define \LdfInit temporarily in order to load + babel.def at the right time, preventing problems with the + temporary definition of \bbl at redefine; found by + Walter Schmidt (wschmi at ibm.net), PR 2987 and + Andreas Schwab (schwab at issan.cs.uni-dortmund.de), PR 2998 + +1999-03-12 Johannes Braams (babel at latex-project.org) + + * croatian.dtx : Changed an occurence of \od into \or; found by + Damir Medak (medak at geoinfo.tuwien.ac.at) (PR 2918) + + * bahasa.dtx : February is Pebruary in bahasa Indonesia according + to Mohammad DAMT (mdamt at cakraweb.com) + +1999-03-09 Johannes Braams (babel at latex-project.org) + + * babel.dtx : added the ukrainian option, provided by Vladimir + Volovich (TeX at vvv.vsu.ru) and Andrij Shvaika (ashv at icmp.lviv.ua) + +1999-02-28 Johannes Braams (babel at latex-project.org) + + * slovak.dtx : repaired a few spelling mistakes found by + Peter Kral (Peter.Kral at swh.sk) + +1998-07-02 Johannes Braams (babel at latex-project.org) + + * babel.dtx (subsection{Language attributes}): Added support for + language attributes. + + * bbplain.dtx : Added defintion of \in@, needed for language + attributes. + +1998-06-27 Johannes Braams (babel at latex-project.org) + + * babel.dtx (section{The Package File}): Added a definition of + \bbl@redefine before the call to \ProcessOptions. The idea is to + generate a sensible error message when the user forgets to + specifiy a language option. + +1998-06-25 Johannes Braams (babel at latex-project.org) + + * norsk.dtx : Added the suggestions from Rune Kleveland + (runekl at math.uio.no) for the " shorthand. + +1998-06-15 Johannes Braams (babel at latex-project.org) + + * germanb.dtx : Updated the coding for "f from german.dtx version + 2.5d after a discussion about this subject with Heiko Obrerdiek + (oberdiek at ruf.uni-freiburg.de) + +1998-06-09 Johannes Braams (babel at latex-project.org) + + * babel.dtx (subsection{Multiple languages}): Changed definition + of \iflanguage using \bbl@afterelse, \@fristoftwo and + \@secondoftwo in order to evaluate the selected argument *after* + the \fi's have been seen by TeX. (PR 2800) + (oberdiek at ruf.uni-freiburg.de) Heiko Oberdiek) + +1998-06-08 Johannes Braams (babel at latex-project.org) + + * install.txt: Changed installation instructions, *not* + advising them to rename hyphen.tex, but to use bplain.tex as a + replacement for plain.tex. + + * bbplain.dtx: Added the source for the format replacement wrapper + files bplain.tex and blplain.tex. This is the result of a + discussion with a number of people about the permissabillity of + renaming hyphen.tex. Don Knuth doesn't allow it. + + * germanb.dtx, polish.dtx, usorbian.dtx: changed the definition of + \mdqon and \mdqoff to use the new commands \shorthandon and + \shorthandoff. + + * babel.dtx (section{The user interface}: Added two commands, + \shorthandon and \shorthandoff as a more general solution to + PR2627. + +1998-03-28 Johannes Braams (babel at latex-project.org) + + * all language definition files: use \def to define \today, in + order to prevent expansions at the wrong time. + +1998-03-27 Johannes Braams (babel at latex-project.org) + + * babel.dtx (subsection{Cross referencing macros}): Changed the + redefenition of \bibcite to include \@safe@activesfalse in the + definition of the reference. + +1998-03-13 Johannes Braams (babel at latex-project.org) + + * babel.dtx (subsection{Cross referencing macros}): Removed + \@safeactivesfalse from #3 of \@newl@bel and \@testdef + +1998-03-12 Johannes Braams (babel at latex-project.org) + + * babel.dtx (subsection{Multiple languages}): Now also execute + \originalTeX from \foreignlanguage in order to reset a possibly + changed output encoding. + +1998-03-12 Johannes Braams (babel at latex-project.org) + + * babel.dtx (subsection{Encodig issues}): Added the redefinition + of \TeX and \LaTeX to make them encoding independant. + +1998-03-11 Johannes Braams (babel at latex-project.org) + + * babel.dtx (subsection{Encodig issues}): Use the T1 encoding when + it is a known encoding, otherwise use OT1 as latin encoding. + +1997-12-19 Johannes Braams (babel at latex-project.org) + + * babel.dtx (subsection{Cross referencing macros}): Call + \@safe@activestrue instead of \set@display@protect which casued + errors. + +1997-11-19 Johannes Braams (babel at latex-project.org) + + * babel.dtx (subsection{Shorthands}): Removed the check for \write + being primitive. Problem solved in seminar. + +1997-11-13 Johannes Braams (babel at latex-project.org) + + * greek.dtx : Received a new version from Apostolous; replaced the + \greeknumeral coding with an expandable solution + + * babel.dtx (section{The Package File}): Added the option + polutonikogreek for typesetting greek text with all accents. + +1997-11-04 Johannes Braams (babel at latex-project.org) + + * babel.dtx : Removed the braces around #1 of \bbl@tempa in the + redefinition of \ProvidesFile in hyphen.cfg (PR 2659) + clase at mathematik.uni-freiburg.de ( Matthias Clasen ) + +1997-10-08 Johannes Braams (babel at latex-project.org) + + * frenchb.dtx: Received a new frenchb.dtx from Daniel Flippo + +1997-10-02 Johannes Braams (babel at latex-project.org) + + * dutch.dtx : Added "/ for words written together, indicating a + choice as in uitdrukking/opmerking + +1997-10-01 Johannes Braams (babel at latex-project.org) + + * all language definition files: use \edef to define \today; this + save memory, see classses.dtx for the motivation. + +1997-09-29 Johannes Braams (babel at latex-project.org) + + * turkish.dtx : Added and modified a number of translation as + provided by "H. Turgut Uyar" (uyar at cs.itu.edu.tr) + +1997-09-17 Johannes Braams (babel at latex-project.org) + + * frenchb.dtx: Received a new frenchb.dtx from Daniel Flippo. + +1997-09-15 Johannes Braams (babel at latex-project.org) + + * babel.dtx (subsection{Shorthands}): Added a check for \write + still being primitive. If not it might have been redefined as + \immediate\write and in such a case \protected@write needs to set + \protect to \noexpand instead of making it \@unexpandable@protect + in order to prevent a \protet kreeping in the .aux file. This + problem cropped op with the use of seminar.cls and was found by + Daniel FLIPO (flipo at univ-lille1.fr) + +1997-09-11 Johannes Braams (babel at latex-project.org) + + * polish.dtx : Added translation of `Proof' and changed + translation of contents from `Spis rzeczy' as suggested by + Tomasz Michniewski (tomekm at ias.wat.waw.pl) + + * bbplain.dtx : repaired a type (\expoandafter) and added missing + \endcsname (PR 2553, found by Nicolai Langfeldt (janl at math.uio.no)) + + * croatian.dtx : Replaced a number of translations with better + ones, provided by Kresimir Fresl (fresl at grad.hr) + +1997-04-29 Johannes Braams (babel at latex-project.org) + + * greek.dtx : Selecting the greek language produced unwanted + whitespace because of lines such as \babel@save`\". + Found a few typos in the process. + +1997-04-25 Johannes Braams (babel at latex-project.org) + + * babel.dtx (subsection{Shorthands for quotation marks}): The + definitions of \grq and \grqq should be dependent on the + fontencoding. Taken the code from german.sty (and adapted it to + babel). Found by: Stefan Illy (illy at itpgyro1.fzk.de) and + Bjoern Lorenz (lorenz at rz.charite.hu-berlin.de) + +1997-04-20 Johannes Braams (babel at latex-project.org) + + * greek.dtx : made \greek@alph a synonym for \greeknumeral instead + of having it's own definition. + +1997-04-16 Johannes Braams (babel at latex-project.org) + + * babel.dtx: Make multiple loading of babel.def impossible by + adding a check for the existence of \bbl@afterfi. This was + triggered by PR 2447 where french.sty loaded babel.def for a + second time. + +1997-04-03 Johannes Braams (babel at latex-project.org) + + * dutch.dtx (and others): remove empty groups after quote + characters in the shorthand definitions (such as \quotedblbase) in + order to keep possible kerning. + (PR 2454, found by S\o ren Sandmann (sandmann at daimi.aau.dk)) + +1997-04-01 Johannes Braams (babel at latex-project.org) + + * dutch.dtx : The definition of "~ was faulty, (forgot to replace + `german' with `dutch'. + Found by Maarten Gelderman (mgelderman at econ.vu.nl) + +1997-03-21 Johannes Braams (babel at latex-project.org) + + * babel.dtx (section{The Package File}): The option + KeepShorthandsActive no longer defines a control sequence. This + didn't always work because of the order in which options are + processed. The presence of the option is now tested in babel.def + with \@ifpackagewith. (PR 2452) + +1997-03-18 Johannes Braams (babel at latex-project.org) + + * babel.dtx (section{Identification}): Added the macro + \ProvidesLanguage to identify language definition files instead of + using \ProvidesFile. This is done to prevent problems with the + dummy definition of \ProvidesFile for plain based formats. Some + other packages are confused by it. Now make sure that + \ProvidesFile remains undefined in plain based packages. (PR 2444) + +1997-03-15 Johannes Braams (babel at latex-project.org) + + * babel.dtx (section{The Package File}): Added the possibilty to + add option declarations in a file called bblopts.cfg. + + * kannada.dtx: Extended the user documentation with a description + of the various font changing commands. + + * russianb.dtx : Removed the commands \textlatin, \latintext and + \latinencoding as they are now defined by babel.def. + + * babel.dtx (subsection{Encoding issues}): Added the commands + \textlatin, \latintext and \latinencoding to better support + languages that need a different fontencoding. These commands used + to be in russianb.dtx and greek.dtx. + (subsection{marks}): Added redefinition of \markright and + \markboth in order to be able to pass the language attribute to + the headlines. + + * greek.dtx : Removed the commands \textlatin, \latintext and + \latinencoding as they are now defined by babel.def. + Removed the redefinition of \@roman and \@Roman which is also + moved to babel.def + +1997-03-12 Johannes Braams (babel at latex-project.org) + + * babel.dtx (section{The Package File}): Added a default option + that loads the file \CurrentOption.ldf if it exists. If not an + error is signalled. + +1997-03-11 Johannes Braams (babel at latex-project.org) + + * greek.dtx : Added the \greeknumeral and \Greeknumeral macros to + support (old) greek conventions for number notation. + +1997-03-06 Johannes Braams (babel at latex-project.org) + + * greek.dtx : Also change some uppercase codes to get ridd of + accents and breathings in uppercase. (from kdgreek.sty) + +1997-03-01 Johannes Braams (babel at latex-project.org) + + * babel.dtx (subsection{Shorthands}): Make shorthands active + during the processing of the .aux file; this is at least needed to + get citations correct. (PR2428) + (subsection{Cross referencing macros}): Added a redefinition of + \@newl@bel, which replaces the redefinitions of \@lbibitem and + \newlabel. This needed to make the handling of citations correct. + Changed the definition of \@testdef to match \@newl@bel + + +1997-02-28 Johannes Braams (babel at latex-project.org) + + * babel.dtx (subsection{Cross referencing macros}): Added the + setting of the @safe@actives switch in \@testdef; shorthands might + occure in the first or second argument. + +1997-02-25 Johannes Braams (babel at latex-project.org) + + * babel.dtx (subsection{Cross referencing macros}): Now reset the + safe@actives switch *inside* the second and third arguments of + \ifthenelse in order to be able to use shorthands there. + Suggested by Olaf Kummer (kummer at informatik.uni-hamburg.de) in + PR 2421. + +1997-02-24 Johannes Braams (babel at latex-project.org) + + * estonian.dtx : One \changes entry was mistakenly pointing to + dutch. + + * magyar.dtx : One \changes entry was mistakenly pointing to + dutch. + + * dutch.dtx : Changed a \changes entry, replace "\~ with "\~{} to + prevent error messages. + (found by Ingo Saitz (ingo at baer.schneiderberg6.de), PR 2426) + + * babel.dtx (subsection{Shorthands}): Now always start the user + group of shorthands with the name `user' because of the provided + definition for the case with an empty argument. + +1997-02-23 Johannes Braams (babel at latex-project.org) + + * babel.dtx (subsection{Shorthands}): commented out \peek@token + and \test@token because shorthands are made expandable again. + (subsection{Shorthands}): Changed \@decl@short in such a way that + the control sequence that is constructed is different for a + shorthand with no argument and for a shorthand with an empty + argument. + +1997-02-20 Johannes Braams (babel at latex-project.org) + + * babel.dtx (subsection{Shorthands}): Made \bbl@afterelse and + \bbl@afterfi \long in order to be able to handle \par + as the argument of a shorthand. This is needed in order to make + shorthands fully expandable again. + +1997-02-19 Johannes Braams (babel at latex-project.org) + + * greek.dtx : Added command \greek@tilde to stand for the tilde + character; change definition of \~ to produce the tilde character + when in greek typesetting. This is necessary to produce the + desired ligature effect. + Found by Rizos Sakellariou (rizos at cs.man.ac.uk) and by + David Kastrup (dak at neuroinformatik.ruhr-uni-bochum.de) as PR 2422. + +1997-02-12 Johannes Braams (babel at latex-project.org) + + * spanish.dtx : Metion in the user documentation that the + '-character is only active when the option `activeacute' is + specified. + Found by Josep Maria Font (font at cerber.mat.ub.es) + + * catalan.dtx : Added \l.l and \L.L to the table listing the + special definitions for catalan. + Found by Josep Maria Font (font at cerber.mat.ub.es) + +1997-02-11 Johannes Braams (babel at latex-project.org) + + * english.dtx : fixed small documentation bug + Found by Josep Maria Font (font at cerber.mat.ub.es) + +1997-02-07 Johannes Braams (babel at latex-project.org) + + * babel.dtx : Added sanskrit to the driver files + + * bbcompat.dtx: Added sanskrit + + * babel.ins: Added the processing of sanskrit.dtx + +1997-02-06 Johannes Braams (babel at latex-project.org) + + * croatian.dtx : sijev{c}nja should be seij\v{c}nja and there + should be a period after the year. + Found by Ivo Batistic (ivo at ifs.hr) + +1997-01-24 Johannes Braams (babel at latex-project.org) + + * sanskrit.dtx : Update Jan Takashima's original file to babel + release 3.6 + +1997-01-23 Johannes Braams (babel at latex-project.org) + + * babel.dtx (subsection{Multiple languages}): Added a couple of + \expandafters to the end of hyphen.cfg as \toks8 is now cleared by + LaTeX (release 1996/12/01), now copy contents of \toks into + \everyjob instead of reference. + (found by Richard Walker (Richard.Walker at cs.anu.edu.au) PR 2382 + Ulrik Vieth (vieth at thphy.uni-duesseldorf.de) PR 2385 and + Vincent Jalby (jalby at unilim.fr)) + + * babel.ins: Added missing \usepreamble\mainpreamble line; changed + 1996 in 1997. + + * finnish.dtx: Forgot to remove the code that is now part of + \LdfInit; hence babel.def was loaded twice which led to TeX fatal + errors. + (found by Niilo Siljamo (Niilo.Siljamo at Helsinki.FI) PR 2386) + +1997-01-19 Johannes Braams (babel at latex-project.org) + + * bbplain.dtx : Got the order of cs's wrong in the definition of + \@tempcntb (found by Ricardo S. C\'armenes + (carmenes at biosun.quimica.uniovi.es) PR 2376) + +1997-01-17 Johannes Braams (babel at latex-project.org) + + * babel.dtx: Somehow a lonely '+' had found its way into babel.dtx + on a line of its own. Removed + (found by Maarten Gelderman (mgelderman at ECON.VU.NL)) + +1997-01-14 Johannes Braams (babel at latex-project.org) + + * babel.dtx (subsection{Shorthands}): Optionally disable the + restoration of the category code of shorthand characters for those + who want to have them available in the preamble of the document. + (suggested by Tomas Bautista (bautista at cma.ulpgc.es)) + + * dutch.dtx : Added the "~ shorthand (copied from germanb.dtx) as + suggested on TEX-NL at nic.surfnet.nl + + * bbplain.dtx : missing \@undefined added to definition of + \@begindocumenthook; \newcount is an \outer macro, so it can't be + used directly inside an \if test. + (found by Daniel Flippo) + + + * babel.dtx (subsection{Cross referencing macros}): Added + \bbl@redefine@long to be able to redefine \ifthenelse as a + \long-command (PR2372) + Changed redefinition of \ifthenelse to make it a \long-command + (PR2372) + +1997-01-09 Johannes Braams (babel at latex-project.org) + + * frenchb.dtx : allow \l@french and \l@francais to be the `name' + of the hyphenation patterns; make \l@frenchb an alias for that. + Use frenchb.cfg as the name of the .cfg file, regardless of the + option that was used. + (subsection{Formatting numbers}): New macros \nombre \decimalsep + and \thousandsep added to format numbers + (subsection{Extra utilities}): Removed \AllTeX, \fup, \french and + \english + + * babel.ins: Added .fd files to instructions at the end + (found by Piet van Oostrum (piet at cs.ruu.nl) PR 2367) + + * greek.fdd (section{The encoding definition file}): Added + (re)definitins of the \TeX and \LaTeX commands to make them + encoding independant; added LGR versions of \copyright, + \texttrademark, \textregistered and \ss + + * cyrillic.fdd (section{The encoding definition files}): Added + (re)definitins of the \TeX and \LaTeX commands to make them + encoding independant; added LCY/LWN versions of \copyright, + \texttrademark, \textregistered and \ss + (found by J"org Knappen (tex at dzdmza.zdv.uni-mainz.de), PR 2357) + +1997-01-08 Johannes Braams (babel at latex-project.org) + + * spanish.dtx,galician.dtx : Added \leavevmode to the definitinos + of "a and "o because TeX generated an error when they were used in + vertical mode. + (found by Eric Gamess (eric at borabora.univalle.edu.co), PR 2363) + + * babel.dtx (section{The Package File}): Added the options + frenchb, UKenglish and USenglish (all aliases) + (found by Daniel Flippo and Vincent Jalby (jalby at unilim.fr)) + +1997-01-08 Johannes Braams (babel at latex-project.org) + + * galician.dtx : Removed unwanted space tokens by adding a + %-token at the end of the lines with babel@save in the definition + of \extrasgalician. They turned up in the output. (just like for + spanish.dtx) + + * catalan.dtx : Removed unwanted space tokens by adding a + %-token at the end of the lines with babel@save in the definition + of \extrascatalan. They turned up in the output. (just like for + spanish.dtx) + +1997-01-07 Johannes Braams (babel at latex-project.org) + + * greek.fdd (section{The font definition files}): In some font + substitutions kdgr hadn't been replaced with cmr. + (found by J"org Knappen, PR2358) + + * babel.dtx (subsection{Multiple languages}): Introduced + \foreign@language for the shared code between the otherlanguage* + environment and the \foreignlanguage command. + Switch off language shorthands before activating the extras (to + prevent that the shorthands from one language are still available + in the other. + Add \relax after the setting of the hyphenmin parameters to + prevent the disappearance of a token (when it happens to be a + digit, such as \number\day). + (found by Daniel Hempel (daniel at math.uni-hamburg.de) PR2362) + + * spanish.dtx : Removed two unwanted space tokens by adding a + %-token at the end of the lines with babel@save in the definition + of \extrasspanish. They turned up in the output. + (found by Daniel Hempel (daniel at math.uni-hamburg.de) PR2362) + + * bbplain.dtx (section{Support for formats based on + \textsc{plain}\TeX}): add definition of \@begindocumenthook to the + LaTeX2.09 format; otherwise it won't function without one of the + languages loaded. + (found by Olaf Weber (Olaf.Weber at cwi.nl)) + +1997-01-06 Johannes Braams (babel at latex-project.org) + + * dutch.dtx (section{The Dutch language}): Use Bew"ys instead of + Bewijs (PR 2360, J"org Knappen) + + * esperant.dtx (section{The Esperanto language}): Fixed typo in + table caption (funtion -) function) (PR 2360, Knappen) + + * tb1202.tex, tb1401.tex: fixed a few typos found by Ulrik Vieth, + (vieth at thphy.uni-duesseldorf.de) (PR 2356) + +1997-01-05 Johannes Braams (babel at latex-project.org) + + * babel.dtx (section{The Package File}): When \LdfInit is + undefined we need to load babel.def from babel.sty. + When \file{hyphen.cfg} is not loaded in the format \cs{l@english} + might not be defined; assume english is language 0 before calling + \main@language{english}. + (found by J"org Knappen (tex at mzdmza.zdv.uni-mainz.de) PR2354) + +1997-01-02 Johannes Braams (babel at latex-project.org) + + * bbplain.dtx : The redefinition of \dump tried to detect + LaTeX2.09; it did that with \document; that cs is also defined by + AMSTeX, hence an error occured building a Babel-AMSTeX format. + Now use \@ztryfc to detect LaTeX2.09 (Hope that is obscure + enough). (Found by Thomas Esser) + +1996-12-30 Johannes Braams (babel at latex-project.org) + + * babel.dtx (subsection{Support for extending macros}): Added a + check for an expansion of \relax to the definition of \addto; + \addto\x{...} yields \x -> {\x ...} when \x expands to \relax. + This results in a stack overflow when \x is called. + +1996-12-29 Johannes Braams (babel at latex-project.org) + + * italian.dtx, russian.dtx : Added braces around second argument + of \LdfInit + (found by (tim at maths.tcd.ie) (Timothy Murphy), PR 2384) + + -------------------------------------------------------- +1996-12-24 Johannes Braams (babel at latex-project.org) + + Release 3.6 + +1996-12-14 Johannes Braams (babel at latex-project.org) + + * babel.dtx (section{The Package File}): Added the option + `welsh'. + +1996-11-07 Johannes Braams (babel at latex-project.org) + + * babel.dtx (subsection{Multiple languages}): \selectlanguage now + checks for the existence of \date<lang> instead of \l@<lang>. The + latter might be defined, without the language definition file + being loaded. + +1996-10-29 Johannes Braams (babel at latex-project.org) + + * babel.dtx (subsection{Multiple languages}): Renamed \init@ldf + and \finish@ldf to \LdfInit, \ldf@finish and introduce + \quit@ldf. The second argument of \ldf@init can now be either a + control sequence or a string to be passed to \csname. + (subsection{Cross referencing macros}): Added (conditional) + redefinition of \@@vpageref (varioref internal macro) to prevent + problems with active characters (PR 2292) + +1996-10-17 Johannes Braams (babel at latex-project.org) + + * babel.dtx (subsection{Multiple languages}): Added the commands + \init@ldf and \finish@ldf to ease the maintenance of the + .ldf-files. + +1996-10-16 Johannes Braams (babel at latex-project.org) + + * babel.dtx (subsection{Multiple languages}): \main@language now + also sets \languagename and \l@<languagename> for use by other + packages in the preamble of a document + (suggested by Jan Vroonhof (vroonhof at math.ethz.ch)) + +1996-10-08 Johannes Braams (babel at latex-project.org) + + * bbplain.dtx : Make this file be processed twice, once during + format generation, but only a small portion of the file is loaded + into the format, the second time the file is processed is when it + is loaded from babel.def. This way some code that is not needed in + the format gets removed and the plain format with babel is no + longer incompatible with german.sty. + +1996-10-04 Johannes Braams (babel at latex-project.org) + + * dutch.dtx: Merged in the definitions for `afrikaans' as supplied + by Stoffel Lombard (lombc at b31pc87.up.ac.za) + + * bbcompat.dtx: Added support for `afrikaans' + + * babel.dtx (section{The Package File}): Added option `afrikaans' + +1996-09-21 Johannes Braams (babel at latex-project.org) + + * slovene.dtx : removed shorthand for \texttt{"L} as it is not + needed for slovenian according to Primoz Peterlin + (peterlin at biofiz.mf.uni-lj.si). + +1996-09-20 Johannes Braams (babel at latex-project.org) + + * catalan.dtx : Added a check for mathmode to the definitino of + \lgem and \Lgem, as the use of these in mathmode makes no sense + according to Goncal Badenes. Not having the check led to an error + message (PR 2261) + +1996-08-18 Johannes Braams (babel at latex-project.org) + + * polish.dtx : The macros \sob, \spb and \skb need to call + \leavevmode; when they are encountered in vertical mode TeX issues + an error about \lower not being allowed in vertical mode. (found + by Wlodzimierz Macewicz (macewicz at ia.pw.edu.pl)) + + * babel.dtx (subsection{Cross referencing macros}): In order to + prevent problems while reading .fd files in the middle of a + document we need to add the " and ' characters to \nfss@catcodes + untill LaTeX does that herself. (found by Tomas Bautista + (bautista at cma.ulpgc.es)) + +1996-08-15 Johannes Braams (babel at latex-project.org) + + * bbplain.dtx : Added default (semi-NFSS2) definition of \ss and + \i because german.sty in combination with a babel format creates + an endless lopp on those glyphs. (Found by Bernd Raichle) + + * danish.dtx : According to Peter Busk Laursen the shorthand "' + needs to typeset the german closing double quote (``). He also + suggested to add the definitions for "~ and "= + +1996-08-13 Johannes Braams (babel at latex-project.org) + + * babel.dtx (subsection{Shorthands}): Top level expansion of + \normal@char<char> where the shorthand character is already active + should be the expansion of the active character, not the active + character itself as this causes an endless loop (found by Tomas + Bautista (bautista at cma.ulpgc.es)) + +1996-08-11 Johannes Braams (babel at latex-project.org) + + * babel.dtx (subsection{Cross referencing macros}): Redefinition + of \ifthenelse added to circumvent problems with \pageref in the + argument of \isodd (PR's 947, 2053, 2150, 2225) + +1996-08-09 Johannes Braams (babel at latex-project.org) + + * bahasa.dtx: Added the setting of the hyphenmin parameters + (PR2232) + +1996-07-13 Johannes Braams (babel at latex-project.org) + + * bbcompat.dtx: Added .sty files and definition of \CurrentOption + for language definition files that are loaded by more than one + option + +1996-07-12 Johannes Braams (babel at latex-project.org) + + * frenchb.dtx: moved support for multiple options using the same + .ldf file out of babel.sty into .ldf file. + Rearranged .dtx file to remove long lines of documentation and + code. + +1996-07-11 Johannes Braams (babel at latex-project.org) + + * babel.dtx (section{The Package File}): Moved all code necessary + to support multiple options to load the same language definition + file into those language definition files. (PR2213) + + * portuges.dtx, norsk.dtx, magyar.dtx: moved support for multiple + options using the same .ldf file out of babel.sty into .ldf + files. + +1996-07-10 Johannes Braams (babel at latex-project.org) + + * bbplain.dtx : Added the definition of \scriptsize, + \textquoteright and \textquotedblright (PR 2216) + + * language definition files : Consistently use \@undefined instead + of \undefined and \@empty instead of \empty (PR 2213) + + * english.dtx, german.dtx : moved support for multiple options + using the same .ldf file out of babel.sty into .ldf files. + +1996-07-09 Johannes Braams (babel at latex-project.org) + + * bbplain.dtx : Consistently use \@undefined instead of \undefined + and remove the use of \patterns@loaded (PR 2213) + Added definition of \@empty; use it instead of \empty + + * babel.dtx (subsection{Multiple languages}): Removed the use of + the control sequence \bbl@eq@ (PR 2213) + (section{Identification}): Save a few csnames by using \bbl@tempa + instead of \@ProvidesFile store the \everyjob message immediately + in \toks8 (PR 2213) + Consistently use \@undefined instead of \undefined (PR 2213) + Use \@empty instead of \empty to be consistent with \LaTeX + (PR 2133) + + * bahasa.dtx : Added translation of `Proof' as suggested by + knappen at vkpmzd.kph.uni-mainz.de (J"org Knappen) (PR 2214) + + ** released Babel 3.6-beta ** + +1996-07-06 Johannes Braams (babel at latex-project.org) + + * babel.dst: Added the generation of the font description files to + the main installation file. (PR 2208) + + * babel.dtx : added greek to the driver files, input russianb.dtx + instead of russian.dtx, define \Babel in driver file (PR 2209) + Removed an extra closing brace in changes entry for \dj (PR 2208) + + * esperant.dtx : Added translation of `Proof' as suggested by + knappen at vkpmzd.kph.uni-mainz.de (J"org Knappen) (PR 2207) + +1996-05-30 Johannes Braams (babel at latex-project.org) + + * germanb.dtx : added \allowhyphens in the definitions of "a, "o, + "u, "A, "O, "U, because the underlying macro \lower@umlaut can not + cntain a \allowhyphens. The reason is that for *dutch* we need to + use discretionaries for these same characters in order to make the + trema disappear at a word break. A \allowhyphens inside one of the + arguments of \discretiionary leads to a TeX error. + +1996-05-29 Johannes Braams (babel at latex-project.org) + + * babel.dtx (subsection{Multiple languages}): Added an environment + otherlanguage* wich does not switch the captions and date strings, + only hyphenation and extras. + +1996-04-18 Johannes Braams (babel at latex-project.org) + + * magyar.dtx : Added translation of `Proof' as suggested by + Alexin Zoltan (alexin at sol.cc.u-szeged.hu) and changed some of the + translations as suggested by Peter Rajczy (rajczy at caesar.elte.hu). + +1996-04-09 Johannes Braams (babel at latex-project.org) + + * babel.dtx (subsection{Cross referencing macros}): + \bbl@redefinerobust made non-robust macros; fixed adding \space in + the final line of code. + +1996-04-02 Johannes Braams (babel at latex-project.org) + + * babel.dtx (subsection{Umlauts and trema's}): Added a + \allowhyphens in the definition of \lower@umlaut + +1996-04-01 Johannes Braams (babel at latex-project.org) + + * norsk.dtx : Added translation of `Proof' as suggested by + Orjan Johansen (oerjan at matstat.unit.no) + +1996-03-28 Johannes Braams (babel at latex-project.org) + + * babel.dtx (subsection{Letters}): Replaced the definitions of + \dj@ and \DJ@ with the ones found in PR 2058 (contributed by + Sime Ungar (ungar at math.hr) and David Carlisle) + +1996-03-06 Johannes Braams (babel at latex-project.org) + + * babel.dtx (subsection{Shorthands}): Added a system level + shorthand for the ` to prevent an endless loop when the user + enters `{}blah in his document. + + * catalan.dtx : Added `` as a shorthand for the double left quote; + getting a single quote and an accented letter from the input ``a + is not quit what would be expected. + +1996-02-12 Johannes Braams (babel at latex-project.org) + + * czech.dtx (section{The Czech language}): Fixed tow errors found + by Petr Sojka (sojka at daeron.fi.muni.cz) (PR #2082) and added + translation for `Proof' + +1996-01-25 Johannes Braams (babel at latex-project.org) + + * babel.dtx (subsection{Shorthands}): Store and restore the lccode + of the ~-character so it remains unchanged by + \initiate@active@char + +1996-01-24 Johannes Braams (babel at latex-project.org) + + * babel.dtx (subsection{Macros common to a number of languages}): + Moved \german@dq@disc, \usorbian@dq@disc and \swedish@dq@disc to + babel.def, changing the name to \bbl@disc + +1996-01-21 Johannes Braams (babel at latex-project.org) + + * babel.dtx (subsection{Cross referencing macros}): Revert the + previous change; \@setref gets expanded too late which results in + TeX errors because the active character isn't redefined when TeX + tries to use it in constructing a csname. + +1996-01-19 Johannes Braams (babel at latex-project.org) + + * babel.dtx (subsection{Cross referencing macros}): Redefine + \@setref instead of \ref and \pageref for LaTeX2e. This (partly) + solves PR0947 which complains about pageref being used in the + argument of \ifthenelse. This now works as long as the label + doesn't contain active characters. + +1996-01-18 Johannes Braams (babel at latex-project.org) + + * croatian.dtx : Added translation of the word `Proof' and changed + the definition of \datecroatian according to the suggestion by + Sime Ungar (ungar at math.hr) in bug report 2060. + +1996-01-16 Johannes Braams (babel at latex-project.org) + + * babel.dtx (subsection{Cross referencing macros}): Use + \strip@prefix only on bbl@tempa (in \@testdef) when \bbl@tempa <> + \relax! + +1996-01-15 Johannes Braams (babel at latex-project.org) + + * bbplain.dtx: Added the code that implements \newcommand (or + enough of it to make \ProvideTextCommandDefault and friends + work). + +1996-01-10 Johannes Braams (babel at latex-project.org) + + * babel.dtx (section{The Package File}): Now use frenchb.dtx from + Daniel Flipo as the source for french support in Babel. + +1996-01-09 Johannes Braams (babel at latex-project.org) + + * babel.dtx (subsection{Shorthands}): Deal with charcters that are + already active: define the top level expansion inside the \if + branch of the category code test; define all lower level expansion + macros needed for the shorthand stuff after of the \else branch + (subsection{Cross referencing macros}): Complete rewrite of + \@testdef using meaning to prevent endless complaints from LaTeX + about possibly changed labels. + +1995-12-01 Johannes Braams (babel at latex-project.org) + + * babel.dtx (subsection{Shorthands}): Reset the category code of a + shorthand char at the end of the package and re-activate it at + begin document. + +1995-11-25 Johannes Braams (babel at latex-project.org) + + * tb1202.tex, tb1401.tex: Made it possible to run it through LaTeX + without having ltugboat.cls available; also updated address + information. + + * portuges.dtx : Added translation of the word `Proof' for both + Portuguese and Brazilian + +1995-11-19 Johannes Braams (babel at latex-project.org) + + * bbplain.dtx: Add execution of the begin document hook to + \@preamblecmds for LaTeX2.09 + +1995-11-17 Johannes Braams (babel at latex-project.org) + + * bbplain.dtx: Added \@onlypreamble and handling of this + +1995-11-16 Johannes Braams (babel at latex-project.org) + + * babel.dtx (subsection{Multiple languages}): Changed the + definition of \selectlanguage and \selectlanguage_; the former no + longer processes its argument, that task is now performed by + \selectlanguage_ + +1995-11-15 Johannes Braams (babel at latex-project.org) + + * babel.dtx (subsection{Cross referencing macros}): Added the + commands \bbl@redefine and \bbl@redefinerobust and used them to + redefine \newlabel, \@testdef, \ref, \pageref, \label, \@citex, + \nocite, \bibcite, \@bibitem, \@lbibitem + +1995-11-11 Johannes Braams (babel at latex-project.org) + + * francais.dtx : Added setting of the lowercase code of the ' to + improve hyphenation + +1995-11-11 Johannes Braams (babel at latex-project.org) + + * galician.dtx : Added '' as shorthand to produce the expected + effect. + +1995-11-10 Johannes Braams (babel at latex-project.org) + + * catalan.dtx : Added setting of the lowercase code of the ' to + improve hyphenation + (As suggested by Claudio Beccari (BECCARI at polito.it)) + + * italian.dtx : Added setting of the lowercase code of the ' to + improve hyphenation + (As suggested by Claudio Beccari (BECCARI at polito.it)) + + * romanian.dtx : Added translation of the word `Proof' + +1995-11-08 Johannes Braams (babel at latex-project.org) + + * bbplain.dtx: Added the code that `snatched' \dump as it is still + needed for LaTeX 2.09 + + * babel.dtx (subsection{Multiple languages}): Removed the code + that `snatched' \dump as it is no longer needed for LaTeX. + +1995-11-06 Johannes Braams (babel at latex-project.org) + + * babel.dtx (subsection{Cross referencing macros}): No longer use + \bblref_ as a cs; instead use \ref_ and check if it isn't defined + already. (PR 1851) + +1995-11-03 Johannes Braams (babel at latex-project.org) + + * slovene.dtx : New translation of Index; replaced slovanian with + slovenian. + + * swedish.dtx : Added translation of Proof (PR 1904) + +1995-09-05 Johannes Braams (babel at latex-project.org) + + * germanb.dtx : Use \glqq, \grqq, \flqq and \frqq in the + definitions of "` "' "< and "> + + * babel.dtx (subsection{Shorthands for quotation marks}): Use + \textormath in the definitions; added some kerning for german + right quotation marks. + + * catalan.dtx: Added '| to disable the accent when an apostrophe + is wanted. + +1995-08-31 Johannes Braams (babel at latex-project.org) + + * germanb.dtx : Added \allowhyphens to the accent producing + shorthands. Not having it prevented hyphenation for accented words + in OT1 encoding. Having it means that TeX possibly misses a + possible breakpoint. Putting \allowhyphens into the definition of + \lower@umlaut (which would make it not appear at all in T1 + encoding) is a no-no because it leads to improper discretionary + errors for dutch (were trema's have to disappear when the word is + hyphenated next to the trema). (PRs 1118, 1147, 1714, 1846) + +1995-08-30 Johannes Braams (babel at latex-project.org) + + * babel.dtx (subsection{Multiple languages}): Added a missing + %-character in the definition of \selectlanguage (PR1841) + + * francais.dtx : Added a missing %-character in the definition of + \captionsfrancais (PR1841) + +1995-08-17 Johannes Braams (babel at latex-project.org) + + * spanish.dtx, catalan.dtx, galician.dtx: Combining + \initiate@active@char and \bbl@activate in one \@ifpackagewith + statement leads to an error message about an \inaccessible control + sequence from \select@language. For now split these statements. + +1995-08-07 Johannes Braams (babel at latex-project.org) + + * babel.dtx (subsection{Shorthands for quotation marks}): + Corrected the spelling of \quil... to \guil... + +1995-07-29 Johannes Braams (babel at latex-project.org) + + * francais.dtx : Removed the \space from the definition of the + shorthands. It is not necessary. + +1995-07-27 Johannes Braams (babel at latex-project.org) + + * esperant.dtx: Added a few ^-shorthands + + * estonian.dtx : Removed the code to change category and oher + codes. + + * italian.dtx : Added translation of the word `Proof' + + * estonian.dtx : Added translation of the word `Proof'; fixed bug + where the second argument of \DeclareShorthand was missing. + +1995-07-25 Johannes Braams (babel at latex-project.org) + + * slovene.dtx,finnish.dtx : Added translation of the word `Proof' + + * irish.dtx : load irish.cfg instead of danish.cfg + + * babel.dtx (subsection{Multiple languages}): Use \empty instead + of \@empty in the test for the hyphenation exception file; \@empty + is undefined in plain. + + * bbplain.dtx: Added definition of \loadlocalcfg for plain (found + by Enn Saar) + +1995-07-10 Johannes Braams (babel at latex-project.org) + + * catalan.dtx : Added translation of the word `Proof' + +1995-07-09 Johannes Braams (babel at latex-project.org) + + * spanish.dtx, galician.dtx: made the use of the active acute + accent optional. + +1995-07-08 Johannes Braams (babel at latex-project.org) + + * catalan.dtx: Removed support for ~n; add `` and '' as + shorthands. + +1995-07-07 Johannes Braams (babel at latex-project.org) + + * francais.dtx, breton.dtx: Postpone the declaration of the + TextCompositeCommands untill \AtBeginDocument + +1995-07-04 Johannes Braams (babel at latex-project.org) + + * babel.dtx (section{The Package File}): Added the options + activegrave and activeacute. + + * catalan.dtx: Made the activation of the grave and acute accents + optional + + * esperant.dtx, dutch.dtx, english.dtx, germanb.dtx, breton.dtx, + irish.dtx, scottish.dtx, italian.dtx, portuges.dtx, swedish.dtx, + magyar.dtx, croatian.dtx, czech.dtx, estonian.dtx, polish.dtx, + romanian.dtx, slovak.dtx, slovene.dtx, turkish.dtx, lsorbian.dtx, + usorbian.dtx, bahas.dtx: Added \proofname to captions and added + loading local configuration file. + + * babel.dtx (subsection{Cross referencing macros}): Use a + different control sequence for making \ref and \pageref robust to + prevent a clash with the showkeys package. + +1995-07-03 Johannes Braams (babel at latex-project.org) + + * galician.dtx: Changed behaviour of 'a etc. to expand to + "^{\prime} a" in mathmode. + + * spanish.dtx: Changed behaviour of 'a etc. to expand to + "^{\prime} a" in mathmode; added \proofname to captions; added + loading local configuration file. + + * catalan.dtx: Added Goncal's changes; changed behaviour of 'a + etc. to expand to "^{\prime} a" in mathmode; added \proofname to + captions; added \llgem and \Lgem; added loading local + configuration file. + +1995-07-02 Johannes Braams (babel at latex-project.org) + + * galician.dtx: Added comments from Manual Carriba, added + \proofname to captions; added seting of \frenchspacing and added + loading local configuration file. + + * francais.dtx: Also allow the hyphenation patterns to be loaded + for `french', added \proofname to captions; and added loading + local configuration file. + + * finnish.dtx: Now also has active double quote; added by Niilo + Siljamo (siljamo at cc.helsinki.fi), added \proofname to captions; + and added loading local configuration file. + + * danish.dtx : Added \proofname to captions; added seting of + \frenchspacing and added loading local configuration file. + + * babel.dtx (section{The Package File}): Load language definition + files *after* manipulating with the identifaction of the + hyphenation patterns; load french.ldf (from Bernard Gaulle's + french package) if it exists. + +1995-06-19 Johannes Braams (babel at latex-project.org) + + * babel.dtx (subsection{Multiple languages}): Added missing brace + in definition of \@activated for plain TeX, found by + te at informatik.uni-hannover.de + +1995-06-16 Johannes Braams (babel at latex-project.org) + + * estonian.dtx: corrected typos + +1995-06-14 Johannes Braams (babel at latex-project.org) + + * babel.dtx : Changed the order of typesetting the documentation + for the various languages (PR1652) + + * scottish, irish.dtx, esperant.dtx, spanish.dtx, babel.dtx, + glyphs.dtx: corrected typos (PR1652) + + * language.dat: finally corrected typo langauge (PR1656) + + * babel.dst: corrected typos (ldfle -> style, PR1654) + + * install.txt: corrected typo (PR1653) + +1995-06-08 Johannes Braams (babel at latex-project.org) + + * danish.dtx: Added active double quote character as suggested by + Peter Busk Laursen. + +1995-06-06 Johannes Braams (babel at latex-project.org) + + * estonian.dtx: New language definition file, provided by Enn + Saar, updated for Babel release 3.5 + + * scottish.dtx: New language definition file + +1995-06-04 Johannes Braams (babel at latex-project.org) + + * polish.dtx: Update for babel release 3.5 + + * slovene.dtx : Introduced the active " for this language; used + for accessing hacek characters and other common usage. + + * portuges.dtx: Added brasilian captions, the usage of + "-shorthands and macros for ordinals. + + * dutch.dtx : added "" shorthand + +1995-06-03 Johannes Braams (babel at latex-project.org) + + * francais.dtx : Added system level shorthands for the active + characters to prevent them from gobbling up a following space + +1995-06-02 Johannes Braams (babel at latex-project.org) + + * swedish.dtx: Use \finnishhyphenmins to store the correct values + of \lefthyphenmin and \righthyphenmin as suggested in PR1606. + +1995-05-29 Johannes Braams (babel at latex-project.org) + + * swedish.dtx: Updated for release 3.5 + +1995-05-28 Johannes Braams (babel at latex-project.org) + + * swedish.dtx: Updated for release 3.5 + + * usorbian.dtx: Updated for release 3.5 + + * italian.dtx: Updated for release 3.5 + +1995-05-25 Johannes Braams (babel at latex-project.org) + + * babel.dtx (section{The Package File}): Added the option + brazilian as an alternative for brazil; added the copying of + \<lang>hyphenmins when alternatives are provided. + + * romanian.dtx: Updated for release 3.5 + +1995-05-15 Johannes Braams (babel at latex-project.org) + + * turkish.dtx: Updated for release 3.5 + + * finnish.dtx: Added setting of \frenchspacing for finnish text + +1995-05-13 Johannes Braams (babel at latex-project.org) + + * finnish.dtx: Use \finnishhyphenmins to store the correct values + of \lefthyphenmin and \righthyphenmin as suggested in PR1606; + also set a number of hyphenation parameters, as suggested in + PR1027. + + * germanb.dtx: Use \germanhyphenmins to store the correct values + of \lefthyphenmin and \righthyphenmin. + + * dutch.dtx: Use \dutchhyphenmins to store the correct values of + \lefthyphenmin and \righthyphenmin. + + * babel.dtx (subsection{Multiple languages}): Changed + \selectlanguage to first store the name of the current language in + a control sequence and then passing the contents of the control + sequence to \selectlanguage_ instead of passing the entire + construct which strips the optional escape character. + Seperated the setting of \lefthyphenmin and \righthyphenmin, using + the new macro \set@hyphenmins. The values shoud be stored in + \<language>hyphenmins. + No longer store the values of \lefthyphenmin and \righthyphenmin + which were set in the pattern file through code in + \extras<language>, but store them in \<language>hyphenmins. + +1995-05-05 Johannes Braams (babel at latex-project.org) + + * finnish.dtx: Updated for release 3.5 + * bahasa.dtx: Updated for release 3.5 + +1995-05-03 Johannes Braams (babel at latex-project.org) + + * tb1401.tex: Changed name from babel-new.tex and updated the + coding to make it processable with LaTeX2e + + * tb1202.tex: Changed name from tb-article.tex and updated the + coding to make it processable with LaTeX2e + +1995-04-28 Johannes Braams (babel at latex-project.org) + + * babel.dtx (subsection{Multiple languages}): Added the + possibility to add a the name of a file with hyphenation + exceptions to the configuration file language.dat. Now also + support `synonyms' for languages. Both on request from Bernard + Gaulle. + +1995-03-14 Johannes Braams (babel at latex-project.org) + + * babel.dtx (section{The Package File}): Changed the extension of + the languages definition files to .ldf to clearly distinguish them + for the files in the previous release. + + * magyar.dtx: Updated for release 3.5 + * galician.dtx: Updated for release 3.5, using the new active + character handling mechanism. + * catalan.dtx: Updated for release 3.5, using the new active + character handling mechanism. + * spanish.dtx: Updated for release 3.5, using the new active + character handling mechanism. + * portuges.dtx: Updated for release 3.5 + * lsorbian.dtx: new file in release 3.5 + * languages.skeleton: Updated for release 3.5 + +1995-03-10 Johannes Braams (babel at latex-project.org) + + * babel.dtx (subsection{Support for active characters}): Added a + check for the ' in \initiate@active@char + Replaced 16 system level shorthands to deal with hexadecimal + numbers by one. + Added a system shorthand for the '; when it is active its usage in + mathmode needs special care. + +1995-03-07 Johannes Braams (babel at latex-project.org) + + * babel.dtx (subsection{Cross referencing macros}): Made \ref and + \pageref robust to prevent the problem reported in PR 1353. + +1995-03-04 Johannes Braams (babel at latex-project.org) + + * babel.dtx (subsection{Multiple languages}): Changed the name of + \p@selectlanguage to \csname selectlanguage \endcsname; + Rewrote the entire handling of active chars. + +1995-02-17 Johannes Braams (babel at latex-project.org) + + * babel.dtx (subsection{Multiple languages}): Added \main@language + to be able to postpone the execution of \selectlanguage. It now + also happens only once, not for every language loaded. + +1995-02-16 Johannes Braams (babel at latex-project.org) + + * babel.dtx (subsubsection{Support for active `hat'}): this + section added. + +1995-02-15 Johannes Braams (babel at latex-project.org) + + * germanb.dtx: Removed a lot of code that is now present in + babel.def (things like \flqq, the double quote mechanism, etc.); + Use \Declaredq now. + Brought up to date with german.sty version 2.5b + + * babel.dtx (subsection{Multiple languages}): Added the command + \@activated to be used for logging when characters are made + active. Introduced the \if@safe@actives switch which should be + checked on the highest level expansion of an active + character. This first expansion is defined by \UseActive. + (subsection{Cross referencing macros}): Removed the meaning trick + and introduced the use of the \if@safe@actives switch. Not all + cross referencing macros need to be aware of this switch. + + * dutch.dtx: Moved the definition of the opening quote character + and \ij and \IJ to glyphs.dtx + + * glyphs.dtx (section{Making glyphs available}): New file to + collect all definitions of missing glyphs for all languages. The + code will be part of babel.def + +1995-02-12 Johannes Braams (babel at latex-project.org) + + * babel.dtx (subsection{Support for active characters}): Added + \Activate and \Deactivate instead of \Activatedq and \Deactivatedq + as this form is more generic. + +1995-02-11 Johannes Braams (babel at latex-project.org) + + * english.dtx: Moved identification code to the top. + +1995-02-09 Johannes Braams (babel at latex-project.org) + + * esperant.dtx: Moved identification code to the top. + +1995-02-04 Johannes Braams (babel at latex-project.org) + + * dutch.dtx: Updated this language definition file to make use of + the new support macros. Also implemented support for both OT1 and + T1 encoding. Changed the kerning in the faked ij-characters to + match the dc-versions more closely. + + * babel.dtx (subsection{Support for active double quote}): Added + this section with generic macros to support making the double + quote character active. A language definition file now only needs + call \Activatedq and use \Declaredq{}{}{} to define its actions. + +1995-02-01 Johannes Braams (babel at latex-project.org) + + * english.dtx (section{The English language}): Only define + american as a dialect when no patterns have been loaded for it. + (PR #735) + +1995-01-31 Johannes Braams (babel at latex-project.org) + + * polish.dtx (section{The Polish language}): The definition of "C + incorrectly used \'c instead of \'C. (PR #1401) + + * turkish.dtx (section{The Turkish language}): removed an extra + closing brace and added a missing \def (PR #1397) + \mont should be \month (PR #1398) + +1995-01-25 Johannes Braams (babel at latex-project.org) + + * babel.dtx (section{Identification}): lthyphen.cfg has changed + its name; now called hyphen.cfg. + (section{The Package File}): Added a warning about using T1 + fontencoding giving unexpected results. + +1994-11-09 Johannes Braams (babel at latex-project.org) + + * galician.dtx (section{The Catalan language}): Added a few + missing translations and corrected marzal to marzo in the date. + + * catalan.dtx (section{The Catalan language}): Added a few + missing translations. + + * portuges.dtx (section{The Portuguese language}): Added a few + missing translations. + +1994-08-30 Johannes Braams (babel at latex-project.org) + + * babel.dtx (subsection{Cross referencing macros}): Moved the last + %</def> inside the macrocode environment. Noted by Frank Poppe + (poppe at swov.nl) + +1994-08-26 Johannes Braams (babel at latex-project.org) + + * babel.dst: fixed typo (lhyphen -> lthyphen) + +1994-07-12 Johannes Braams (babel at latex-project.org) + + * finnish.dtx: Added a `.' after the day in the output of \today + for finnish + +1994-07-03 Johannes Braams (babel at latex-project.org) + + * babel.dtx (section{Identification}): The line with \ProvidesFile + was missing from both babel.drv and user.drv. + Added code to \process@language to detect whether the patterns + file also contains assignments to \left- and \righthyphenmin. When + it doesn't supply a default setting of 2 and 3; store the setting + in \extras<language>. Added \@nopatterns, to be used in the + language specific files. + Also use \PackageError and \PackageWarning when they are + available. + + * language.dat : Commented out dutch, used the default name for + the american english hyphenation patterns, hyphen.tex. Added a + (commented out) line showing ukhyphen.tex. + +1994-06-30 Johannes Braams (babel at latex-project.org) + + * language.skeleton: Removed the use of \filedate, moved the + identification after the loading of babel.def and use \@nopatterns + to produce the warning + + * slovak.dtx: Removed the references to babel.com + + * finnish.dtx: Removed the references to babel.com + +1994-06-26 Johannes Braams (babel at latex-project.org) + + * bahasa.dtx: Removed the use of \filedate, moved the + identification after the loading of babel.def and use \@nopatterns + to produce the warning + + * turkish.dtx: Removed the use of \filedate, moved the + identification after the loading of babel.def and use \@nopatterns + to produce the warning + + * slovene.dtx: Removed the use of \filedate, moved the + identification after the loading of babel.def and use \@nopatterns + to produce the warning + + * romanian.dtx: Removed the use of \filedate, moved the + identification after the loading of babel.def and use \@nopatterns + to produce the warning + + * polish.dtx: Removed the use of \filedate, moved the + identification after the loading of babel.def and use \@nopatterns + to produce the warning + + * czech.dtx: Removed the use of \filedate, moved the + identification after the loading of babel.def and use \@nopatterns + to produce the warning + + * magyar.dtx: Removed the use of \filedate, moved the + identification after the loading of babel.def and use \@nopatterns + to produce the warning + + * finnish.dtx: Removed the use of \filedate, moved the + identification after the loading of babel.def and use \@nopatterns + to produce the warning + + * swedish.dtx: Removed the use of \filedate, moved the + identification after the loading of babel.def and use \@nopatterns + to produce the warning + + * norsk.dtx: Removed the use of \filedate, moved the + identification after the loading of babel.def and use \@nopatterns + to produce the warning + + * danish.dtx: Removed the use of \filedate, moved the + identification after the loading of babel.def and use \@nopatterns + to produce the warning + + * galician.dtx: Removed the use of \filedate, moved the + identification after the loading of babel.def and use \@nopatterns + to produce the warning + Renamed \acute and \tilde to \texacute and \texttilde because of a + clash with \mathaccent's + + * catalan.dtx: Removed the use of \filedate, moved the + identification after the loading of babel.def and use \@nopatterns + to produce the warning + Renamed \acute and \tilde to \texacute and \texttilde because of a + clash with \mathaccent's + + * spanish.dtx: Removed the use of \filedate, moved the + identification after the loading of babel.def and use \@nopatterns + to produce the warning + + * portuges.dtx: Removed the use of \filedate, moved the + identification after the loading of babel.def and use \@nopatterns + to produce the warning + + * italian.dtx: Removed the use of \filedate, moved the + identification after the loading of babel.def and use \@nopatterns + to produce the warning + + * francais.dtx: Removed the use of \filedate, moved the + identification after the loading of babel.def and use \@nopatterns + to produce the warning + + * germanb.dtx: Removed the use of \filedate, moved the + identification after the loading of babel.def and use \@nopatterns + to produce the warning + + * english.dtx: Removed the use of \filedate, moved the + identification after the loading of babel.def and use \@nopatterns + to produce the warning + + * dutch.dtx: Removed the use of \filedate, moved the + identification after the loading of babel.def and use \@nopatterns + to produce the warning + +1994-06-25 Johannes Braams (babel at latex-project.org) + + * esperant.dtx: Removed the use of \filedate, moved the + identification after the loading of babel.def and use \@nopatterns + to produce the warning + + * babel.dtx (subsection{Multiple languages}): Added \@nopatterns, + to be used in the language specific files. Also use \PackageError + and \PackageWarning when they are available. + +1994-06-24 Johannes Braams (babel at latex-project.org) + + * babel.dtx (section{Identification}): redid this bit and made + sure the files are processable with plain TeX. Supply a dummy + definition of \ProvidesFile. + (subsection{Multiple languages}): Added code to + \process@language to detect whether the patterns file also + contains assignments to left- and righthyphenmin. When it doesn't + supply a default setting of 2 and 3; store the setting in + \extras<language>. + + +1994-06-09 Johannes Braams (babel at latex-project.org) + + * esperant.dtx: Removed a superfluous | from the code that + activates the ^ + +1994-06-08 Johannes Braams (babel at latex-project.org) + + * Makefile: added install.txt + +1994-06-05 Johannes Braams (babel at latex-project.org) + + * babel.dtx: Repaired mal-formed changes entries (`babel~' was + missing. + + * italian.dtx: Repaired mal-formed changes entry (`italian-' was + missing. + + * danish.dtx: Repaired mal-formed changes entry (`danish-' was + missing. + + * swedish.dtx: Repaired mal-formed changes entry (`swedish-' was + missing). + + * babel.dst: Added a few missing } + + * install.txt: Added a remark about producing the full source + listing. + + * babel.dst: Added the production if bbidx.ist and bbglo.ist + + * Makefile: Added bbidxglo + + * slovene.dtx (section{The Slovanian language}): Removed < and > + from a \changes entry to prevent a problem when generating the + glossary file. + + * babel.dtx (subsection{Identification}): Wrong docstrip guard + nesting resulted in a superfluous line in lthyphen.cfg + Updated Checksum + +1994-06-04 Johannes Braams (babel at latex-project.org) + + * language.skeleton: Updated for LaTeX2e; included the small + driver. + + * czech.dtx: Added a small driver to the top of the file. + Removed the use of \wlog from native mode. + + * croatian.dtx: Added a small driver to the top of the file. + Removed the use of \wlog from native mode. + + * slovene.dtx: Added a small driver to the top of the file. + Removed the use of \wlog from native mode. + (section{The Slovanian language}): Added extra tranlations from + Josef Leydold, (leydold at statrix2.wu-wien.ac.at + + * romanian.dtx: Added a small driver to the top of the file. + Removed the use of \wlog from native mode. + + * turkish.dtx: Added a small driver to the top of the file. + Removed the use of \wlog from native mode. + (section{The Turkish language}): Added braces behind the use of \i + to prevent a lot of undefined macros. + + * norsk.dtx: Added a small driver to the top of the file. + Removed the use of \wlog from native mode. + + * swedish.dtx: Added a small driver to the top of the file. + Removed the use of \wlog from native mode. + + * babel.ins: lhyphen.cfg has now to be called lthyphen.cfg. + + * babel.dtx (subsection{Macros common to a number of languages}): + An end of line ended up in the middle of a || expression. + + * slovak.dtx: Added a small driver to the top of the file. + Removed the use of \wlog from native mode. + Added setting of \lefthyphenmin and \righthyphenmin. + + * finnish.dtx: Added a small driver to the top of the file. + Removed the use of \wlog from native mode. + + * magyar.dtx: Added a small driver to the top of the file. + Removed the use of \wlog from native mode. + + * polish.dtx: Added a small driver to the top of the file. + Removed the use of \wlog from native mode. + Changed the table describing the conventions to really describe + what is iomplemented. + Tried to initialize polish letters by calling \texptl; this should + have been \textpl. + + * danish.dtx: Added a small driver to the top of the file. + Removed the use of \wlog from native mode. + (section{The Danish language}): Peter Busk Larsen proposed a few + changes to the translations. + +1994-05-19 Johannes Braams (babel at latex-project.org) + + * galician.dtx: Added a small driver to the top of the file. + Removed the use of \wlog from native mode. + + * catalan.dtx: Added a small driver to the top of the file. + Removed the use of \wlog from native mode. + + * spanish.dtx: Added a small driver to the top of the file. + Removed the use of \wlog from native mode. + + * portuges.dtx: Added a small driver to the top of the file. + Removed the use of \wlog from native mode. + + * italian.dtx: Added a small driver to the top of the file. + Removed the use of \wlog from native mode. Added some of the + suggestions from Claudio Beccari. The others wil have to wait. + + * francais.dtx: Added a small driver to the top of the file. + Removed the use of \wlog from native mode. + + * germanb.dtx: Added a small driver to the top of the file. + Removed the use of \wlog from native mode. + +1994-05-18 Johannes Braams (babel at latex-project.org) + + * dutch.dtx: Added a small driver to the top of the file. + Removed the use of \wlog from native mode. + + * esperant.dtx: Added a small driver to the top of the file. + Removed the use of \wlog from native mode. + + * bahasa.dtx: Added a small driver to the top of the file. + Added missing \begin{macrocode}. + Removed the use of \wlog from native mode. + + * babel.dtx (driver): use the ltxdoc class + Added a small driver to the top of the file as an addition to the + large drivers. + Removed the use of \wlog from native mode. + diff --git a/Master/texmf-dist/doc/generic/babel/esbst.tex b/Master/texmf-dist/doc/generic/babel/esbst.tex new file mode 100644 index 00000000000..7be9dbc31d4 --- /dev/null +++ b/Master/texmf-dist/doc/generic/babel/esbst.tex @@ -0,0 +1,103 @@ +%% +%% This is file `esbst.tex', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% spanish.dtx (with options: `bblbst') +%% This is a generated file. +%% +%% Copyright 1989-2005 Johannes L. Braams and any individual authors +%% listed elsewhere in this file. All rights reserved. +%% +%% This file was generated from file(s) 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 Johannes Braams. +%% +%% This file may only be distributed together with a copy of the Babel +%% system. You may however distribute the Babel system without +%% such generated files. +%% +%% The list of all files belonging to the Babel distribution is +%% given in the file `manifest.bbl'. See also `legal.bbl for additional +%% information. +%% +%% 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. +%% File `spanish.dtx' +%% Babel package for LaTeX version 2e +%% Copyright (C) 1989 - 2004 +%% by Johannes Braams, TeXniek +%% Spanish Language Definition File +%% Copyright (C) 1997 - 2005 +%% by Javier Bezos (jbezos at wanadoo.es) +%% Apartado 116.035 +%% E-28080 Madrid +%% Espa\~na / Espagne +%% and +%% by CervanTeX (www.cervantex.org) +%% Please report errors to: Javier Bezos (preferably) +%% jbezos at wanadoo.es +%% J.L. Braams +%% babel at braams.cistron.nl +%% \section{\textsf{spanish} como lengua principal} +\def\bbland{y} +\def\bbleditors{directores} \def\bbleds{dirs.\@} +\def\bbleditor{director} \def\bbled{dir.\@} +\def\bbledby{dirigido por} +\def\bbledition{edici\'on} \def\bbledn{ed.\@} +\def\bbletal{y otros} +\def\bblvolume{vol\'umen} \def\bblvol{vol.\@} +\def\bblof{de} +\def\bblnumber{n\'umero} \def\bblno{n\sptext{o}} +\def\bblin{en} +\def\bblpages{p\'aginas} \def\bblpp{p\'ags.\@} +\def\bblpage{p\'gina} \def\bblp{p\'ag.\@} +\def\bblchapter{cap\'itulo} \def\bblchap{cap.\@} +\def\bbltechreport{informe t\'ecnico} +\def\bbltechrep{inf.\@ t\'ec.\@} +\def\bblmthesis{proyecto de fin de carrera} +\def\bblphdthesis{tesis doctoral} +\def\bblfirst {primera} \def\bblfirsto {1\sptext{a}} +\def\bblsecond{segunda} \def\bblsecondo{2\sptext{a}} +\def\bblthird {tercera} \def\bblthirdo {3\sptext{a}} +\def\bblfourth{cuarta} \def\bblfourtho{4\sptext{a}} +\def\bblfifth {quinta} \def\bblfiftho {5\sptext{a}} +\def\bblth{\sptext{a}} +\let\bblst\bblth \let\bblnd\bblth \let\bblrd\bblth +\def\bbljan{enero} \def\bblfeb{febrero} \def\bblmar{marzo} +\def\bblapr{abril} \def\bblmay{mayo} \def\bbljun{junio} +\def\bbljul{julio} \def\bblaug{agosto} \def\bblsep{septiembre} +\def\bbloct{octubre}\def\bblnov{noviembre}\def\bbldec{diciembre} +%% +%% \CharacterTable +%% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z +%% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z +%% Digits \0\1\2\3\4\5\6\7\8\9 +%% Exclamation \! Double quote \" Hash (number) \# +%% Dollar \$ Percent \% Ampersand \& +%% Acute accent \' Left paren \( Right paren \) +%% Asterisk \* Plus \+ Comma \, +%% Minus \- Point \. Solidus \/ +%% Colon \: Semicolon \; Less than \< +%% Equals \= Greater than \> Question mark \? +%% Commercial at \@ Left bracket \[ Backslash \\ +%% Right bracket \] Circumflex \^ Underscore \_ +%% Grave accent \` Left brace \{ Vertical bar \| +%% Right brace \} Tilde \~} +%% +\endinput +%% +%% End of file `esbst.tex'. diff --git a/Master/texmf-dist/doc/generic/babel/fixes.txt b/Master/texmf-dist/doc/generic/babel/fixes.txt new file mode 100644 index 00000000000..520a52ff113 --- /dev/null +++ b/Master/texmf-dist/doc/generic/babel/fixes.txt @@ -0,0 +1,4 @@ + Fixes since last major release (3.8a) + + 20 February 2004 + diff --git a/Master/texmf-dist/doc/generic/babel/howtoget.txt b/Master/texmf-dist/doc/generic/babel/howtoget.txt new file mode 100644 index 00000000000..3673c3ed454 --- /dev/null +++ b/Master/texmf-dist/doc/generic/babel/howtoget.txt @@ -0,0 +1,33 @@ + Babel Distribution Guide + + 29 March 2005 + + +This file gives you some information as to where to get the latest +version of Babel and other related software. + +The main distribution of Babel is done through the Comprehensive TeX +Archive Network (CTAN). The main CTAN hosts are: + ftp://ftp.dante.de/ + ftp://ftp.tex.ac.uk/ +In order to reduce network load, it is recommended that you use the +CTAN host or mirror which is located in the closest proximity to your +site. See /tex-archive/CTAN.sites for a list of CTAN mirrors. + +You can find the latest version of Babel in: + /tex-archive/macros/latex/required/babel/ + +Hyphenation pattern files are not normally part of the Babel distribution. +You can find hyphenation pattern files on CTAN, in the directory: + /tex-archive/language/hyphenation/ + +OTHER RELATED PACKAGES +For the french language Benard Gaulle distributes his french package. +It provides extensive support for typesetting french documents. + +For the german language Bernd Raichle maintains `German-Style'. It is +located in: + /tex-archive/language/german/ + +In one of the directories below /tex-archive/language you can +sometimes find support for languages not (yet) supported by Babel. diff --git a/Master/texmf-dist/doc/generic/babel/install.OzTeX-4 b/Master/texmf-dist/doc/generic/babel/install.OzTeX-4 new file mode 100644 index 00000000000..615c989009a --- /dev/null +++ b/Master/texmf-dist/doc/generic/babel/install.OzTeX-4 @@ -0,0 +1,85 @@ +Babel installation guide for the Mac with OzTeX. +These instructions apply for OzTeX versions 4.0+ +Filedate: september 26, 2000 + +(Originally provided by Andrew Trevorrow <akt@netspace.net.au>) + + +This document explains how to install Babel from the files provided in +the OzTeX distribution. See install.txt if you need more information. +(Ignore the old install.OzTeX-pre4 file!) + +Copy the following folders from the OzTeX Distribution to corresponding +locations in your local texmf folder: + + :texmf:source:generic:babel: (*.ins, *.dtx, etc) + :texmf:tex:generic:hyphen: (hyphenation files) + +If you prefer to use a different folder structure then you'll need to +make suitable changes to the search paths in "Add Babel" (included below). + +Copy the "Add Babel" config file to your config folder (eg. myconfigs), +make any necessary changes, then add this line at the start of your +Local config file: + + load_config = ":myconfigs:Add Babel" + +"Add Babel" increases some TeX parameters, so you'll also need to +increase OzTeX's preferred memory size to at least 4500K. + +Start up OzTeX, tick the LaTeX format in the TeX menu, then TeX the +babel.ins file in the :texmf:source:generic:babel: folder. +Answer "y" to any request to overwrite an existing file. +Lots of files will be generated (*.ldf, *.sty, *.def, *.cfg, *.fd). +There is no need to move these files into another folder; it makes +life simpler if the files are kept in :texmf:source:generic:babel: +(that's where "Add Babel" assumes they'll be kept). + +Edit the language.dat file in :texmf:source:generic:babel: and +create an entry for each language that you want to hyphenate. +See the example entries and use the names of hyphenation files +provided in the :texmf:tex:generic:hyphen: folder. + +Now you need to generate a new LaTeX format file. This needs to +be done in the :texmf:source:generic:babel: folder so that INITEX +will use the hyphen.cfg file created in the above step. +Select "TeX..." and make sure the open dialog shows files in +the :texmf:source:generic:babel: folder, then hit Cancel. +Select INITEX and type "LaTeX.ltx" in response to the ** prompt. + +You can save LaTeX.fmt in the default location for format files +(:TeX:Formats:) but it is better if you put it in a new folder +called something like :texmf:formats: and then set + + format_folder = :texmf:formats: + +in the OzTeX-only section of your Local config file. (You'll +also need to move the other format files into this folder.) +That way you will avoid clobbering your own formats when you +install a new version OzTeX. + +You are now ready to use Babel (see user.dvi). + +------------------------------------------- +Save the text below as the file 'Add Babel +------------------------------------------- +% This config file installs the Babel macros for use with OzTeX 4.0 and later. +% Copy this file to your own config folder (eg. myconfigs), make any necessary +% changes, then add this line at the start of your Local file: +% +% load_config = ":myconfigs:Add Babel" + +current_app = OzTeX OzTtH +input_folders = $c :texmf:source:generic:babel: | + :texmf:tex:generic:hyphen: + +current_app = OzTeX +% Babel needs some larger TeX parameters. You'll also need to increase +% OzTeX's preferred memory size to at least 4500K. +trie_size = 65000 +trie_op_size = 5000 +% If you need to increase other TeX parameters then do it here. + +% Best to restore all apps when finished. +current_app = OzTeX OzMF OzMP OzTtH + diff --git a/Master/texmf-dist/doc/generic/babel/install.OzTeX-pre4 b/Master/texmf-dist/doc/generic/babel/install.OzTeX-pre4 new file mode 100644 index 00000000000..f0d7e4de8cf --- /dev/null +++ b/Master/texmf-dist/doc/generic/babel/install.OzTeX-pre4 @@ -0,0 +1,123 @@ + +Babel installation guide for the Mac with OzTeX. +These instructions apply for OzTeX versions 2.1 as well as 3.0. +Filedate: April 30, 1999 + +(Originally provided by Jan Geenen, <geenenjw@cobweb.nl> for OzTeX 1.9; + updated for 2.1 by Giuseppe P. Cavarretta, <gc@gea.geo.uniroma1.it>) + + 1. To create a workable babel package, first create a folder named Babel + and put it in the TeX-inputs folder; in this new folder you must + download from a CTAN site the following files: + a. babel.dtx + b. babel.ins + c. language.dat + d. <language>.dtx; For every <language> you want to use in your + documents, ie. dutch.dtx, english.dtx, etc. + e. hyphenation files; You need these for every language for which + you want to produce the right hyphenation. + ie. nehyph2.tex. + f. bbidxglo.dtx + g. documentation files. 00readme, install.txt, tb-article.tex, etc, + see manifest.txt + + If you are in doubt, you have much hard-disk space and low-cost + connection to the internet, get the entire babel directory (a good + practice anyway). Remember that the hyphenation files, i.e. ithyph.tex + or nehyph.tex, are not included in the babel package; you have to + get them from ctan/tex-archive/language/<your_language>. + + 2. Read the documentation: + a. install.txt + b. 00readme + c. OzTeX User Guide version 2.1 + + 3. Check your files if they obey the Mac-conventions for end of line. + If not, then edit them and save as same with the option LF Macintosh. + If you got them by dowloading directly from CTAN into the Mac they + should be OK. + + 4. Open the file language.dat and for every language that you will + hyphenate make an entrance, for example: + + % Any comment you like + dutch nehyph2.tex %nederlands + latin lahyph.tex %latin + english hyphen.tex %english + + 5. Put the file nehyph.tex (and/or whateverhyph.tex) in the folder Plain. + + 6. TeX the file babel.ins. A lot of files will be generated ! + Eventually, delete those related to languages that you think you + will never use (never say never !). The following files should be + produced by this: + a. babel.sty + b. babel.def + c. switch.def + d. hyphen.cfg + e. plain.def + f. For all the languages for which you downloaded a .dtx-file the + run will produce a .ldf-file and a .sty-file. + If you didn't download them all, the installation process will + stop, telling you it can't find a .dtx-file; after the prompt + type: r and hit the Return-key. The install program will resume + ie. dutch.dtx gives dutch.ldf and dutch.sty + g. the bbind.ist and bbglo.ist files are for printing the + documentation. + + 7. The install-run ends with these remarks: + a. To finish the installation you have to move all the files with + names ending in .ldf, .sty, .def or.fd into a directory + searched by TeX. + Action: If you hadn't done it before, create a new folder, call it + Babel and put in the files ending with the mentioned suffixes. + Drag and drop the Babel-folder into the TeX-inputs-folder. + b. For making a format the following files have to be in a + directory which is searched by Initex: hypen.cfg, language.dat + and files with the hyphenation patterns. + Action: Create a new folder, call it InitexBabel and put in it the + recommended files. Drag and drop the InitexBabel folder into + the TeX-inputs folder. + The language.sty files which you do not need throw them in the + thrashcan. + + 8. The goal is to generate a new latex-format file. To gain some + experience in generating such a format file use only one + hyphenation by disableing the others by putting in front of every + line a %-sign in the file language.dat. Relax, if you follow the + instructions listed here it should work immediately. You may get + an out of memory error during format building when you trie to + load many languages: if this happens, try to increase the + trie_size in the file Configs:Default. After that, run INITeX + anew. + + 9. Disable the file hyphen.ltx by adding a %-sign in front of the filename. + :TeX-inputs:LaTeX:hyphen.ltx. + (LaTeX will search for another. cfg file) + + 8. Choose in the TeX menu LaTeX + + 9. Choose in the TeX-menu INITEX and after the two ** type + latex.ltx and push the <return> button. You will readily notice if + the hyphenation files you selected have been used. + You will now be asked into which folder you want to save the new + format file you created: choose the folder TeX-formats. + Rename the new format file from latex.fmt to LaTeX.fmt; + this will overwrite the pre-existing LaTeX.fmt. + If you wish to keep the original LaTeX.fmt file, + choose a different name or rename the pre-existing LaTeX.fmt to + whatever_name.fmt you like. Remember that if you want to use format + files having new names, you must add such new names into the file + Configs:Default as follows: + + format_files = LaTeX AMSTeX Plain Your_new_format + +10. Start using babel. + a. Put the command \usepackage[your language]{babel} in the + preamble of your production file product.tex + b. TeX product.tex + +Good luck! + + + diff --git a/Master/texmf-dist/doc/generic/babel/install.txt b/Master/texmf-dist/doc/generic/babel/install.txt new file mode 100644 index 00000000000..ee83d65b9d8 --- /dev/null +++ b/Master/texmf-dist/doc/generic/babel/install.txt @@ -0,0 +1,157 @@ + Babel Installation Guide + + 20 February 2004 + + + When you install the babel system you have first to decide + whether you want to make a new format file. If you don't, you + miss some of the functionality of the babel system, but you + can then skip steps 2 through 6 . If you do want to build a + new format, start with step 1. + + When you want to produce the full listing of all the source + files in the babel system run babel.drv through LaTeX, then + use MakeIndex to produce babel.ind using the command: + makeindex -s bbind.ist babel + and use MakeIndex to produce babel.gls using the command: + makeindex -s bbglo.ist -o babel.gls babel.glo + Then run LaTeX on babel.drv again. + + 1 Make sure that you have the Docstrip (version 2) program + available (it is part of the LaTeX2e distribution); then + run the file babel.ins through TeX. + This strips all the .dtx files of the comments and produces + fast loadable versions of the files. + The installation files that are part of the babel + distribution all contain \usedir{tex/generic/babel} + commands. The effect of this is that TeX will attempt to + write the files it produces into your TDS compliant + directory tree. If you have a different tree you should + either change these commands or comment them out. Using the + file docstrip.cfg you can instruct docstrip about the `root' + of the TDS tree. On my Win95 TeX-Live installation I have: +\BaseDirectory{D:/TeX-Local/texmf} +%\BaseDirectory{D:/TeX-Live/texmf} +\UseTDS + whereas on my Linux installation I use: +\BaseDirectory{/usr/local/TeX} +%\BaseDirectory{/usr/TeX/texmf} +\UseTDS + If all of these are correct and TeX still complains about + not being able to store the files it is possible that the + file texmf.cnf prohibits writing into the system trees. + Look for the line with openout_any; if it's value is 'p' + (paranoid) change it to 'r' (restricted). + If all of the above doesn't work for you (or you commented + out the \usedir lines) you will have to move the resulting + .ldf, .sty, .def, .cfg and .fd files yourself into a + directory where TeX can find them. + Do that now. + On some operating systems you might get an error message + such as: + +! I can't write on file `./catalan.sty'. +<to be read again> + \edef +l.455 } + +Please type another output file name: + + In such a case you have run into a maximum number of open + files limit in your computer. You can get around this by + telling docstrip to open less files at a time (from bug + report Babel/2592, answer by David Carlisle): + + As long as you have a reasonably new copy of docstrip, + you can make a docstrip.cfg file at your site to tell + docstrip that you have operating system limits on the + number of open files. + Make a file docstrip.cfg with the two lines: + +\maxfiles{8} +\maxoutfiles{8} + + and docstrip will keep below 8 the number of files it has + open. (You may need to experiment to see how large your + system lets you make these numbers, the default is 16) + See docstrip.dtx + % \subsection{Setting maximum numbers of streams} + for more details. + + Docstrip also produces two files called babel.drv and + user.drv. You can use babel.drv to produce the full + documented source listing of the babel system. (Which is + also provided as babel.dvi) You can use user.drv to produce + a short document that describes the features of each + language specific file. + + 2 Make sure you have the hyphenation patterns available for + the languages that you intend to use. If you don't have + them, you may be able to find them in CTAN, in the directory: + /tex-archive/language/hyphenation. + If you happen to have a set of patterns that is not + available there you could make it available by either + putting it in the /incoming directory or sending it to me. + + 3 The docstripping process will have produced a file called + hyphen.cfg. This file will be loaded when you build a + LaTeX format. To build a plain format with the babel system + preloaded you can use the file bplain.tex as a wrapper for + plain.tex. When you run it through iniTeX plain.tex will be + loaded, as well as hyphen.cfg. When you type \dump at the + end you will get bplain.fmt which you can use as your + plain TeX format. Renaming hyphen.tex to something else is + not permitted by Don Knuth. + + 4 Check the hyphenation patterns that you have available and + want to load into the format. For each language that you + want to hyphenate correctly you need a hyphenation pattern. + List them all in the file `language.dat'. The file that is + in the distribution serves as an example of what you have to + put in there. + The files containing hyphenation patterns should be found + somewhere on TeX's `input path'. What that means depends on + the implementation of TeX you use: + - With emTeX there is an environment variable TEXINPUT in + which you can list the directories to search through, + adding a ! to a directory will make emTeX do a recursive + search through the directory tree. + - With Unix TeX the `system directories' do not need to be + specified in the environment variable TEXINPUTS; there + adding a double / to a directory name means recursive + searching of the directory tree. + + 5 Run iniTeX, telling it to load your favorite macro package + (ie plain or latex). + When you build a LaTeX format iniTeX will find the file + hyphen.cfg (provided that you have stored it in the + correct place). + When you build a plain TeX format using the supplied file + bplain.tex iniTeX will also find hyphen.cfg. + + *Beware*: some implementations of TeX only look in the + current directory when the \openin primitive is used. If + your TeX does that you need to put the file `languages.dat' + in the same directory where you build your format. + + 6 When the iniTeX run in step 5 stops with a message about + not enough memory (trie_size = ...) and "you can ask a + wizard to enlarge me" You have tried to load more + hyphenation patterns into TeX's memory then it has room for. + In that case you can either remove one or more languages + from the file language.dat or be your own wizard and enlarge + TeX. I can not tell you how to do that for all + implementations of TeX as it differs with each + implementation. Your distribution should contain a + description of what to. + - With emTeX you can influence the size of some of the + memory arrays with command line switches (/mt:65000 for + the trie_size). + - With Unix TeX you have to change a file called tex.ch and + rebuild TeX using the supplied Makefile. The change you + need to make is to enlarge the trie_size and + trie_op_size. + - With Web2C TeX (version 7 and newer) you can change the + value of the trie_size in the file web2c/texmf.cnf. + +--- Copyright 2004 Johannes Braams. All rights reserved --- diff --git a/Master/texmf-dist/doc/generic/babel/language.dat b/Master/texmf-dist/doc/generic/babel/language.dat new file mode 100644 index 00000000000..75141062f8c --- /dev/null +++ b/Master/texmf-dist/doc/generic/babel/language.dat @@ -0,0 +1,12 @@ +% File : language.dat +% Purpose : specify which hypenation patterns to load +% while running iniTeX +=USenglish +american ushyphen.tex +=english +UKenglish ukhyphen.tex +=british +french frhyphen.tex +dutch nehyph2.tex +german dehypht.tex +ngerman dehyphn.tex diff --git a/Master/texmf-dist/doc/generic/babel/language.skeleton b/Master/texmf-dist/doc/generic/babel/language.skeleton new file mode 100644 index 00000000000..e893b3b660f --- /dev/null +++ b/Master/texmf-dist/doc/generic/babel/language.skeleton @@ -0,0 +1,221 @@ +% \iffalse meta-comment +% +% Copyright 1989-2005 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 Johannes Braams. +% +% The list of all files belonging to the Babel system is +% given in the file `manifest.bbl. See also `legal.bbl' for additional +% information. +% +% 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. +% \fi +% \CheckSum{0} +%%% docstring = " This file can act as a template for +%%% people who want to provide extra +%%% languages to be included in the babel +%%% distribution. +% +% \iffalse +% Tell the \LaTeX\ system who we are and write an entry on the +% transcript. +%<*dtx> +\ProvidesFile{<language>.dtx} +%</dtx> +%<code>\ProvidesLanguage{<language>} +%\fi +%\ProvidesFile{<language>.dtx} + [2005/02/20 v1.6 <Language> support from the babel system] +%\iffalse +%% Babel package for LaTeX version 2e +%% Copyright (C) 1989 -- 2005 +%% by Johannes Braams, TeXniek +% +%% Please report errors to: J.L. Braams +%% babel at braams.cistron.nl +% +% This file is part of the babel system, it provides the source code for +% the <Language> language definition file. +%<*filedriver> +\documentclass{ltxdoc} +\newcommand*{\TeXhax}{\TeX hax} +\newcommand*{\babel}{\textsf{babel}} +\newcommand*{\langvar}{$\langle \mathit lang \rangle$} +\newcommand*{\note}[1]{} +\newcommand*{\Lopt}[1]{\textsf{#1}} +\newcommand*{\file}[1]{\texttt{#1}} +\begin{document} + \DocInput{<language>.dtx} +\end{document} +%</filedriver> +%\fi +% \GetFileInfo{<language>.dtx} +% +% \changes{v1.1}{1994/02/27}{Rearranged the file a little} +% \changes{v1.2}{1994/06/04}{Update for \LaTeXe} +% \changes{v1.3}{1995/05/13}{Update for \babel\ release 3.5} +% \changes{v1.4}{1996/10/30}{Update for \babel\ release 3.6} +% \changes{v1.5}{1997/03/18}{Update for \babel\ release 3.7} +% \changes{v1.6}{2004/02/20}{Update for \babel\ release 3.8} +% +% \section{The <Language> language} +% +% The file \file{\filename}\footnote{The file described in this +% section has version number \fileversion\ and was last revised on +% \filedate.} defines all the language definition macros for the +% <Language> languagee. +% +% \StopEventually{} +% +% The macro |\LdfInit| takes care of preventing that this file is +% loaded more than once, checking the category code of the +% \texttt{@} sign, etc. +% \begin{macrocode} +%<*code> +\LdfInit{<language>}{captions<language>} +% \end{macrocode} +% +% When this file is read as an option, i.e. by the |\usepackage| +% command, \texttt{<language>} could be an `unknown' language in +% which case we have to make it known. So we check for the +% existence of |\l@<language>| to see whether we have to do +% something here. +% +% \begin{macrocode} +\ifx\undefined\l@<language> + \@nopatterns{<Language>} + \adddialect\l@<language>0\fi +% \end{macrocode} +% For the <Dialect> version of these definitions we just add a +% ``dialect''. Also, the macros |\captions<dialect>| and +% |\extras<dialect>| are |\let| to their \texttt{<language>} +% counterparts when these parts are defined. +% \begin{macrocode} +\adddialect\l@<dialect>\l@<language> +% \end{macrocode} +% The next step consists of defining commands to switch to (and +% from) the <Language> language. +% +% Now we declare the |<attrib>| language attribute. +% \begin{macrocode} +\bbl@declare@ttribute{<language>}{<attrib>}{% +% \end{macrocode} +% This code adds the expansion of |\extras<attrib><language>| to +% |\extras<language>|. +% \begin{macrocode} + \expandafter\addto\expandafter\extras<language> + \expandafter{\extras<attrib><language>}% + \let\captions<language>\captions<attrib><language> + } +% \end{macrocode} +% +% \begin{macro}{\<language>hyphenmins} +% This macro is used to store the correct values of the hyphenation +% parameters |\lefthyphenmin| and |\righthyphenmin|. +% \begin{macrocode} +\providehyphenmins{<language>}{\tw@\thr@@} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\captions<language>} +% The macro |\captions<language>| defines all strings used in the +% four standard documentclasses provided with \LaTeX. +% \begin{macrocode} +\def\captions<language>{} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\captions<dialect>} +% \begin{macrocode} +\let\captions<dialect>\captions<language> +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\date<language>} +% The macro |\date<language>| redefines the command |\today| to +% produce <Language> dates. +% \begin{macrocode} +\def\date<language>{% +} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\date<dialect>} +% The macro |\date<dialect>| redefines the command |\today| to +% produce <Dialect> dates. +% \begin{macrocode} +\def\date<dialect>{% +} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\extras<language>} +% \begin{macro}{\noextras<language>} +% The macro |\extras<language>| will perform all the extra +% definitions needed for the <Language> language. The macro +% |\noextras<language>| is used to cancel the actions of +% |\extras<language>|. For the moment these macros are empty but +% they are defined for compatibility with the other +% language definition files. +% +% \begin{macrocode} +\addto\extras<language>{} +\addto\noextras<language>{} +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% \begin{macro}{\extras<dialect>} +% \begin{macro}{\noextras<dialect>} +% Also for the ``<dialect>'' variant no extra definitions are +% needed at the moment. +% \begin{macrocode} +\let\extras<dialect>\extras<language> +\let\noextras<dialect>\noextras<language> +% \end{macrocode} +% \end{macro} +% \end{macro} +% +% The macro |\ldf@finish| takes care of looking for a +% configuration file, setting the main language to be switched on +% at |\begin{document}| and resetting the category code of +% \texttt{@} to its original value. +% \begin{macrocode} +\ldf@finish{<language>} +%</code> +% \end{macrocode} +% +% \Finale +%\endinput +%% \CharacterTable +%% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z +%% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z +%% Digits \0\1\2\3\4\5\6\7\8\9 +%% Exclamation \! Double quote \" Hash (number) \# +%% Dollar \$ Percent \% Ampersand \& +%% Acute accent \' Left paren \( Right paren \) +%% Asterisk \* Plus \+ Comma \, +%% Minus \- Point \. Solidus \/ +%% Colon \: Semicolon \; Less than \< +%% Equals \= Greater than \> Question mark \? +%% Commercial at \@ Left bracket \[ Backslash \\ +%% Right bracket \] Circumflex \^ Underscore \_ +%% Grave accent \` Left brace \{ Vertical bar \| +%% Right brace \} Tilde \~} +%% diff --git a/Master/texmf-dist/doc/generic/babel/romanidx.tex b/Master/texmf-dist/doc/generic/babel/romanidx.tex new file mode 100644 index 00000000000..bc50735db31 --- /dev/null +++ b/Master/texmf-dist/doc/generic/babel/romanidx.tex @@ -0,0 +1,216 @@ +%% +%% This is file `romanidx.tex', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% spanish.dtx (with options: `indexes') +%% This is a generated file. +%% +%% Copyright 1989-2005 Johannes L. Braams and any individual authors +%% listed elsewhere in this file. All rights reserved. +%% +%% This file was generated from file(s) 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 Johannes Braams. +%% +%% This file may only be distributed together with a copy of the Babel +%% system. You may however distribute the Babel system without +%% such generated files. +%% +%% The list of all files belonging to the Babel distribution is +%% given in the file `manifest.bbl'. See also `legal.bbl for additional +%% information. +%% +%% 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. +%% File `spanish.dtx' +%% Babel package for LaTeX version 2e +%% Copyright (C) 1989 - 2004 +%% by Johannes Braams, TeXniek +%% Spanish Language Definition File +%% Copyright (C) 1997 - 2005 +%% by Javier Bezos (jbezos at wanadoo.es) +%% Apartado 116.035 +%% E-28080 Madrid +%% Espa\~na / Espagne +%% and +%% by CervanTeX (www.cervantex.org) +%% Please report errors to: Javier Bezos (preferably) +%% jbezos at wanadoo.es +%% J.L. Braams +%% babel at braams.cistron.nl +%% \section{\textsf{spanish} como lengua principal} +\makeatletter + +\newcount\es@converted +\newcount\es@processed + +\def\es@encap{`\|} +\def\es@openrange{`\(} +\def\es@closerange{`\)} + +\def\es@split@file#1.#2\@@{#1} +\def\es@split@ext#1.#2\@@{#2} + +\typein[\answer]{^^JArchivo que convertir^^J% + (extension por omision .idx):} + +\@expandtwoargs\in@{.}{\answer} +\ifin@ + \edef\es@input@file{\expandafter\es@split@file\answer\@@} + \edef\es@input@ext{\expandafter\es@split@ext\answer\@@} +\else + \edef\es@input@file{\answer} + \def\es@input@ext{idx} +\fi + +\typein[\answer]{^^JArchivo de destino^^J% + (archivo por omision: \es@input@file.eix,^^J% + extension por omision .eix):} +\ifx\answer\@empty + \edef\es@output{\es@input@file.eix} +\else + \@expandtwoargs\in@{.}{\answer} + \ifin@ + \edef\es@output{\answer} + \else + \edef\es@output{\answer.eix} + \fi +\fi + +\typein[\answer]{% + ^^J?Se ha usado algun esquema especial de controles^^J% + de MakeIndex para encap, open_range o close_range?^^J% + [s/n] (n por omision)} + +\if s\answer + \typein[\answer]{^^JCaracter para 'encap'^^J% + (\string| por omision)} + \ifx\answer\@empty\else + \edef\es@encap{% + `\expandafter\noexpand\csname\expandafter\string\answer\endcsname} + \fi + \typein[\answer]{^^JCaracter para 'open_range'^^J% + (\string( por omision)} + \ifx\answer\@empty\else + \edef\es@openrange{% + `\expandafter\noexpand\csname\expandafter\string\answer\endcsname} + \fi + \typein[\answer]{^^JCaracter para 'close_range'^^J% + (\string) por omision)} + \ifx\answer\@empty\else + \edef\es@closerange{% + `\expandafter\noexpand\csname\expandafter\string\answer\endcsname} + \fi +\fi + +\newwrite\es@indexfile +\immediate\openout\es@indexfile=\es@output + +\newif\ifes@encapsulated + +\def\es@roman#1{\romannumeral#1 } +\edef\es@slash{\expandafter\@gobble\string\\} + +\def\indexentry{% + \begingroup + \@sanitize + \es@indexentry} + +\begingroup + +\catcode`\|=12 \lccode`\|=\es@encap\relax +\catcode`\(=12 \lccode`\(=\es@openrange\relax +\catcode`\)=12 \lccode`\)=\es@closerange\relax + +\lowercase{ +\gdef\es@indexentry#1{% + \endgroup + \advance\es@processed\@ne + \es@encapsulatedfalse + \es@bar@idx#1|\@@ + \es@idxentry}% +} + +\lowercase{ +\gdef\es@idxentry#1{% + \in@{\es@roman}{#1}% + \ifin@ + \advance\es@converted\@ne + \immediate\write\es@indexfile{% + \string\indexentry{\es@b|\ifes@encapsulated\es@p\fi esromanindex% + {\ifx\es@a\@empty\else\es@slash\es@a\fi}}{#1}}% + \else + \immediate\write\es@indexfile{% + \string\indexentry{\es@b\ifes@encapsulated|\es@p\es@a\fi}{#1}}% + \fi} +} + +\lowercase{ +\gdef\es@bar@idx#1|#2\@@{% + \def\es@b{#1}\def\es@a{#2}% + \ifx\es@a\@empty\else\es@encapsulatedtrue\es@bar@eat#2\fi} +} + +\lowercase{ +\gdef\es@bar@eat#1#2|{\def\es@p{#1}\def\es@a{#2}% + \edef\es@t{(}\ifx\es@t\es@p + \else\edef\es@t{)}\ifx\es@t\es@p + \else + \edef\es@a{\es@p\es@a}\let\es@p\@empty% + \fi\fi} +} + +\endgroup + +\input \es@input@file.\es@input@ext + +\immediate\closeout\es@indexfile + +\typeout{*****************} +\typeout{Se ha procesado: \es@input@file.\es@input@ext } +\typeout{Lineas leidas: \the\es@processed} +\typeout{Lineas convertidas: \the\es@converted} +\typeout{Resultado en: \es@output} +\ifnum\es@converted>\z@ + \typeout{Genere el indice a partir de ese archivo} +\else + \typeout{No se ha realizado ningun tipo de conversion} + \typeout{Se puede generar el archivo directamente^^J% + de \es@input@file.\es@input@ext} +\fi +\typeout{*****************} +\@@end +%% +%% \CharacterTable +%% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z +%% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z +%% Digits \0\1\2\3\4\5\6\7\8\9 +%% Exclamation \! Double quote \" Hash (number) \# +%% Dollar \$ Percent \% Ampersand \& +%% Acute accent \' Left paren \( Right paren \) +%% Asterisk \* Plus \+ Comma \, +%% Minus \- Point \. Solidus \/ +%% Colon \: Semicolon \; Less than \< +%% Equals \= Greater than \> Question mark \? +%% Commercial at \@ Left bracket \[ Backslash \\ +%% Right bracket \] Circumflex \^ Underscore \_ +%% Grave accent \` Left brace \{ Vertical bar \| +%% Right brace \} Tilde \~} +%% +\endinput +%% +%% End of file `romanidx.tex'. diff --git a/Master/texmf-dist/doc/generic/babel/tb1202.tex b/Master/texmf-dist/doc/generic/babel/tb1202.tex new file mode 100644 index 00000000000..0cedd222ba2 --- /dev/null +++ b/Master/texmf-dist/doc/generic/babel/tb1202.tex @@ -0,0 +1,961 @@ +% \iffalse meta-comment +% +% Copyright 1989-2005 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 Johannes Braams. +% +% The list of all files belonging to the Babel system is +% given in the file `manifest.bbl. See also `legal.bbl' for additional +% information. +% +% 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. +% \fi +%%% ==================================================================== +%%% @TeX-file{ +%%% author = "Johannes L. Braams", +%%% version = "1.04", +%%% date = "06 January 1997", +%%% time = "23:15:14 MET", +%%% filename = "tb1202.tex", +%%% address = "TeXniek, +%%% Kersengaarde 33 +%%% 2723 BP Zoetermeer +%%% The Netherlands", +%%% telephone = "+31 79 352 28 19", +%%% FAX = "+31 70 343 23 95", +%%% checksum = "19810 933 5016 39417", +%%% email = "babel@braams.cistron.nl (Internet)", +%%% codetable = "ISO/ASCII", +%%% keywords = "", +%%% supported = "yes", +%%% abstract = "", +%%% docstring = "The article on babel that apeared in +%%% TuGboat Volume 12, No. 2. +%%% +%%% The checksum field above contains a CRC-16 +%%% checksum as the first value, followed by the +%%% equivalent of the standard UNIX wc (word +%%% count) utility output of lines, words, and +%%% characters. This is produced by Robert +%%% Solovay's checksum utility.", +%%% } +%%% ==================================================================== +% tb32braa.ltx + +\NeedsTeXFormat{LaTeX2e} +\IfFileExists{ltugboat.cls}{% + \documentclass{ltugboat} + \def\rtitlex{TUGboat, Volume 12 (1991), No. 2} + \def\midrtitle{} + \def\PrelimDraftfooter{} + \let\TBmaketitle\maketitle + \SelfDocumenting + \setcounter{page}{291} + }{% + \documentclass{article} + \newcommand\address[1]{} + \newcommand\netaddress[1]{} + \newcommand\TUB{\textsl{TUGboat\/}} + \newcommand\TeXhax{\TeX hax}} +\usepackage{shortvrb} +\MakeShortVerb{\|} +\newcommand{\file}[1]{\texttt{#1}} +\newcommand{\Lopt}[1]{\textsf{#1}} +\newcommand{\babel}{\textsf{babel}} +\makeatletter +% ------------------------------------------------- +% Definitions copied from doc.sty by FMi +% ------------------------------------------------- +{\obeyspaces% +\gdef\meta{\begingroup\obeyspaces% +\def {\egroup\space\hbox\bgroup\it}\m@ta}} +\def\m@ta#1{\hbox\bgroup$\langle$\it#1\/$\rangle$\egroup\endgroup} + +% ------------------------------------------------- +% define \dlqq so that we can give an example of "' +% ------------------------------------------------- +\gdef\dlqq{{\setbox\tw@=\hbox{,}\setbox\z@=\hbox{''}% + \dimen\z@=\ht\z@ \advance\dimen\z@-\ht\tw@ + \setbox\z@=\hbox{\lower\dimen\z@\box\z@}\ht\z@=\ht\tw@ + \dp\z@=\dp\tw@ \box\z@\kern-.04em}} +% +% ------------------------------------------------- +% To demonstrate german double quotes (from german.tex) +% ------------------------------------------------- +\def\allowhyphens{\penalty\@M \hskip\z@skip} +\def\set@low@box#1{\setbox\tw@\hbox{,}\setbox\z@\hbox{#1}\dimen\z@\ht\z@ + \advance\dimen\z@ -\ht\tw@ + \setbox\z@\hbox{\lower\dimen\z@ \box\z@}\ht\z@\ht\tw@ \dp\z@\dp\tw@ } +% (this lowers the german left quotes to the same level as the comma.) + +\def\@glqq{{\ifhmode \edef\@SF{\spacefactor\the\spacefactor}\else + \let\@SF\empty \fi \leavevmode + \set@low@box{''}\box\z@\kern-.04em\allowhyphens\@SF\relax}} +\def\glqq{\protect\@glqq} +\def\@grqq{\ifhmode \edef\@SF{\spacefactor\the\spacefactor}\else + \let\@SF\empty \fi \kern-.07em``\kern.07em\@SF\relax}%'' +\def\grqq{\protect\@grqq} +% +% ------------------------------------------------- +% To demonstrate french double quotes (from german.tex) +% ------------------------------------------------- +\def\@flqq{\ifhmode \edef\@SF{\spacefactor\the\spacefactor}\else + \let\@SF\empty \fi + \ifmmode \ll \else \leavevmode + \raise .2ex \hbox{$\scriptscriptstyle \ll $}\fi \@SF\relax} +\def\flqq{\protect\@flqq} +\def\@frqq{\ifhmode \edef\@SF{\spacefactor\the\spacefactor}\else + \let\@SF\empty \fi + \ifmmode \gg \else \leavevmode + \raise .2ex \hbox{$\scriptscriptstyle \gg $}\fi \@SF\relax} +\def\frqq{\protect\@frqq} +%+ +% Some extra definitions needed in the article +%- +\def\bsl{\char'134} +\makeatother + +\begin{document} +\title {Babel, a multilingual style-option system for use + with \LaTeX's standard document styles% + \thanks{During the development ideas from Nico Poppelier, + Piet van Oostrum and many others have been used.} + } + +\author{Johannes Braams} +\address{% + \TeX niek\\ + Kersengaarde 33\\ + 2723 BP Zoetermeer\\ + The Netherlands} +\netaddress{babel@braams.cistron.nl} +\date{06 January 1997 \\ + Version 1.04} + +\maketitle + +\begin{abstract} + The standard distribution of \LaTeX\ contains a number of document + styles that are meant to be used, but also serve as examples for + other users to create their own document styles. These styles have + become very popular among \LaTeX\ users. But it should be kept in + mind that they were designed for American tastes and contain a + number of hard-wired texts. This article describes a set of + document-style options that can be used in combination with the + standard styles, which makes the latter adaptable to other + languages. +\end{abstract} + +\section{Introduction} + +Although Leslie Lamport has stated~\cite{LLth} that one should not try +and write \emph{one} document-style option to be used with \emph{all} +the standard document styles of \LaTeX, that is exactly what I~have +done with this system of style options. The reasons for this approach +will be explained in section~\ref{why}. + +A lot of the ideas incorporated in this set of files come from the +work of Hubert Partl~\cite{HP}, \file{german.tex}. Some parts in the +implementation are different, others are the same. It will be shown +that \file{german.tex} can be modified to fit into this scheme of +style options. + +\section{Why \babel?}\label{why} + +When I~first started using \LaTeX\ I~was very happy with just the +style files that are distributed with the standard distributions of +\TeX\ and \LaTeX. That means, as long as I~made texts in English I~was +happy. Then as other users found out about \LaTeX\ and its advantages, +they started using it for texts in languages other than English. As +I~was the most experienced \LaTeX\ user at the time, they came to me +and asked me `When I'm writing a report in Dutch I~don't want chapters +to be named ``Chapter'', I~want them to be named ``Hoofdstuk'', how do +you change that?'. At that time I~didn't know, but I soon found out. +The first thing I~found was that Leslie Lamport states~\cite[pages +85--86]{LLbook} that you have to redefine the command |\@chapapp| +to get the desired result. This looked rather promising to me, so +I~had a look at the style files to find out how other such strings as +``Figure'' might be redefined. It was then that I~found out that +|\@chapapp| is the \emph{only} string defined this way, whereas +all others are hard-wired into the style. + +My first solution to this problem was to create a new document style +file called \file{artikel.sty} as a ``Dutch'' counterpart to +\file{article.sty}. The same was done for \file{report.sty}. This is +exactly what Leslie Lamport suggests~\cite{LLth}. This approach has +one major drawback however: you get two copies of basically the same +file to maintain. This was discovered when newer releases of the +styles reached our site. The standard styles had to be replaced +\emph{and} edited all over again to get the ``Dutch'' versions back. +About the same time, in early 1988, a discussion on this subject +appeared in \TeXhax. One of the persons commenting was Hubert Partl. +The method he suggested was to modify the standard document styles by +replacing the hard-wired texts by macros such as |\@chapapp|. This +led me to my second attempt at a solution. I~modified the standard +styles (all four of them) as suggested, but while doing that added an +option, implemented like the option \texttt{draft}, by defining a +command |\ds@dutch|. This command would set a variable to indicate +which language was requested. This variable I~used later on in a +|\case| statement. In this |\case| statement a choice is made between +English, Dutch and possibly other languages for texts such as +``Figure'' and ``Contents''. Unfortunately, some of this implied +changing the secondary style files \file{xxx10.sty}, \file{xxx11.sty} +and \file{xxx12.sty}. This was unfortunate because one of the +research groups in our laboratories complained their document style +didn't work properly. It turned out that their style was a modified +\file{article.sty} that had been given a different name, but it still +loaded \file{art10.sty} etc. I~found a temporary solution, but I +still wasn't exactly happy with the situation. Besides this, the +drawback of replacing the document styles with newer versions still +existed. + +When after a while a new version of the \LaTeX\ distribution arrived +at our site, I~began to think about a different way to solve the +problem. In the meantime Hubert Partl had his \file{german.sty} +published in \TUB~\cite{HP}. His article pointed the way to a +different solution. Triggered by the discussion in \TeXhax\ in early +1989 about how to detect which is the main (primary) style when +processing a document, I~started work on what is now available as +\file{dutch.sty} version~1.0, dated may 1989\footnote{This file is + available from \texttt{listserv@hearn.bitnet} as file + \file{dutch.old}.}. While working on this style option I~discovered +that some parts could be borrowed from \file{german.sty}. This +`discovery' and some discussions I had with others at Euro\TeX89, the +fourth European \TeX\ Conference, held in september 1989 in Karlsruhe, +led me towards a more universal approach. The basic idea behind it +was, starting from the algorithm to detect the main style, to design +an approach with one common file that contained macro definitions +needed by a number of language-specific style options. Users specify +the name of any of these language-specific options as an option to the +|\documentstyle| command, and internally the common file is read. + +%This is the situation as it stands now. The rest of this article is +%devoted to a description of how the system of style options described +%above is implemented and what the possibilities are. I~realize that +%with the new \TeX\ 3.0 around and work being done on a new version of +%\LaTeX\ as well some of this work may become obsolete in the near +%future. But, taking into consideration the widespread use of the +%current versions of \TeX\ and \LaTeX\, I~think it may take some time +%before {\em everybody} is working with the new releases. + +%------------------------------------------------------------ +% All text above here was copied from babel.doc, the following +% section is new for this version of the article +%------------------------------------------------------------ +\section{\LaTeX\ and document-style files}\label{lat-docstyle} + +Before the I discuss some of the code in the \babel{} system I would +like to discuss the document-style mechanism used by \LaTeX. Every +\LaTeX\ document should start with a line like: +\begin{verbatim} +\documentstyle[opt1,opt2,...]{docstyle} +\end{verbatim} +This line of code instructs \LaTeX\ to first load the file +\file{docstyle.sty}. When that is done the `options' are processed +\emph{in the order specified}, by reading the files +\file{opt1.sty}\footnote{Except when the documentstyle defines the + control sequence {\tt\bsl ds@\meta{opt1}}; in that case this control + sequence will be executed.}, \file{opt2.sty}, etc. This implies that +definitions, made in the file \file{docstyle.sty} can be overridden in +one of the option files. It is even possible to redefine code from the +very kernel of \LaTeX, but you have to know what you are doing. + +Some care has to be taken in writing document-style options, because a +number of problems can occur. First of all, if a document-style option +should be modest in size; if it tries to redefine most of the code in +\file{docstyle.sty} I think you should write (and maintain) your own, +complete, document style. Next, as it was possible to override +definitions from the main file in an option file, it is of course also +possible to override definitions made in another option file. When +this happens, your document might depend on the order in which you +have specified your document-style options. + +This mechanism of overriding definitions from the main document style +is exploited in the \babel{} system. The macros that contain the +hard-wired texts are redefined in the common part of \babel{}, +replacing each of these texts with a unique macro. These macros have +to be defined in the language-specific files. + +\section{\LaTeX\ and multilingual documents}\label{lat-lingual} + +In a european environment it sometimes happens that one wants to write +a document that contains more than \emph{one} language. I have an +example of a document, published by the {\sc eec}, that contains 9 +(nine) different languages. Also in linguistics one can find documents +written in more than one language, i.e. to compare two languages. + +If you have to write such a multilingual document you should try to +conform to the typographical conventions in use for each language. A +well known example is the type of quotation marks used. \TeX\ supplies +the user with ``quoted text'', but a Dutch user might want to have +\dlqq quoted text'', whereas a German text should contain \glqq quoted +text\grqq\ and a frenchman would perhaps like to see something like +\flqq quoted text\frqq. These language specific conventions should be +implemented in a document-style option file for each language. These +files should then be useable with \emph{all} document styles. + +In such a multilingual document a user would specify the languages +used as options to the |\documentstyle| command. He would also want a +mechanism to be able to switch between these languages in a simple +way. When he would use \TeX\ version 3.0 for the processing of his +document, he would also want the hyphenation to come out right for the +different languages. + +\section{Overview of the \babel{} solution} + +\subsection{The core of the system} + +The problems described in sections~\ref{lat-docstyle} +and~\ref{lat-lingual} can be solved using the \babel{} system of +document-style options. + +The core of this system currently performs three functions. +\begin{enumerate} + +\item\label{switch} It defines a user interface for switching between + languages; + +\item\label{hyphs} It contains code to dynamically load several sets + of hyphenation patterns; + +\item\label{repair} It `repairs' the document styles provided in the + standard distribution of \LaTeX. + +\end{enumerate} + +Obviously part~\ref{hyphs} can only be used while running ini\TeX\ to +create a new format, whereas part~\ref{repair} should \emph{not} be +read by ini\TeX. Part~\ref{repair} should even disappear when \LaTeX\ +version 3.0 arrives, as the style files supplied with the new \LaTeX\ +will no longer be language specific. Part~\ref{switch} can either be +loaded into the format with multiple hyphenation patterns, or it can +be read while processing a document. + +For this reason the core of the \babel{} system is stored in two +separate files, \file{babel.switch}, containing parts~\ref{switch} +and~\ref{hyphs}, and \file{babel.sty} which contains +part~\ref{repair}. The file \file{babel.sty} will instruct \LaTeX\ to +load \file{babel.switch} if necessary, the file \file{babel.switch} +checks the format to see if hyphenation patterns \emph{can} be loaded. + +\subsection{Language specifics} + +The language switching mechanism contains a couple of hooks for the +developers of language-specific document-style options. + +First of all the macro |\originalTeX| should be defined. Its function +is to disable special definitions made for a language to bring \TeX\ +into a `defined' state. A language-specific document-style option +might, for example, introduce an extra active character. It would then +also modify the definitions of |\dospecials| and |\@sanitize|. Such an +option would then define a macro to restore the original definitions +of these macros and restore the extra active character to its normal +category code. It would then |\let \originalTeX| to this `restoration' +macro. + +To enable the language-specific definitions three macros are provided +in the switching mechanism, |\captions|\meta{language}, +|\date|\meta{language} and |\extras|\meta{language}. + +The macro |\captions|\meta{language} should provide definitions for +the macros that replaced the hard-wired texts in the document style +and the macro |\date|\meta{language} should provide a definition for +|\today|. The real fun starts with the macro +|\extras|\meta{language}. This macro should activate all definitions +needed for \meta{language}. + +\section{The user interface} + +The user interface to the \babel{} system is quite simple. He should +specify the languages he wants to use in his document in the list of +document-style options. For instance, for a document in which both the +English and the Dutch language are used, the first line could read: +\begin{verbatim} +\documentstyle[a4,dutch,english]{artikel1} +\end{verbatim} +Please note that in this case the Dutch-specific definitions are +inactive when \LaTeX\ has finished processing document-style option +files. + +If the user then wants to switch from English to Dutch he would +include the command +\begin{verbatim} +\selectlanguage{dutch} +\end{verbatim} +before starting to write Dutch. + +If a user wants to write a document-style option of his own he might +like to define a macro that checks which language is in use at the +time the macro is executed. For this purpose the macro +|\iflanguage{|\meta{language}|}{|\meta{then-clause}|}{|% +\meta{else-clause}|}| is available. + +\section{Implementation of the core of the system} + +In this section I would like to discuss some parts of the +implementation of the \babel{} system. Not all code will be shown, +because some parts of it are just series of slightly modified code +from the standard document styles. The files are fully documented and +interested readers can print them if they have access to the +\texttt{doc} option, described by Frank Mittelbach. + +The description of the macros that follows is based on an environment +using \TeX~3.x, together with a version of \file{lplain.tex} based on +\file{plain.tex} version~3.x. The actual implementation allows for +other situations as well, i.e a version of \file{babel.sty} for +\TeX~2.x will be available. + +\subsection{Switching languages}\label{lang-switch} + +For each language to be used in a document a control sequence of the +form |\l@|\meta{language} has to be defined. This will either be done +while loading hyphenation patterns or while loading the +language-specific file. The implementation of +\hbox{|\selectlanguage{|\meta{language}|}|} and\\ +\hbox{|\iflanguage{|\meta{language}|}{|\meta{then case}|}{|\meta{else + case}|}|} is based on the existence of +\hbox{|\l@|\meta{language}}. + +\begin{figure*}[htb] +\begin{verbatim} +\def\selectlanguage#1{% + \@ifundefined{l@#1} + {\@nolanerr{#1}} + {\originalTeX + \language=\expandafter\csname l@#1\endcsname\relax + \expandafter\csname captions#1\endcsname + \expandafter\csname date#1\endcsname + \expandafter\csname extras#1\endcsname + \gdef\originalTeX{\expandafter\csname noextras#1\endcsname} + } +} +\end{verbatim} +\caption{The definition of {\tt\bsl selectlanguage}.} +\label{select} +\end{figure*} + +To switch from one language to another the macro |\selectlanguage| is +available. Its definition can be seen in figure~\ref{select}. The +first action it takes is to check whether the \meta{language} is +known, if it is not an error is signalled. If the language is known +|\originalTeX| is called upon to reset any previously set +language-specific definitions. Next the register |\language| is +updated and the three macros that should activate all +language-specific definitions are executed. Finally the macro +|\originalTeX| receives a new replacement text in order to be able to +deactivate the definitions just activated. + +\begin{figure*}[htb] +\begin{verbatim} +\def\iflanguage#1#2#3{% + \@ifundefined{l@#1} + {\@nolanerr{#1}} + {\ifnum\language=\expandafter\csname l@#1\endcsname\relax + #2 \else #3 + \fi} +} +\end{verbatim} +\caption{The definition of {\tt\bsl iflanguage}} +\label{if} +\end{figure*} + +The macro |\iflanguage| (see figure~\ref{if}) will issue a warning +when its argument is an `unkown' language. It then goes on to compare +the value of |\language| and |\l@|\meta{language} and executes either +its secon or third argument. + +\subsection{Dynamically loading patterns} + +With the advent of \TeX~3.0 it has become possible to build a format +with more than one hyphenation pattern preloaded. The core of the +\babel\ system provides code, to be executed by ini\TeX\ \emph{only}, +to dynamically load hyphenation patterns. The only restriction is that +the implementation of \TeX\ that you use has to have rather high +settings of \texttt{trie\_size} and \texttt{trie\_op\_size} to +actually load several hyphenation patterns. + +For the purpose of dynamically loading hyphenation patterns a +`configuration file' has to be introduced. This file will be read by +ini\TeX. Each line should contain either a comment, nothing or the +name of a language and the name of the file that contains the +hyphenation patterns for that language. In figure~\ref{config} an +example of such a file, instructing ini\TeX\ to load patterns for +three languages, English, Dutch and German. + +\begin{figure*}[htb] +\begin{verbatim} +% File : language.dat +% Purpose : tell iniTeX what files with patterns to load. +english english.hyphenations + +dutch hyphen.dutch % Nederlands +german hyphen.ger +\end{verbatim} +\caption{An example configuration file}\label{config} +\end{figure*} + +The configuration file will be read line by line using \TeX's |\read| +primitive. Because the name of a file might be followed by a +space-token and comment (as in the example) a macro to process each +line is needed. The definition of this macro, |\process@language|, can +be found in figure~\ref{process}. As can be seen in the definition of +this macro, its second argument \emph{always} has to be followed by a +space-token. The effect of this is that any trailing spaces are +removed. +\begin{figure*}[htb] +\begin{verbatim} +\def\process@language#1 #2 {% + \expandafter\addlanguage\csname l@#1\endcsname + \expandafter\language\csname l@#1\endcsname + \input #2} +\end{verbatim} +\caption{The definition of {\tt\bsl process@language}.} +\label{process} +\end{figure*} +The macro strips all spaces following its arguments. It's first +argument is used to define |\l@|\meta{language}. The macro +|\addlanguage| is basically a non-outer version of the plain \TeX\ +macro |\newlanguage|. The second argument of |\process@language| is +the name of the file containing the hyphenation patterns. Before the +file can be read, the register |\language| has to updated. + +The configuration file is read in a |\loop| (see figure~\ref{loop}). +When a record is read from the input file a check is done whether the +record was empty. If it was not, a space token is added to the end of +the string of tokens read. The reason for this is that we have to be +sure there always is at least \emph{one} space token present. When +that has been taken care of the data just read can be processed. The +last thing to do is to check the status of the input file, in order to +decide whether \TeX\ has to continue processing the |\loop|. When all +patterns have been processed the value of |\language| is restored. + +\begin{figure*}[htb] +\begin{verbatim} +\loop + \read1 to \@config@line + \ifx\@config@line\empty + \else + \edef\@config@line{\@config@line\space} + \expandafter\process@language\@config@line + \fi + \ifeof1 \@morefalse \fi + \if@more\repeat +\language=0 +\end{verbatim} +\caption{Reading the configuration file line by line} +\label{loop} +\end{figure*} + +\subsection{`Repairing' \LaTeX's standard document styles} + +A large part of the core of the \babel{} system is dedicated to +`repair' the standard document styles. This means redefining the +macros in table~\ref{macros}. + +\begin{table*}[htb] +\DeleteShortVerb{\|} +\begin{center} +\begin{tabular}{l | c c c c} +macro & article & report & book & letter \\ +\hline +\tt\bsl fnum@figure & $\times$ & $\times$ & $\times$ & $\times$ \\ +\tt\bsl fnum@table & $\times$ & $\times$ & $\times$ & $\times$ \\ +\tt\bsl tableofcontents & $\times$ & $\times$ & $\times$ & \\ +\tt\bsl listoffigures & $\times$ & $\times$ & $\times$ & \\ +\tt\bsl listoftables & $\times$ & $\times$ & $\times$ & \\ +\tt\bsl thebibliography & $\times$ & $\times$ & $\times$ & \\ +\tt\bsl theindex & $\times$ & $\times$ & $\times$ & \\ +\tt\bsl abstract & $\times$ & $\times$ & $\times$ & \\ +\tt\bsl part & $\times$ & $\times$ & $\times$ & \\ +\tt\bsl chapter & & $\times$ & $\times$ & \\ +\tt\bsl appendix & & $\times$ & $\times$ & \\ +\tt\bsl cc & & & & $\times$ \\ +\tt\bsl encl & & & & $\times$ \\ +\tt\bsl ps@headings & & & & $\times$ \\ +\end{tabular} +\caption{macros that need to be redefined for the four standard document + styles.} +\label{macros} +\end{center} +\MakeShortVerb{\|} +\end{table*} + +As an example of the way the macros have to be redefined, the +redefinition of |\tableofcontents| is shown in figure~\ref{content}. +\begin{figure*}[htb] +\begin{verbatim} +\@ifundefined{contentsname} + {\def\tableofcontents + {\section*{\contentsname + \@mkboth{\uppercase\expandafter{\contentsname}} + {\uppercase\expandafter{\contentsname}} + } + \@starttoc{toc} + } + } + {} +\end{verbatim} +\caption{An example of redefining a command}\label{content} +\end{figure*} + +The standard styles can be distinguished by checking the existence of +the macros |\chapter| (not in \file{article} and \texttt{letter}) and +|\opening| (only in \texttt{letter}). The result of these checks is +stored in the macro |\doc@style|. When |\doc@style| already exists +(which is the case when for instance \file{artikel1.sty} is +used~\cite{BEP}) it is not superseded (see figure~\ref{maindoc}). + +\begin{figure*}[htb] +\begin{verbatim} +\@ifundefined{doc@style} + {\def\doc@style{0} + \@ifundefined{opening} + {\@ifundefined{chapter} + {\def\doc@style{1}} + {\def\doc@style{2}} + }{\def\doc@style{3}} + }{\relax} +\end{verbatim} +\caption{Determining the main document style} +\label{maindoc} +\end{figure*} + +\section{Implementing a language specific document-style option file} + +To illustrate the way a language specific file can be implemented the +file \file{dutch.sty} is discussed here. Note that not all of the code +containde in the file \file{dutch.sty} is shown here, only those parts +that are of interest for the scope of this article are included. If +the reader would like to see the complete code, he can print all files +in the \babel{} system, using the file \file{doc.sty}, described by +Frank Mittelbach in~\cite{docsty}. + +\subsection{Compatibilty with plain \TeX} +The file \file{german.tex}~\cite{HP} was written in such a way that it +can be used by both plain \TeX\ users and \LaTeX\ users. This seemed a +good idea, so all files in the \babel{} system can be processed by +both plain \TeX\ and \LaTeX. But some of the ``useful hacks'' from +\LaTeX\ are used, so for a plain \TeX\ user they have to be defined. +For this purpose the format is checked at the start of a language +specific file. If the format is \texttt{plain} an extra file, called +\file{latexhax.sty} is read. +\begin{figure*}[htb] +\begin{verbatim} +{\def\format{plain} +\ifx\fmtname\format + \expandafter\ifx\csname @ifundefined\endcsname\relax + \gdef\next{latexhax.sty} + \aftergroup\input\aftergroup\next + \fi +\fi} +\end{verbatim} +\caption{Conditonal loading of \file{latexhax.sty}} +\end{figure*} + +This file should be read only once, so another check is done on the +existence of one of the commands defined there. + +A new group is started to keep the definition of the macro +|\format|, which is used in the following if statement, local. +When the current format turns out to be plain \TeX\ the file +\file{latexhax.sty} has to be read. But the definitions in that file +should remain valid after the group is closed. This could be +accomplished by making all definitions \texttt{global}, but another +solution is to tell \TeX\ to process the file \file{latexhax.sty} +\emph{after} the current group has been closed. The command +|\aftergroup| puts the next token on a list to be processed after +the group. + +\subsection{Switching to the Dutch language} +In section~\ref{lang-switch} the names of macros needed to switch to a +language have been described. In figure~\ref{switchdutch} these macros +and their definition are shown for the Dutch language. +\begin{figure*}[htb] +\begin{verbatim} +\def\captionsdutch{\gdef\refname{Referenties}% + \gdef\abstractname{Samenvatting}% + \gdef\bibname{Bibliografie}% + ... + \gdef\pagename{Pagina}} + +\def\datedutch{% + \gdef\today{\number\day~\ifcase\month\or + januari\or februari\or maart\or april\or + mei\or juni\or juli\or augustus\or + september\or oktober\or november\or december\fi + \space \number\year}} +\begingroup \catcode`\"\active + +\gdef\extrasdutch{% + \global\let\dospecials\dutch@dospecials + \global\let\@sanitize\dutch@sanitize + \catcode`\"\active + \gdef"{\protect\dutch@active@dq} + \gdef\"{\protect\@umlaut} +}\endgroup + +\def\noextrasdutch{% + \catcode`\"12 + \global\let\dospecials\original@dospecials + \global\let\@sanitize\original@sanitize + \global\let\"\dieresis +} +\end{verbatim} +\caption{The macros needed to switch to the Dutch language} +\label{switchdutch} +\end{figure*} + +The definitions of |\captionsdutch| and |\datedutch| are pretty +straightforward and need not be discussed. The macro |\extrasdutch| +will be discussed in some more detail. + +First, because for Dutch (as well as for German) the \texttt{"} +character is made active, the \LaTeX\ macros |\dospecials| and +|\@sanitize| have to be redefined to include this character as well. +The new definitions are implemented as two special commands, so we +globally |\let| the originals to their new versions. Then the +\texttt{"} character is made active and is defined. Then, to prevent +an error when |\"| appears in a moving argument, the macro |\"| is +redefined and made robust. All this is done inside a group to keep the +category code change for the \texttt{"} character local. + +The macro |\extrasdutch| has a counterpart, |\noextrasdutch|, that +cancels the extra definitions made by |\extrasdutch|. It changes the +|\catcode| of the \texttt{"} character back to `other' and globally +|\let|s the macros |\dospecials| and |\@sanitize| to their original +definitions. The original definition of |\"| is restored as well. + +In figure~\ref{specials} the code needed to redefine |\dospecials| and +|\@makeother| is shown. +\begin{figure*}[htb] +\begin{verbatim} +\begingroup + \def\do{\noexpand\do\noexpand}% + \xdef\dutch@dospecials{\dospecials\do\"}% + \expandafter\ifx\csname @sanitize\endcsname\relax +% do nothing if \@sanitize is undefined... + \else + \def\@makeother{\noexpand\@makeother\noexpand}% + \xdef\dutch@sanitize{\@sanitize\@makeother\"}% + \fi +\endgroup + +\global\let\original@dospecials\dospecials +\global\let\original@sanitize\@sanitize +\end{verbatim} +\caption{Code needed for the redefinition of {\tt\bsl dospecials} and + {\tt\bsl @makeother}.} +\label{specials} +\end{figure*} + +\subsection{An extra active character} + +All the code disccussed sofar is necessary because we need an extra +active character. This character is then used as indicated in +table~\ref{dutch-quote}. One of the reasons for this is that in the +Dutch language a word with an umlaut can be hyphenated just before the +letter with the umlaut, but the umlaut has to disappear if the word is +broken between the previous letter and the accented letter. + +\begin{table*}[htb] +\centering +\begin{tabular}{lp{8cm}} +\verb="a= & \verb=\"a= which hyphenates as \verb=-a=; + also implemented for the other letters. \\ +\verb="|= & disable ligature at this position. \\ +\verb="-= & an explicit hyphen sign, allowing hyphenation + in the rest of the word. \\ +\verb="`= & lowered double left quotes (see example below).\\ +\verb="'= & normal double right quotes. \\ +\verb=\-= & like the old \verb=\-=, but allowing hyphenation + in the rest of the word. +\end{tabular} +\caption{The extra definitions made by \file{dutch.sty}} +\label{dutch-quote} +\end{table*} + +In~\cite{treebus} the quoting conventions for the Dutch language are +discussed. The preferred convention is the single-quote Anglo-American +convention, i.e. `This is a quote'. An alternative is the slightly +old-fashioned Dutch method with initial double quotes lowered to the +baseline, \dlqq This is a quote'', which should be typed as +\texttt{"`This is a quote"'}. + +\subsubsection{Supporting macro definitions} + +The definition of the active \texttt{"} character needs a couple of +support macros. The macro |\allowhyphens| is used make hyphenation of +word possible where it otherwise would be inhibited by \TeX. Basically +its definition is nothing more than |\nobreak \hskip 0pt plus 0pt|. +\begin{verbatim} +\gdef\allowhyphens{\penalty\@M \hskip\z@skip} +\end{verbatim} + +Then a macro is defined to lower the Dutch left double quote to the +same level as the comma. It prepares a low double opening quote in box +register~0. This macro was copied form \file{german.tex}. +\begin{verbatim} +\gdef\set@low@box#1{% + \setbox\tw@\hbox{,} \setbox\z@\hbox{#1} + \dimen\z@\ht\z@ \advance\dimen\z@ -\ht\tw@ + \setbox\z@\hbox{\lower\dimen\z@ \box\z@} + \ht\z@\ht\tw@ \dp\z@\dp\tw@} +\end{verbatim} +The macro |\set@low@box| is used to define low opening quotes. Since +it may be used in arguments to other macros it needs to be protected. +\begin{verbatim} +\gdef\dlqq{\protect\@dlqq} +\gdef\@dlqq{{% + \ifhmode + \edef\@SF{\spacefactor\the\spacefactor} + \else + \let\@SF\empty + \fi + \leavevmode\set@low@box{''} + \box\z@\kern-.04em\allowhyphens\@SF\relax}} +\end{verbatim} +For reasons of symmetry we also define |"'|. This command is defined +similar to |\dlqq|, except that the quotes aren't lowered to the +baseline. +\begin{verbatim} +\gdef\@drqq{{% + \ifhmode + \edef\@SF{\spacefactor\the\spacefactor} + \else + \let\@SF\empty + \fi + ''\@SF\relax}} +\end{verbatim} +The original double quote character is saved in the macro |\dq| to +keep it available. +\begin{verbatim} +\begingroup \catcode`\"12 + \gdef\dq{"} +\endgroup +\end{verbatim} +The original definition of |\"| is stored as |\dieresis|. The resason +for this is that if a font with a different encoding scheme is used +the definition of |\"| might not be the plain \TeX\ one. +\begin{verbatim} +\global\let\dieresis\" +\end{verbatim} + +In the Dutch language vowels with a dieresis or umlaut accent are +treated specially. If a hyphenation occurs before a vowel-plus-umlaut, +the umlaut should disappear. To be able to do this, the hyphenation +break behaviour for the five vowels, both lowercase and uppercase, +could be defined first in terms of |\discretionary|. But this results +in a large |\if|-construct in the definition of the active |"|. + +As both Knuth and Lamport have pointed out, a user should not use |"| +when he really means something like |''|. For this reason no +distinction is made between vowels and consonants. Therefore one +macro, |\@umlaut|, specifies the hyphenation break behaviour for all +letters. +\begin{verbatim} +\def\@umlaut#1{% + \allowhyphens% + \discretionary{-}{#1}{\dieresis #1}% + \allowhyphens} +\end{verbatim} + +The last support macro to be defined is |\dutch@active@dq|. +\begin{verbatim} +\gdef\dutch@active@dq#1{% + \if\string#1`\dlqq{}% +\else\if\string#1'\drqq{}% +\else\if\string#1-\allowhyphens-\allowhyphens% +\else\if\string#1|\discretionary{-}{}{\kern.03em}% +\else\if\string#1i\allowhyphens\discretionary{-}{i}{\dieresis\i}% + \allowhyphens% +\else\if\string#1j\allowhyphens\discretionary{-}{j}{\dieresis\j}% + \allowhyphens% +\else \@umlaut{#1}\fi\fi\fi\fi\fi\fi} +\end{verbatim} +The macro reads the next token and performs some appropriate action. +If no special action is defined, it will produce an umlaut accent on +top of argument~1. + +The last definition needed is a replacement for |\-|. The new version +of |\-| should indicate an extra hyphenation position, while allowing +other hyphenation positions to be generated automatically. The +standard behaviour of \TeX\ in this respect is very unfortunate for +languages such as Dutch and German, where long compound words are +quite normal and all one needs is a means to indicate an extra +hyphenation position on top of the ones that \TeX\ can generate from +the hyphenation patterns. +\begin{verbatim} +\def\-{\allowhyphens\discretionary{-}{}{}\allowhyphens} +\end{verbatim} + +\subsection{Activating the definitions} + +The last action that should be performed by a language specific file, +is activating it's definitions. Before doing that the macro +|\originalTeX| should be definined. +\begin{verbatim} +\@ifundefined{originalTeX}{\let\originalTeX\relax}{} +\end{verbatim} + +Also, the macro |\l@|\meta{language} should be defined. If it hasn't +already been defined, this means that no hyphenation patterns were +loaded for this language. +% This means that \emph{no} hyphenation will take place +\begin{verbatim} +\@ifundefined{l@dutch}{\addlanguage{dutch}}{} +\selectlanguage{dutch} +\end{verbatim} + +\section{Conclusion} + +In this article a system of document-style option files has been +presented that supports the multilingual use of \LaTeX. Some of the +code involved has been discussed. The actual files will me made +available through the international networks. They will be stored in +the fileserver in the Netherlands (address: +\texttt{LISTSERV@HEARN.BITNET}), the file \file{babel readme} will +explain what you need to get to be able to use the system. The system +was developed using the \Lopt{doc} option, so the files available are +fully documented. + +\begin{thebibliography}{9} + \bibitem{DEK} Donald E. Knuth, + \emph{The \TeX book}, Addison-Wesley, 1986. + \bibitem{LLbook} Leslie Lamport, + \emph{\LaTeX, A document preparation System}, Addison-Wesley, 1986. + \bibitem{treebus} K.F. Treebus. + \emph{Tekstwijzer, een gids voor het grafisch verwerken van tekst.} + SDU Uitgeverij ('s-Gravenhage, 1988). A Dutch book on layout + design and typography. + \bibitem{HP} Hubert Partl, + \emph{German \TeX}, \emph{TUGboat} 9 (1988) \#1, p.~70--72. + \bibitem{LLth} Leslie Lamport, + in: \TeXhax\ Digest, Volume 89, \#13, 17 februari 1989. + \bibitem{docsty}Frank Mittelbach, + \emph{The \Lopt{doc}-option}, + \emph{TUGboat} 10 (1989) \#2, p.~245--273. + \bibitem{BEP}Johannes Braams, Victor Eijkhout and Nico Poppelier, + \emph{The development of national \LaTeX\ styles}, + \emph{TUGboat} 10 (1989) \#3, p.~401--406. + \bibitem{ilatex}Joachim Schrod, + \emph{International \LaTeX\ is ready to use}, + \emph{TUGboat} 11 (1990) \#1, p.~87--90. +\end{thebibliography} + +\end{document} diff --git a/Master/texmf-dist/doc/generic/babel/tb1401.tex b/Master/texmf-dist/doc/generic/babel/tb1401.tex new file mode 100644 index 00000000000..7d8b0903592 --- /dev/null +++ b/Master/texmf-dist/doc/generic/babel/tb1401.tex @@ -0,0 +1,266 @@ +% \iffalse meta-comment +% +% Copyright 1989-2005 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 Johannes Braams. +% +% The list of all files belonging to the Babel system is +% given in the file `manifest.bbl. See also `legal.bbl' for additional +% information. +% +% 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. +% \fi +%%% ==================================================================== +%%% @TeX-file{ +%%% author = "Johannes L. Braams", +%%% version = "1.02", +%%% date = "06 January 1997", +%%% time = "23:18:11 MET", +%%% filename = "tb1401.tex", +%%% address = "TeXniek, +%%% Kersengaarde 33 +%%% 2723 BP Zoetermeer +%%% The Netherlands", +%%% telephone = "+31 79 352 28 19", +%%% FAX = "+31 70 343 23 95", +%%% checksum = "33086 238 1209 9472", +%%% email = "babel@braams.cistron.nl (Internet)", +%%% codetable = "ISO/ASCII", +%%% keywords = "", +%%% supported = "yes", +%%% abstract = "", +%%% docstring = "The update article on babel that appeared +%%% in TUGboat Volume 14 No 1. +%%% +%%% The checksum field above contains a CRC-16 +%%% checksum as the first value, followed by the +%%% equivalent of the standard UNIX wc (word +%%% count) utility output of lines, words, and +%%% characters. This is produced by Robert +%%% Solovay's checksum utility.", +%%% } +%%% ==================================================================== +\NeedsTeXFormat{LaTeX2e} +\IfFileExists{ltugboat.cls}{% + \documentclass{ltugboat} + \def\rtitlex{TUGboat, Volume 14 (1993), No. 1} + \def\midrtitle{} + \def\PrelimDraftfooter{} + \let\TBmaketitle\maketitle + \setcounter{page}{60} + }{% + \documentclass{article} + \newcommand\address[1]{} + \newcommand\netaddress[1]{} + \newcommand\TUB{\textsl{TUGboat\/}} + \newcommand\TeXhax{\TeX hax} + \newcommand{\plain}{\texttt{plain}}} +\usepackage{shortvrb} +\MakeShortVerb{\|} +% +\newcommand{\file}[1]{\texttt{#1}} +\newcommand{\Lopt}[1]{\textsf{#1}} +\newcommand{\babel}{\textsf{babel}} +\makeatletter +% ------------------------------------------------- +% Definitions copied from doc.sty by FMi +% ------------------------------------------------- +{\obeyspaces% +\gdef\meta{\begingroup\obeyspaces% +\def {\egroup\space\hbox\bgroup\it}\m@ta}} +\def\m@ta#1{\hbox\bgroup$\langle$\it#1\/$\rangle$\egroup\endgroup} +% +{\catcode`\|=\z@ \catcode`\\=12|gdef|bslash{\}} +% +\makeatother +\newcommand{\bsl}{\protect\bslash} + + +\begin{document} +\title{An update on the \babel\ system} +\author{Johannes Braams} +\address{% + \TeX niek\\ + Kersengaarde 33\\ + 2723 BP Zoetermeer\\ + The Netherlands} +\netaddress{babel@braams.cistron.nl} +\date{06 January 1997 \\ + Version 1.02} +\maketitle + +\begin{abstract} + This article describes the changes that have been made to the + \babel\ system, since the article describing the system appeared in + \TUB\ Volume 12, number 2. This article announces the release of a + new version of the \babel\ system. +\end{abstract} + +\section{Introduction} + +Since the publication of the \babel\ system in \TUB~\cite{bab} several +changes have occurred. With the new release of \LaTeX\ -- which +appeared at the end of 1991 -- the internationalised version I\LaTeX, +prepared by Joachim Schrod~\cite{ilatex} was withdrawn. But some of +its functionality was still needed, so a modification of the \babel\ +system was necessary. + +Besides this a couple of bugs were reported and had to be fixed. The +major problem was that the language changing commands were not +`local', they contained global definitions. In the current version +these commands obey grouping correctly. + +Some macros that formerly were in language-specific files have been +moved to the core of the system, because they are being used in +several language-specific files. + +\section{Changes to the core of \babel} + +The changes to the core of the \babel\ system are the most extensive. + +\subsection*{{\tt\bsl selectlanguage}} +The \babel\ user-command |\selectlanguage| now also accepts a control +sequence as its argument. This was included to provide compatibility +for users who were used to the syntax of the original +\file{german.tex}, but wanted to switch to \babel. The escape +character is `peeled off' and the name of the control sequence is then +used as the name of the language to select. + +Another change to the |\selectlanguage| macro is that it now stores +the name of the current language in the control sequence +|\languagename|. The contents of this control sequence could be tested +in the following way: + +\begin{verbatim} + \edef\tmp{\string english} + \ifx\languagename\tmp + ... + \else + ... + \fi +\end{verbatim} + +The construction with |\string| is necessary because +|\languagename| returns the name with characters of category code +\texttt{12} (other). + +\subsection*{Saving macro definitions} + +A new way of handling macros that are temporarily \emph{re}defined was +developed by Bernd Raichle and included in the core of the \babel\ +system. Two new macros, for use in the language-specific files have +been introduced.\\ +These macros, |\babel@savevariable|\meta{register} and +|\babel@save|\meta{macro}, append code to |\originalTeX|. This code +restores the value (or meaning) of what was saved when |\originalTeX| +was executed. + +\subsection*{Special characters} + +Some of the language-specific files introduce one or more characters +that are special in some way. Such characters have to be added to +|\dospecials| (and |\@sanitize| too for \LaTeX) whenever their special +meaning is activated. But, they may have to be removed again when +another language, which doesn't use them, is in effect. + +To this end two new control sequences, that are meant to be used in +the language-specific files are introduced. They are +|\babel@add@special| and |\babel@remove@special| and perform the +necessary tasks. + +\subsection*{Additional facilities} + +A specific request from Joachim Schrod for \babel, was the possibility +to extend the definition of a control sequence on the fly. It should, +for instance, be possible that the user adds a macro of his own to the +definition of |\extrasenglish|. + +This feature is now provided by the macro\\ + |\addto{|\meta{control sequence}|}{|\meta{\TeX\ code}|}|. + It is now used throughout the +language-specific files to build the macros |\extras|\meta{lang} and +|\noextras|\meta{lang}. + +The support macros |\allowhyphens|,\\ |\set@low@box| and |\save@sf@q| +have been moved from the language-specific files to the core of the +\babel\ system. + +\subsection{The files} + +In the previous release a file called \file{latexhax.com} was +provided. This was needed to provide some macros normally defined by +\LaTeX, to \plain~\TeX\ users. The need for this file has been removed +in the current release of the \babel\ system. + +In the previous release of the system, four different files were +provided (all derived from \file{hyphen.doc} that were needed for +different combinations of versions of \TeX\ and \file{plain.tex} or +\file{lplain.tex}. This has been changed. In the current version only +two different files are derived from \file{hyphen.doc}. They are +\file{babel.switch} and \file{babel.hyphen}.\\ +The file \file{babel.switch} is needed for people who can't build a +new format or don't have \TeX\ version 3. The file \file{babel.hyphen} +should be loaded into the format by ini\TeX. It provides the macros +from \file{babel.switch}, but additionally it reads the file +\file{language.dat}, which specifies the languages for which +hyphenation patterns should be loaded. + +In the previous release the file \file{babel.com} contained +redefinitions for a lot of \LaTeX\ macros to replace texts with +control sequences. This has been removed, because it is no longer +necessary for releases of \LaTeX\ dated december 1991 or later. Those +who still have an older release of \LaTeX\ can produce a special +version of \file{babel.com} by including the docstrip option +\meta{names} when stripping the file \file{babel.doc}. + +With the release of the new version of Frank Mittelbach's \texttt{doc} +package the stripped files are no longer distributed. The distribution +of babel now includes a file \file{install.babel} with which you can +produce them (give the command \file{tex install.babel}). + +\section{Changes to the language specific files} + +Bernd Raichle has invented a solution for things like |\char"45| +when the |"| is active. His solution (from german 2.3e) has been +included in germanb and is copied for other language specific files +that have an active |"|. + +A few terms have been added to the |\captions|\meta{...} macros, +again following \file{german.tex}. These terms are |\prefacename|, +|\seename| and |\seealsoname|. I don't have the correct +translations for all languages yet, but that will be repaired as soon +as someone provides them to me. + +For the dutch language the behaviour of the active double quote has +been slightly modified. It has been noted that there is a difference +between |"e|, where a `trema' should be produced and |\"u|, where we +should get an `umlaut'. The difference between the two is that the +`trema' should disappear at a hyphenation point, whereas the `umlaut' +should not. + +\begin{thebibliography}{9} + \bibitem{bab} Johannes Braams, + \emph{Babel, a multilingual style-option system for use with + \LaTeX's standard document styles}, + \emph{TUGboat} 12 (1991) \#2, p.~291--301. + \bibitem{ilatex}Joachim Schrod, + \emph{International \LaTeX\ is ready to use}, + \emph{TUGboat} 11 (1990) \#1, p.~87--90. +\end{thebibliography} +\end{document} diff --git a/Master/texmf-dist/doc/generic/babel/tb1604.tex b/Master/texmf-dist/doc/generic/babel/tb1604.tex new file mode 100644 index 00000000000..0538716f82a --- /dev/null +++ b/Master/texmf-dist/doc/generic/babel/tb1604.tex @@ -0,0 +1,448 @@ +% \iffalse meta-comment +% +% Copyright 1989-2005 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 Johannes Braams. +% +% The list of all files belonging to the Babel system is +% given in the file `manifest.bbl. See also `legal.bbl' for additional +% information. +% +% 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. +% \fi +%%% ==================================================================== +%%% @TeX-file{ +%%% author = "Johannes", +%%% version = "1.0", +%%% date = "05 December 1995", +%%% time = "22:43:54 MET", +%%% filename = "tbstatus.tex", +%%% address = "TeXniek, +%%% Kersengaarde 33 +%%% 2723 BP Zoetermeer +%%% The Netherlands", +%%% telephone = "+31 79 352 28 19", +%%% FAX = "+31 70 343 23 95", +%%% checksum = "", +%%% email = "babel@braams.cistron.nl (Internet)", +%%% codetable = "ISO/ASCII", +%%% keywords = "", +%%% supported = "yes", +%%% abstract = "", +%%% docstring = "This article is derived from my +%%% presentation at the EuroTeX'95 conference +%%% and will appear in a future issue of +%%% TuGboat. +%%% +%%% The checksum field above contains a CRC-16 +%%% checksum as the first value, followed by the +%%% equivalent of the standard UNIX wc (word +%%% count) utility output of lines, words, and +%%% characters. This is produced by Robert +%%% Solovay's checksum utility.", +%%% } +%%% ==================================================================== +\NeedsTeXFormat{LaTeX2e} +\IfFileExists{ltugboat.cls}{% + \documentclass{ltugboat} + \def\rtitlex{TUGboat, Volume 16 (1995), No. 4} + %\def\midrtitle{} + %\def\PrelimDraftfooter{} + %\let\TBmaketitle\maketitle + %\SelfDocumenting + \setcounter{page}{1} + }{% + \documentclass{article} + \newcommand\address[1]{} + \newcommand\netaddress[1]{} + \newcommand\TUB{\textsl{TUGboat\/}} + \newcommand\TeXhax{\TeX hax}} +\usepackage{shortvrb} +\MakeShortVerb{\|} + +\newcommand\figrule{\kern3pt\hrule\kern3pt} +\newcommand*{\file}[1]{\texttt{#1}} +\newcommand*{\cls}[1]{\texttt{#1}} +\newcommand*{\pkg}[1]{\texttt{#1}} +\newcommand*{\Lenv}[1]{\textsf{#1}} +\newcommand*{\opt}[1]{\textsf{#1}} +\newcommand*{\meta}[1]{\mbox{$\langle$\it #1\/$\rangle$}} +\newcommand*\babel{\textsf{babel}} +\newcommand*\bs{\char'134} +\let\osn\oldstylenums + +\begin{document} + +\title{The status of \babel} +\author{Johannes L. Braams} +\address{% + \TeX niek\\ + Kersengaarde 33\\ + 2723 BP Zoetermeer\\ + The Netherlands} +\netaddress{babel@braams.cistron.nl} +\date{september 1995} +\maketitle + +\begin{abstract} + In this article I will give an overview of what has happened to + \babel\ lately. First I will briefly describe the history of \babel; + then I will introduce the concept of `shorthands'. New ways of + changing the `language' have been introduced and \babel\ can now + easily be adapted for local needs. Finally I will discuss some + compatibility issues. +\end{abstract} + +\section{A brief history of \babel} + +The first ideas of developing a set of macros to support typesetting +documents with \TeX\ in languages other than English developed around +the time of the Euro\TeX\ conference in Karls\-ruhe (\osn{1989}). Back +then I had created support for typesetting in Dutch by stealing +\file{german.tex} (by Hubert Partl c.s.) and modifying it for Dutch +conventions. This worked, but I was not completely satisfied as I hate +the duplication of code. Soon after that I found that more `copies' of +\file{german.tex} existed to support other languages. This led me to +the idea of creating a package that combined these kind of language +support packages. It would have to consist of at least two `layers': +all the code the various copies of \file{german.tex} had in common in +one place, loaded only once by \TeX, and a set of files with the code +needed to support language specific needs. During the Karlsruhe +conference the name `\babel' came up in discussions I had. It seemed +an appropriate name and I sticked to it. + +\begin{table}[hbt] + \begin{center} + \begin{tabular}{l} + \hline + First ideas at Euro\protect\TeX'89 Karlsruhe\\ + First published in TUGboat 12--2\\ + Update article in TUGboat 14--1\\ + Presentation of new release at Euro\protect\TeX'95\\ + \hline + \end{tabular} + \caption{A brief history of \babel} + \end{center} +\end{table} + +After the conference I started to work on ``\babel, a multilingual +style-option system for use with \LaTeX' standard document styles''. +The first release with support for about half a dozen languages +appeared in the first half of \osn{1990}. In TUGboat volume \osn{12} +number \osn{2} an article appeared describing \babel. Soon thereafter +people started contributing translations for the `standard terms' for +languages not yet present in \babel. The next big update appeared in +\osn{1992}, accompanied by an article in TUGboat volume \osn{14} +number \osn{1}. The main new features were that an interface was added +to `push' and `pop' macro definitions and values of registers. Also +some code was moved from language files to the core of \babel. In +\osn{1994} some changes were needed to get \babel\ to work with +\LaTeXe. As it turned out a lot of problems were still unsolved, +amongst which the incompatibility between \babel\ and the use of +\textsc{T}\osn{1} encoded fonts was most important. + +\noindent Therefore \babel\ version \osn{3}.\osn{5} has appeared. +It's main features are: + +\begin{itemize} +\item complete rewrite of the way active characters are dealt with; +\item new ways to switch the language; +\item A language switch is also written to the \file{.aux} file; +\item possibility to `configure' the language specific files; +\item extended syntax of \file{language.dat}; +\item compatibility with both the \pkg{inputenc} and\\ + \pkg{fontenc} packages; +\item new languages (breton, estonian, irish, scottish, lower and + upper sorbian). +\end{itemize} + +\noindent These changes are described in the remainder of this article. + +\section{Shorthands and active characters} + +During \babel's lifetime the number of languages for which one or more +characters were made active has grown. Until \babel\ release +\osn{3}.\osn{4} this needed a lot of duplication of code for each +extra active character. A situation with which I obviously was not +very happy as I hate the duplication of code. Another problematic +aspect of the way \babel\ dealt with active characters was the way +\babel\ made it possible to still use them in the arguments of cross +referencing commands. \textsf{Babel} did this with a trick that +involves the use of |\meaning|. This resulted in the fact that the +argument of |\label| was no longer expanded by \TeX. + +Because of these problems I set out to find a different implementation +of active characters. A starting point was that a character that is +made active should remain active for the rest of the document; only +it's definition should change. During the development of this new +implementation it was suggested in discussions I had within the +\LaTeX3 team to devise a way to have `different kinds' of active +characters. Out of this discussion came the current `shorthands'. + +\begin{quote} + \textsl{A shorthand is a sequence of one or two characters that + expands to arbitrary \TeX\ code.} +\end{quote} + +These shorthands are implemented in such a way that there are three +levels of shorthands: + +\begin{itemize} +\item user level +\item language level +\item system level +\end{itemize} + +\noindent Shorthands can be used for different kinds of things: +\begin{itemize} +\item the character \verb=~= is redefined by \babel\ as a one + character, system level shorthand; +\item In some languages shorthands such as \verb="a= are defined to be + able to hyphenate the word; +\item In some languages shorthands such as \verb=!= are used to insert + the right amount of white space. +\end{itemize} + +When you want to use or define shorthands you should keep the +following in mind: +\begin{itemize} +\item User level takes precedence over language level; +\item Language level takes precedence over system level; +\item One character shorthands take precedence over two character + shorthands; +\item Shorthands are written unexpanded to \file{.aux} files. +\end{itemize} + +\noindent In table~\ref{tab:sh-ov} an overview is given of the +various shorthand characters that are used for different languages. + +\begin{table}[ht] + \begin{center} + \begin{tabular}{ll} + \hline + \texttt{\char'176} & system, catalan, estonian, galician, spanish \\ + \texttt{:} & breton, francais, turkish \\ + \texttt{;} & breton, francais \\ + \texttt{!} & breton, francais, turkish \\ + \texttt{?} & breton, francais \\ + \texttt{"} & catalan, danish, dutch, estonian, finnish\\ + & galician, german, polish, portuguese, slovene\\ + & spanish, upper~sorbian\\ + \texttt{`} & catalan (optional)\\ + \texttt{'} & catalan, galician, spanish (optional)\\ + \texttt{\char'136} & esperanto\\ + \texttt{=} & turkish \\ + \hline + \end{tabular} + \caption{Overview of shorthands}\label{tab:sh-ov} + \end{center} +\end{table} + +Note that the acute and grave characters are only used as shorthand +characters when the options \opt{activeacute} and \opt{activegrave} +are used. + +On the user level three additional commands are available to deal with +shorthands: +\begin{description} +\item[\texttt{\bs useshorthands}] This command takes one argument, the + character that should become a shorthand character. +\item[\texttt{\bs defineshorthand}] This command takes two arguments, + the first argument being the shorthand character sequence, the + second argument being the code the shorthand should expand to. +\item[\texttt{\bs languageshorthands}] This last command (which takes + one argument, the name of a language) can be used to switch to the + shorthands of another language, \emph{not} switching other language + facilities. Of course this only works if both languages were + specified as an option when loading the package \babel. +\end{description} + +On the level of the language definition files four new commands are +introduced to interface with the shorthand code. +\begin{description} +\item[\texttt{\bs initiate@active@char}] This command is used to tell + \LaTeX\ that the character in its argument is going to be used as a + shorthand character. It makes the character active, but lets it + expand to its non-active self. +\item[\texttt{\bs bbl@activate}] This can be used to switch + the expansion of an active character to its active code. +\item[\texttt{\bs bbl@deactivate}] This command resets the expansion + of an active character to expand to its non-active self. +\item[\texttt{\bs declare@shorthand}] This command is the internal + command for (and also used by) |\defineshorthand|; it has + \emph{three} arguments: the first argument is the name of the + language for which to define the shorthands, the other two are the + same as for |\defineshorthand|. +\end{description} + +One of the goals of the introduction of shorthands was to reduce the +amount of code needed in the language definition files to support +active characters. This goal has been reached; when a language needs +the double quote character (\texttt{"}) to be active all one has to +put into the language definition file are code fragments such as shown +in figure~\ref{fig:dq}. + +\begin{figure}[ht] + \figrule +\begin{verbatim} +\initiate@active@char{"} +\addto\extrasdutch{% + \languageshorthands{dutch}% + \bbl@activate{"}} +... +\declare@shorthand{dutch}{"`}{% + \textormath{\quotedblbase{}}% + {\mbox{\quotedblbase}}} +... +\end{verbatim} + \figrule + \caption{Example of defining a shorthand}\label{fig:dq} +\end{figure} + +Apart from removing a lot of code from language definition files by +introducing shorthands, some other code has been moved to +\file{babel.def} as well. In some language definition files it was +necessary to provide access to glyphs that are not normally easily +available (such as the |\quotedblbase| in the example in +figure~\ref{fig:dq}. Some of these glyphs have to be `constructed' for +\textsc{ot}\osn{1} encoding while they are present in +\textsc{t}\osn{1} encoded fonts. Having all such (encoding dependent) +code together in one place has the advantage these glyphs are the same +for all the language definition files of \babel; also maintenance is +easier this way. + +\section{Switching the language} + +Until release \osn{3}.\osn{5} \babel\ only had \emph{one} command to +switch between languages: |\selectlanguage|. It takes the name of the +language to switch to as an argument; the command is used as a +declaration and always switches everything\footnote{that means the + hyphenation pattern, the \texttt{\bs lefthyphenmin} and \texttt{\bs + righthyphenmin} parameters, the translations of the words, the + date and the specials}. Two new ways to switch to another language +have now been introduced. + +\begin{description} +\item[\texttt{\bs selectlanguage}] This command was available in + \babel\ from the start. +\item[\texttt{\bs foreignlanguage}] This new command is meant to be + used when a short piece of text (such as a quote) comes from another + language. This text should not be longer than \emph{one} paragraph. + For the text the hyphenation patterns and the specials are switched. + The command has two arguments: the name of the language and the text + from that language. +\item[environment `otherlanguage'] This new environment switches the + same aspects as the command |\selectlanguage| does. The difference + is that the switches are local to the environment whereas one either + has to use |\selectlanguage| in a group to get the same effect or + one has to issue multiple |\selectlanguage| commands. Also the + environment is one of the things needed to enable the development of + language definition files that support right-to-left typesetting. +\end{description} + +An aspect of some multilingual documents might be that they have +section titles or figure captions in different languages. For this to +work properly \babel\ now writes some information on the \file{.aux} +file when a language switch from either |\selectlanguage| or the +\Lenv{otherlanguage} environment occurs. \textsf{Babel} nows about +the \file{.toc}, \file{.lof} and \file{.lot} files; if you have added +an extra table of contents you should be aware of this. + +\section{Adapting \babel\ for local usage} + +In the past people have had to find ways to adapt \babel\ to document +classes that have been developed locally (implementing house style for +instance). Some have found ways to that without changing any of the +babel files, others have modified language definition files and have +found themselves having to make these changes each time a new release +of \babel\ is made available\footnote{which doesn't happen too often + \texttt{;-)}.}. It has been suggested to provide an easier way of +doing this. Therefore I have copied the concept of configuration files +from \LaTeXe\ and introduced language configuration files. For each +language definition file that is loaded \LaTeX\ will try to find a +configuration file. Such files have the same name as the language +definition file; except for their extension which has to be +\file{.cfg}. + +\section{Loading hyphenation patterns} + +An important change to the core of \babel\ is that the syntax of +\file{language.dat} has been extended. This was suggested by Bernard +Gaulle, author of the package \pkg{french}. His package supports an +enhanced version of \file{language.dat} in which one can optionally +indicate that a file with a list of hyphenation excpetions has to be +loaded. It is also possible to have more than one name for the same +hyphenation pattern register. + +\begin{figure}[ht] + \figrule +\begin{verbatim} +% File : language.dat +% Purpose : specify which hypenation +% patterns to load while running +% iniTeX +=american +english hyphen.english exceptions.english +=USenglish +french fr8hyph.tex +english ukhyphen.tex +=UKenglish +=british +dutch hyphen.dutch +german hyphen.german +\end{verbatim} + \figrule + \caption{Example of \file{language.dat}}\label{fig:l.d} +\end{figure} + +As you can see in the example of \file{language.dat} in +figure~\ref{fig:l.d}, an equals sign ($=$) on the beginning of a line +now has a significant meaning. It tells \LaTeX\ that the name which +follows the equals sign is to be an alternate name for the hyphenation +patterns that were loaded last. As you probably expect, there is one +exception to this rule: when the first (non-comment) line starts with +an equals sign it will be an alternate name for the \emph{next} +hyphenation patterns that will be loaded. Hence, in the example the +hyphenation patterns stored in the file \file{hyphen.english} will be +known to \TeX\ as: `american', `english' and `USenglish'. You can also +see in figuree~\ref{fig:l.d} that for `english' an extra file is +specified. It will be loaded after \file{hyphen.english} and should +contain some hyphenation exceptions. + +\section{Compatibility with other formats} + +This release of \babel\ has been tested with \LaTeXe; with and +without either of the packages \pkg{inputenc} or \pkg{fontenc}. There +should no longer be any problems using one (or both) of these packages +together with \babel. + +\noindent This release has also been tested with \textsc{Plain}~\TeX, it should +not provide any problems when used with that format. Therefore +\babel~version \osn{3}.\osn{5} should not pose any problems when used +with any format which is based on \textsc{Plain}~\TeX; this has +\emph{not} been tested by me though. Some provisions are made to make +\babel~\osn{3}.\osn{5} work with \LaTeX$\:$\osn{2}.\osn{09}; but not +all features may work as expected as I haven't tested this fully. + +Please note that although it was necessary to copy parts of +\pkg{inputenc} and \pkg{fontenc} this does not mean that you get +\textsc{t}\osn{1} support in \textsc{Plain}~\TeX, simply by adding +\babel. To acheive that much more work is needed. + +\end{document} diff --git a/Master/texmf-dist/doc/generic/babel/todo.txt b/Master/texmf-dist/doc/generic/babel/todo.txt new file mode 100644 index 00000000000..30f0ddc4fb8 --- /dev/null +++ b/Master/texmf-dist/doc/generic/babel/todo.txt @@ -0,0 +1,37 @@ +Things that still need to be done (2001/02/22) : +================================================ + +- Vladimir Volovich suggested to have a babel option mechanism. + This may be implemented using something like: + \languageoption[<option>,<option>,...]{<language>} + (See PR 2814) + +- The language attribute mechanism is not completely mature yet. It is + currently not possible to switch attibutes on and off in the middle + of a document. This restriction might be lifted in a future release. + +- I started work on support for hyphenation patterns depending on + the encoding. So far this only works when loading the pattern file. + The encoding information isn't then subsequently stored as an + attribute for that hyphenation register. + +- An interface is needed to be able to change the definition of + things like \figurename and keep the change over language + switches. (PR3291) + +- Jean-François Mertens <jfm@core.ucl.ac.be> has developped a fully + expandable way of `sanitizing' active characters. It needs thorough + testing by a larger number of users before it could be included in + the ditribution. + +- A suggestion has been made by Ole Laursen <olau@hardworking.dk> to + make the comma active to be used as decimal delimiter instead of the + dot. This could be provided as an option as more European languages + need the comma for that purpose. + +- I have a contribution wich provides support for typesetting the + Serbian language in the Cyrillic alphabet; this is not yet + integrated. + +- I have a contribution with support for the Thai language which also + needs attntion to integrate it with babel
\ No newline at end of file diff --git a/Master/texmf-dist/doc/generic/babel/usage.tex b/Master/texmf-dist/doc/generic/babel/usage.tex new file mode 100644 index 00000000000..1c3573bdb0f --- /dev/null +++ b/Master/texmf-dist/doc/generic/babel/usage.tex @@ -0,0 +1,243 @@ +% \iffalse meta-comment +% +% Copyright 1989-2005 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 Johannes Braams. +% +% The list of all files belonging to the Babel system is +% given in the file `manifest.bbl. See also `legal.bbl' for additional +% information. +% +% 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. +% \fi +\documentclass[11pt]{article} +\usepackage[american,greek]{babel} +\languageattribute{greek}{polutoniko} +\usepackage{athnum,grmath} +\newcommand{\sg}{\selectlanguage{greek}} +\newcommand{\sa}{\selectlanguage{american}} +\begin{document} +\show\extrasgreek +%\show\extraspolutonikogreek +\selectlanguage{american} + +\title{Writing Greek with the \ttfamily greek\rmfamily\ option of the +\ttfamily babel\rmfamily\ package} +\author{Apostolos Syropoulos\\ + 366, 28th October Str.\\ + GR-671 00 Xanthi, GREECE\\ + e-mail: \texttt{apostolo@platon.ee.duth.gr}} +\date{October 15, 1997} +\maketitle +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\section{Overview} +The \texttt{greek} option of the \texttt{babel} package is an attempt to +make it possible for someone to write Greek text with \LaTeX. The current +version of the \texttt{greek} option supports the \sg polutonik'o \sa\ +accentual system of the Greek language. +Moreover, there is now support for Greek numerals. One can produce easily +valid Greek numerals both in uppercase and lowercase forms, e.g, +\textgreek{\greeknumeral{1997}}\ and \textgreek{\Greeknumeral{1997}}. The +labels in second and fourth level enumerations are lowercase +and uppercase Greek numerals correspondingly. +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\section{Typing Greek Text} +\TeX\ understands only the basic ASCII characters, so it is not possible +to enter directly Greek letters. Instead, someone enters Latin letters +which are mapped to their Greek ``counterparts'' by \TeX. The following +table shows the transliteration employed: +\begin{center} +\begin{tabular}{|lllllllllllll|}\hline +\textgreek{a}& +\textgreek{b}& +\textgreek{g}& +\textgreek{d}& +\textgreek{e}& +\textgreek{z}& +\textgreek{h}& +\textgreek{j}& +\textgreek{i}& +\textgreek{k}& +\textgreek{l}& +\textgreek{m}& +\textgreek{n}\\ +a& b& g& d& e& z& h& j& i& k& l& m& n\\ +\hline +\textgreek{x}& +\textgreek{o}& +\textgreek{p}& +\textgreek{r}& +\textgreek{sv}& +\textgreek{t}& +\textgreek{u}& +\textgreek{f}& +\textgreek{q}& +\textgreek{y}& +\textgreek{w}& +\textgreek{c}& \hbox{ } \\ +x& o& p& r& s& +t& u& f& q& y& w& c& \hbox{ }\\ \hline +\end{tabular} +\end{center} +Please, note that in order to produce the letter \textgreek{sv} in isolation +on has to type \texttt{sv}. This feature is due to the strong ligature +that \TeX\ employs. +In the ``modern'' \textgreek{monotonik'o} accentual system only one accent is +used---\textgreek{oxe'ia} (acute). In the traditional \textgreek{polutonik'o} +accentual system we +need more accents and breathing signs. We can produce an accented letter by +prefixing the letter with he symbol that denotes the accent, e.g., +\texttt{>a'erac} produces the word \sg >a'erac.\sa\footnote{For the +technically inclined reader, we must say that \TeX\ uses the ligature table of +the font in order to determine the character that corresponds to the +input character sequence.} Here are the symbols that are recognized: + +\begin{center} +\begin{tabular}{cccc}\hline +Accent & Symbol & Example & Output\\ \hline +acute & \texttt{'} & \texttt{g'ata} & \textgreek{g'ata}\\ +grave & \texttt{`} & \texttt{dad`i} & \textgreek{dad`i}\\ +circumflex & \verb+~+ & \verb+ful~hc+ & \sg\textgreek{ful~hc}\sa\\ +rough breathing & \verb+<+ & \verb+<'otan+ & \sg\textgreek{<'otan}\sa\\ +smooth breathing & \verb+>+ & \verb+>'aneu+ & \sg\textgreek{>'aneu}\sa\\ +subscript & \texttt{|} & \verb+>anate'ilh|+ & \sg\textgreek{>anate'ilh|}\\ +dieresis & \texttt{"}& \texttt{qa"ide'uh|c} & \sg\textgreek{qa"ide'uh|c}\\ +\hline +\end{tabular} +\end{center} +Note that the subscript symbol is placed \textbf{after} the letter. +The last thing someone must know in order to be able to write normal Greek +text is the punctuation marks used in the language: +\begin{center} +\begin{tabular}{ccc}\hline +Punctuation Sign & Symbol & Output\\ \hline +period & \texttt{.} & \sg\textgreek{.}\sa\\ +semicolon & \texttt{;} & \sg\textgreek{;}\sa\\ +exclamation mark & \texttt{!} & \sg\textgreek{!}\sa\\ +comma & \texttt{,} & \sg\textgreek{,}\sa\\ +colon & \texttt{:} & \sg\textgreek{:}\sa\\ +question mark & \texttt{?} & \sg\textgreek{?}\sa\\ +left apostrophe & \texttt{``} & \sg\textgreek{``}\sa\\ +right apostrophe & \texttt{''} & \sg\textgreek{''}\sa\\ +left quotation mark & \texttt{((} & \sg\textgreek{))}\sa\\ +right quotation mark & \texttt{))} & \sg\textgreek{))}\sa\\ \hline +\end{tabular} +\end{center} +Using these conventions it is a straightforward exercise to write Greek +\textgreek{polutoniko} text. For example the following excerpt from +\textgreek{D'uskoloc} of \textgreek{M'enandroc} +\sg +\begin{quote} +T'i f'hic? <Id`wn >enj'ede pa~id'' >eleuj'eran\\ +t`ac plhs'ion N'umfac stefano~usan, S'wstrate,\\ +>er~wn 'ap~hljec e>uj'uc? +\end{quote} +\sa can be produced by the following \LaTeX\ code: +\begin{center} +\begin{tabular}{l} +\verb+T'i f'hic? <Id`wn >enj'ede pa~id'' >eleuj'eran+\\ +\verb+t`ac plhs'ion N'umfac stefano~usan, S'wstrate,+\\ +\verb+>er~wn 'ap~hljec e>uj'uc?+ +\end{tabular} +\end{center} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\section{Producing Greek Text} +Once the Greek language is selected with the command +\begin{center} +\verb+\selectlanguage{greek}+ +\end{center} +whatever we type will be typeset with the Greek fonts. The command +\verb+\textlatin+ can be used for short passages in some language that +uses the Latin alphabet, while the the command \verb+\latintext+ changes +the base fonts to the ones used by languages that use the Latin alphabet. +However, all words will be hyphenated by following the Greek hyphenation +rules! Similar commands are available once someone has selected some +other language. The commands \verb+\textgreek+ and \verb+\greektext+ +behave exactly like their ``latin'' counterparts. For example, the +word \textgreek{M'imhc} has been produced with the command +\verb+\textgreek{M'imhc}+. Please note that certain symbols cannot have +their expected result for Greek text, unless someone has selected the Greek +language, e.g., \verb+~+ is such a symbol. + +As we have mentioned above this version of the \texttt{greek} option of the +\texttt{babel} package supports the use of Greek numerals. The commands +\verb+\greeknumeral+ and \verb+\Greeknumeral+ produce the lowercase and +the uppercase Greek numeral, e.g., +\begin{center} +\begin{tabular}{cc}\hline +Command & Output\\ \hline +\verb+\Greeknumeral{9999}+ & \sg\textgreek{\Greeknumeral{9999}}\\ +\verb+\greeknumeral{9999}+ & \sg\textgreek{\greeknumeral{9999}}\\ +\hline +\end{tabular} +\end{center} +In order to correctly typeset the greek numerals the greek option file +provides the following commands: +\begin{center} +\begin{tabular}{cc}\hline +Command & Output\\ \hline +\verb+\qoppa+ & \textgreek{\qoppa}\\ +\verb+\sampi+ & \textgreek{\sampi}\\ +\verb+\stigma+ & \textgreek{\stigma}\\ +\hline +\end{tabular} +\end{center} + +In traditional Greek typography the first paragraph after a header is +always indented, contrary to the habit of, say, American typography. This +effect can be achieved by using the package \verb+indentfirst+. + +Additional greek symbols are available: +\begin{center} +\begin{tabular}{cc}\hline +Command & Output\\ \hline +\verb+\Digamma+ & \sg\textgreek{\Digamma}\\ +\verb+\ddigamma+ & \sg\textgreek{\ddigamma}\\ +%\verb+\tao+ & \sg\textgreek{\tao}\\ +%\verb+\Qoppa+ & \sg\textgreek{\Qoppa}\\ +%\verb|\VarQoppa| & \sg\textgreek{\VarQoppa}\\ +%\verb+\varqoppa+ & \sg\textgreek{\varqoppa}\\ +%\verb+\Sampi+ & \sg\textgreek{\Sampi}\\ +%\verb|\Stigma| & \sg\textgreek{\Stigma}\\ +\verb|\euro| & \sg\textgreek{\euro}\\ +\verb|\permill| & \sg\textgreek{\permill}\\ +\hline +\end{tabular} +\end{center} + +The package \verb|athnum| provides the command \verb|\athnum|, with which +one can produce the so called \textit{Athenian numerals}: +\begin{center} +\begin{tabular}{cc}\hline +Command & Output\\ \hline +\verb|\athnum{1997}| & \sg\textgreek{\athnum{1997}}\\ +\hline +\end{tabular} +\end{center} + +The package \verb|grmath| renames the basic log-like functions with their +greek counterparts: +\begin{center} +\begin{tabular}{cc}\hline +Command & Output\\ \hline +\verb|$\sin^{2}x+\cos^{2}x=1$| & $\sin^{2}x+\cos^{2}y=1$\\ +\hline +\end{tabular} +\end{center} +\end{document} diff --git a/Master/texmf-dist/doc/generic/babel/user.pdf b/Master/texmf-dist/doc/generic/babel/user.pdf Binary files differnew file mode 100644 index 00000000000..0aec4a0e96d --- /dev/null +++ b/Master/texmf-dist/doc/generic/babel/user.pdf |