babel: english, american, USenglish

Does it make any difference (and if so, which) whether I use english, american, or USenglish as the option for the babel package?

I've already looked into the package description, and it seems to be the same to me, but since I consider myself a LaTeX novice, I'm highly interested in an expert opinion. Thanks in advance!

-

No, all three are synonyms for each other as far as Babel is concerned.

From the babel documentation p. 78:

‘American’ is a version of ‘English’ which can have its own hyphenation patterns. The default english patterns are in fact for american english. We allow for the patterns to be loaded as ‘english’ ‘american’ or ‘USenglish’.

There are no differences between these three language names; there are, however, differences in both hyphenation and date formats between these and UKenglish,british (which themselves are synonyms.)

The following document (must be compiled with lualatex) shows both example hypehnation point differences and date format differences for 5 types of specifications: (Australian is excluded here only because there is no lualatex language definition file for it defined.)

% !TEX TS-program = LuaLaTeX
% show hyphenation points code by Patrick Gundlach
% from http://wiki.luatex.org/index.php/Show_the_hyphenation_points
\documentclass[10pt]{article}
\usepackage[margin=.75in]{geometry}
\usepackage[british,UKenglish,USenglish,english,american]{babel}

\usepackage{fontspec}
\usepackage{array}
\newcolumntype{S}{p{.3\textwidth}}
\directlua{
if head.id == 0 or head.id == 1 then % hlist, vlist
elseif head.id == 7 then             % disc
local n = node.new("whatsit","pdf_literal")
n.mode = 0
n.data = "q 0.3 w 0 2 m 0 7 l S Q"
end
end
return true
end

}
\newcommand{\displayinfo}{\languagename\par\today\par Hyphenation of analysis}
\begin{document}
\begin{tabular}{SSS}
\selectlanguage{american}
\displayinfo
&
\selectlanguage{USenglish}
\displayinfo
&
\selectlanguage{english}
\displayinfo
\end{tabular}

\begin{tabular}{SS}
\selectlanguage{british}
\displayinfo
&
\selectlanguage{UKenglish}
\displayinfo
\end{tabular}
\end{document}


-
I have a suspicion that LuaTeX picks up the locale for english, as on my comp english and USenglish displays the date differently (see image in my post). –  Yiannis Lazarides Mar 6 '11 at 18:55
@Yiannis, no I think Caramdir has hit the nail on the head. The order of language loading matters for defining \dateenglish so the second last language defined, seems to make the difference. This isn't an engine difference. (Same behaviour with pdflatex, xelatex and lualatex) –  Alan Munn Mar 6 '11 at 19:10
@Yianni,Alan Munn: It seems to be that english is influenced by the more specific language settings, i.e. it is identical to the last one used in the package option. If english is the last option the second last indeed influences the defined style because of this. Without english the last option defines the style as normal. –  Martin Scharrer Mar 6 '11 at 21:28
It's a bug in the english option. Perhaps too late to be fixed, but a warning would be useful (eg, "don't use english and more specific options together"). –  Javier Bezos Aug 5 '12 at 8:10

Differences in the different versions of english are normally minor and involve hyphenation patterns. There are a number of words that US dictionaries hyphenate differently than those found in english dictionaries.

There are also differences in displaying dates. Here is a minimal to indicate the differences in the way dates are displayed with the various options.

\documentclass{article}
\usepackage[USenglish,british,american,australian,english]{babel}
\begin{document}

\dateenglish
\today

\dateUSenglish
\today

\dateamerican
\today

\dateaustralian
\today

\selectlanguage{english}
\parbox{0.1cm}{
test, however}

\selectlanguage{USenglish}
\parbox{0.1cm}{
test, however}

\selectlanguage{british}

\parbox{0.1cm}{
test, however}
\end{document}


On hyphenation, english,american and USenglish produce the same result (watch out for "however"). On the dates english will be as in english style dates, so to answer the OP's question the only difference will be in the display of the date.

-
@Yiannis This is the difference between the [british]/[UKenglish] (and also [australian]) options compared to [american]/[english]/[USenglish] (and also [canadian]). –  Alan Munn Mar 6 '11 at 15:59
@Yiannis: I'm not a babel-expert, but if Alan is right, then you should either modify or delete your answer. Thanks! –  Hendrik Vogt Mar 6 '11 at 17:35
@Hendrik Just posted a minimal for clarity. On the hyphenation I need to read the docs, but I think Alan is right that english by default is equivalent to american. –  Yiannis Lazarides Mar 6 '11 at 18:17
@Alan @Yannis: the output of \today seems to depend on the order the languages are loaded. On my system, \usepackage[USenglish,UKenglish,english]{babel}...\dateenglish\today gives “6th March 2011”, while \usepackage[UKenglish,USenglish,english]{babel}...\dateenglish\today gives “March 6, 2011”. –  Caramdir Mar 6 '11 at 19:00
@Yiannis, I've posted an example that shows explicit hyphenation points. However, there's a weird inconsistency between the date format in my example vs. yours which doesn't make sense to me. Your \dateenglish\today shows D M Y; mine shows M D, Y. –  Alan Munn Mar 6 '11 at 19:01