summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2019-07-16 21:13:37 +0000
committerKarl Berry <karl@freefriends.org>2019-07-16 21:13:37 +0000
commit444bab00733dfef06cba9e2ba93c8f63fb00a014 (patch)
treed8f3d2b7f09bc7d29926421d2d06d76d9aaff24c
parent40ab1ab06c07f247ef9448fab8e9c961a22497b3 (diff)
babel-serbian (16jul19)
git-svn-id: svn://tug.org/texlive/trunk@51651 c570f23f-e606-0410-a88d-b1316a301751
-rw-r--r--Master/texmf-dist/doc/generic/babel-serbian/README.md31
-rw-r--r--Master/texmf-dist/doc/generic/babel-serbian/serbian.pdfbin130458 -> 247725 bytes
-rw-r--r--Master/texmf-dist/source/generic/babel-serbian/serbian.dtx417
-rw-r--r--Master/texmf-dist/source/generic/babel-serbian/serbian.ins63
-rw-r--r--Master/texmf-dist/tex/generic/babel-serbian/serbian.ldf206
5 files changed, 446 insertions, 271 deletions
diff --git a/Master/texmf-dist/doc/generic/babel-serbian/README.md b/Master/texmf-dist/doc/generic/babel-serbian/README.md
new file mode 100644
index 00000000000..31e932a5839
--- /dev/null
+++ b/Master/texmf-dist/doc/generic/babel-serbian/README.md
@@ -0,0 +1,31 @@
+----------------------------------------------------------------
+
+Serbian Latin language module for Babel, v2.0
+
+Released under the LaTeX Project Public License v1.3c or later.
+See http://www.latex-project.org/lppl.txt
+
+The package provides support for use of Babel in documents written in Serbian Latin
+(in ekavian or ijekavian dialect). The support is adapted for use both
+under legacy TeX engines, and under XeTeX and LuaTeX.
+
+The Current Maintainer is Uroš Stefanović.
+
+USAGE
+
+Serbian language definition file can be used both with legacy 8-bit engines
+(such as latex.exe or pdflatex.exe) and Unicode compilers (xelatex.exe or
+lualatex.exe).
+
+Typesetting in ijekavian dialect:
+
+ \usepackage[english,serbianc]{babel}
+ \languageattribute{serbianc}{ijekav}
+or
+ \usepackage[english,serbianc.ijekav]{babel}
+
+Also, the attributes 'datei' and 'quotes' are defined.
+
+DOCUMENTATION
+
+See serbian.pdf for more information.
diff --git a/Master/texmf-dist/doc/generic/babel-serbian/serbian.pdf b/Master/texmf-dist/doc/generic/babel-serbian/serbian.pdf
index 340e9705912..acebed5fc1a 100644
--- a/Master/texmf-dist/doc/generic/babel-serbian/serbian.pdf
+++ b/Master/texmf-dist/doc/generic/babel-serbian/serbian.pdf
Binary files differ
diff --git a/Master/texmf-dist/source/generic/babel-serbian/serbian.dtx b/Master/texmf-dist/source/generic/babel-serbian/serbian.dtx
index 60179088835..a9dee24bf41 100644
--- a/Master/texmf-dist/source/generic/babel-serbian/serbian.dtx
+++ b/Master/texmf-dist/source/generic/babel-serbian/serbian.dtx
@@ -1,10 +1,10 @@
% \iffalse meta-comment
%
-% Copyright 1989-2005 Johannes L. Braams and any individual authors
+% Copyright 2019 Uroš Stefanović and any individual authors
% listed elsewhere in this file. All rights reserved.
%
-% This file is part of the Babel system.
-% --------------------------------------
+% This file is intended to be used with the Babel system.
+% ------------------------------------------------------
%
% It may be distributed and/or modified under the
% conditions of the LaTeX Project Public License, either version 1.3
@@ -16,17 +16,12 @@
%
% 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 Current Maintainer of this work is Uroš Stefanović.
%
% 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{263}
% \iffalse
% Tell the \LaTeX\ system who we are and write an entry on the
% transcript.
@@ -36,46 +31,35 @@
%<code>\ProvidesLanguage{serbian}
%\fi
%\ProvidesFile{serbian.dtx}
- [2005/03/31 v1.0d Serbocroatian support from the babel system]
+ [2019/07/16 2.0 Serbian Latin support for 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
+%% File `serbian.dtx'
%
% This file is part of the babel system, it provides the source
-% code for the Serbocroatian language definition file. A contribution
-% was made by Dejan Muhamedagi\'{c} (dejan@yunix.com) and Jankovic
-% Slobodan <slobodan@archimed.filfak.ac.ni.yu>
-%
+% code for the Serbian Latin language definition file.
%<*filedriver>
\documentclass{ltxdoc}
-\newcommand*\TeXhax{\TeX hax}
+\usepackage[utf8]{inputenc}
+\usepackage[T1]{fontenc}
+\title{The Serbian Latin Language in the \babel\ system}
+\author{Uroš Stefanović\footnote{\texttt{urostajms@gmail.com}}}
\newcommand*\babel{\textsf{babel}}
\newcommand*\langvar{$\langle \it lang \rangle$}
\newcommand*\note[1]{}
\newcommand*\Lopt[1]{\textsf{#1}}
\newcommand*\file[1]{\texttt{#1}}
\begin{document}
+ \maketitle
\DocInput{serbian.dtx}
\end{document}
%</filedriver>
%\fi
% \GetFileInfo{serbian.dtx}
-% \changes{serbian-1.0b}{1998/06/16}{Added suggestions for shorthands
-% and so on from Jankovic Slobodan}
%
-% \section{The Serbocroatian language}
+% \section*{The Serbian Latin Language}
%
-% The file \file{\filename}\footnote{The file described in this
-% section has version number \fileversion\ and was last revised on
-% \filedate. A contribution was made by Dejan Muhamedagi\'{c}
-% (\texttt{dejan@yunix.com}).} defines all the language definition
-% macros for the Serbian language, typeset in a latin script. In a
-% future version support for typesetting in a cyrillic script may
-% be added.
+% The file \file{\filename} defines all the language definition
+% macros for the Serbian language, typeset in a Latin script.
%
% For this language the character |"| is made active. In
% table~\ref{tab:serbian-quote} an overview is given of its
@@ -85,69 +69,160 @@
% \begin{table}[htb]
% \begin{center}
% \begin{tabular}{lp{8cm}}
-% |"c| & |\"c|, also implemented for the
-% lowercase and uppercase s and z. \\
-% |"d| & |\dj|, also implemented for |"D| \\
-% |"-| & an explicit hyphen sign, allowing hyphenation
-% in the rest of the word. \\
-% \verb="|= & disable ligature at this position \\
-% |""| & like |"-|, but producing no hyphen sign
-% (for compund words with hyphen, e.g.\ |x-""y|). \\
-% |"`| & for Serbian left double quotes (looks like ,,). \\
-% |"'| & for Serbian right double quotes. \\
-% |"<| & for French left double quotes (similar to $<<$). \\
-% |">| & for French right double quotes (similar to $>>$). \\
+% |"c| & |\v c|, also implemented for the lowercase and uppercase s and z. \\
+% |"d| & |\dj|, also implemented for |"D|. \\
+% |"-| & An explicit hyphen sign, allowing hyphenation
+% in the rest of the word; inserts a hyphen which is repeated at the beginning of the
+% next line (recommended to use for compound words with hyphen). \\
+% \verb="|= & Disables ligature at this position. \\
+% |""| & Similar to |"-| but prints no hyphen sign. \\
+% |"~| & Compound word mark without a breakpoint, prints hyphen
+% prohibiting hyphenation at the point. \\
+% |"=| & A compound word mark with a breakpoint, prints hyphen
+% allowing hyphenation in the composing words. \\
+% |"`| & German opening double quote (looks like ,\kern-0.08em,). \\
+% |"'| & German closing double quote (looks like ``). \\
+% |"'| & (if the \Lopt{quotes} attribute is used) Closing double quote (looks like ''). \\
+% |"<| & French opening double quote (looks like $<\!\!<$). \\
+% |">| & French closing double quote (looks like $>\!\!>$). \\
% \end{tabular}
% \caption{The extra definitions made
% by \file{serbian.ldf}}\label{tab:serbian-quote}
% \end{center}
% \end{table}
%
-% Apart from defining shorthands we need to make sure taht the
-% first paragraph of each section is intended. Furthermore the
-% following new math operators are defined (|\tg|, |\ctg|,
-% |\arctg|, |\arcctg|, |\sh|, |\ch|, |\th|, |\cth|, |\arsh|,
-% |\arch|, |\arth|, |\arcth|, |\Prob|, |\Expect|, |\Variance|).
+% Macro |\today| prints the date in Serbian. Alternatively, if attribute \Lopt{datei} is used,
+% |\today| prints the current date, but prints `juni' and `juli' for `June' and `July'.
+% If you prefer to use `juni' and `juli' instead of default `jun' and `jul',
+% use the \Lopt{datei} attribute. Also, the |\today*| macro prints the date without dot after the year
+% (used when after the date is the punctuation mark, such as comma).
+% Alternatively, the commands |\todayRoman| and |\todayRoman*| prints the current date using Roman numerals for months.
+%
+% Apart from defining shorthands we need to make sure that the
+% first paragraph of each section is indented. Furthermore the
+% following new math operators are defined: |\sh|, |\ch|, |\tg|, |\ctg|,
+% |\arctg|, |\arcctg|, |\th|, |\cth|, |\arsh|,
+% |\arch|, |\arth|, |\arcth|, |\cosec|, |\Prob|, |\Expect|, |\Variance|,
+% |\arcsec|, |\arccosec|, |\sech|, |\cosech|, |\arsech|, |\arcosech|,
+% |\NZD|, |\nzd|, |\NZS|, |\nzs|.
+%
+% By default, a ekavian spelling is enabled. For ijekavian
+% spelling can be enabled by setting the attribute to \Lopt{ijekav}. To set
+% an attribute, put the |\languageattribute| macro within a document preamble after
+% \babel, for example,
+%\begin{verbatim}
+% \usepackage[english,serbian]{babel}
+% \languageattribute{serbian}{ijekav}
+%\end{verbatim}
+% Setting the \Lopt{ijekav} attribute changes the built-in strings (caption names).
+% For example, the part will be entitled as
+% `Deo' by default and as `Dio' if the
+% Serbian language attribute is set to \Lopt{ijekav}.
+% Same result can be achieved using a modifier as follows:
+%\begin{verbatim}
+% \usepackage[english,serbian.ijekav]{babel}
+%\end{verbatim}
+% Using a modifier in a package option is often better. A modifier is set after
+% the language name, and is prefixed with a dot (only when the language is set
+% as package option — neither global options nor the main key accept them).
+% Also, it's possible to use more than one attribute:
+%\begin{verbatim}
+% \usepackage[english,serbian.ijekav.datei.quotes]{babel}
+%\end{verbatim}
+%
+% The file \file{serbian.ldf} is designed to work both with
+% legacy non-unicode (8-bit) and new Unicode encodings of the source document
+% files (input encodings) and of the font files (font encodings).
%
% \StopEventually{}
%
+% \section*{The code}
+%
% 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{serbian}\captionsserbian
+\LdfInit{serbian}{captionsserbian}
% \end{macrocode}
%
-% When this file is read as an option, i.e. by the |\usepackage|
-% command, \texttt{serbian} will be an `unknown' language in which
-% case we have to make it known. So we check for the existence of
-% |\l@serbian| to see whether we have to do something here.
+% First, we check if Lua\LaTeX\ or Xe\LaTeX\ is running. If so, we set
+% boolean key |\if@srb@uni@ode| to true.
+%
+% \begin{macrocode}
+\ifdefined\if@srb@uni@ode
+ \PackageError{babel}{if@srb@uni@ode already defined.}
+ \relax
+\fi
+\newif\if@srb@uni@ode
+\ifdefined\luatexversion \@srb@uni@odetrue \else
+\ifdefined\XeTeXrevision \@srb@uni@odetrue \fi\fi
+% \end{macrocode}
+%
+% Check if hyphenation patterns for the Serbian language have been
+% loaded in \file{language.dat}. Namely, we check for the existence of
+% |\l@serbian|. If it is not defined, we declare Serbian as dialect
+% for the default language number 0 which almost for sure is English.
%
% \begin{macrocode}
\ifx\l@serbian\@undefined
- \@nopatterns{Serbian}
- \adddialect\l@serbian0\fi
+ \@nopatterns{Serbian}
+ \adddialect\l@serbian0
+\fi
% \end{macrocode}
%
-% The next step consists of defining commands to switch to (and
-% from) the Serbocroatian language.
+% For Serbian the \texttt{"} character is made active. This is done
+% once, later on its definition may vary. Other languages in the
+% same document may also use the \texttt{"}~character for
+% shorthands; we specify that the Serbian group of shorthands
+% should be used. We save the original double quote character
+% in the |\dq| macro to keep it available. The shorthand \texttt{"-}
+% should be used in places where a word contains an explictit
+% hyphenation character. According to the rules of the Serbian language, when
+% a word break occurs at an explicit hyphen it must appear both at the end of the
+% first line and at the beginning of the second line.
+%
+% \begin{macrocode}
+\initiate@active@char{"}
+\begingroup \catcode`\"12
+\def\reserved@a{\endgroup
+ \def\@SS{\mathchar"7019 }
+ \def\dq{"}}
+\reserved@a
+\declare@shorthand{serbian}{"c}{\textormath{\v c}{\check c}}
+\declare@shorthand{serbian}{"d}{\textormath{\dj}{\textnormal{\dj}}}
+\declare@shorthand{serbian}{"s}{\textormath{\v s}{\check s}}
+\declare@shorthand{serbian}{"z}{\textormath{\v z}{\check z}}
+\declare@shorthand{serbian}{"C}{\textormath{\v C}{\check C}}
+\declare@shorthand{serbian}{"D}{\textormath{\DJ}{\textnormal{\DJ}}}
+\declare@shorthand{serbian}{"S}{\textormath{\v S}{\check S}}
+\declare@shorthand{serbian}{"Z}{\textormath{\v Z}{\check Z}}
+\declare@shorthand{serbian}{"`}{\quotedblbase}
+\declare@shorthand{serbian}{"'}{\textquotedblleft}
+\declare@shorthand{serbian}{"<}{\guillemotleft}
+\declare@shorthand{serbian}{">}{\guillemotright}
+\declare@shorthand{serbian}{""}{\hskip\z@skip}
+\declare@shorthand{serbian}{"~}{\textormath{\leavevmode\hbox{-}}{-}}
+\declare@shorthand{serbian}{"=}{\nobreak-\hskip\z@skip}
+\declare@shorthand{serbian}{"|}{\textormath{\nobreak\discretionary{-}{}{\kern.03em}\allowhyphens}{}}
+\declare@shorthand{serbian}{"-}{\nobreak\discretionary{-}{-}{-}\bbl@allowhyphens}
+% \end{macrocode}
+%
+% The macro |\captionsserbian| defines all strings used in the four
+% standard documentclasses provided with \LaTeX.
%
-% \begin{macro}{\captionsserbian}
-% The macro |\captionsserbian| defines all strings used
-% in the four standard documentclasses provided with \LaTeX.
-% \changes{serbian-1.0d}{2000/09/20}{Added \cs{glossaryname}}
% \begin{macrocode}
\addto\captionsserbian{%
\def\prefacename{Predgovor}%
\def\refname{Literatura}%
- \def\abstractname{Sa\v{z}etak}%
+ \def\abstractname{Sa\v zetak}%
\def\bibname{Bibliografija}%
\def\chaptername{Glava}%
\def\appendixname{Dodatak}%
- \def\contentsname{Sadr\v{z}aj}%
- \def\listfigurename{Slike}%
- \def\listtablename{Tabele}%
+ \def\contentsname{Sadr\v zaj}%
+ \def\listfigurename{Spisak slika}%
+ \def\listtablename{Spisak tabela}%
\def\indexname{Indeks}%
\def\figurename{Slika}%
\def\tablename{Tabela}%
@@ -155,144 +230,164 @@
\def\enclname{Prilozi}%
\def\ccname{Kopije}%
\def\headtoname{Prima}%
- \def\pagename{Strana}%
- \def\seename{Vidi}%
- \def\alsoname{Vidi tako\dj e}%
+ \def\pagename{strana}%
+ \def\seename{vidi}%
+ \def\alsoname{vidi tako\dj e}%
\def\proofname{Dokaz}%
- \def\glossaryname{Glossary}% <-- Needs translation
+ \def\glossaryname{Re\v cnik}%
+}%
+\if@srb@uni@ode
+ \addto\captionsserbian{%
+ \def\abstractname{Sažetak}%
+ \def\contentsname{Sadržaj}%
+ \def\alsoname{vidi takođe}%
+ \def\glossaryname{Rečnik}%
}%
+\fi
+\let\captionsserbian@ijekav=\captionsserbian
+\addto\captionsserbian@ijekav{
+ \def\partname{Dio}%
+ \def\glossaryname{Rje\v cnik}%
+}
+\if@srb@uni@ode
+ \addto\captionsserbian@ijekav{
+ \def\glossaryname{Rječnik}%
+ }
+\fi
% \end{macrocode}
-% \end{macro}
%
-% \begin{macro}{\dateserbian}
-% The macro |\dateserbian| redefines the command |\today| to
-% produce Serbocroatian dates.
+% The macro |\dateserbian| redefines the commands |\today|, |\today*|, |\todayRoman| and |\todayRoman*| to produce Serbian dates.
+%
% \begin{macrocode}
-\def\dateserbian{%
- \def\today{\number\day .~\ifcase\month\or
- januar\or februar\or mart\or april\or maj\or
- juni\or juli\or avgust\or septembar\or oktobar\or novembar\or
- decembar\fi \space \number\year}}
+ \def\dateserbian{%
+ \def\month@serbian{\ifcase\month\or
+ januar\or
+ februar\or
+ mart\or
+ april\or
+ maj\or
+ jun\or
+ jul\or
+ avgust\or
+ septembar\or
+ oktobar\or
+ novembar\or
+ decembar\fi}
+ \def\today{\number\day.~\month@serbian\ \number\year\@ifstar{}{.}}
+ \def\todayRoman{\number\day.~\@Roman\month~\number\year\@ifstar{}{.}}}
+ \let\dateserbian@datei=\dateserbian
+ \addto\dateserbian@datei{
+ \def\month@serbian@datei{\ifnum\month=6 juni%
+ \else\ifnum\month=7 juli\else\month@serbian\fi\fi}
+ \def\today{\number\day.~\month@serbian@datei\ \number\year\@ifstar{}{.}}
+}
% \end{macrocode}
-% \end{macro}
%
-% \begin{macro}{\extrasserbian}
-% \begin{macro}{\noextrasserbian}
-% The macro |\extrasserbian| will perform all the extra
-% definitions needed for the Serbocroatian language. The macro
-% |\noextrasserbian| is used to cancel the actions of
-% |\extrasserbian|.
+% The Serbian hyphenation patterns can be used with |\lefthyphenmin| and
+% |\righthyphenmin| set to 2. (Actually, the “official” definition allows even one character for |lefthyphen|, but it is recommended to use value two for better results.)
%
-% For Serbian the \texttt{"} character is made active. This is done
-% once, later on its definition may vary. Other languages in the
-% same document may also use the \texttt{"} character for
-% shorthands; we specify that the serbian group of shorthands
-% should be used.
+% \begin{macrocode}
+\providehyphenmins{\CurrentOption}{\tw@\tw@}
+\providehyphenmins{serbian}{\tw@\tw@}
+% \end{macrocode}
+%
+% We specify that the Serbian group of shorthands should be used.
%
-% \changes{serbian-1.0b}{1998/06/16}{Introduced the active \texttt{"}}
% \begin{macrocode}
-\initiate@active@char{"}
\addto\extrasserbian{\languageshorthands{serbian}}
\addto\extrasserbian{\bbl@activate{"}}
-% \end{macrocode}
-% Don't forget to turn the shorthands off again.
-% \changes{serbian-1.0c}{1999/12/17}{Deactivate shorthands ouside of
-% Serbian}
-% \begin{macrocode}
\addto\noextrasserbian{\bbl@deactivate{"}}
% \end{macrocode}
-% First we define shorthands to facilitate the occurence of letters
-% such as \v{c}.
-% \begin{macrocode}
-\declare@shorthand{serbian}{"c}{\textormath{\v c}{\check c}}
-\declare@shorthand{serbian}{"d}{\textormath{\dj}{\dj}}%%
-\declare@shorthand{serbian}{"s}{\textormath{\v s}{\check s}}
-\declare@shorthand{serbian}{"z}{\textormath{\v z}{\check z}}
-\declare@shorthand{serbian}{"C}{\textormath{\v C}{\check C}}
-\declare@shorthand{serbian}{"D}{\textormath{\DJ}{\DJ}}%%
-\declare@shorthand{serbian}{"S}{\textormath{\v S}{\check S}}
-\declare@shorthand{serbian}{"Z}{\textormath{\v Z}{\check Z}}
-% \end{macrocode}
%
-% Then we define access to two forms of quotation marks, similar
-% to the german and french quotation marks.
-% \begin{macrocode}
-\declare@shorthand{serbian}{"`}{%
- \textormath{\quotedblbase{}}{\mbox{\quotedblbase}}}
-\declare@shorthand{serbian}{"'}{%
- \textormath{\textquotedblleft{}}{\mbox{\textquotedblleft}}}
-\declare@shorthand{serbian}{"<}{%
- \textormath{\guillemotleft{}}{\mbox{\guillemotleft}}}
-\declare@shorthand{serbian}{">}{%
- \textormath{\guillemotright{}}{\mbox{\guillemotright}}}
-% \end{macrocode}
-% then we define two shorthands to be able to specify hyphenation
-% breakpoints that behave a little different from |\-|.
-% \changes{serbian-1.0d}{2000/09/20}{Changed definition of \texttt{"-}
-% to be the same as for other languages}
+% Serbian typesetting requires |frenchspacing|. So, we add commands to
+% |\extrasserbian| and |\noextrasserbian| to turn it on and off, respectively.
+%
% \begin{macrocode}
-\declare@shorthand{serbian}{"-}{\nobreak-\bbl@allowhyphens}
-\declare@shorthand{serbian}{""}{\hskip\z@skip}
+\addto\extrasserbian{\bbl@frenchspacing}
+\addto\noextrasserbian{\bbl@nonfrenchspacing}
% \end{macrocode}
-% And we want to have a shorthand for disabling a ligature.
+%
+% In Serbian the first paragraph of each section should be indented.
+%
% \begin{macrocode}
-\declare@shorthand{serbian}{"|}{%
- \textormath{\discretionary{-}{}{\kern.03em}}{}}
+\let\@aifORI\@afterindentfalse
+\def\bbl@serbianindent{\let\@afterindentfalse\@afterindenttrue\@afterindenttrue}
+\def\bbl@nonserbianindent{\let\@afterindentfalse\@aifORI\@afterindentfalse}
+\addto\extrasserbian{\bbl@serbianindent}
+\addto\noextrasserbian{\bbl@nonserbianindent}
% \end{macrocode}
-% \end{macro}
-% \end{macro}
%
-% \begin{macro}{\bbl@frenchindent}
-% \begin{macro}{\bbl@nonfrenchindent}
-% In Serbian the first paragraph of each section should be indented.
-% Add this code only in \LaTeX.
+% An |ijekav| attribute changes default behavior and activates an
+% alternative set of captions suitable for typesetting in ijekavian dialect.
+% The |quotes| attribute changes the |"'| shorthand to produce '' as closing quote,
+% instead the traditional `` quote of Serbian language.
+% Also, the |datei| attribute will produce `juni' and `juli' instead `jun' and `jul'
+% for date.
+%
% \begin{macrocode}
-\ifx\fmtname plain \else
- \let\@aifORI\@afterindentfalse
- \def\bbl@frenchindent{\let\@afterindentfalse\@afterindenttrue
- \@afterindenttrue}
- \def\bbl@nonfrenchindent{\let\@afterindentfalse\@aifORI
- \@afterindentfalse}
- \addto\extrasserbian{\bbl@frenchindent}
- \addto\noextrasserbian{\bbl@nonfrenchindent}
-\fi
+\bbl@declare@ttribute{serbian}{ijekav}{%
+ \PackageInfo{babel}{Serbian attribute set to ijekav}%
+ \let\captionsserbian=\captionsserbian@ijekav }
+\@onlypreamble\captionsserbian@ijekav
+\bbl@declare@ttribute{serbian}{quotes}{%
+ \PackageInfo{babel}{Serbian attribute set to quotes}%
+ \declare@shorthand{serbian}{"'}{\textquotedblright} }
+\bbl@declare@ttribute{serbian}{datei}{%
+ \PackageInfo{babel}{Serbian attribute set to datei}%
+ \let\dateserbian=\dateserbian@datei }
+\@onlypreamble\dateserbian@datei
% \end{macrocode}
-% \end{macro}
-% \end{macro}
%
-% \begin{macro}{\mathserbian}
% Some math functions in Serbian math books have other names:
% e.g. |sinh| in Serbian is written as |sh| etc. So we define a
% number of new math operators.
+%
% \begin{macrocode}
-\def\sh{\mathop{\operator@font sh}\nolimits} % same as \sinh
-\def\ch{\mathop{\operator@font ch}\nolimits} % same as \cosh
-\def\th{\mathop{\operator@font th}\nolimits} % same as \tanh
-\def\cth{\mathop{\operator@font cth}\nolimits} % same as \coth
+\def\sh{\mathop{\operator@font sh}\nolimits}
+\def\ch{\mathop{\operator@font ch}\nolimits}
+\def\tg{\mathop{\operator@font tg}\nolimits}
+\def\ctg{\mathop{\operator@font ctg}\nolimits}
+\def\arctg{\mathop{\operator@font arctg}\nolimits}
+\def\arcctg{\mathop{\operator@font arcctg}\nolimits}
+\addto\extrasserbian{%
+ \babel@save{\th}%
+ \let\ltx@th\th
+ \def\th{\textormath{\ltx@th}%
+ {\mathop{\operator@font th}\nolimits}}%
+ }
+\def\cth{\mathop{\operator@font cth}\nolimits}
\def\arsh{\mathop{\operator@font arsh}\nolimits}
\def\arch{\mathop{\operator@font arch}\nolimits}
\def\arth{\mathop{\operator@font arth}\nolimits}
\def\arcth{\mathop{\operator@font arcth}\nolimits}
-\def\tg{\mathop{\operator@font tg}\nolimits} % same as \tan
-\def\ctg{\mathop{\operator@font ctg}\nolimits} % same as \cot
-\def\arctg{\mathop{\operator@font arctg}\nolimits} % same as \arctan
-\def\arcctg{\mathop{\operator@font arcctg}\nolimits}
-\def\Prob{\mathop{\mathsf P\hskip0pt}\nolimits}
-\def\Expect{\mathop{\mathsf E\hskip0pt}\nolimits}
-\def\Variance{\mathop{\mathsf D\hskip0pt}\nolimits}
+\def\cosec{\mathop{\operator@font cosec}\nolimits}
+\def\arcsec{\mathop{\operator@font arcsec}\nolimits}
+\def\arccosec{\mathop{\operator@font arccosec}\nolimits}
+\def\sech{\mathop{\operator@font sech}\nolimits}
+\def\cosech{\mathop{\operator@font cosech}\nolimits}
+\def\arsech{\mathop{\operator@font arsech}\nolimits}
+\def\arcosech{\mathop{\operator@font arcosech}\nolimits}
+\def\Prob{\mathop{\kern\z@\mathsf{P}}\nolimits}
+\def\Expect{\mathop{\kern\z@\mathsf{E}}\nolimits}
+\def\Variance{\mathop{\kern\z@\mathsf{D}}\nolimits}
+\def\nzs{\mathop{\operator@font nzs}\nolimits}
+\def\nzd{\mathop{\operator@font nzd}\nolimits}
+\def\NZS{\mathop{\operator@font NZS}\nolimits}
+\def\NZD{\mathop{\operator@font NZD}\nolimits}
% \end{macrocode}
-% \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{serbian}
%</code>
% \end{macrocode}
%
% \Finale
+%%
%% \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
@@ -309,4 +404,4 @@
%% Grave accent \` Left brace \{ Vertical bar \|
%% Right brace \} Tilde \~}
%%
-\endinput
+\endinput \ No newline at end of file
diff --git a/Master/texmf-dist/source/generic/babel-serbian/serbian.ins b/Master/texmf-dist/source/generic/babel-serbian/serbian.ins
index 137084466d2..e163deea29f 100644
--- a/Master/texmf-dist/source/generic/babel-serbian/serbian.ins
+++ b/Master/texmf-dist/source/generic/babel-serbian/serbian.ins
@@ -3,11 +3,11 @@
%% driver files from the doc files in this package when run through
%% LaTeX or TeX.
%%
-%% Copyright 1989-2005 Johannes L. Braams and any individual authors
+%% Copyright 2019 Uroš Stefanović and any individual authors
%% listed elsewhere in this file. All rights reserved.
%%
-%% This file is part of the Babel system.
-%% --------------------------------------
+%% This file is intended to be used with the Babel system.
+%% ------------------------------------------------------
%%
%% It may be distributed and/or modified under the
%% conditions of the LaTeX Project Public License, either version 1.3
@@ -19,11 +19,8 @@
%%
%% This work has the LPPL maintenance status "maintained".
%%
-%% The Current Maintainer of this work is Johannes Braams.
+%% The Current Maintainer of this work is Uroš Stefanovic.
%%
-%% The list of all files belonging to the LaTeX base 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
@@ -31,7 +28,7 @@
%%
%% --------------- start of docstrip commands ------------------
%%
-\def\filedate{1999/03/13}
+\def\filedate{2019/07/16}
\def\batchfile{serbian.ins}
\input docstrip.tex
@@ -53,11 +50,11 @@
\declarepreamble\mainpreamble
This is a generated file.
-Copyright 1989-2005 Johannes L. Braams and any individual authors
+Copyright 2019 Uroš Stefanović and any individual authors
listed elsewhere in this file. All rights reserved.
-This file was generated from file(s) of the Babel system.
----------------------------------------------------------
+This file is intended to be used with the Babel system.
+------------------------------------------------------
It may be distributed and/or modified under the
conditions of the LaTeX Project Public License, either version 1.3
@@ -69,15 +66,7 @@ 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 Current Maintainer of this work is Uroš Stefanović.
The list of derived (unpacked) files belonging to the distribution
and covered by LPPL is defined by the unpacking scripts (with
@@ -87,11 +76,11 @@ extension .ins) which are part of the distribution.
\declarepreamble\fdpreamble
This is a generated file.
-Copyright 1989-2005 Johannes L. Braams and any individual authors
+Copyright 2019 Uroš Stefanović and any individual authors
listed elsewhere in this file. All rights reserved.
-This file was generated from file(s) of the Babel system.
----------------------------------------------------------
+This file is intended to be used with the Babel system.
+------------------------------------------------------
It may be distributed and/or modified under the
conditions of the LaTeX Project Public License, either version 1.3
@@ -103,15 +92,7 @@ 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 Current Maintainer of this work is Uroš Stefanović.
In particular, permission is granted to customize the declarations in
this file to serve the needs of your installation.
@@ -121,28 +102,30 @@ of this file under its original name.
\endpreamble
-\usedir{tex/generic/babel}
\keepsilent
-
-\usepreamble\mainpreamble
-\generate{\file{serbian.ldf}{\from{serbian.dtx}{code}}}
+\askforoverwritefalse
+
+\usedir{tex/generic/babel/contrib}
+\usepreamble\mainpreamble
+\generate{\file{serbian.ldf}{\from{serbian.dtx}{code}}
+ }
\usepreamble\fdpreamble
-
+
\ifToplevel{
\Msg{***********************************************************}
\Msg{*}
\Msg{* To finish the installation you have to move the following}
\Msg{* files into a directory searched by TeX:}
\Msg{*}
-\Msg{* \space\space All *.fd}
+\Msg{* \space\space All *.def, *.fd, *.ldf, *.sty}
\Msg{*}
\Msg{* To produce the documentation run the files ending with}
-\Msg{* `.fdd' through LaTeX.}
+\Msg{* '.dtx' and `.fdd' through LaTeX.}
\Msg{*}
\Msg{* Happy TeXing}
\Msg{***********************************************************}
}
-\endinput
+\endinput \ No newline at end of file
diff --git a/Master/texmf-dist/tex/generic/babel-serbian/serbian.ldf b/Master/texmf-dist/tex/generic/babel-serbian/serbian.ldf
index cde349e6805..2a03053afec 100644
--- a/Master/texmf-dist/tex/generic/babel-serbian/serbian.ldf
+++ b/Master/texmf-dist/tex/generic/babel-serbian/serbian.ldf
@@ -7,11 +7,11 @@
%% serbian.dtx (with options: `code')
%% This is a generated file.
%%
-%% Copyright 1989-2005 Johannes L. Braams and any individual authors
+%% Copyright 2019 Uroš Stefanović and any individual authors
%% listed elsewhere in this file. All rights reserved.
%%
-%% This file was generated from file(s) of the Babel system.
-%% ---------------------------------------------------------
+%% This file is intended to be used with the Babel system.
+%% ------------------------------------------------------
%%
%% It may be distributed and/or modified under the
%% conditions of the LaTeX Project Public License, either version 1.3
@@ -23,35 +23,59 @@
%%
%% 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 Current Maintainer of this work is Uroš Stefanović.
%%
%% 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.
\ProvidesLanguage{serbian}
- [2005/03/31 v1.0d Serbocroatian support from the babel system]
-\LdfInit{serbian}\captionsserbian
+ [2019/07/16 2.0 Serbian Latin support for the Babel system]
+%% File `serbian.dtx'
+\LdfInit{serbian}{captionsserbian}
+\ifdefined\if@srb@uni@ode
+ \PackageError{babel}{if@srb@uni@ode already defined.}
+ \relax
+\fi
+\newif\if@srb@uni@ode
+\ifdefined\luatexversion \@srb@uni@odetrue \else
+\ifdefined\XeTeXrevision \@srb@uni@odetrue \fi\fi
\ifx\l@serbian\@undefined
- \@nopatterns{Serbian}
- \adddialect\l@serbian0\fi
+ \@nopatterns{Serbian}
+ \adddialect\l@serbian0
+\fi
+\initiate@active@char{"}
+\begingroup \catcode`\"12
+\def\reserved@a{\endgroup
+ \def\@SS{\mathchar"7019 }
+ \def\dq{"}}
+\reserved@a
+\declare@shorthand{serbian}{"c}{\textormath{\v c}{\check c}}
+\declare@shorthand{serbian}{"d}{\textormath{\dj}{\textnormal{\dj}}}
+\declare@shorthand{serbian}{"s}{\textormath{\v s}{\check s}}
+\declare@shorthand{serbian}{"z}{\textormath{\v z}{\check z}}
+\declare@shorthand{serbian}{"C}{\textormath{\v C}{\check C}}
+\declare@shorthand{serbian}{"D}{\textormath{\DJ}{\textnormal{\DJ}}}
+\declare@shorthand{serbian}{"S}{\textormath{\v S}{\check S}}
+\declare@shorthand{serbian}{"Z}{\textormath{\v Z}{\check Z}}
+\declare@shorthand{serbian}{"`}{\quotedblbase}
+\declare@shorthand{serbian}{"'}{\textquotedblleft}
+\declare@shorthand{serbian}{"<}{\guillemotleft}
+\declare@shorthand{serbian}{">}{\guillemotright}
+\declare@shorthand{serbian}{""}{\hskip\z@skip}
+\declare@shorthand{serbian}{"~}{\textormath{\leavevmode\hbox{-}}{-}}
+\declare@shorthand{serbian}{"=}{\nobreak-\hskip\z@skip}
+\declare@shorthand{serbian}{"|}{\textormath{\nobreak\discretionary{-}{}{\kern.03em}\allowhyphens}{}}
+\declare@shorthand{serbian}{"-}{\nobreak\discretionary{-}{-}{-}\bbl@allowhyphens}
\addto\captionsserbian{%
\def\prefacename{Predgovor}%
\def\refname{Literatura}%
- \def\abstractname{Sa\v{z}etak}%
+ \def\abstractname{Sa\v zetak}%
\def\bibname{Bibliografija}%
\def\chaptername{Glava}%
\def\appendixname{Dodatak}%
- \def\contentsname{Sadr\v{z}aj}%
- \def\listfigurename{Slike}%
- \def\listtablename{Tabele}%
+ \def\contentsname{Sadr\v zaj}%
+ \def\listfigurename{Spisak slika}%
+ \def\listtablename{Spisak tabela}%
\def\indexname{Indeks}%
\def\figurename{Slika}%
\def\tablename{Tabela}%
@@ -59,66 +83,108 @@
\def\enclname{Prilozi}%
\def\ccname{Kopije}%
\def\headtoname{Prima}%
- \def\pagename{Strana}%
- \def\seename{Vidi}%
- \def\alsoname{Vidi tako\dj e}%
+ \def\pagename{strana}%
+ \def\seename{vidi}%
+ \def\alsoname{vidi tako\dj e}%
\def\proofname{Dokaz}%
- \def\glossaryname{Glossary}% <-- Needs translation
+ \def\glossaryname{Re\v cnik}%
+}%
+\if@srb@uni@ode
+ \addto\captionsserbian{%
+ \def\abstractname{Sažetak}%
+ \def\contentsname{Sadržaj}%
+ \def\alsoname{vidi takođe}%
+ \def\glossaryname{Rečnik}%
}%
-\def\dateserbian{%
- \def\today{\number\day .~\ifcase\month\or
- januar\or februar\or mart\or april\or maj\or
- juni\or juli\or avgust\or septembar\or oktobar\or novembar\or
- decembar\fi \space \number\year}}
-\initiate@active@char{"}
+\fi
+\let\captionsserbian@ijekav=\captionsserbian
+\addto\captionsserbian@ijekav{
+ \def\partname{Dio}%
+ \def\glossaryname{Rje\v cnik}%
+}
+\if@srb@uni@ode
+ \addto\captionsserbian@ijekav{
+ \def\glossaryname{Rječnik}%
+ }
+\fi
+ \def\dateserbian{%
+ \def\month@serbian{\ifcase\month\or
+ januar\or
+ februar\or
+ mart\or
+ april\or
+ maj\or
+ jun\or
+ jul\or
+ avgust\or
+ septembar\or
+ oktobar\or
+ novembar\or
+ decembar\fi}
+ \def\today{\number\day.~\month@serbian\ \number\year\@ifstar{}{.}}
+ \def\todayRoman{\number\day.~\@Roman\month~\number\year\@ifstar{}{.}}}
+ \let\dateserbian@datei=\dateserbian
+ \addto\dateserbian@datei{
+ \def\month@serbian@datei{\ifnum\month=6 juni%
+ \else\ifnum\month=7 juli\else\month@serbian\fi\fi}
+ \def\today{\number\day.~\month@serbian@datei\ \number\year\@ifstar{}{.}}
+}
+\providehyphenmins{\CurrentOption}{\tw@\tw@}
+\providehyphenmins{serbian}{\tw@\tw@}
\addto\extrasserbian{\languageshorthands{serbian}}
\addto\extrasserbian{\bbl@activate{"}}
\addto\noextrasserbian{\bbl@deactivate{"}}
-\declare@shorthand{serbian}{"c}{\textormath{\v c}{\check c}}
-\declare@shorthand{serbian}{"d}{\textormath{\dj}{\dj}}%%
-\declare@shorthand{serbian}{"s}{\textormath{\v s}{\check s}}
-\declare@shorthand{serbian}{"z}{\textormath{\v z}{\check z}}
-\declare@shorthand{serbian}{"C}{\textormath{\v C}{\check C}}
-\declare@shorthand{serbian}{"D}{\textormath{\DJ}{\DJ}}%%
-\declare@shorthand{serbian}{"S}{\textormath{\v S}{\check S}}
-\declare@shorthand{serbian}{"Z}{\textormath{\v Z}{\check Z}}
-\declare@shorthand{serbian}{"`}{%
- \textormath{\quotedblbase{}}{\mbox{\quotedblbase}}}
-\declare@shorthand{serbian}{"'}{%
- \textormath{\textquotedblleft{}}{\mbox{\textquotedblleft}}}
-\declare@shorthand{serbian}{"<}{%
- \textormath{\guillemotleft{}}{\mbox{\guillemotleft}}}
-\declare@shorthand{serbian}{">}{%
- \textormath{\guillemotright{}}{\mbox{\guillemotright}}}
-\declare@shorthand{serbian}{"-}{\nobreak-\bbl@allowhyphens}
-\declare@shorthand{serbian}{""}{\hskip\z@skip}
-\declare@shorthand{serbian}{"|}{%
- \textormath{\discretionary{-}{}{\kern.03em}}{}}
-\ifx\fmtname plain \else
- \let\@aifORI\@afterindentfalse
- \def\bbl@frenchindent{\let\@afterindentfalse\@afterindenttrue
- \@afterindenttrue}
- \def\bbl@nonfrenchindent{\let\@afterindentfalse\@aifORI
- \@afterindentfalse}
- \addto\extrasserbian{\bbl@frenchindent}
- \addto\noextrasserbian{\bbl@nonfrenchindent}
-\fi
-\def\sh{\mathop{\operator@font sh}\nolimits} % same as \sinh
-\def\ch{\mathop{\operator@font ch}\nolimits} % same as \cosh
-\def\th{\mathop{\operator@font th}\nolimits} % same as \tanh
-\def\cth{\mathop{\operator@font cth}\nolimits} % same as \coth
+\addto\extrasserbian{\bbl@frenchspacing}
+\addto\noextrasserbian{\bbl@nonfrenchspacing}
+\let\@aifORI\@afterindentfalse
+\def\bbl@serbianindent{\let\@afterindentfalse\@afterindenttrue\@afterindenttrue}
+\def\bbl@nonserbianindent{\let\@afterindentfalse\@aifORI\@afterindentfalse}
+\addto\extrasserbian{\bbl@serbianindent}
+\addto\noextrasserbian{\bbl@nonserbianindent}
+\bbl@declare@ttribute{serbian}{ijekav}{%
+ \PackageInfo{babel}{Serbian attribute set to ijekav}%
+ \let\captionsserbian=\captionsserbian@ijekav }
+\@onlypreamble\captionsserbian@ijekav
+\bbl@declare@ttribute{serbian}{quotes}{%
+ \PackageInfo{babel}{Serbian attribute set to quotes}%
+ \declare@shorthand{serbian}{"'}{\textquotedblright} }
+\bbl@declare@ttribute{serbian}{datei}{%
+ \PackageInfo{babel}{Serbian attribute set to datei}%
+ \let\dateserbian=\dateserbian@datei }
+\@onlypreamble\dateserbian@datei
+\def\sh{\mathop{\operator@font sh}\nolimits}
+\def\ch{\mathop{\operator@font ch}\nolimits}
+\def\tg{\mathop{\operator@font tg}\nolimits}
+\def\ctg{\mathop{\operator@font ctg}\nolimits}
+\def\arctg{\mathop{\operator@font arctg}\nolimits}
+\def\arcctg{\mathop{\operator@font arcctg}\nolimits}
+\addto\extrasserbian{%
+ \babel@save{\th}%
+ \let\ltx@th\th
+ \def\th{\textormath{\ltx@th}%
+ {\mathop{\operator@font th}\nolimits}}%
+ }
+\def\cth{\mathop{\operator@font cth}\nolimits}
\def\arsh{\mathop{\operator@font arsh}\nolimits}
\def\arch{\mathop{\operator@font arch}\nolimits}
\def\arth{\mathop{\operator@font arth}\nolimits}
\def\arcth{\mathop{\operator@font arcth}\nolimits}
-\def\tg{\mathop{\operator@font tg}\nolimits} % same as \tan
-\def\ctg{\mathop{\operator@font ctg}\nolimits} % same as \cot
-\def\arctg{\mathop{\operator@font arctg}\nolimits} % same as \arctan
-\def\arcctg{\mathop{\operator@font arcctg}\nolimits}
-\def\Prob{\mathop{\mathsf P\hskip0pt}\nolimits}
-\def\Expect{\mathop{\mathsf E\hskip0pt}\nolimits}
-\def\Variance{\mathop{\mathsf D\hskip0pt}\nolimits}
+\def\cosec{\mathop{\operator@font cosec}\nolimits}
+\def\arcsec{\mathop{\operator@font arcsec}\nolimits}
+\def\arccosec{\mathop{\operator@font arccosec}\nolimits}
+\def\sech{\mathop{\operator@font sech}\nolimits}
+\def\cosech{\mathop{\operator@font cosech}\nolimits}
+\def\arsech{\mathop{\operator@font arsech}\nolimits}
+\def\arcosech{\mathop{\operator@font arcosech}\nolimits}
+\def\Prob{\mathop{\kern\z@\mathsf{P}}\nolimits}
+\def\Expect{\mathop{\kern\z@\mathsf{E}}\nolimits}
+\def\Variance{\mathop{\kern\z@\mathsf{D}}\nolimits}
+\def\nzs{\mathop{\operator@font nzs}\nolimits}
+\def\nzd{\mathop{\operator@font nzd}\nolimits}
+\def\NZS{\mathop{\operator@font NZS}\nolimits}
+\def\NZD{\mathop{\operator@font NZD}\nolimits}
\ldf@finish{serbian}
+%%
%% \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