% \iffalse meta-comment
%
% Copyright 1989-2024 Johannes L. Braams and any individual authors
% listed elsewhere in this file.  All rights reserved.
% 
% This file is part of the Babel system.
% --------------------------------------
% 
% It may be distributed and/or modified under the
% conditions of the LaTeX Project Public License, either version 1.3
% of this license or (at your option) any later version.
% The latest version of this license is in
%   http://www.latex-project.org/lppl.txt
% and version 1.3 or later is part of all distributions of LaTeX
% version 2003/12/01 or later.
% 
% This work has the LPPL maintenance status "maintained".
% 
% The Current Maintainer of this work is Javier Bezos
% 
% The list of derived (unpacked) files belonging to the distribution
% and covered by LPPL is defined by the unpacking scripts (with
% extension .ins) which are part of the distribution.
% \fi
%
% \iffalse
%    Tell the \LaTeX\ system who we are and write an entry on the
%    transcript.
%<*dtx>
\ProvidesFile{samin.dtx}
%</dtx>
%<code>\ProvidesLanguage{northernsami}
%<samin>\ProvidesLanguage{samin}
%\fi
%\ProvidesFile{samin.dtx}
        [2024/01/26 v1.0d Northern Sami support from the babel system]
%\iffalse
%% Babel package for LaTeX version 2e
%% Copyright (C) 1989 -- 2024
%%           by Johannes Braams, TeXniek
%%           by Javier Bezos
%
%    This file is part of the babel system, it provides the source code for
%    the Northern Sami 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{samin.dtx}
\end{document}
%</filedriver>
%\fi
% \GetFileInfo{samin.dtx}
%
% \changes{samin-1.0d}{2024/01/23}{Dual load northernsami/samin}
%
%  \section{The North Sami language}
%
%    The file \file{\filename}\footnote{The file described in this
%    section has version number \fileversion\ and was last revised on
%    \filedate.  It was written by Regnor Jernsletten,
%    (\texttt{Regnor.Jernsletten@sami.uit.no}) or
%    (\texttt{Regnor.Jernsletten@eunet.no}).}
%    defines all the language definition macros for the North Sami language.
%
%    Several Sami dialects/languages are spoken in Finland, Norway, Sweden
%    and on the Kola Peninsula (Russia).  The alphabets differ, so there
%    will eventually be a need for more \texttt{.dtx} files for e.g. Lule
%    and South Sami.  Hence the name \file{samin.dtx} (and not
%    \file{sami.dtx} or the like) in the North Sami case.
%
%    There are currently no hyphenation patterns available for the North
%    Sami language, but you might consider using the patterns for Finnish
%    (\file{fi8hyph.tex}), Norwegian (\file{nohyph.tex}) or Swedish
%    (\file{sehyph.tex}).  Add a line for the \texttt{samin}  language to
%    the \file{language.dat} file, and rebuild the \LaTeX\ format file.
%    See the documentation for your \LaTeX\ distribution.
%    
%    A note on writing North Sami in \LaTeX:  The TI encoding and EC fonts
%    do not include the T WITH STROKE letter, which you will need a
%    workaround for.  My suggestion is to place the lines\\
%    |\newcommand{\tx}{\mbox{t\hspace{-.35em}-}}|\\
%    |\newcommand{\txx}{\mbox{T\hspace{-.5em}-}}|\\
%    in the preamble of your documents.  They define the commands\\
%    |\txx{}| for LATIN CAPITAL LETTER T WITH STROKE and \\
%    |\tx{}|  for LATIN SMALL   LETTER T WITH STROKE.
%
%  \subsection{The code of \file{samin.dtx}}
%
% \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{samin}{captionssamin}
%    \end{macrocode}
%
%    When this file is read as an option, i.e. by the |\usepackage|
%    command, \texttt{samin} could be an `unknown' language in
%    which case we have to make it known.  So we check for the
%    existence of |\l@samin| to see whether we have to do
%    something here.
%
%    \begin{macrocode}
\ifx\l@northernsami\@undefined
  \ifx\l@samin\@undefined
    \@nopatterns{Northern Sami}
    \adddialect\l@northernsami\z@
    \let\l@samin\l@northernsami
  \else
    \let\l@northernsami\l@samin
  \fi
\else
  \ifx\l@samin\@undefined
    \let\l@samin\l@northernsami
  \fi
\fi
%    \end{macrocode}
%
%    The next step consists of defining commands to switch to (and
%    from) the North Sami language.
%
%  \begin{macro}{\saminhyphenmins}
%    This macro is used to store the correct values of the hyphenation
%    parameters |\lefthyphenmin| and |\righthyphenmin|.
% \changes{samin-1.0b}{2000/09/26}{use \cs{providehyphenmins}}
%    \begin{macrocode}
\providehyphenmins{\CurrentOption}{\tw@\tw@}
%    \end{macrocode}
%  \end{macro}
%
% \begin{macro}{\captionssamin}
%    The macro |\captionssamin| defines all strings used in the
%    four standard documentclasses provided with \LaTeX.
% \changes{samin-1.0b}{2000/09/26}{Added \cs{glossaryname}}
% \changes{samin-1.0c}{2000/10/04}{Provided the translation for
%    glossary}
%    \begin{macrocode}
\@namedef{captions\CurrentOption}{%
  \def\prefacename{Ovdas\'atni}%
  \def\refname{\v Cujuhusat}%
  \def\abstractname{\v Coahkk\'aigeassu}%
  \def\bibname{Girjj\'ala\v svuohta}%
  \def\chaptername{Kapihttal}%
  \def\appendixname{\v Cuovus}%
  \def\contentsname{Sisdoallu}%
  \def\listfigurename{Govvosat}%
  \def\listtablename{Tabeallat}%
  \def\indexname{Registtar}%
  \def\figurename{Govus}%
  \def\tablename{Tabealla}%
  \def\partname{Oassi}%
  \def\enclname{Mielddus}%
  \def\ccname{Kopia s\'addejuvvon}%
  \def\headtoname{Vuost\'aiv\'aldi}%
  \def\pagename{Siidu}%
  \def\seename{geah\v ca}%
  \def\alsoname{geah\v ca maidd\'ai}%
  \def\proofname{Duo\dj{}a\v stus}%
  \def\glossaryname{S\'atnelistu}%
}%
%    \end{macrocode}
% \end{macro}
%
% \begin{macro}{\datesamin}
%    The macro |\datesamin| redefines the command |\today| to
%    produce North Sami dates.
%    \begin{macrocode}
\@namedef{date\CurrentOption}{%
  \def\today{\ifcase\month\or
    o\dj{}\dj{}ajagem\'anu\or
    guovvam\'anu\or
    njuk\v cam\'anu\or
    cuo\ng{}om\'anu\or
    miessem\'anu\or
    geassem\'anu\or
    suoidnem\'anu\or
    borgem\'anu\or
    \v cak\v cam\'anu\or
    golggotm\'anu\or
    sk\'abmam\'anu\or
    juovlam\'anu\fi
    \space\number\day.~b.\space\number\year}%
}%
%    \end{macrocode}
% \end{macro}
%
%
% \begin{macro}{\extrassamin}
% \begin{macro}{\noextrassamin}
%    The macro |\extrassamin| will perform all the extra
%    definitions needed for the North Sami language. The macro
%    |\noextrassamin| is used to cancel the actions of
%    |\extrassamin|.  For the moment these macros are empty but
%    they are defined for compatibility with the other
%    language definition files.
%
%    \begin{macrocode}
\expandafter\addto\csname extras\CurrentOption\endcsname{}
\expandafter\addto\csname noextras\CurrentOption\endcsname{}
%    \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{\CurrentOption}
%</code>
% Finally, We create a proxy file.
%
%    \begin{macrocode}
%<*samin>
\input northernsami.ldf\relax
%</samin>
%    \end{macrocode}
%
% \Finale
%\endinput

