summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/babel-contrib/latvian/latvian.dtx
diff options
context:
space:
mode:
Diffstat (limited to 'macros/latex/contrib/babel-contrib/latvian/latvian.dtx')
-rw-r--r--macros/latex/contrib/babel-contrib/latvian/latvian.dtx459
1 files changed, 459 insertions, 0 deletions
diff --git a/macros/latex/contrib/babel-contrib/latvian/latvian.dtx b/macros/latex/contrib/babel-contrib/latvian/latvian.dtx
new file mode 100644
index 0000000000..82c44e2980
--- /dev/null
+++ b/macros/latex/contrib/babel-contrib/latvian/latvian.dtx
@@ -0,0 +1,459 @@
+% \iffalse meta-comment
+%
+% Copyright 1999 - 2000 Andris Lasis, 2014-2018 Javier Bezos and any
+% individual authors listed elsewhere in this file. All rights
+% reserved.
+%
+% This file is part of the Babel system.
+% --------------------------------------
+%
+% It may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License, either version 1.3
+% of this license or (at your option) any later version.
+% The latest version of this license is in
+% http://www.latex-project.org/lppl.txt
+% and version 1.3 or later is part of all distributions of LaTeX
+% version 2003/12/01 or later.
+%
+% This work has the LPPL maintenance status "maintained".
+%
+% The Current Maintainer of this work is Javier Bezos.
+%
+% This works is heavily based on the previous work by:
+%
+% Copyright (C) 1999 - 2000
+% by Andris Lasis, Faculty of Physics and Mathematics,
+% University of Latvia
+%
+% 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
+% \iffalse
+% Tell the \LaTeX\ system who we are and write an entry on the
+% transcript.
+%<*dtx>
+\ProvidesFile{latvian.dtx}
+%</dtx>
+%<code>\ProvidesLanguage{latvian}
+% \fi
+% \ProvidesLanguage{latvian}
+ [2018/02/19 v2.0b Latvian support from the babel system]
+% \iffalse
+%<*filedriver>
+\documentclass{ltxdoc}
+\usepackage[utf8]{inputenc}
+\usepackage[L7x,T1]{fontenc}
+\title{The Latvian style for babel}
+\author{Andris Lasis, Javier Bezos}
+\newcommand*\babel{\textsf{babel}}
+\DeclareTextCompositeCommand{\=}{T1}{i}{\={\i}}
+\begin{document}
+ \maketitle
+ \DocInput{latvian.dtx}
+\end{document}
+%</filedriver>
+%\fi
+%
+% \section{The Latvian Language}
+%
+% The file \textsf{latvian.ldf}\footnote{The file described in this
+% section has version number 2.0a and was last revised on 2018/02/19.}
+% defines the language definition macros for the Latvian language. It
+% is heavily based on the work by Andris Lasis, and this file just
+% cleans the code up and adapts it to babel 3.9.
+%
+% Since the |T1| encoding doesn't contain all the characters required
+% for Latvian, you should use |L7x| instead (note the lowercase
+% |x|). The |dfu| file (ie, |utf8| for \textsf{fontenc}) for this
+% encoding is included in Lithuanian. Unfortunately, not many fonts
+% come in this encoding. Of course, you can use either \textsf{luatex} or
+% \textsf{xetex}, too, because Unicode strings are also defined.
+%
+% Actually, you can use the |T1| encoding, but hyphenation will not be
+% correct, and oddly it doesn't work with \textsf{inputenc} and |utf8|
+% (future releases will fix this issue), except if you request the
+% |L7x| encoding before |T1| (this is, of course, just a trick, which
+% may not work; note some fonts render macron-i with the dot, because
+% |l7xenc.def| defines it as |\=i|). If |T1| is used, you must load
+% \textsf{fontenc} before \textsf{babel} and set the modifier
+% |t1composite| (because it redefines some `composite commands' which
+% may affect other languages). A complete example is:
+%\begin{verbatim}
+%\documentclass{article}
+%\usepackage[utf8]{inputenc}
+%\usepackage[L7x,T1]{fontenc}
+%\usepackage{combelow} % Optional, see below
+%\usepackage[latvian.t1composite]{babel}
+%\usepackage{fourier}
+%
+%\begin{document}
+%Aa, Āā, Bb, Cc, Čč, Dd, Ee, Ēē, Ff, Gg, Ģģ, Hh, Ii, Īī, Jj, Kk, Ķķ,
+%Ll, Ļļ, Mm, Nn, Ņņ, Oo, Pp, Rr, Ss, Šš, Tt, Uu, Ūū, Vv, Zz, Žž
+%\end{document}
+%\end{verbatim}
+% By loading also the package \textsf{combelow} you get much better
+% results (it is detected automatically), but you should use |T1| only
+% as a last resort and only for small chuncks of Latvian text. |OT1|
+% is not directly supported.
+%
+% There are two commands for the date: |\datumaa| (locative) and
+% |\datums| (nominative); |\today| is defined as |\datumaa|, but you
+% can change it with |\renewcommand{\latviantoday}{\datums}|. By
+% default \textit{g.} is used, but you can change it with, say,
+% |\renewcommand\latviangada{gada}|.
+%
+% |\alph| and |\Alph| exclude the letter \textit{q}.
+%
+% \StopEventually{}
+%
+% \subsection*{The code}
+%
+% \begin{macrocode}
+%<*code>
+\LdfInit{latvian}\captionslatvian
+\ifx\l@latvian\@undefined
+ \@nopatterns{Latvian}
+ \adddialect\l@latvian0
+\fi
+% \end{macrocode}
+%
+% Captions and date.
+%
+% \begin{macrocode}
+\StartBabelCommands*{latvian}{captions}
+ [unicode, charset=utf8, fontenc=EU1 EU2]
+
+\SetString\prefacename{Priekšvārds}
+\SetString\refname{Literatūra}
+\SetString\abstractname{Anotācija}
+\SetString\bibname{Bibliogrāfija}
+\SetString\chaptername{nodaļa}
+\SetString\listfigurename{Attēlu rādītājs}
+\SetString\listtablename{Tabulu rādītājs}
+\SetString\indexname{Priekšmetu rādītājs}
+\SetString\figurename{zīm.\@}
+\SetString\partname{daļa}
+\SetString\enclname{Pielikumā}
+\SetString\alsoname{skat.\@ arī}
+
+\StartBabelCommands*{latvian}{date}
+ [unicode, charset=utf8, fontenc=EU1 EU2]
+
+\SetStringLoop{month#1name}{janvārī,februārī,martā,aprīlī,maijā,%
+ jūnijā,jūlijā,augustā,septembrī,oktobrī,novembrī,decembrī}
+\SetStringLoop{nommonth#1name}{janvāris,februāris,marts,aprīlis,maijs,%
+ jūnijs,jūlijs,augusts,septembris,oktobris,novembris,decembris}
+
+\StartBabelCommands*{latvian}{captions}
+
+\SetString\prefacename{Priek\v sv\=ards}%
+\SetString\refname{Literat\=ura}
+\SetString\abstractname{Anot\=acija}
+\SetString\bibname{Bibliogr\=afija}
+\SetString\chaptername{noda\c la}
+\SetString\appendixname{Pielikums}
+\SetString\contentsname{Saturs}
+\SetString\listfigurename{Att\=elu r\=ad\={\i}t\=ajs}
+\SetString\listtablename{Tabulu r\=ad\={\i}t\=ajs}
+\SetString\indexname{Priek\v smetu r\=ad\={\i}t\=ajs}
+\SetString\figurename{z\={\i}m.\@}
+\SetString\tablename{tabula}
+\SetString\partname{da\c la}
+\SetString\enclname{Pielikum\=a}
+\SetString\ccname{Kopija(s)}
+\SetString\headtoname{}
+\SetString\pagename{lpp.\@}
+\SetString\seename{skat.\@}
+\SetString\alsoname{skat.\@ ar\={\i}}
+
+\StartBabelCommands*{latvian}{date}
+
+\SetStringLoop{month#1name}{janv\=ar\={\i},febru\=ar\={\i},mart\=a,%
+ apr\={\i}l\={\i},maij\=a,j\=unij\=a,j\=ulij\=a,august\=a,%
+ septembr\={\i},oktobr\={\i},novembr\={\i},decembr\={\i}}
+\SetStringLoop{nommonth#1name}{janv\=aris,febru\=aris,marts,%
+ apr\={\i}lis,maijs,j\=unijs,j\=ulijs,augusts,septembris,%
+ oktobris,novembris,decembris}
+
+\SetString\datumaa{\number\year.~\latviangada\ \number\day.~%
+ \csname month\romannumeral\month name\endcsname}
+\SetString\datums{\number\year.~\latviangada\ \number\day.~%
+ \csname nommonth\romannumeral\month name\endcsname}
+
+\SetString\today{\datumaa}
+
+\AfterBabelCommands{\newcommand\latviangada{g.}}
+
+\EndBabelCommands
+% \end{macrocode}
+%
+% Section numbering.
+%
+% \begin{macrocode}
+\gdef\the@chapter{%
+ \ifx\chapter\undefined\relax\else
+ \ifnum\c@chapter>\z@\thechapter\fi\fi}
+\def\thechapter{%
+ \ifx\chapter\undefined\relax\else
+ \arabic{chapter}.\fi}
+\def\thesection{\the@chapter\arabic{section}.}
+\def\thesubsection{\thesection\arabic{subsection}.}
+\def\thesubsubsection{\thesubsection\arabic{subsubsection}.}
+\def\theparagraph{\thesubsubsection\arabic{paragraph}.}
+\def\thesubparagraph{\theparagraph\arabic{subparagraph}.}
+% \end{macrocode}
+%
+% Part numbering
+%
+% \begin{macrocode}
+\def\depth@{\ifx\chapter\undefined\m@ne\else-2\relax\fi}
+\def\@part[#1]#2{%
+ \relax
+ \ifnum\c@secnumdepth>\depth@
+ \refstepcounter{part}
+ \addcontentsline{toc}{part}{\thepart\hspace{1em}#1}%
+ \else
+ \addcontentsline{toc}{part}{#1}\fi
+ \ifx\chapter\undefined
+ \bgroup\parindent\z@\raggedright
+ \else
+ \markboth{}{}\bgroup\centering
+ \fi
+ \interlinepenalty\@M
+ \ifnum\c@secnumdepth>\depth@
+ \normalfont\bfseries\thepart~\partname % adapted to Latvian order
+ \par
+ \ifx\chapter\undefined\nobreak\else\vskip 20\p@\fi
+ \fi
+ \ifx\chapter\undefined\huge\else\Huge\fi\normalfont\bfseries#2%
+ \ifx\chapter\undefined\markboth{}{}\fi
+ \par\egroup
+ \ifx\chapter\undefined\nobreak
+ \vskip3ex \@afterheading\else\@endpart
+ \fi}
+% \end{macrocode}
+%
+% Chapter head
+%
+% \begin{macrocode}
+\def\@makechapterhead#1{%
+ \vspace*{50pt}%
+ {\parindent 0pt \raggedright
+ \ifnum\c@secnumdepth>\m@ne
+ \huge\normalfont\bfseries\thechapter\space\@chapapp{}%
+ \par
+ \vskip20pt
+ \fi
+ \Huge\normalfont\bfseries#1\par\nobreak\vskip40pt }}
+% \end{macrocode}
+%
+% First paragraph indent (of the text following a heading).
+%
+% \begin{macrocode}
+\let\@aifORI\@afterindentfalse
+\def\bbl@latvianindent{%
+ \let\@afterindentfalse\@afterindenttrue
+ \@afterindenttrue}
+\def\bbl@nonlatvianindent{%
+ \let\@afterindentfalse\@aifORI
+ \@afterindentfalse}
+\addto\extraslatvian{\bbl@latvianindent}
+\addto\noextraslatvian{\bbl@nonlatvianindent}
+% \end{macrocode}
+%
+% Float numbering.
+%
+% \begin{macrocode}
+\def\thefigure{\the@chapter\@arabic\c@figure.}
+\def\thetable{\the@chapter\@arabic\c@table.}
+\def\fnum@figure{\thefigure~\figurename}
+\def\fnum@table{\thetable~\tablename}
+\long\def\@makecaption#1#2{%
+ \vskip10\p@
+ \sbox\@tempboxa{#1\if\empty#2\else: #2\fi}%
+ \ifdim\wd\@tempboxa>\hsize
+ #1: #2\par
+ \else
+ \hbox to\hsize{\hfil\box\@tempboxa\hfil}%
+ \fi}
+% \end{macrocode}
+%
+% Theorems
+%
+% \begin{macrocode}
+\def\@thmcountersep{}
+\gdef\@makethmnumber#1#2{%
+ \ifx\thmno@left0{#1\ #2}\else {#2. #1}\fi}
+\def\@begintheorem#1#2{%
+ \normalfont\itshape\trivlist
+ \item[\hskip\labelsep
+ \hskip\parindent\normalfont\bfseries
+ {\@makethmnumber{#1}{#2}}.]}
+\def\@opargbegintheorem#1#2#3{%
+ \normalfont\itshape\trivlist
+ \item[\hskip\labelsep \hskip\parindent\normalfont\bfseries
+ {\@makethmnumber{#1}{#2} (#3).}]}
+\gdef\thmnoleft{\let\thmno@left=1}
+\gdef\thmnoright{\let\thmno@left=0}
+\thmnoleft
+% \end{macrocode}
+%
+% Equations
+%
+% \begin{macrocode}
+\def\theequation{\the@chapter\arabic{equation}}
+% \end{macrocode}
+%
+% Marks.
+%
+% \begin{macrocode}
+\ifx\@chapapp\undefined
+ \if@twoside
+ \def\sectionmark#1{%
+ \markboth
+ {\uppercase{\ifnum\c@secnumdepth>\z@ne\thesection\hskip1em\relax\fi#1}}%
+ {}}
+ \def\subsectionmark#1{%
+ \markright
+ {\uppercase{\ifnum\c@secnumdepth>\@ne\thesubsection\ \fi#1}}}
+ \else
+ \def\sectionmark#1{%
+ \markright
+ {\uppercase{\ifnum\c@secnumdepth>\z@\thesection\hskip1em\relax\fi#1}}}
+ \fi%
+\else
+ \def\chaptermark#1{%
+ \markboth
+ {\uppercase{\ifnum\c@secnumdepth>\m@ne\thechapter~\@chapapp: \fi#1}}%
+ {}}
+ \def\sectionmark#1{%
+ \markright{\uppercase{\ifnum\c@secnumdepth>\z@\thesection\ \fi#1}}}
+\fi
+% \end{macrocode}
+%
+% Counters. Only locally.
+%
+% \begin{macrocode}
+\addto\extraslatvian{%
+ \babel@save\@alph
+ \def\@alph#1{%
+ \ifcase#1\or a\or b\or c\or d\or e\or f\or g\or h\or i\or j\or k\or
+ l\or m\or n\or o\or p\or r\or s\or t\or u\or v\or
+ z\else\@ctrerr\fi}%
+ \babel@save\@Alph
+ \def\@Alph#1{%
+ \ifcase#1\or A\or B\or C\or D\or E\or F\or G\or H\or I\or J\or K\or
+ L\or M\or N\or O\or P\or R\or S\or T\or U\or V\or Z\else\@ctrerr\fi}}
+% \end{macrocode}
+%
+% Hyphenmins and shorthands.
+%
+% \begin{macrocode}
+\def\latvianhyphenmins{\tw@\tw@}
+\initiate@active@char{"}
+\addto\extraslatvian{\languageshorthands{latvian}}
+\addto\extraslatvian{\bbl@activate{"}}
+
+\DeclareTextCompositeCommand{\=}{OT1}{i}{\@tabacckludge={\i}}
+\DeclareTextCompositeCommand{\=}{T1}{i}{\@tabacckludge={\i}}
+
+\@expandtwoargs\in@{,t1composite,}{,\BabelModifiers,}
+\ifin@
+
+ \DeclareTextCommand{\lv@cb}{T1}[1]% same as \c
+ {\leavevmode
+ \setbox\z@\hbox{#1}%
+ \ifdim\ht\z@=1ex\accent11 #1%
+ \else{\ooalign{\unhbox\z@\crcr\hidewidth\char11\hidewidth}}%
+ \fi}
+ \let\lv@cbg\lv@cb
+
+ \DeclareTextCompositeCommand{\c}{T1}{g}{\lv@cbg{g}}
+ \DeclareTextCompositeCommand{\c}{T1}{G}{\lv@cb{G}}
+ \DeclareTextCompositeCommand{\c}{T1}{r}{\lv@cb{r}}
+ \DeclareTextCompositeCommand{\c}{T1}{R}{\lv@cb{R}}
+ \DeclareTextCompositeCommand{\c}{T1}{k}{\lv@cb{k}}
+ \DeclareTextCompositeCommand{\c}{T1}{K}{\lv@cb{K}}
+ \DeclareTextCompositeCommand{\c}{T1}{l}{\lv@cb{l}}
+ \DeclareTextCompositeCommand{\c}{T1}{L}{\lv@cb{L}}
+ \DeclareTextCompositeCommand{\c}{T1}{n}{\lv@cb{n}}
+ \DeclareTextCompositeCommand{\c}{T1}{N}{\lv@cb{N}}
+
+ \def\lv@ifcombelow{\@ifpackageloaded{combelow}}
+ \AtBeginDocument{% because \@ifpackageloaded is 'only preamble'
+ \@ifpackageloaded{combelow}%
+ {\let\lv@ifcombelow\@firstoftwo}%
+ {\let\lv@ifcombelow\@secondoftwo}}
+
+ \addto\extraslatvian{%
+ \babel@save\lv@cbg
+ \lv@ifcombelow
+ {\babel@save\lv@cb
+ \let\lv@cb\cb
+ \let\lv@cbg\cb}%
+ {\let\lv@cbg\v}}
+
+\fi
+
+\declare@shorthand{latvian}{"a}{\textormath{\={a}}{\=a}}
+\declare@shorthand{latvian}{"e}{\textormath{\={e}}{\=e}}
+\declare@shorthand{latvian}{"u}{\textormath{\={u}}{\=u}}
+\declare@shorthand{latvian}{"i}{\textormath{\={\i}}{\=\i}}
+\declare@shorthand{latvian}{"o}{\textormath{\={o}}{\=o}}
+
+\declare@shorthand{latvian}{"A}{\textormath{\={A}}{\=A}}
+\declare@shorthand{latvian}{"E}{\textormath{\={E}}{\=E}}
+\declare@shorthand{latvian}{"U}{\textormath{\={U}}{\=U}}
+\declare@shorthand{latvian}{"I}{\textormath{\={I}}{\=I}}
+\declare@shorthand{latvian}{"O}{\textormath{\={O}}{\=O}}
+
+\declare@shorthand{latvian}{"r}{\textormath{\c{r}}{\c r}}
+\declare@shorthand{latvian}{"s}{\textormath{\v{s}}{\v s}}
+\declare@shorthand{latvian}{"g}{\textormath{\c{g}}{\c g}}
+\declare@shorthand{latvian}{"k}{\textormath{\c{k}}{\c k}}
+\declare@shorthand{latvian}{"l}{\textormath{\c{l}}{\c l}}
+\declare@shorthand{latvian}{"z}{\textormath{\v{z}}{\v z}}
+\declare@shorthand{latvian}{"c}{\textormath{\v{c}}{\v c}}
+\declare@shorthand{latvian}{"n}{\textormath{\c{n}}{\c n}}
+
+\declare@shorthand{latvian}{"R}{\textormath{\c{R}}{\c R}}
+\declare@shorthand{latvian}{"S}{\textormath{\v{S}}{\v S}}
+\declare@shorthand{latvian}{"G}{\textormath{\c{G}}{\c G}}
+\declare@shorthand{latvian}{"K}{\textormath{\c{K}}{\c K}}
+\declare@shorthand{latvian}{"L}{\textormath{\c{L}}{\c L}}
+\declare@shorthand{latvian}{"Z}{\textormath{\v{Z}}{\v Z}}
+\declare@shorthand{latvian}{"C}{\textormath{\v{C}}{\v C}}
+\declare@shorthand{latvian}{"N}{\textormath{\c{N}}{\c N}}
+
+\declare@shorthand{latvian}{"-}{\nobreak\-\bbl@allowhyphens}
+\declare@shorthand{latvian}{"|}{%
+ \textormath{\penalty\@M\discretionary{-}{}{\kern.03em}%
+ \allowhyphens}{}}
+\declare@shorthand{latvian}{""}{\hskip\z@skip}
+\declare@shorthand{latvian}{"~}{\textormath{\leavevmode\hbox{-}}{-}}
+\declare@shorthand{latvian}{"=}{\penalty\@M-\hskip\z@skip}
+
+\ldf@finish{latvian}
+%</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 \~}
+%%