% \iffalse meta-comment
%
% Copyright 1989-2015 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 Jaan Vajakas.
% 
% 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{325}
% \iffalse
%    Tell the \LaTeX\ system who we are and write an entry on the
%    transcript.
%<*dtx>
\ProvidesFile{estonian.dtx}
%</dtx>
%<code>\ProvidesLanguage{estonian}
%\fi
%\ProvidesFile{estonian.dtx}
        [2015/08/05 v1.1a Estonian support for the babel system]
%\iffalse
%% File `estonian.dtx'
%% Babel package for LaTeX version 2e
%% Copyright (C) 1989 - 2009
%%           by Johannes Braams, TeXniek
%
%% Estonian language Definition File
%% Copyright (C) 1991 - 2009
%%           by Enn Saar, Tartu Astrophysical Observatory
%              Tartu Astrophysical Observatory
%              EE-2444 T\~oravere
%              Estonia
%              tel: +372 7 410 267
%              fax: +372 7 410 205
%              saar@aai.ee
%
%              Johannes Braams, TeXniek
%
%% Please report errors to: Jaan Vajakas  jaanvajakas at hot.ee
%%                         (or Enn Saar  saar at aai.ee
%%                          or J. L. Braams  babel at braams.xs4all.nl)
%
%    This file is part of the babel system, it provides the source
%    code for the Estonian language definition file. The original
%    version of this file was written by Enn Saar (saar@aai.ee).
%    Modified by Jaan Vajakas (jaanvajakas@hot.ee).
%<*filedriver>
\documentclass{ltxdoc}
\newcommand*\TeXhax{\TeX hax}
\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}
 \DocInput{estonian.dtx}
\end{document}
%</filedriver>
%\fi
%
% \RecordChanges
%
% \changes{estonian-1.0b}{1995/06/16}{corrected typos}
% \changes{estonian-1.0e}{1996/10/10}{Replaced \cs{undefined} with
%    \cs{@undefined} and \cs{empty} with \cs{@empty} for consistency
%    with \LaTeX, moved the definition of \cs{atcatcode} right to the
%    beginning.}
% \changes{estonian-1.0k}{2009/03/07}{corrected documentation of the
%    commands \texttt{"-} and \cs{-}}
% \changes{estonian-1.1}{2014/02/20}{added usage guidelines to the
%    documentation}
% \changes{estonian-1.1a}{2015/08/05}{small improvements in documentation}
%
% \GetFileInfo{estonian.dtx}
%
% \title{Estonian language support for \babel}
% \author{Enn Saar\footnote{\texttt{saar@aai.ee}, original author (inactive)},
% Jaan Vajakas\footnote{\texttt{jaanvajakas@hot.ee}, maintainer since version 1.0k}}
% \date{\filedate, \fileversion}
%
% \maketitle
%
%    The file \file{\filename} defines the language definition macro's
%    for the Estonian language.
%
%    This file was written as part of the TWGML project, and borrows
%    heavily from the \babel\ German and Spanish language files
%    \file{germanb.ldf} and \file{spanish.ldf}.
%
%    Estonian has the same umlauts as German (\"a, \"o, \"u), but in
%    addition to this, we have also \~o, and two recent characters
%    \v s and \v z, so we need at least two active characters.
%    We shall use |"| and |~| to type Estonian accents on ASCII
%    keyboards (in the 7-bit character world). Their use is given in
%    table~\ref{tab:estonian-quote}.
%    \begin{table}[htb]
%     \begin{center}
%     \begin{tabular}{lp{8cm}}
%      |~o| & |\~o|, (and uppercase); \\
%      |"a| & |\"a|, (and uppercase); \\
%      |"o| & |\"o|, (and uppercase); \\
%      |"u| & |\"u|, (and uppercase); \\
%      |~s| & |\v s|, (and uppercase); \\
%      |~z| & |\v z|, (and uppercase); \\
%      \verb="|= & disable ligature at this position and allow hyphenation at this position; \\
%      |"-| & like |\-|, but allowing hyphenation
%                  in the rest of the word;\\
%      |"`| & for Estonian low left double quotes (same as German);\\
%      |"'| & for Estonian right double quotes;\\
%      |"<| & for French left double quotes (also rather popular)\\
%      |">| & for French right double quotes.\\
%     \end{tabular}
%     \caption{The extra definitions made
%              by \file{estonian.ldf}}\label{tab:estonian-quote}
%     \end{center}
%    \end{table}
%    These active accent characters behave according to their original
%    definitions if not followed by one of the characters indicated in
%    that table; the original quote character can be typed using the
%    macro |\dq|.
%
% \section{Usage guidelines}
% 
% \subsection{Overview and usage example}
%
% In short, it is recommended to include lines like the following in the preamble:
% \begin{itemize}
% \item in \LaTeX{}:
%\begin{verbatim}
%\usepackage[utf8]{inputenc}
%\usepackage[T1]{fontenc}
%\usepackage{mathptmx}  % or \usepackage{lmodern} or something else
%\usepackage[estonian .notilde]{babel}
%\end{verbatim}
% \item in XeLaTeX or LuaLaTeX:\footnote{In XeLaTeX and LuaLaTeX, you may want
% to use the more modern \textsf{polyglossia} package instead of \babel{},
% although the latter also works.}
%\begin{verbatim}
%\usepackage[estonian .notilde]{babel}
%\usepackage{fontspec}
%\end{verbatim}
% \end{itemize}
% When saving your file, make sure your text editor saves it in the UTF-8 encoding.
%
% In the following subsections, the rationale of these options is explained.
% Some authors have also advised that ligatures should be turned off in Estonian;
% the last subsection tries to explain why and how.
%
% \subsection{Use the T1 font encoding and avoid CM}
% If using the Estonian package in \LaTeX, it is recommended to choose
% the T1 output encoding (also known as the Cork encoding). It will give you better hyphenation,
% as the standard Estonian hyphenation file \file{eehyph.tex} is in this encoding.
% You can choose the T1 output encoding with
% |\usepackage[T1]{fontenc}|.
%
% If you like Computer Modern (CM), the default font, then we recommend using
% its successor Latin Modern (|\usepackage{lmodern}|) instead --- it is almost identical but
% has the tilde in the letter ``\~o'' slightly lower, looking more natural.
% (In the OT1 encoding, the Estonian package takes special care to lower the tilde,
% but that feature is not supported for the T1 output encoding since
% version 1.0k of the Estonian package, as it created many issues of its own.)
%
% In XeLaTeX and LuaLaTeX, the default font (CM) does not support accented letters
% and therefore the \textsf{fontspec} package (or \textsf{xltxtra}) has to be used.
%
% \subsection{Use UTF-8 and disable the tilde shorthands}
%
% In the early 1990s, handling accented letters was a problem
% for many programs. So shorthands for accented letters in Estonian (|~o|, |"a| etc.) were created.
% Nowadays the UTF-8 standard is widespread, allowing to represent
% letters from almost all the world's languages in a single text file.
% Therefore it is recommended to use UTF-8 as input encoding and type Estonian accented
% characters directly, instead of using the shorthands. We also recommend UTF-8 over
% cp1257, the default encoding for Estonian on Windows, since UTF-8 contains more
% characters and is more likely understood
% by the text editors of your foreign partners.
%
% In addition, a problem is caused by the shorthands starting with tilde.
% Namely, in \TeX, the |~| command originally means non-breaking space:
% if \babel{} is not used then e.~g. |U.~S.| is rendered as ``U.~S.''.
% However, with |\usepackage[estonian]{babel}| in preamble,
% |U.~S.| is rendered as ``U.\v S.'' by default.
% If you don't need the shorthands starting with tilde,
% you can disable them and restore the original behavior of |~| by using the option
% |notilde|, like this:
%\begin{verbatim}\usepackage[estonian .notilde]{babel}\end{verbatim}
% The option |notilde| was introduced in version 1.1 of the Estonian package (released 2014/02/21).
% If you need compatibility with older versions, write instead
%\begin{verbatim}
%\usepackage[estonian]{babel}
%\makeatletter\addto\extrasestonian{\bbl@deactivate{~}}\makeatother
%\addto\captionsestonian{% Redefine captions containing ~o
%  \def\abstractname{Kokkuv\~ote}%
%  \def\proofname{T\~oestus}%
%  \def\glossaryname{S\~onastik}%
%}
%\end{verbatim}
% If you don't disable the tilde shorthands, you must write |U.\nobreak{} S.|
%
% \subsection{Ligatures}
% Using ligatures in Estonian is discouraged by some authors; it may
% slightly harm readability and has been uncommon in the past.\footnote{
% In their ``L\"uhike \LaTeX i\~opetus'' (1994), Hans Ibrus and Enn Saar say that \TeX's ligatures 
% are ``not recommended'' in Estonian and give the word ``fiiber'' as a (perhaps particularly) bad example.
% Indeed, ``ii'' denotes a single long vowel, but the ligature seems to suggest
% that instead the first two letters ``f'' and ``i'' are grouped together.
% Ligatures are practically absent from Estonian books published throughout the Soviet
% period (e.~g. mathematical books have no ligature in ``def\/initsioon'').
% During Estonia's first independence period, ligatures
% did occasionally appear in books: e.~g. Borkvell's ``Tasapinnalise ja ruumilise anal\"u\"utilise geomeetria p\~ohijooni'' from 1937
% (fi ligature in ``definitsioon'') or ``Eesti Ents\"uklopeedia'' from 1932--1937
% (having e.~g. ``Af\/fiinsus'' with ligature fi, but ``Af\/f\/iks'' without ligatures and ``aff\/iinseks'' with ligature ff ---
% so ligatures were used quite randomly and arguably for the convenience of the typesetter rather than the reader).}
% By default, \TeX{} creates the ligatures fi, ff, fl, ffi and ffl in the CM fonts (other fonts may have other
% ligatures). You can disable ligatures one by one (e.~g. \verb=f\/ii"-ber= or {\tt \v sef"\textbar lu"-se}\footnote{The commands {\tt \textbackslash/} and {\tt "\textbar} both disable ligature; the latter also enables hyphenation \emph{\v sef-luse}. Unfortunately both disable hyphenation in the rest of the word; that's why we need the {\tt "-} here.}),
% but if you want to get rid of all ligatures, then
% \begin{itemize}
% \item in \LaTeX, include the following two lines in your preamble:\footnote{
% Note that these two lines disable only ligatures starting with f.
% You would not want to apply {\tt \textbackslash DisableLigatures} to all letter combinations,
% since it also disables kerning (and letter combinations like
% ``Ve'' and ``AV'' look much nicer with kerning).}
%\begin{verbatim}
%\usepackage{microtype}
%\DisableLigatures[f]{encoding = *, family = * }
%\end{verbatim}
% \item in XeLaTeX and LuaLaTeX, use this line instead (replace the font name):
%\begin{verbatim}
%\setmainfont[Ligatures={NoRequired,NoCommon,NoContextual}]{Font Name}
%\end{verbatim}
% \end{itemize}
% \StopEventually{}
%
% \section{Implementation}
%
%    The macro |\LdfInit| takes care of preventing that this file is
%    loaded more than once, checking the category code of the
%    \texttt{@} sign, etc.
% \changes{estonian-1.0e}{1996/10/30}{Now use \cs{LdfInit} to perform
%    initial checks} 
%    \begin{macrocode}
%<*code>
\LdfInit{estonian}\captionsestonian
%    \end{macrocode}
%
%    If Estonian is not included in the format file (does not have
%    hyphenation patterns), we shall use English hyphenation.
%
%    \begin{macrocode}
\ifx\l@estonian\@undefined
  \@nopatterns{Estonian}
  \adddialect\l@estonian0
\fi
%    \end{macrocode}
%
%    Now come the commands to switch to (and from) Estonian.
%
%  \begin{macro}{\captionsestonian}
%    The macro |\captionsestonian| defines all strings used in the
%    four standard documentclasses provided with \LaTeX.
%
% \changes{estonian-1.0c}{1995/07/04}{Added \cs{proofname} for
%    AMS-\LaTeX}
% \changes{estonian-1.0d}{1995/07/27}{Added translation of `Proof'}
% \changes{estonian-1.0h}{2000/09/20}{Added \cs{glossaryname}}
% \changes{estonian-1.0j}{2008/07/07}{Replaced the translation of
%    `Proof'}
% \changes{estonian-1.0k}{2009/02/03}{Added translation of
%    `Glossary'}
% \changes{estonian-1.1}{2014/02/20}{Replaced \texttt{\textasciitilde o} with \cs{\textasciitilde o}
%    for compatibility with the \texttt{notilde} option, and to have the same style,
%    also replaced \texttt{"u} with \cs{"u} in ``Peat\"ukk''.}
%    \begin{macrocode}
\addto\captionsestonian{%
  \def\prefacename{Sissejuhatus}%
  \def\refname{Viited}%
  \def\bibname{Kirjandus}%
  \def\appendixname{Lisa}%
  \def\contentsname{Sisukord}%
  \def\listfigurename{Joonised}%
  \def\listtablename{Tabelid}%
  \def\indexname{Indeks}%
  \def\figurename{Joonis}%
  \def\tablename{Tabel}%
  \def\partname{Osa}%
  \def\enclname{Lisa(d)}%
  \def\ccname{Koopia(d)}%
  \def\headtoname{}%
  \def\pagename{Lk.}%
  \def\seename{vt.}%
  \def\alsoname{vt. ka}%
  \def\abstractname{Kokkuv\~ote}%
  \def\chaptername{Peat\"ukk}%
  \def\proofname{T\~oestus}%
  \def\glossaryname{S\~onastik}%
}
%    \end{macrocode}
%  \end{macro}
%
%  \begin{macro}{\dateestonian}
%    The macro |\dateestonian| redefines the command |\today| to
%    produce Estonian dates.
% \changes{estonian-1.0f}{1997/10/01}{Use \cs{edef} to define
%    \cs{today} to save memory}
% \changes{estonian-1.0f}{1998/03/28}{use \cs{def} instead of
%    \cs{edef}} 
%    \begin{macrocode}
\begingroup \catcode`\"\active
\def\x{\endgroup
  \def\month@estonian{\ifcase\month\or
    jaanuar\or veebruar\or m"arts\or aprill\or mai\or juuni\or
    juuli\or august\or september\or oktoober\or november\or
    detsember\fi}}
\x
\def\dateestonian{%
  \def\today{\number\day.\space\month@estonian
    \space\number\year.\space a.}}
%    \end{macrocode}
%  \end{macro}
%
%  Some useful macros, copied from the spanish package (and renamed |es@...| to |et@...|).
%    \begin{macrocode}
\def\et@sdef#1{\babel@save#1\def#1}

\@ifundefined{documentclass}
 {\let\ifet@latex\iffalse}
 {\let\ifet@latex\iftrue}
%    \end{macrocode}
%
%  \begin{macro}{\extrasestonian}
%  \begin{macro}{\noextrasestonian}
%    The macro |\extrasestonian| will perform all the extra
%    definitions needed for Estonian. The macro |\noextrasestonian| is
%    used to cancel the actions of |\extrasestonian|. For Estonian,
%    |"| is made active and has to be treated as `special' (|~| is
%    active already).
%
%    \begin{macrocode}
\initiate@active@char{"}
\initiate@active@char{~}
\addto\extrasestonian{\languageshorthands{estonian}}
\addto\extrasestonian{\bbl@activate{"}\bbl@activate{~}}
%    \end{macrocode}
%
% \changes{estonian-1.0d}{1995/07/27}{Removed the code that changes
%    category, lower case, uper case and space factor codes }
%
% \changes{estonian-1.1}{2014/02/20}{introduced the \texttt{notilde} option} 
%  \begin{macro}{notilde}
%   The option |notilde| disables the shorthands starting with |~|,
%   restoring the original function of |~| as non-breaking space.
%    \begin{macrocode}
\bbl@declare@ttribute{estonian}{notilde}{\addto\extrasestonian{\bbl@deactivate{~}}}
%    \end{macrocode}
%  \end{macro}
%
%    Estonian does not use extra spaces after sentences.
%
%    \begin{macrocode}
\addto\extrasestonian{\bbl@frenchspacing}
\addto\noextrasestonian{\bbl@nonfrenchspacing}
%    \end{macrocode}
%  \end{macro}
%  \end{macro}
%
%  \begin{macro}{\estonianhyphenmins}
%     For Estonian, |\lefthyphenmin| and |\righthyphenmin| are
%    both~2. 
% \changes{estonian-1.0h}{2000/09/22}{Now use \cs{providehyphenmins} to
%    provide a default value}
%    \begin{macrocode}
\providehyphenmins{\CurrentOption}{\tw@\tw@}
%    \end{macrocode}
%  \end{macro}
%
%  The standard \TeX\ accents are too high for Estonian typography,
%  we have to lower them (following the \babel\ German style).
%  For umlauts, we can use |\umlautlow| in \file{babel.ldf}.
% \changes{estonian-1.0k}{2009/02/03}{use \cs{umlauthigh} to restore
%    umlauts (before, \cs{babel@save}\cs{"} was used but that did not work)}
%    \begin{macrocode}
\addto\extrasestonian{\umlautlow}
\addto\noextrasestonian{\umlauthigh}
%    \end{macrocode}
%
%  Redefine tilde (as in \file{spanish.ldf}). In case of \LaTeX, we
%  redefine the internal macro for the OT1 encoding because in case of
%  T1, the display and hyphenation of words containing |\~o| works
%  better without redefining it (e. g. words containing |\et@gentilde|
%  are not hyphenated unless |\allowhyphens| is used; when copied from
%  Acrobat Reader, pasting an \~o generated using |\et@gentilde{o}|
%  gives |~o| rather than \~o; when the \textsf{times} package is used with T1
%  encoding, |\et@gentilde| places the tilde through the letter o).
%  In plain \TeX\ there is no encoding infrastructure, so we just
%  redefine |\~|.
% \changes{estonian-1.0k}{2009/02/03}{redefine \cs{\textasciitilde} only for OT1 (before,
%    redefining \cs{\textasciitilde} resulted in no hyphenation of words containing
%    \cs{\textasciitilde}\texttt{o} in T1 and incorrect display of
%    \cs{\textasciitilde}\texttt{o} with the \textsf{times} package)}
%    \begin{macrocode}
\ifet@latex
  \addto\extrasestonian{%
    \expandafter\et@sdef\csname OT1\string\~\endcsname{\et@gentilde}}
\else
  \addto\extrasestonian{\et@sdef\~{\et@gentilde}}
\fi
%    \end{macrocode}
%
%  \begin{macro}{\et@gentilde}
% \changes{estonian-1.0k}{2009/02/03}{use tilde for all letters except
%    s and z (instead of using caron for all letters except o), like
%    other \babel\ language packages do (this fixes the display of \~n
%    when using the utf8 package)}
% \changes{estonian-1.0k}{2009/02/03}{do not redefine caron any
%    more because the default one looks good enough}
% \changes{estonian-1.0k}{2009/02/03}{renamed macros \cs{gentilde} and
%    \cs{newtilde} to \cs{et@gentilde} and \cs{et@newtilde}}
%    \begin{macrocode}
\def\et@gentilde#1{%
    \if#1s\v{#1}\else\if#1S\v{#1}\else%
    \if#1z\v{#1}\else\if#1Z\v{#1}\else%
    \et@newtilde{#1}%
    \fi\fi\fi\fi}
%    \end{macrocode}
%  \end{macro}
%
%  \begin{macro}{\et@newtilde}
%    For a detailed explanation of the following code see the
%    definition of \cs{lower@umlaut} in \file{babel.dtx}.
% \changes{estonian-1.0k}{2009/02/04}{merged updates in the definition
%    \cs{lower@umlaut} into \cs{et@newtilde}: removed \cs{allowhyphens}
%    and added \cs{bgroup}}
%    \begin{macrocode}
\def\et@newtilde#1{%
  \leavevmode\bgroup\U@D 1ex%
    {\setbox\z@\hbox{\char126}\dimen@ -.45ex\advance\dimen@\ht\z@
      \ifdim 1ex<\dimen@ \fontdimen5\font\dimen@ \fi}%
    \accent126\fontdimen5\font\U@D #1%
  \egroup}
%    \end{macrocode}
%  \end{macro}
%
%    We save the double quote character in |\dq|, and  tilde in |\til|.
% \changes{estonian-1.0k}{2009/02/03}{removed macros \cs{dieresis} and
%    \cs{texttilde} that were used to store the original definitions of
%    \cs{"} and \cs{\textasciitilde}, as they would have no purpose now}
%
%    \begin{macrocode}
\begingroup \catcode`\"12
\edef\x{\endgroup
  \def\noexpand\dq{"}
  \def\noexpand\til{~}}
\x
%    \end{macrocode}
%
%    If the encoding is T1, we have to tell \TeX\ about our redefined
%    accents.
%
% \changes{estonian-1.0g}{1999/04/11}{use \cs{bbl@t@one} instead of
%    \cs{bbl@next}} 
%    \begin{macrocode}
\ifx\f@encoding\bbl@t@one
  \DeclareTextComposite{\~}{T1}{s}{178}
  \DeclareTextComposite{\~}{T1}{S}{146}
  \DeclareTextComposite{\~}{T1}{z}{186}
  \DeclareTextComposite{\~}{T1}{Z}{154}
  \DeclareTextComposite{\"}{T1}{'}{17}
  \DeclareTextComposite{\"}{T1}{`}{18}
  \DeclareTextComposite{\"}{T1}{<}{19}
  \DeclareTextComposite{\"}{T1}{>}{20}
%    \end{macrocode}
%
%    If the encoding differs from T1, we expand the accents, enabling
%    hyphenation beyond the accent. In this case \TeX\ will not find
%    all possible breaks, and we have to warn people.
% \changes{estonian-1.0k}{2009/02/03}{removed definitions of macros
%    \cs{@umlaut} and \cs{@tilde} as they seemed to have no purpose}
%    \begin{macrocode}
\else
  \wlog{Warning: Hyphenation would work better for the T1 encoding.}
\fi
%    \end{macrocode}
%
%    Now we define the shorthands: umlauts,
% \changes{estonian-1.0d}{1995/07/27}{The second argument was missing
%    in the definition of some of the double-quote shorthands}
% \changes{estonian-1.0k}{2009/02/08}{use \cs{allowhyphens} to allow
%    hyphenation in words containing \texttt{"a}, \texttt{"A},
%    \texttt{"o}, \texttt{"O}, \texttt{"u} or \texttt{"U}}
%    \begin{macrocode}
\declare@shorthand{estonian}{"a}{\textormath{\"{a}\allowhyphens}{\ddot a}}
\declare@shorthand{estonian}{"A}{\textormath{\"{A}\allowhyphens}{\ddot A}}
\declare@shorthand{estonian}{"o}{\textormath{\"{o}\allowhyphens}{\ddot o}}
\declare@shorthand{estonian}{"O}{\textormath{\"{O}\allowhyphens}{\ddot O}}
\declare@shorthand{estonian}{"u}{\textormath{\"{u}\allowhyphens}{\ddot u}}
\declare@shorthand{estonian}{"U}{\textormath{\"{U}\allowhyphens}{\ddot U}}
%    \end{macrocode}
%    German and French quotes,
% \changes{estonian-1.0f}{1997/04/03}{Removed empty groups after
%    double quote and guillemot characters}
%    \begin{macrocode}
\declare@shorthand{estonian}{"`}{%
  \textormath{\quotedblbase}{\mbox{\quotedblbase}}}
\declare@shorthand{estonian}{"'}{%
  \textormath{\textquotedblleft}{\mbox{\textquotedblleft}}}
\declare@shorthand{estonian}{"<}{%
  \textormath{\guillemotleft}{\mbox{\guillemotleft}}}
\declare@shorthand{estonian}{">}{%
  \textormath{\guillemotright}{\mbox{\guillemotright}}}
%    \end{macrocode}
%    tildes and carons
%    \begin{macrocode}
\declare@shorthand{estonian}{~o}{\textormath{\~{o}\allowhyphens}{\tilde o}}
\declare@shorthand{estonian}{~O}{\textormath{\~{O}\allowhyphens}{\tilde O}}
\declare@shorthand{estonian}{~s}{\textormath{\v{s}\allowhyphens}{\check s}}
\declare@shorthand{estonian}{~S}{\textormath{\v{S}\allowhyphens}{\check S}}
\declare@shorthand{estonian}{~z}{\textormath{\v{z}\allowhyphens}{\check z}}
\declare@shorthand{estonian}{~Z}{\textormath{\v{Z}\allowhyphens}{\check Z}}
%    \end{macrocode}
%    and some additional commands:
%    \begin{macrocode}
\declare@shorthand{estonian}{"-}{\nobreak\-\bbl@allowhyphens}
\declare@shorthand{estonian}{"|}{%
  \textormath{\nobreak\discretionary{-}{}{\kern.03em}%
              \allowhyphens}{}}
\declare@shorthand{estonian}{""}{\dq}
\declare@shorthand{estonian}{~~}{\til}
%    \end{macrocode}
%
%    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.
% \changes{estonian-1.0e}{1996/11/02}{Now use \cs{ldf@finish} to wrap
%    up} 
%    \begin{macrocode}
\ldf@finish{estonian}
%</code>
%    \end{macrocode}
%
% \PrintChanges
%
% \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
%%   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
