%%% This is hylang.tex (version 1.0), where language definitions
%%% actually occur. The first one should always be
%%% American English, for compatibility with plain TeX.
%%%
%%% Users can modify this file in order to define the
%%% languages they need.
%%%
%%% Every language definition should be followed by a
%%% \refinelanguage command where conventions specific to 
%%% the language are set; users should at least provide 
%%% the left and right hyphenation minima using
%%% \hyphenmins{<left>}{<right>}
%%%
%%% In the third argument one puts what has to be done
%%% when activating the language; in the fourth argument
%%% what needs to be undone.

%%% US English must always come first
\definebaselanguage{en}{US}{hyphen} %%% <--- don't modify
\refinelanguage{en}{US}{\hyphenmins{2}{3}}{}

%%% Italian
\definelanguage{it}{IT}{ithyph}
\refinelanguage{it}{IT}{\hyphenmins{2}{2}\lccode`\'=`\'}{\lccode`\'=0 }

%%% Add other languages if needed
%%%
%%% The arguments to \definelanguage are:
%%% #1: the language code; it is an arbitrary string, use the 
%%%     ISO two-letter language code for uniformity, or `nde' for
%%%     new orthography German
%%% #2: the nation code; use the uppercase ISO two-letter code
%%% #3: the file with hyphenation patterns
%%%
%%% The arguments to \refinelanguage and \refinedialect are:
%%% #1 and #2: a pair defined through \definelanguage or \definedialect
%%% #3: commands to be executed when entering the language
%%% #4: commands to be undone when entering a new language
%%%
% \definelanguage{xx}{YY}{xxhyph}
% \refinelanguage{xx}{YY}{<something>}{<something>}
%
% \definedialect{aa}{BB}{xx}{XX}
% \refinedialect{aa}{BB}{<something>}{<something>}

% At last the fallback, a language with no patterns
\definelanguage{zz}{ZZ}{zerohyph}
% \refinelanguage{zz}{ZZ}{}{} % no need to set conventions

%%% Aliases
\addalias\US{en}{US}
\addalias\IT{it}{IT}
\addalias\ZZ{zz}{ZZ}
\addalias\nohyphens{zz}{ZZ}

\endinput

