diff options
Diffstat (limited to 'Master/texmf-dist/source/latex/babelbib/babelbib.dtx')
-rw-r--r-- | Master/texmf-dist/source/latex/babelbib/babelbib.dtx | 892 |
1 files changed, 754 insertions, 138 deletions
diff --git a/Master/texmf-dist/source/latex/babelbib/babelbib.dtx b/Master/texmf-dist/source/latex/babelbib/babelbib.dtx index ab7715223c9..8ac31e748e2 100644 --- a/Master/texmf-dist/source/latex/babelbib/babelbib.dtx +++ b/Master/texmf-dist/source/latex/babelbib/babelbib.dtx @@ -46,7 +46,7 @@ \DoNotIndex{\bibs,\ifx,\else,\fi,\ ,\ae,\emph,\input} \CodelineNumbered \RecordChanges -\CheckSum{7995} +\CheckSum{8856} \hyphenation{bib-lio-gra-phy} \begin{document} \DocInput{babelbib.dtx} @@ -92,6 +92,25 @@ % \changes{1.13}{2005/06/27}{Apply corrections to and complete Italian % language}% % \changes{1.14}{2005/07/11}{Complete and correct catalan}% +% \changes{1.20}{2005/11/13}{Add Greek language}% +% \changes{1.20}{2005/11/13}{Change method to write \texttt{urldate} +% to enable to write it in brackets}% +% \changes{1.20}{2005/11/13}{Bugfix in names writing of abbreviated +% styles}% +% \changes{1.20}{2005/11/13}{Ensure to write URL's in latin font}% +% \changes{1.20}{2005/11/13}{Numerals for French and Spanish}% +% \changes{1.20}{2005/11/13}{Add the fields \texttt{ANNOTE} and +% \texttt{ANNOTELANGUAGE} to all bib\TeX\ styles and introduce the +% command \cs{btxannotation} which prints the annotations on +% request.}% +% \changes{1.20}{2005/11/13}{Add the package options \texttt{isbn}, +% \texttt{noisbn}, \texttt{issn}, \texttt{noissn}, +% \texttt{varlanguage}, \texttt{nolanguagenames}, \texttt{annote}, and +% \texttt{noannote}}% +% \changes{1.20}{2005/11/13}{Add new font \texttt{jtitle} for titles +% of journal articles}% +% \changes{1.20}{2005/11/13}{Fix a bug with additional spaces after +% names}% % % \maketitle % \begin{abstract} @@ -166,7 +185,8 @@ % % By default, the language of the bibliographic keywords (``editor'', % ``page'', etc.) switches for each item to the language of the cited -% document. +% document.\footnote{This is equivalent to using the package option +% \texttt{varlanguage}.} % If all citations shall be written in the same language, add the % option\index{fixlanguage=\texttt{fixlanguage}|usage} |fixlanguage| % to the package call. @@ -193,6 +213,7 @@ % \index{languagenames=\texttt{languagenames}|usage}% % If you want to use this style, you have to add the option % |languagenames| to the call of the package. +% Default is |nolanguagenames|. % % \DescribeMacro{\declarebtxcommands}% % If you don't like some of the keywords provided by |babelbib|, or if @@ -221,7 +242,8 @@ % The \AmS\ \BibTeX\ style |amsplain| uses ``Ph.D.\ thesis'' instead % of the default ``PhD thesis'' for |babamspl|. % If you want the same keyword as in the \AmS\ original, you can use -% the |\declarebtxcommands| line shown above. +% the \cs{declarebtxcommands} line shown above. +% % % \section{Preparing the \texttt{bib} files} % @@ -260,8 +282,8 @@ % \begin{verbatim} %\setbtxfallbacklanguage{ngerman}\end{verbatim} % -% |babelbib| supports four additional fields: -% |ISBN|, |ISSN|, |URL|, and |URLDATE|. +% |babelbib| supports a couple of additional fields: +% |ISBN|, |ISSN|, |URL|, |URLDATE|, and |ANNOTE|. % |ISBN| and |ISSN| take the ISBN or ISSN respectively. % |URL| is the address of a WWW page while |URLDATE| is the date when % the WWW page has been visited. @@ -269,6 +291,17 @@ % e.\,g., if the user has loaded |url.sty|. % Otherwise, |babelbib| defines a |\url| command which just calls % |\texttt|. +% |ANNOTE| typesets annotations after each entry in the bibliography. +% By default, a |quotation| environment (starting with \cs{noindent}) +% is used. +% If the field |ANNOTELANGUAGE| is also given, the language is +% switched to the specified language. +% Otherwise the language of the keywords is used. +% +% You can change the behaviour by redefining +% \cs{btxannotation}\marg{annotations}. +% The annotations are only printed when the package option |annote| is +% used. % % \DescribeMacro{\biblanguage}% % If you want to use language-dependent commands as \cs{alsoname} in a @@ -347,13 +380,15 @@ % name& Authors, editors& & \\ % lastname& Lastnames of Authors, editors& & \\ % title& All kinds of titles& \cs{emph}& \cs{emph}\\ +% jtitle& Title of journal articles& \cs{emph}& \cs{emph}\\ % etal& ``\emph{et al.}''& \cs{emph}& \\ -% journal& Journal title& & \\ +% journal& Journal name& & \\ % volume& Volume (journal)& & \cs{textbf} \\ % ISBN& ISBN& \cs{MakeUppercase}& \cs{MakeUppercase} \\ % ISSN& ISSN& \cs{MakeUppercase}& \cs{MakeUppercase} \\ % url& URL& \cs{url}& \cs{url} \\ % urldate& visiting date of URL& & \\ +% ordinal& ordinal numbers in edition& & \\ % \bottomrule % \end{tabular} % \end{table} @@ -367,6 +402,9 @@ % As it can be seen in this example, the argument of the used font % command mustn't be specified in |\setbibliographyfont|. % +% +% \subsection{Names} +% % The \meta{element} |name| changes the whole name of the author, % including forename and lastname. % If |lastname| is also specified, it changes the lastname within the @@ -378,6 +416,19 @@ % leads to |\emph{Harald \MakeUppercase{Harders}}| resp.\ % ``\emph{Harald \MakeUppercase{Harders}}''. % +% +% By default, a colon is printed after the author names. +% If you want another sign, just redefine the command +% \cs{btxauthorcolon}: +% \begin{verbatim} +%\renewcommand\btxauthorcolon{,}\end{verbatim} +% Unfortunately, it cannot detect if the name ends on a fullstop. +% Thus, things like ``Harders, H.. \emph{Title of document}'' may +% appear. +% +% +% \subsection{URL's} +% % The font definition for |urldate| can also be used not to change the % font but to provide a command that writes the date in the correct % language, e.\,g., using the |isodate| package: @@ -385,6 +436,29 @@ %\usepackage[short]{isodate} %\setbibliographyfont{urldate}{\printdate}\end{verbatim} % +% When using |urldate|, normally a string is printed between the url +% itself and the the date, e.g., in English +% ``\url{http://www.dante.de}, visited on 2005-11-11''. +% The string is ``|, visited on |''. +% This is reached by the definition of the internal command +% \cs{btxurldatecomment}, e.g., for English +% \begin{verbatim} +%\def\btxurldatecomment#1{% +% \protect\foreignlanguage{english}{, visited on #1}% +%}\end{verbatim} +% You can change this command, for example, to typeset the date in +% brackets: +% \begin{verbatim} +%\declarebtxcommands{english}{% +% \def\btxurldatecomment#1{ [#1]}% +%}\end{verbatim} +% Be sure not to forget the leading space. +% It is necessary to be able to begin with a comma which does not have +% a space before it. +% +% +% \subsection{ISBN and ISSN} +% % \DescribeMacro{\btxISBN}% % \DescribeMacro{\btxISSN}% % There are two additional commands, \cs{btxISBN} and \cs{btxISSN}. @@ -404,7 +478,11 @@ % resp.\ \cs{btxprintISSN\{false\}}. % Similarly, printing is switched on by \cs{btxprintISBN\{true\}} % resp.\ \cs{btxprintISSN\{true\}}. -% This, however, only works for the "`standard"' styles, i.\,e., not for +% Alternatively, you can switch on or off the ISBN and ISSN when +% loading the package by using the package options |isbn|, |noisbn|, +% |issn|, or |noissn|. +% +% This, however, only works for the ``standard'' styles, i.\,e., not for % the \AmS\ style |babamspl|. % % If you are using |babamspl|, the language names of the citations are @@ -414,6 +492,83 @@ %\newcommand\btxprintamslanguage[1]{}\end{verbatim} % % +% \subsection{Spaces between forenames} +% +% \DescribeMacro{\btxfnamespaceshort}% +% \DescribeMacro{\btxfnamespacelong}% +% The spaces between multiple forenames are written by +% \cs{btxfnamespacelong} and \cs{btxfnamespaceshort} for full and +% abbreviated forenames, respectively. +% By default, a normal space is used between full forenames, and a +% thin space (\cs{,}) is used between abbreviated forenames (with the +% exception English where no space is printed). +% These defaults can be changed language-dependent: +% \begin{verbatim} +%\declarebtxcommands{english}{% +% \def\btxfnamespaceshort{\,}% +% \def\btxfnamespacelong{~}% +%}\end{verbatim} +% +% +% \subsection{Edition numbers} +% +% Ordinal numbers for editions are handled by \LaTeX\ when typesetting +% the bibliography. +% You just have to give the number itself in the |bib| file and it is +% typeset correctly in the bibliography, e.g., +% \begin{verbatim} +%edition = 3\end{verbatim} +% is typeset as "`3."' in German and ``3rd'' in English. +% Unfortunately, I do not know about other languages than these two +% how to write ordinal numbers. +% Thus, in all other languages, a warning is produced and the given +% number is printed without a change (``3'' in the example). +% If not a pure number is given, it also is typeset without a change. +% You can add or change the output of edition numbers on a language +% basis, e.g., +% \begin{verbatim} +%\declarebtxcommands{english}{% +% \def\btxnumeralshort#1{% +% \btxnumeralenglish{english}{#1}}% +% \def\btxnumerallong#1{% +% \ifnumber{#1}{% +% \ifcase#1 0th\or first\or second\or third\or forth\or fifth\or +% sixth\or seventh\or eighth\or nineth\or tenth\else +% \btxnumeralenglish{english}{#1}% +% \fi}{#1}}% +%}\end{verbatim} +% This example typesets the ordinals between 1st and 10th as words and +% switches to the short form for larger numbers in English language +% for the long version and uses the default function for the short +% version. +% +% Three output formats are predefined: +% \cs{btxnumeraldot} prints the number with a dot followed, as +% it is common in German. +% \cs{btxnumeralenglish} adds ``st'', ``nd'', ``rd'', or +% ``th'', depending on the number. +% And \cs{btxnumeralfallback} generates a warning and prints +% the number as given. +% +% If you, for instance, want to switch the Danish behaviour to be as +% the German is, use these commands: +% \begin{verbatim} +%\declarebtxcommands{danish}{% +% \def\btxnumeralshort#1{\btxnumeraldot{danish}{#1}}% +% \def\btxnumerallong#1{\btxnumeraldot{danish}{#1}}% +%}\end{verbatim} +% +% For the English variant, a font |numeral| is predefined that +% typesets the appended characters. +% If you, for example, want to print the superscripted, use +% \begin{verbatim} +%\setbibliographyfont{numeral}{\textsuperscript}\end{verbatim} +% +% If you know how numerals are handled in a language, please send me +% an eMail. +% +% +% % \section{How to add new languages} % % The language definitions are placed in special files with the @@ -438,10 +593,17 @@ % \section{Problems and Incompatibilities} % % \begin{itemize} -% \item Babelbib does not work together with old versions of the +% \item +% Babelbib does not work together with old versions of the % |frenchle| package prior V5,987. % Please update the frenchle package or use the native babel support % for the French language, instead. +% \item +% If babelbib is used together with one of the classes of the +% KOMA-Script bundle, some additional spaces are added when +% numerical edition numbers are used. +% This is a KOMA-Script bug and will be fixed in the next +% KOMA-Script release. % \end{itemize} % % \section{To Do} @@ -468,8 +630,12 @@ % Jan Steffan, \url{me@jansteffan.de} (\cs{setbtxfallbacklanguage}); % Philip Ratcliffe, \url{philip.ratcliffe@email.it} (corrections for % Italian); Angel Tsankov, \url{bigman@abv.bg} (bugfix with -% \cs{bbbb\meta{\cs{CurrentOption}}loaded}). -% +% \cs{bbbb\meta{\cs{CurrentOption}}loaded}); +% Prokopis Prokopidis, \url{prokopis@ilsp.gr} (Greek); +% Daniel Flipo, \url{daniel.flipo@univ-lille1.fr} (French numerals); +% Ignacio Fern\'andez Galv\'an, \url{jellby@yahoo.com} (Spanish +% numerals); +% Peter Bartke, \url{bartke@inf.fu-berlin.de} (idea of annote field). % %\begin{thebibliography}{1} % \providebibliographyfont{name}{}% @@ -518,31 +684,34 @@ % File heads of the |bdf| files: % \begin{macrocode} %<afrikaans>%% Language definitions for Afrikaans by -%<afrikaans>%% Danie Els, dnjels@sun.ac.za +%<afrikaans>%% Danie Els <dnjels@sun.ac.za> %<afrikaans>\ProvidesFile{afrikaans.bdf} %<catalan>%% Language definitions for Catalan by -%<catalan>%% Robert Fuster, rfuster@imm.upv.es +%<catalan>%% Robert Fuster <rfuster@imm.upv.es> %<catalan>\ProvidesFile{catalan.bdf} %<danish>\ProvidesFile{danish.bdf} %<dutch>\ProvidesFile{dutch.bdf} %<english>\ProvidesFile{english.bdf} %<esperanto>%% Language definitions for Esperanto by -%<esperanto>%% Taneli Huuskonen, huuskone@cc.helsinki.fi +%<esperanto>%% Taneli Huuskonen <huuskone@cc.helsinki.fi> %<esperanto>\ProvidesFile{esperanto.bdf} -%<portuguese>%% Language definitions for Portuguese by -%<portuguese>%% Jos\'e Carlos Santos, jcsantos@fc.up.pt -%<portuguese>\ProvidesFile{portuguese.bdf} %<finnish>%% Language definitions for Finnish by -%<finnish>%% Taneli Huuskonen, huuskone@cc.helsinki.fi +%<finnish>%% Taneli Huuskonen <huuskone@cc.helsinki.fi> %<finnish>\ProvidesFile{finnish.bdf} %<french>\ProvidesFile{french.bdf} %<german>\ProvidesFile{german.bdf} +%<greek>\ProvidesFile{greek.bdf} +%<greek>%% Language definitions for Greek by +%<greek>%% Prokopis Prokopidis <prokopis@ilsp.gr> %<italian>\ProvidesFile{italian.bdf} %<norsk>%% Language definitions for Norwegian by %<norsk>%% Hans Fredrik Nordhaug <hansfn@mi.uib.no> %<norsk>\ProvidesFile{norsk.bdf} +%<portuguese>%% Language definitions for Portuguese by +%<portuguese>%% Jos\'e Carlos Santos <jcsantos@fc.up.pt> +%<portuguese>\ProvidesFile{portuguese.bdf} %<spanish>%% Language definitions for spanish by -%<spanish>%% V{\'\i}ctor Lua{\~n}a, victor@fluor.quimica.uniovi.es +%<spanish>%% V{\'\i}ctor Lua{\~n}a <victor@fluor.quimica.uniovi.es> %<spanish>\ProvidesFile{spanish.bdf} %<swedish>%% Language definitions for Swedish by %<swedish>%% Hans Fredrik Nordhaug <hansfn@mi.uib.no> @@ -550,8 +719,8 @@ % \end{macrocode} % Version information unique for all generated files: % \begin{macrocode} -%<latex> [2005/09/01 v1.15 babelbib: multilingual bibliographies (HH)] -%<bst>%% 2005/09/01 v1.15 babelbib: multilingual bibliographies (HH) +%<latex> [2005/11/13 v1.20 babelbib: multilingual bibliographies (HH)] +%<bst>%% 2005/11/13 v1.20 babelbib: multilingual bibliographies (HH) % \end{macrocode} % % \subsection{The package itself} @@ -563,6 +732,7 @@ %<*package> \newif\ifbbbbfixlanguage \DeclareOption{fixlanguage}{\bbbbfixlanguagetrue} +\DeclareOption{varlanguage}{\bbbbfixlanguagefalse} % \end{macrocode} % \changes{0.2}{2003/04/20}{Added option \texttt{languagenames} to % define commands for language names}% @@ -573,8 +743,28 @@ % \foreignlanguage{ngerman}{"`französisch"'}. % \begin{macrocode} \newif\ifbbbblanguagenames +\DeclareOption{nolanguagenames}{\bbbblanguagenamesfalse} \DeclareOption{languagenames}{\bbbblanguagenamestrue} % \end{macrocode} +% \begin{macrocode} +\newif\ifbbbbannotations +\DeclareOption{annote}{\bbbbannotationstrue} +\DeclareOption{noannote}{\bbbbannotationsfalse} +% \end{macrocode} +% \begin{macro}{\ifbtx@printISBN} +% \begin{macro}{\ifbtx@printISSN} +% The booleans that store the necessary information if ISBN and ISSN +% shall be printed. +% \begin{macrocode} +\newif\ifbtx@printISBN +\newif\ifbtx@printISSN +\DeclareOption{isbn}{\btx@printISBNtrue} +\DeclareOption{noisbn}{\btx@printISBNfalse} +\DeclareOption{issn}{\btx@printISSNtrue} +\DeclareOption{noissn}{\btx@printISSNfalse} +% \end{macrocode} +% \end{macro} +% \end{macro} % If additional options are given, try to load these as % languages. This is implemented in order to be able to use a new % language that is not yet supported by the official |babelbib|. @@ -590,6 +780,10 @@ }% } % \end{macrocode} +% Default options. +% \begin{macrocode} +\ExecuteOptions{varlanguage,nolanguagenames,noannote,isbn,issn} +% \end{macrocode} % Process the given options. % \begin{macrocode} \ProcessOptions* @@ -975,6 +1169,8 @@ \let\btxlastnamefont=\@empty \newcommand\btxtitlefont{} \let\btxtitlefont=\@empty +\newcommand\btxjtitlefont{} +\let\btxjtitlefont=\@empty \newcommand\btxetalfont{} \let\btxetalfont=\@empty \newcommand\btxjournalfont{} @@ -989,6 +1185,8 @@ \let\btxurlfont=\@empty \newcommand\btxurldatefont{} \let\btxurldatefont=\@empty +\newcommand\btxnumeralfont{} +\let\btxnumeralfont=\@empty % \end{macrocode} % \end{macro} % \begin{macro}{\btxauthorcolon} @@ -1037,16 +1235,106 @@ % \end{macrocode} % \end{macro} % \end{macro} -% \begin{macro}{\ifbtx@printISBN} -% \begin{macro}{\ifbtx@printISSN} -% The booleans that store the necessary information. +% \begin{macro}{\btxannotation} +% A command that typesets annotations. +% \begin{macrocode} +\ifbbbbannotations + \DeclareRobustCommand\btxannotation[1]{% + \begin{quotation}% + \noindent + #1% + \end{quotation}% + } +\else + \DeclareRobustCommand\btxannotation[1]{}% +\fi +% \end{macrocode} +% \end{macro} +% \begin{macro}{\btx@ifnumerical} +% Test wheather argument 1 is a number (from KOMA script) +% \begin{macrocode} +\providecommand\ifnumber[3]{% + \begingroup\@tempswafalse\let\scr@next\test@number + \expandafter\scr@next#1\scr@next + \if@tempswa\endgroup#2\else\endgroup#3\fi +} +\providecommand*\test@number[1]{% + \ifx \scr@next#1% + \let\scr@next\relax + \else + \@tempcnta=\expandafter\expandafter\expandafter\number + \expandafter`#1\relax + \ifnum \@tempcnta>47\relax + \ifnum \@tempcnta<58\relax + \@tempswatrue + \else\@tempswafalse\fi + \else\@tempswafalse\fi + \if@tempswa\else\let\scr@next\gobble@till@next\fi\fi + \scr@next +} +\def\gobble@till@next#1\scr@next{} +% \end{macrocode} +% \end{macro} +% \changes{1.17}{2005/11/05}{Handle numerical edition numbers}% +% \begin{macro}{\btx@parsenum} +% Parses the number given by \cs{btx@parsenum}\meta{number}\cs{@empty} +% prints it and returns the last two digits in \cs{btx@digita} and +% \cs{btx@digitb}. +% \begin{macrocode} +\def\btx@parsenum#1#2#3\@empty{% + #1% + \edef\btx@digitb{#3}% + \ifx\@empty\btx@digitb + #2% + \edef\btx@digita{#1}% + \edef\btx@digitb{#2}% + \else + \expandafter\btx@parsenum#2#3\@empty + \fi +} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\btxnumeralfallback} % \begin{macrocode} -\newif\ifbtx@printISBN -\newif\ifbtx@printISSN -\btxprintISBN{true} -\btxprintISSN{true} +\DeclareRobustCommand\btxnumeralfallback[2]{% + \foreignlanguage{#1}{% + \ifnumber{#2}{% + \PackageWarning{babelbib}{Handling of numerical editions not + handled\MessageBreak by language #1 for edition `#2'}% + }{}% + #2% + }% +}% +% \end{macrocode} +% \end{macro} +% \begin{macro}{\btxnumeraldot} +% \begin{macrocode} +\DeclareRobustCommand\btxnumeraldot[2]{% + \foreignlanguage{#1}{\ifnumber{#2}{#2.}{#2}}% +} % \end{macrocode} % \end{macro} +% \begin{macro}{\btxnumeralenglish} +% \begin{macrocode} +\DeclareRobustCommand\btxnumeralenglish[2]{% + \foreignlanguage{#1}{% + \ifnumber{#2}{% + \expandafter\btx@parsenum#2\@empty\@empty\@empty + \btxnumeralfont{% + \ifx\btx@digitb\@empty + \ifcase\btx@digita th\or st\or nd\or rd\else th\fi + \else + \ifnum\btx@digita=1 + th% + \else + \ifcase\btx@digitb th\or st\or nd\or rd\else th\fi + \fi + \fi + }% + }{#2}% + }% +} +% \end{macrocode} % \end{macro} % \begin{macro}{\url} % \changes{0.40}{2003/09/26}{If no \cs{url} command is defined, @@ -1106,6 +1394,7 @@ \inputbdf{frenchb}{french} \inputbdf{german}{german} \inputbdf{germanb}{german} + \inputbdf{greek}{greek} \inputbdf{italian}{italian} \inputbdf{norsk}{norsk} \inputbdf{mexican}{spanish} @@ -1267,12 +1556,27 @@ \def\Btxpageslong{\btxpageslong}% \def\Btxtechrepshort{\btxtechrepshort}% \def\Btxtechreplong{\btxtechreplong}% - \def\btxurldatecomment##1{\protect\foreignlanguage{#1}{besucht:}}% + \def\btxurldatecomment##1{\protect\foreignlanguage{#1}{, besucht: ##1}}% +% \end{macrocode} +% \changes{1.16}{2005/10/31}{Allow to alter space between two +% forenames}% +% The command \cs{btxfnamespaceshort} and \cs{btxfnamespacelong} +% contain the space between two abbreviated resp.\ full forenames. +% \begin{macrocode} + \def\btxfnamespaceshort{\,}% + \def\btxfnamespacelong{ }% +% \end{macrocode} +% \changes{1.17}{2005/11/05}{Handle numerical edition numbers}% +% Handle numerical edition numbers. +% \begin{macrocode} + \def\btxnumeralshort##1{\btxnumeraldot{#1}{##1}}% + \def\btxnumerallong##1{\btxnumeraldot{#1}{##1}}% % \end{macrocode} % A command that just puts some user defined text in the language of % the keywords. % \begin{macrocode} - \def\btxkeywordlanguage##1{\protect\foreignlanguage{#1}{##1}}% +% \def\btxkeywordlanguage##1{\protect\foreignlanguage{#1}{##1}}% + \def\btxkeywordlanguage##1{{\protect\selectlanguage{#1}##1}}% % \end{macrocode} % \changes{0.2}{2003/04/20}{Added language names}% % Names of all known languages in the current language. @@ -1492,8 +1796,12 @@ \def\Btxpageslong##1{\protect\foreignlanguage{#1}{Pages}}% \def\Btxtechrepshort##1{\protect\foreignlanguage{#1}{Tech.\ Rep##1{}}}% \def\Btxtechreplong##1{\protect\foreignlanguage{#1}{Technical Report}}% - \def\btxurldatecomment##1{\protect\foreignlanguage{#1}{visited on}}% - \def\btxkeywordlanguage##1{\protect\foreignlanguage{#1}{##1}}% + \def\btxurldatecomment##1{\protect\foreignlanguage{#1}{, visited on ##1}}% + \def\btxfnamespaceshort{}% + \def\btxfnamespacelong{ }% + \def\btxnumeralshort##1{\btxnumeralenglish{#1}{##1}}% + \def\btxnumerallong##1{\btxnumeralenglish{#1}{##1}}% + \def\btxkeywordlanguage##1{{\protect\selectlanguage{#1}##1}}% % \end{macrocode} % \changes{0.2}{2003/04/20}{Added language names}% % Names of all known languages in the current language. @@ -1650,10 +1958,10 @@ \def\btxmondecshort##1{\protect\foreignlanguage{#1}{dic##1{}}}% \def\Btxinlong##1{\protect\foreignlanguage{#1}{Nel}}% \def\Btxinshort##1{\protect\foreignlanguage{#1}{Nel}}% - \def\Btxeditorshort##1{\protect\foreignlanguage{#1}{Ed##1{}}}% - \def\Btxeditorlong##1{\protect\foreignlanguage{#1}{Editore}}% - \def\Btxeditorsshort##1{\protect\foreignlanguage{#1}{Ed##1{}}}% - \def\Btxeditorslong##1{\protect\foreignlanguage{#1}{Editori}}% + \def\Btxeditorshort##1{\protect\foreignlanguage{#1}{Cur##1{}}}% + \def\Btxeditorlong##1{\protect\foreignlanguage{#1}{Curatore}}% + \def\Btxeditorsshort##1{\protect\foreignlanguage{#1}{Cur##1{}}}% + \def\Btxeditorslong##1{\protect\foreignlanguage{#1}{Curatori}}% \def\Btxvolumeshort##1{\protect\foreignlanguage{#1}{Vol##1{}}}% \def\Btxvolumelong##1{\protect\foreignlanguage{#1}{Volume}}% \def\Btxnumbershort##1{\protect\foreignlanguage{#1}{No##1{}}}% @@ -1668,8 +1976,12 @@ \def\Btxpageslong##1{\protect\foreignlanguage{#1}{Pagine}}% \def\Btxtechrepshort##1{\protect\foreignlanguage{#1}{Rap.\ Tecnico}}% \def\Btxtechreplong##1{\protect\foreignlanguage{#1}{Rapporto Tecnico}}% - \def\btxurldatecomment##1{\protect\foreignlanguage{#1}{accesso a}}% - \def\btxkeywordlanguage##1{\protect\foreignlanguage{#1}{##1}}% + \def\btxurldatecomment##1{\protect\foreignlanguage{#1}{, accesso a ##1}}% + \def\btxfnamespaceshort{\,}% + \def\btxfnamespacelong{ }% + \def\btxnumeralshort##1{\btxnumeralfallback{#1}{##1}}% + \def\btxnumerallong##1{\btxnumeralfallback{#1}{##1}}% + \def\btxkeywordlanguage##1{{\protect\selectlanguage{#1}##1}}% % \end{macrocode} % \changes{0.2}{2003/04/20}{Added placeholders for language names}% % \changes{0.31}{2003/05/01}{Added some language names for Italian}% @@ -1740,6 +2052,168 @@ %</italian> % \end{macrocode} % +% \subsubsection{Greek} +% \begin{macrocode} +%<*greek> +% \end{macrocode} +% +% The language definition for Greek was provided by Prokopis +% Prokopidis. +% +% \begin{macro}{\bibsgreek} +% Bibliographic commands for Greek. +% \begin{macrocode} +\newcommand\bibsgreek[1][greek]{% + \def\biblanguagename{#1}% + \def\btxetalshort##1{\protect\foreignlanguage{#1}{k.'a##1{}}}% + \def\btxetallong##1{\protect\foreignlanguage{#1}{kai 'alloi}}% + \def\btxandshort##1{\protect\foreignlanguage{#1}{kai}}% + \def\btxandlong##1{\protect\foreignlanguage{#1}{kai}}% + \def\btxandcomma##1{,}% + \def\btxinlong##1{\protect\foreignlanguage{#1}{sto}}% + \def\btxinshort##1{\protect\foreignlanguage{#1}{sto}}% + \def\btxofseriesshort##1{\protect\foreignlanguage{#1}{tou}}% + \def\btxinseriesshort##1{\protect\foreignlanguage{#1}{sto}}% + \def\btxofserieslong##1{\protect\foreignlanguage{#1}{tou}}% + \def\btxinserieslong##1{\protect\foreignlanguage{#1}{sto}}% + \def\btxeditorshort##1{\protect\foreignlanguage{#1}{epim##1{}}}% + \def\btxeditorlong##1{\protect\foreignlanguage{#1}{epimelht'hc}}% + \def\btxeditorsshort##1{\protect\foreignlanguage{#1}{epim##1{}}}% + \def\btxeditorslong##1{\protect\foreignlanguage{#1}{epimelht'ec}}% + \def\btxvolumeshort##1{\protect\foreignlanguage{#1}{t'om##1{}}}% + \def\btxvolumelong##1{\protect\foreignlanguage{#1}{t'omoc}}% + \def\btxnumbershort##1{\protect\foreignlanguage{#1}{ar##1{}}}% + \def\btxnumberlong##1{\protect\foreignlanguage{#1}{arijm'oc}}% + \def\btxeditionshort##1{\protect\foreignlanguage{#1}{'ekd##1{}}}% + \def\btxeditionlong##1{\protect\foreignlanguage{#1}{'ekdosh}}% + \def\btxchaptershort##1{\protect\foreignlanguage{#1}{kef##1{}}}% + \def\btxchapterlong##1{\protect\foreignlanguage{#1}{kef'alaio}}% + \def\btxpageshort##1{\protect\foreignlanguage{#1}{sel##1{}}}% + \def\btxpagelong##1{\protect\foreignlanguage{#1}{sel'ida}}% + \def\btxpagesshort##1{\protect\foreignlanguage{#1}{sel##1{}}}% + \def\btxpageslong##1{\protect\foreignlanguage{#1}{sel'idec}}% + \def\btxmastthesis##1{\protect\foreignlanguage{#1}{Metaptuqiak'h ergas'ia}}% + \def\btxphdthesis##1{\protect\foreignlanguage{#1}{Didaktorik'h diatrib'h}}% + \def\btxtechrepshort##1{\protect\foreignlanguage{#1}{Teqn.\ anaf##1{}}}% + \def\btxtechreplong##1{\protect\foreignlanguage{#1}{Teqnik'h anafor'a}}% + \def\btxmonjanlong##1{\protect\foreignlanguage{#1}{Ianou'arioc}}% + \def\btxmonfeblong##1{\protect\foreignlanguage{#1}{Febrou'arioc}}% + \def\btxmonmarlong##1{\protect\foreignlanguage{#1}{M'artioc}}% + \def\btxmonaprlong##1{\protect\foreignlanguage{#1}{Apr'ilioc}}% + \def\btxmonmaylong##1{\protect\foreignlanguage{#1}{M'aioc}}% + \def\btxmonjunlong##1{\protect\foreignlanguage{#1}{Io'unioc}}% + \def\btxmonjullong##1{\protect\foreignlanguage{#1}{Io'ulioc}}% + \def\btxmonauglong##1{\protect\foreignlanguage{#1}{A'ugoustoc}}% + \def\btxmonseplong##1{\protect\foreignlanguage{#1}{Sept'embrioc}}% + \def\btxmonoctlong##1{\protect\foreignlanguage{#1}{Okt'wbrioc}}% + \def\btxmonnovlong##1{\protect\foreignlanguage{#1}{No'embrioc}}% + \def\btxmondeclong##1{\protect\foreignlanguage{#1}{Dek'embrioc}}% + \def\btxmonjanshort##1{\protect\foreignlanguage{#1}{Ian##1{}}}% + \def\btxmonfebshort##1{\protect\foreignlanguage{#1}{Feb##1{}}}% + \def\btxmonmarshort##1{\protect\foreignlanguage{#1}{M'ar##1{}}}% + \def\btxmonaprshort##1{\protect\foreignlanguage{#1}{Apr##1{}}}% + \def\btxmonmayshort##1{\protect\foreignlanguage{#1}{M'ai}}% + \def\btxmonjunshort##1{\protect\foreignlanguage{#1}{Io'un##1{}}}% + \def\btxmonjulshort##1{\protect\foreignlanguage{#1}{Io'ul##1{}}}% + \def\btxmonaugshort##1{\protect\foreignlanguage{#1}{A'ug##1{}}}% + \def\btxmonsepshort##1{\protect\foreignlanguage{#1}{Sept##1{}}}% + \def\btxmonoctshort##1{\protect\foreignlanguage{#1}{Okt##1{}}}% + \def\btxmonnovshort##1{\protect\foreignlanguage{#1}{No'e##1{}}}% + \def\btxmondecshort##1{\protect\foreignlanguage{#1}{Dek##1{}}}% + \def\Btxinlong##1{\protect\foreignlanguage{#1}{Sto}}% + \def\Btxinshort##1{\protect\foreignlanguage{#1}{Sto}}% + \def\Btxeditorshort##1{\protect\foreignlanguage{#1}{Epim##1{}}}% + \def\Btxeditorlong##1{\protect\foreignlanguage{#1}{Epimelht'hc}}% + \def\Btxeditorsshort##1{\protect\foreignlanguage{#1}{Epim##1{}}}% + \def\Btxeditorslong##1{\protect\foreignlanguage{#1}{Epimelht'ec}}% + \def\Btxvolumeshort##1{\protect\foreignlanguage{#1}{T'om##1{}}}% + \def\Btxvolumelong##1{\protect\foreignlanguage{#1}{T'omoc}}% + \def\Btxnumbershort##1{\protect\foreignlanguage{#1}{Ar##1{}}}% + \def\Btxnumberlong##1{\protect\foreignlanguage{#1}{Arijm'oc}}% + \def\Btxeditionshort##1{\protect\foreignlanguage{#1}{'Ekd##1{}}}% + \def\Btxeditionlong##1{\protect\foreignlanguage{#1}{'Ekdosh}}% + \def\Btxchaptershort##1{\protect\foreignlanguage{#1}{Kef##1{}}}% + \def\Btxchapterlong##1{\protect\foreignlanguage{#1}{Kef'alaio}}% + \def\Btxpageshort##1{\protect\foreignlanguage{#1}{Sel##1{}}}% + \def\Btxpagelong##1{\protect\foreignlanguage{#1}{Sel'ida}}% + \def\Btxpagesshort##1{\protect\foreignlanguage{#1}{Sel##1{}}}% + \def\Btxpageslong##1{\protect\foreignlanguage{#1}{Sel'idec}}% + \def\Btxtechrepshort##1{\protect\foreignlanguage{#1}{Teqn.\ Anaf##1{}}}% + \def\Btxtechreplong##1{\protect\foreignlanguage{#1}{Teqnik'h Anafor'a}}% + \def\btxurldatecomment##1{\protect\foreignlanguage{#1}{, ep'iskeyh thn ##1}}% + \def\btxfnamespaceshort{\,}% + \def\btxfnamespacelong{ }% + \def\btxnumeralshort##1{\protect\foreignlanguage{#1}{% + \ifnumber{##1}{##1h}{##1}}}% + \def\btxnumerallong##1{\protect\foreignlanguage{#1}{\ifnumber{##1}{% + \ifcase##1 ##1h\or pr'wth\or de'uterh\or tr'ith\or t'etarth% + \or p'empth\or 'ekth\or 'ebdomh\or 'ogdoh\or 'enath\else ##1h\fi + }{##1}}}% + \def\btxkeywordlanguage##1{{\protect\selectlanguage{#1}##1}}% +% \end{macrocode} +% Names of all known languages in the current language. +% \begin{macrocode} + \ifbbbblanguagenames + \def\btxlanguagenameamerican{\protect\foreignlanguage{#1}{agglik'a}}% + \def\btxlanguagenameaustrian{\protect\foreignlanguage{#1}{germanik'a}}% + \def\btxlanguagenamebrazil{\protect\foreignlanguage{#1}{portogalik'a}}% + \def\btxlanguagenamebrazilian{\protect\foreignlanguage{#1}{portogalik'a}}% + \def\btxlanguagenamebritish{\protect\foreignlanguage{#1}{agglik'a}}% + \def\btxlanguagenamebulgarian{\protect\foreignlanguage{#1}{boulgarik'a}}% + \def\btxlanguagenamecanadian{\protect\foreignlanguage{#1}{agglik'a}}% + \def\btxlanguagenamecanadien{\protect\foreignlanguage{#1}{gallik'a}}% + \def\btxlanguagenamecatalan{\protect\foreignlanguage{#1}{katalanik'a}}% + \def\btxlanguagenamecroatian{\protect\foreignlanguage{#1}{kroatik'a}}% + \def\btxlanguagenameczech{\protect\foreignlanguage{#1}{tseqik'a}}% + \def\btxlanguagenamedanish{\protect\foreignlanguage{#1}{danik'a}}% + \def\btxlanguagenamedutch{\protect\foreignlanguage{#1}{ollandik'a}}% + \def\btxlanguagenameenglish{\protect\foreignlanguage{#1}{agglik'a}}% + \def\btxlanguagenameesperanto{\protect\foreignlanguage{#1}{esperanto}}% + \def\btxlanguagenamefinnish{\protect\foreignlanguage{#1}{finlandik'a}}% + \def\btxlanguagenamefrancais{\protect\foreignlanguage{#1}{gallik'a}}% + \def\btxlanguagenamefrench{\protect\foreignlanguage{#1}{gallik'a}}% + \def\btxlanguagenamefrenchb{\protect\foreignlanguage{#1}{gallik'a}}% + \def\btxlanguagenamegerman{\protect\foreignlanguage{#1}{germanik'a}}% + \def\btxlanguagenamegermanb{\protect\foreignlanguage{#1}{germanik'a}}% + \def\btxlanguagenamegreek{\protect\foreignlanguage{#1}{ellhnik'a}}% + \def\btxlanguagenamehebrew{\protect\foreignlanguage{#1}{ebra"ik'a}}% + \def\btxlanguagenamehungarian{\protect\foreignlanguage{#1}{ouggrik'a}}% + \def\btxlanguagenameicelandic{\protect\foreignlanguage{#1}{islandik'a}}% + \def\btxlanguagenameirish{\protect\foreignlanguage{#1}{irlandik'a}}% + \def\btxlanguagenameitalian{\protect\foreignlanguage{#1}{italik'a}}% + \def\btxlanguagenamelatin{\protect\foreignlanguage{#1}{latinik'a}}% + \def\btxlanguagenamenaustrian{\protect\foreignlanguage{#1}{germanik'a}}% + \def\btxlanguagenamengerman{\protect\foreignlanguage{#1}{germanik'a}}% + \def\btxlanguagenamenorsk{\protect\foreignlanguage{#1}{norbhgik'a}}% + \def\btxlanguagenamenynorsk{\protect\foreignlanguage{#1}{n'ea norbhgik'a}}% + \def\btxlanguagenamepolish{\protect\foreignlanguage{#1}{polwnik'a}}% + \def\btxlanguagenameportuges{\protect\foreignlanguage{#1}{portogalik'a}}% + \def\btxlanguagenameportuguese{\protect\foreignlanguage{#1}{portogalik'a}}% + \def\btxlanguagenamerussian{\protect\foreignlanguage{#1}{rwsik'a}}% + \def\btxlanguagenamescottish{\protect\foreignlanguage{#1}{skwts'ezika}}% + \def\btxlanguagenameserbian{\protect\foreignlanguage{#1}{serbik'a}}% + \def\btxlanguagenamespanish{\protect\foreignlanguage{#1}{ispanik'a}}% + \def\btxlanguagenameswedish{\protect\foreignlanguage{#1}{souhdik'a}}% + \def\btxlanguagenameturkish{\protect\foreignlanguage{#1}{tourkik'a}}% + \def\btxlanguagenameUKenglish{\protect\foreignlanguage{#1}{agglik'a}}% + \def\btxlanguagenameUSenglish{\protect\foreignlanguage{#1}{agglik'a}}% + \fi +} +% \end{macrocode} +% \end{macro} +% Append the definitions to the language-calling commands. +% \begin{macrocode} +\AtBeginDocument{% + \ifbbbbfixlanguage + \else + \bbbbaddto{greek}{bibsgreek} + \fi + \bbbbaddto{greek}{btxifchangecaseoff} +} +%</greek> +% \end{macrocode} +% +% % \subsubsection{Norwegian} % \begin{macrocode} %<*norsk> @@ -1828,8 +2302,12 @@ \def\Btxpageslong##1{\protect\foreignlanguage{#1}{Sider}}% \def\Btxtechrepshort##1{\protect\foreignlanguage{#1}{Tekn.\ rap##1{}}}% \def\Btxtechreplong##1{\protect\foreignlanguage{#1}{Teknisk rapport}}% - \def\btxurldatecomment##1{\protect\foreignlanguage{#1}{sjekket:}}% - \def\btxkeywordlanguage##1{\protect\foreignlanguage{#1}{##1}}% + \def\btxurldatecomment##1{\protect\foreignlanguage{#1}{, sjekket: ##1}}% + \def\btxfnamespaceshort{\,}% + \def\btxfnamespacelong{ }% + \def\btxnumeralshort##1{\btxnumeralfallback{#1}{##1}}% + \def\btxnumerallong##1{\btxnumeralfallback{#1}{##1}}% + \def\btxkeywordlanguage##1{{\protect\selectlanguage{#1}##1}}% % \end{macrocode} % Names of all known languages in the current language. % \begin{macrocode} @@ -1994,8 +2472,13 @@ \def\Btxpageslong##1{\protect\foreignlanguage{#1}{Pages}}% \def\Btxtechrepshort##1{\protect\foreignlanguage{#1}{Rap. tech##1{}}}% \def\Btxtechreplong##1{\protect\foreignlanguage{#1}{Rapport technique}}% - \def\btxurldatecomment##1{\protect\foreignlanguage{#1}{visit\'e le}}% - \def\btxkeywordlanguage##1{\protect\foreignlanguage{#1}{##1}}% + \def\btxurldatecomment##1{\protect\foreignlanguage{#1}{, visit\'e le ##1}}% + \def\btxfnamespaceshort{\,}% + \def\btxfnamespacelong{ }% + \def\btxnumeralshort##1{\protect\foreignlanguage{#1}{% + \ifnumber{##1}{##1"a}{##1}}}% + \def\btxnumerallong##1{\btxnumeralshort{##1}}% + \def\btxkeywordlanguage##1{{\protect\selectlanguage{#1}##1}}% % \end{macrocode} % Names of all known languages in the current language. % \begin{macrocode} @@ -2174,8 +2657,13 @@ \def\Btxpageslong##1{\protect\foreignlanguage{#1}{P\'aginas}}% \def\Btxtechrepshort##1{\protect\foreignlanguage{#1}{Informe t\'ecnico}}% \def\Btxtechreplong##1{\protect\foreignlanguage{#1}{Informe t\'ecnico}}% - \def\btxurldatecomment##1{\protect\foreignlanguage{#1}{visitado el}}% - \def\btxkeywordlanguage##1{\protect\foreignlanguage{#1}{##1}}% + \def\btxurldatecomment##1{\protect\foreignlanguage{#1}{, visitado el ##1}}% + \def\btxfnamespaceshort{\,}% + \def\btxfnamespacelong{ }% + \def\btxnumeralshort##1{\ifnumber{##1}{\protect\foreignlanguage{#1}{% + ##1\ifcase##1 \ieme\or \iere\else \ieme\fi}}{##1}}% + \def\btxnumerallong##1{\btxnumeralshort{#1}{##1}}% + \def\btxkeywordlanguage##1{{\protect\selectlanguage{#1}##1}}% \ifbbbblanguagenames \def\btxlanguagenameamerican{\protect\foreignlanguage{#1}{ingl\'es}}% \def\btxlanguagenameaustrian{\protect\foreignlanguage{#1}{alem\'an}}% @@ -2331,8 +2819,12 @@ \def\Btxpageslong##1{\protect\foreignlanguage{#1}{Sider}}% \def\Btxtechrepshort##1{\protect\foreignlanguage{#1}{Tekn.\ rap##1{}}}% \def\Btxtechreplong##1{\protect\foreignlanguage{#1}{Teknisk rapport}}% - \def\btxurldatecomment##1{\protect\foreignlanguage{#1}{bes\o gt den}}% - \def\btxkeywordlanguage##1{\protect\foreignlanguage{#1}{##1}}% + \def\btxurldatecomment##1{\protect\foreignlanguage{#1}{, bes\o gt den ##1}}% + \def\btxfnamespaceshort{\,}% + \def\btxfnamespacelong{ }% + \def\btxnumeralshort##1{\btxnumeralfallback{#1}{##1}}% + \def\btxnumerallong##1{\btxnumeralfallback{#1}{##1}}% + \def\btxkeywordlanguage##1{{\protect\selectlanguage{#1}##1}}% \ifbbbblanguagenames \def\btxlanguagenameamerican{\protect\foreignlanguage{#1}{engelsk}}% \def\btxlanguagenameaustrian{\protect\foreignlanguage{#1}{tysk}}% @@ -2479,8 +2971,12 @@ \def\Btxpageslong##1{\protect\foreignlanguage{#1}{Sivut}}% \def\Btxtechrepshort##1{\protect\foreignlanguage{#1}{Tekn.\ rap##1{}}}% \def\Btxtechreplong##1{\protect\foreignlanguage{#1}{Tekninen raportti}}% - \def\btxurldatecomment##1{\protect\foreignlanguage{#1}{vierailtu}}% - \def\btxkeywordlanguage##1{\protect\foreignlanguage{#1}{##1}}% + \def\btxurldatecomment##1{\protect\foreignlanguage{#1}{, vierailtu ##1}}% + \def\btxfnamespaceshort{\,}% + \def\btxfnamespacelong{ }% + \def\btxnumeralshort##1{\btxnumeralfallback{#1}{##1}}% + \def\btxnumerallong##1{\btxnumeralfallback{#1}{##1}}% + \def\btxkeywordlanguage##1{{\protect\selectlanguage{#1}##1}}% \ifbbbblanguagenames \def\btxlanguagenameamerican{\protect\foreignlanguage{#1}{englanti}}% \def\btxlanguagenameaustrian{\protect\foreignlanguage{#1}{saksa}}% @@ -2631,11 +3127,15 @@ \def\Btxpageslong##1{\protect\foreignlanguage{#1}{Pa\^goj}}% \def\Btxtechrepshort##1{\protect\foreignlanguage{#1}{Tekn.\ Rap##1{}}}% \def\Btxtechreplong##1{\protect\foreignlanguage{#1}{Teknika Raporto}}% -% \def\btxurldatecomment##1{\protect\foreignlanguage{#1}{??}}% +% \def\btxurldatecomment##1{\protect\foreignlanguage{#1}{, ?? ##1}}% \def\btxurldatecomment##1{\PackageError{babelbib}{Comment for urldate in Esperanto undefined. Please send the translation for - 'visited on' to harald.harders@tu-bs.de}{}}% - \def\btxkeywordlanguage##1{\protect\foreignlanguage{#1}{##1}}% + 'visited on' to harald.harders@tu-bs.de}{} [##1]}% + \def\btxfnamespaceshort{\,}% + \def\btxfnamespacelong{ }% + \def\btxnumeralshort##1{\btxnumeralfallback{#1}{##1}}% + \def\btxnumerallong##1{\btxnumeralfallback{#1}{##1}}% + \def\btxkeywordlanguage##1{{\protect\selectlanguage{#1}##1}}% \ifbbbblanguagenames \def\btxlanguagenameamerican{\protect\foreignlanguage{#1}{angla}}% \def\btxlanguagenameaustrian{\protect\foreignlanguage{#1}{germana}}% @@ -2790,8 +3290,12 @@ \def\Btxpageslong##1{\protect\foreignlanguage{#1}{P\'aginas}}% \def\Btxtechrepshort##1{\protect\foreignlanguage{#1}{Rel.\ T\'ec##1{}}}% \def\Btxtechreplong##1{\protect\foreignlanguage{#1}{Relat\'orio T\'ecnico}}% - \def\btxurldatecomment##1{\protect\foreignlanguage{#1}{acedido em}}% - \def\btxkeywordlanguage##1{\protect\foreignlanguage{#1}{##1}}% + \def\btxurldatecomment##1{\protect\foreignlanguage{#1}{, acedido em ##1}}% + \def\btxfnamespaceshort{\,}% + \def\btxfnamespacelong{ }% + \def\btxnumeralshort##1{\btxnumeralfallback{#1}{##1}}% + \def\btxnumerallong##1{\btxnumeralfallback{#1}{##1}}% + \def\btxkeywordlanguage##1{{\protect\selectlanguage{#1}##1}}% \ifbbbblanguagenames \def\btxlanguagenameamerican{\protect\foreignlanguage{#1}{ingl\^es}}% \def\btxlanguagenameaustrian{\protect\foreignlanguage{#1}{alem\~ao}}% @@ -2954,8 +3458,12 @@ \def\Btxpageslong##1{\protect\foreignlanguage{#1}{Pagina's}}% \def\Btxtechrepshort##1{\protect\foreignlanguage{#1}{Tech.\ Rapp##1{}}}% \def\Btxtechreplong##1{\protect\foreignlanguage{#1}{Technisch Rapport}}% - \def\btxurldatecomment##1{\protect\foreignlanguage{#1}{bezocht op}}% - \def\btxkeywordlanguage##1{\protect\foreignlanguage{#1}{##1}}% + \def\btxurldatecomment##1{\protect\foreignlanguage{#1}{, bezocht op ##1}}% + \def\btxfnamespaceshort{\,}% + \def\btxfnamespacelong{ }% + \def\btxnumeralshort##1{\btxnumeralfallback{#1}{##1}}% + \def\btxnumerallong##1{\btxnumeralfallback{#1}{##1}}% + \def\btxkeywordlanguage##1{{\protect\selectlanguage{#1}##1}}% \ifbbbblanguagenames \def\btxlanguagenameamerican{\protect\foreignlanguage{#1}{engels}}% % \def\btxlanguagenameaustrian{\protect\foreignlanguage{#1}{german}}% @@ -3110,11 +3618,15 @@ \def\Btxpageslong##1{\protect\foreignlanguage{#1}{Pagina's}}% \def\Btxtechrepshort##1{\protect\foreignlanguage{#1}{Tech.\ Rapp##1{}}}% \def\Btxtechreplong##1{\protect\foreignlanguage{#1}{Technisch Rapport}}% -% \def\btxurldatecomment##1{\protect\foreignlanguage{#1}{??}}% +% \def\btxurldatecomment##1{\protect\foreignlanguage{#1}{, ?? ##1}}% \def\btxurldatecomment##1{\PackageError{babelbib}{Comment for urldate in Swedish undefined. Please send the translation for - 'visited on' to harald.harders@tu-bs.de}{}}% - \def\btxkeywordlanguage##1{\protect\foreignlanguage{#1}{##1}}% + 'visited on' to harald.harders@tu-bs.de}{} [##1]}% + \def\btxfnamespaceshort{\,}% + \def\btxfnamespacelong{ }% + \def\btxnumeralshort##1{\btxnumeralfallback{#1}{##1}}% + \def\btxnumerallong##1{\btxnumeralfallback{#1}{##1}}% + \def\btxkeywordlanguage##1{{\protect\selectlanguage{#1}##1}}% \ifbbbblanguagenames \def\btxlanguagenameamerican{\protect\foreignlanguage{#1}{engelska}}% \def\btxlanguagenameaustrian{\protect\foreignlanguage{#1}{tyska}}% @@ -3267,11 +3779,15 @@ \def\Btxpageslong##1{\protect\foreignlanguage{#1}{Bladsye}}% \def\Btxtechrepshort##1{\protect\foreignlanguage{#1}{Tegn.\ Verslag}}% \def\Btxtechreplong##1{\protect\foreignlanguage{#1}{Tegniese Verslag}}% -% \def\btxurldatecomment##1{\protect\foreignlanguage{#1}{??}}% +% \def\btxurldatecomment##1{\protect\foreignlanguage{#1}{, ?? ##1}}% \def\btxurldatecomment##1{\PackageError{babelbib}{Comment for urldate in Afrikaans undefined. Please send the translation for - 'visited on' to harald.harders@tu-bs.de}{}}% - \def\btxkeywordlanguage##1{\protect\foreignlanguage{#1}{##1}}% + 'visited on' to harald.harders@tu-bs.de}{} [##1]}% + \def\btxfnamespaceshort{\,}% + \def\btxfnamespacelong{ }% + \def\btxnumeralshort##1{\btxnumeralfallback{#1}{##1}}% + \def\btxnumerallong##1{\btxnumeralfallback{#1}{##1}}% + \def\btxkeywordlanguage##1{{\protect\selectlanguage{#1}##1}}% \ifbbbblanguagenames \def\btxlanguagenameafrikaans{\protect\foreignlanguage{#1}{afrikaans}}% \def\btxlanguagenameamerican{\protect\foreignlanguage{#1}{engels}}% @@ -3424,11 +3940,12 @@ \def\Btxpageslong##1{\protect\foreignlanguage{#1}{P\`agines}}% \def\Btxtechrepshort##1{\protect\foreignlanguage{#1}{Rep. t\`ecnic}}% \def\Btxtechreplong##1{\protect\foreignlanguage{#1}{Report t\`ecnic}}% - \def\btxurldatecomment##1{\protect\foreignlanguage{#1}{visitada el}}% - \def\btxurldatecomment##1{\PackageError{babelbib}{Comment for - urldate in Catalan undefined. Please send the translation for - 'visited on' to harald.harders@tu-bs.de}{}}% - \def\btxkeywordlanguage##1{\protect\foreignlanguage{#1}{##1}}% + \def\btxurldatecomment##1{\protect\foreignlanguage{#1}{, visitada el ##1}}% + \def\btxfnamespaceshort{\,}% + \def\btxfnamespacelong{ }% + \def\btxnumeralshort##1{\btxnumeralfallback{#1}{##1}}% + \def\btxnumerallong##1{\btxnumeralfallback{#1}{##1}}% + \def\btxkeywordlanguage##1{{\protect\selectlanguage{#1}##1}}% \ifbbbblanguagenames \def\btxlanguagenameamerican{\protect\foreignlanguage{#1}{angl\`es}}% \def\btxlanguagenameaustrian{\protect\foreignlanguage{#1}{alem\`any}}% @@ -3510,6 +4027,8 @@ % \begin{macrocode} ENTRY { address + annote + annotelanguage author booktitle chapter @@ -3689,6 +4208,8 @@ FUNCTION {output.check} % \end{macrocode} % Outputs a bibliography item. +% \changes{1.17}{2005/11/05}{Change the language in alpha-numerical +% bib items}% % \begin{macrocode} FUNCTION {output.bibitem} { newline$ @@ -3702,28 +4223,26 @@ FUNCTION {output.bibitem} % \begin{macrocode} language empty$ { "empty language in " cite$ * warning$ + "\expandafter\btxselectlanguage\expandafter {" + "\btxfallbacklanguage}" * language.state "nolanguage" = 'skip$ - { - "\expandafter\btxselectlanguage\expandafter {" - "\btxfallbacklanguage}" * write$ - newline$ - } + { duplicate$ write$ newline$ } if$ "nolanguage" 'language.state := } - { language.state language = + { + "\btxselectlanguage {" language * "}" * + language.state language = 'skip$ - { "\btxselectlanguage {" language * "}" * write$ - newline$ - } + { duplicate$ write$ newline$ } if$ language 'language.state := } if$ %</bststd> -%<bststd&!bstalpha> "\bibitem{" write$ -%<bststd&bstalpha> "\bibitem[" label * "]{" * write$ +%<bststd&!bstalpha> pop$ "\bibitem {" write$ +%<bststd&bstalpha> "\bibitem [{" swap$ * label * "}]{" * write$ %<*bststd> cite$ write$ "}" write$ @@ -3924,9 +4443,8 @@ FUNCTION {lastnamefont} { "\btxlastnamefont {" swap$ * "}" * } if$ } - % \end{macrocode} -% +% Set font for titles: % \begin{macrocode} FUNCTION {titlefont} { duplicate$ empty$ @@ -3934,9 +4452,17 @@ FUNCTION {titlefont} { "\btxtitlefont {" swap$ * "}" * } if$ } - % \end{macrocode} -% +% Set font for titles of articles in journals: +% \begin{macrocode} +FUNCTION {jtitlefont} +{ duplicate$ empty$ + { pop$ "" } + { "\btxjtitlefont {" swap$ * "}" * } + if$ +} +% \end{macrocode} +% Set font for the journal name: % \begin{macrocode} FUNCTION {journalfont} { duplicate$ empty$ @@ -3944,7 +4470,6 @@ FUNCTION {journalfont} { "\btxjournalfont {" swap$ * "}" * } if$ } - % \end{macrocode} % % \begin{macrocode} @@ -3980,28 +4505,30 @@ FUNCTION {format.names} numnames 'namesleft := { namesleft #0 > } { nameptr #1 > + { %</bststd> %<*bststd&!bstshort&!namevarb> - { - s nameptr "{ff~}{vv~}" format.name$ + s nameptr "{ff{\btxfnamespacelong } }{vv~}" format.name$ s nameptr "{ll}" format.name$ lastnamefont * - s nameptr "{, jj}" format.name$ * 't := + s nameptr "{, jj}" format.name$ * + 't := %</bststd&!bstshort&!namevarb> %<*bststd&bstshort&!namevarb> - { - s nameptr "{f.~}{vv~}" format.name$ + s nameptr + "{f{.\btxfnamespaceshort }.~}{vv~}" format.name$ s nameptr "{ll}" format.name$ lastnamefont * - s nameptr "{, jj}" format.name$ * 't := + s nameptr "{,~jj}" format.name$ * + 't := %</bststd&bstshort&!namevarb> %<*bststd&!bstshort&namevarb> - { s nameptr "{ll}" format.name$ lastnamefont - s nameptr "{, jj}{, ff}{~vv}" format.name$ * 't := + s nameptr "{,~jj}{, ff{\btxfnamespacelong }}{~vv}" format.name$ * + 't := %</bststd&!bstshort&namevarb> %<*bststd&bstshort&namevarb> - { s nameptr "{ll}" format.name$ lastnamefont - s nameptr "{,~jj}{,~f.}{~vv}" format.name$ * 't := + s nameptr "{,~jj}{,~f{.\btxfnamespaceshort }.}{~vv}" format.name$ * + 't := %</bststd&bstshort&namevarb> %<*bststd&bstthree> namesleft #2 > @@ -4030,34 +4557,30 @@ FUNCTION {format.names} } if$ } + { %</bststd> %<*bststd&!bstshort&!namevara> - { s nameptr "{ll}" format.name$ lastnamefont - s nameptr "{,~jj}{, ff}{~vv}" format.name$ * namefont - } + s nameptr "{,~jj}{, ff{\btxfnamespacelong }}{~vv}" + format.name$ * namefont %</bststd&!bstshort&!namevara> %<*bststd&bstshort&!namevara> - { s nameptr "{ll}" format.name$ lastnamefont - s nameptr "{,~jj}{,~f.}{~vv}" format.name$ * namefont - } + s nameptr "{,~jj}{,~f{.\btxfnamespaceshort }.}{~vv}" + format.name$ * namefont %</bststd&bstshort&!namevara> %<*bststd&!bstshort&namevara> - { - s nameptr "{ff~}{vv~}" format.name$ + s nameptr "{ff{\btxfnamespacelong } }{vv~}" format.name$ s nameptr "{ll}" format.name$ lastnamefont * - s nameptr "{, jj}" format.name$ * namefont - } + s nameptr "{,~jj}" format.name$ * namefont %</bststd&!bstshort&namevara> %<*bststd&bstshort&namevara> - { - s nameptr "{f.~}{vv~}" format.name$ + s nameptr "{f{.\btxfnamespaceshort }.~}{vv~}" format.name$ s nameptr "{ll}" format.name$ lastnamefont * - s nameptr "{, jj}" format.name$ * namefont - } + s nameptr "{,~jj}" format.name$ * namefont %</bststd&bstshort&namevara> %<*bststd> + } if$ nameptr #1 + 'nameptr := namesleft #1 - 'namesleft := @@ -4097,9 +4620,8 @@ FUNCTION {format.editors} } if$ } - % \end{macrocode} -% +% Format the title: % \begin{macrocode} FUNCTION {format.title} { title empty$ @@ -4107,7 +4629,15 @@ FUNCTION {format.title} { title "t" language.change.case titlefont } if$ } - +% \end{macrocode} +% Format the title of a journal article: +% \begin{macrocode} +FUNCTION {format.jtitle} +{ title empty$ + { "" } + { title "t" language.change.case jtitlefont } + if$ +} % \end{macrocode} % % \begin{macrocode} @@ -4259,18 +4789,29 @@ FUNCTION {format.edition} { edition empty$ { "" } { - output.state mid.sentence = %</bststd> +% \end{macrocode} +% Handle the edition first to get the beginning of the sentence. +% Afterwards, the text before the edition is put to the stack and +% exchanged with the edition number itself. +% \begin{macrocode} %<*bststd&!bstshort> - { edition "l" language.change.case "~\btxeditionlong {}" * } - { edition "t" language.change.case "~\btxeditionlong {}" * } + output.state mid.sentence = + { edition "l" change.case$ } + { edition "t" change.case$ } + if$ + "\btxnumerallong {" swap$ * + "}~\btxeditionlong {}" * %</bststd&!bstshort> %<*bststd&bstshort> - { edition "l" language.change.case "~\btxeditionshort {.}" * } - { edition "t" language.change.case "~\btxeditionshort {.}" * } + output.state mid.sentence = + { edition "l" change.case$ } + { edition "t" change.case$ } + if$ + "\btxnumeralshort {" swap$ * + "}~\btxeditionshort {.}" * %</bststd&bstshort> %<*bststd> - if$ } if$ } @@ -4291,7 +4832,6 @@ FUNCTION {format.issn} { "\btxISSN~\btxISSNfont {" issn * "}" * } if$ } - % \end{macrocode} % % \begin{macrocode} @@ -4300,17 +4840,32 @@ FUNCTION {format.url} { "" } { urldate empty$ - { "\btxurlfont{" url * "}" * } + { "{\latintext \btxurlfont {" url * "}}" * } { - "\btxurlfont{" url * - "}, \btxurldatecomment{} \btxkeywordlanguage {\btxurldatefont{" * - urldate * "}}" * + "{\latintext \btxurlfont {" url * + "}}\btxurldatecomment {\btxkeywordlanguage {\btxurldatefont{" * + urldate * "}}}" * } if$ } if$ } - +% \end{macrocode} +% Format annotations: +% \begin{macrocode} +FUNCTION {write.annote} +{ annote empty$ + 'skip$ + { + annotelanguage empty$ + { "\btxkeywordlanguage {" } + { "{\selectlanguage {" annotelanguage * "}" * } + if$ + "\btxannotation {" * annote * "}}" * + write$ newline$ + } + if$ +} % \end{macrocode} % % \begin{macrocode} @@ -4594,10 +5149,7 @@ FUNCTION {format.book.crossref} { key titlefont * } if$ } -%</bststd> -%<bststd&!bstshort> { "\Btxinlong {}\ " format.crossref.editor * } -%<bststd&bstshort> { "\Btxinshort {.}\ " format.crossref.editor * } -%<*bststd> + { format.crossref.editor * } if$ " \cite{" * crossref * "}" * } @@ -4642,7 +5194,7 @@ FUNCTION {article} { output.bibitem format.authors "author" output.check after.authors - format.title "title" output.check + format.jtitle "title" output.check new.block crossref missing$ { journal @@ -4663,6 +5215,7 @@ FUNCTION {article} format.url output note output fin.entry + write.annote } % \end{macrocode} @@ -4700,6 +5253,7 @@ FUNCTION {book} format.url output note output fin.entry + write.annote } % \end{macrocode} @@ -4718,6 +5272,7 @@ FUNCTION {booklet} format.url output note output fin.entry + write.annote } % \end{macrocode} @@ -4757,6 +5312,7 @@ FUNCTION {inbook} format.url output note output fin.entry + write.annote } % \end{macrocode} @@ -4788,6 +5344,7 @@ FUNCTION {incollection} format.url output note output fin.entry + write.annote } % \end{macrocode} @@ -4827,6 +5384,7 @@ FUNCTION {inproceedings} format.url output note output fin.entry + write.annote } % \end{macrocode} @@ -4871,6 +5429,7 @@ FUNCTION {manual} format.url output note output fin.entry + write.annote } % \end{macrocode} @@ -4890,6 +5449,7 @@ FUNCTION {mastersthesis} format.url output note output fin.entry + write.annote } % \end{macrocode} @@ -4910,6 +5470,7 @@ FUNCTION {misc} format.url output note output fin.entry + write.annote empty.misc.check } @@ -4931,6 +5492,7 @@ FUNCTION {phdthesis} format.url output note output fin.entry + write.annote } % \end{macrocode} @@ -4971,6 +5533,7 @@ FUNCTION {proceedings} format.url output note output fin.entry + write.annote } % \end{macrocode} @@ -4991,6 +5554,7 @@ FUNCTION {techreport} format.url output note output fin.entry + write.annote } % \end{macrocode} @@ -5006,6 +5570,7 @@ FUNCTION {unpublished} note "note" output.check format.date output fin.entry + write.annote } % \end{macrocode} @@ -5590,12 +6155,14 @@ FUNCTION {begin.bib} " \providebibliographyfont{name}{}%" write$ newline$ " \providebibliographyfont{lastname}{}%" write$ newline$ " \providebibliographyfont{title}{\emph}%" write$ newline$ + " \providebibliographyfont{jtitle}{\btxtitlefont}%" write$ newline$ " \providebibliographyfont{etal}{\emph}%" write$ newline$ " \providebibliographyfont{journal}{}%" write$ newline$ " \providebibliographyfont{volume}{}%" write$ newline$ " \providebibliographyfont{ISBN}{\MakeUppercase}%" write$ newline$ " \providebibliographyfont{ISSN}{\MakeUppercase}%" write$ newline$ " \providebibliographyfont{url}{\url}%" write$ newline$ + " \providebibliographyfont{numeral}{}%" write$ newline$ } % \end{macrocode} @@ -5639,6 +6206,8 @@ EXECUTE {end.bib} %<*bstams> ENTRY { address + annote + annotelanguage author booktitle chapter @@ -5757,6 +6326,13 @@ FUNCTION {titlefont} if$ } +FUNCTION {jtitlefont} +{ duplicate$ empty$ + { pop$ "" } + { "\btxjtitlefont {" swap$ * "}" * } + if$ +} + FUNCTION {journalfont} { duplicate$ empty$ { pop$ "" } @@ -5936,9 +6512,7 @@ FUNCTION {output.bibitem} language 'language.state := } if$ - "\bibitem{" write$ - cite$ write$ - "}" write$ + "\bibitem {" cite$ * "}" * write$ newline$ % \end{macrocode} % This empty string is the first thing that will be written @@ -6000,7 +6574,7 @@ FUNCTION {format.names} numnames 'namesleft := { namesleft #0 > } { - s nameptr "{ff~}{vv~}" format.name$ + s nameptr "{ff{\btxfnamespacelong }~}{vv~}" format.name$ s nameptr "{ll}" format.name$ lastnamefont * s nameptr "{, jj}" format.name$ * 't := nameptr #1 > @@ -6018,7 +6592,7 @@ FUNCTION {format.names} if$ } { - s nameptr "{ff~}{vv~}" format.name$ + s nameptr "{ff{\btxfnamespacelong }~}{vv~}" format.name$ s nameptr "{ll}" format.name$ lastnamefont * s nameptr "{, jj}" format.name$ * namefont } @@ -6071,6 +6645,13 @@ FUNCTION {format.title} if$ } +FUNCTION {format.jtitle} +{ title empty$ + { "" } + { jtitle "t" language.change.case titlefont } + if$ +} + FUNCTION {format.journal.vol.year} { journal empty$ { "journal name" missing.warning ""} @@ -6216,10 +6797,13 @@ FUNCTION {format.incoll.title.editors} FUNCTION {format.edition} { edition empty$ { "" } - { output.state mid.sentence = - { edition "l" language.change.case " \btxeditionshort {.}" * } - { edition "t" language.change.case " \btxeditionshort {.}" * } + { + output.state mid.sentence = + { edition "l" change.case$ } + { edition "t" change.case$ } if$ + "\btxnumeralshort {" swap$ * + "}~\btxeditionshort {.}" * } if$ } @@ -6243,17 +6827,34 @@ FUNCTION {format.url} { "" } { urldate empty$ - { "\btxurlfont{" url * "}" * } + { "{\latintext \btxurlfont {" url * "}}" * } { - "\btxurlfont{" url * - "}, \btxurldatecomment{} \btxkeywordlanguage {\btxurldatefont {" * - urldate * "}}" * + "{\latintext \btxurlfont {" url * + "}}\btxurldatecomment {\btxkeywordlanguage {\btxurldatefont {" * + urldate * "}}}" * } if$ } if$ } +% \end{macrocode} +% Format annotations: +% \begin{macrocode} +FUNCTION {write.annote} +{ annote empty$ + 'skip$ + { + annotelanguage empty$ + { "\btxkeywordlanguage {" } + { "{\selectlanguage {" annotelanguage * "}" * } + if$ + "\btxannotation {" * annote * "}}" * + write$ newline$ + } + if$ +} + INTEGERS { multiresult } FUNCTION {multi.page.check} @@ -6436,7 +7037,7 @@ FUNCTION {format.incoll.inproc.crossref} FUNCTION {article} { output.bibitem format.authors "author" output.check - format.title "title" output.check + format.jtitle "title" output.check crossref missing$ { format.journal.vol.year output format.number output @@ -6451,6 +7052,7 @@ FUNCTION {article} format.language * note output fin.entry + write.annote } FUNCTION {book} @@ -6480,6 +7082,7 @@ FUNCTION {book} format.language * note output fin.entry + write.annote } FUNCTION {booklet} @@ -6492,6 +7095,7 @@ FUNCTION {booklet} format.url output note output fin.entry + write.annote } FUNCTION {inbook} @@ -6523,6 +7127,7 @@ FUNCTION {inbook} format.language * note output fin.entry + write.annote } FUNCTION {incollection} @@ -6546,6 +7151,7 @@ FUNCTION {incollection} format.url output format.language * fin.entry + write.annote } FUNCTION {inproceedings} @@ -6568,6 +7174,7 @@ FUNCTION {inproceedings} format.url output format.language * fin.entry + write.annote } FUNCTION {conference} { inproceedings } @@ -6601,6 +7208,7 @@ FUNCTION {manual} format.url output note output fin.entry + write.annote } FUNCTION {mastersthesis} @@ -6615,6 +7223,7 @@ FUNCTION {mastersthesis} note output format.book.pages output fin.entry + write.annote } FUNCTION {misc} @@ -6629,6 +7238,7 @@ FUNCTION {misc} note output format.book.pages output fin.entry + write.annote empty.misc.check } @@ -6645,6 +7255,7 @@ FUNCTION {phdthesis} note output format.book.pages output fin.entry + write.annote } FUNCTION {proceedings} @@ -6676,6 +7287,7 @@ FUNCTION {proceedings} format.url output note output fin.entry + write.annote } FUNCTION {techreport} @@ -6690,6 +7302,7 @@ FUNCTION {techreport} format.url output note output fin.entry + write.annote } FUNCTION {unpublished} @@ -6700,6 +7313,7 @@ FUNCTION {unpublished} note "note" output.check format.date output fin.entry + write.annote } FUNCTION {default.type} { misc } @@ -6937,12 +7551,14 @@ FUNCTION {begin.bib} " \providebibliographyfont{name}{}%" write$ newline$ " \providebibliographyfont{lastname}{}%" write$ newline$ " \providebibliographyfont{title}{\emph}%" write$ newline$ + " \providebibliographyfont{jtitle}{\btxtitlefont}%" write$ newline$ " \providebibliographyfont{etal}{}%" write$ newline$ " \providebibliographyfont{journal}{}%" write$ newline$ " \providebibliographyfont{volume}{\textbf}%" write$ newline$ " \providebibliographyfont{ISBN}{\MakeUppercase}%" write$ newline$ " \providebibliographyfont{ISSN}{\MakeUppercase}%" write$ newline$ " \providebibliographyfont{url}{\url}%" write$ newline$ + " \providebibliographyfont{numeral}{}%" write$ newline$ " \providecommand\btxprintamslanguage[1]{\ (#1)}" write$ newline$ } |