From 14b940d3a9e9e7be69d633ba04b359fb4a9e358a Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Wed, 22 Jan 2014 01:15:02 +0000 Subject: biblatex-swiss-legal (21jan14) git-svn-id: svn://tug.org/texlive/trunk@32750 c570f23f-e606-0410-a88d-b1316a301751 --- .../biblatex-swiss-legal-base.bbx | 198 ++++++++++++++------- 1 file changed, 137 insertions(+), 61 deletions(-) (limited to 'Master/texmf-dist/tex/latex/biblatex-swiss-legal/biblatex-swiss-legal-base.bbx') diff --git a/Master/texmf-dist/tex/latex/biblatex-swiss-legal/biblatex-swiss-legal-base.bbx b/Master/texmf-dist/tex/latex/biblatex-swiss-legal/biblatex-swiss-legal-base.bbx index 13041060df0..3ca4226fa81 100644 --- a/Master/texmf-dist/tex/latex/biblatex-swiss-legal/biblatex-swiss-legal-base.bbx +++ b/Master/texmf-dist/tex/latex/biblatex-swiss-legal/biblatex-swiss-legal-base.bbx @@ -1,7 +1,7 @@ %%%%%% BIBLATEX-SWISS-LEGAL-BASE : BIBLIOGRAPHY %%%%%%% -% Copyright 2013 Adrien Vion +% Copyright 2014 Adrien Vion % % This work may be distributed and/or modified under the % conditions of the LaTeX Project Public License, either version 1.3 @@ -20,7 +20,7 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ProvidesFile{biblatex-swiss-legal-base.bbx}[2013/07/23 v1.1.1 alpha] +\ProvidesFile{biblatex-swiss-legal-base.bbx}[2014/01/21 v1.1.2 alpha] \RequireBiber[2] @@ -31,6 +31,9 @@ % Commande choisissant le fichier .lbx \DeclareLanguageMapping{french}{biblatex-swiss-legal-fr} +\DeclareLanguageMapping{german}{biblatex-swiss-legal-de} +\DeclareLanguageMapping{germanb}{biblatex-swiss-legal-de} +\DeclareLanguageMapping{ngerman}{biblatex-swiss-legal-de} %%%%%%%%%%% NOUVELLES COMMANDES DE BIBLIOGRAPHIE %%%%%%%%%%%%%%%% @@ -44,15 +47,15 @@ \printbibliography[type=online, heading=subbibliography, title=Sources en ligne] -\vspace{2cm} +\bigskip } % Commandes pour la citation uniforme des numéros -\newcommand{\parN}{n$^{\textrm{\tiny{o}}}$\addnbthinspace} -\newcommand{\parNN}{n$^{\textrm{\tiny{os}}}$\addnbthinspace} -\newcommand{\chaN}[2]{\S~#1 #2} -\newcommand{\chaparN}[2]{\S~#1 \parN #2} -\newcommand{\chaparNN}[2]{\S~#1 \parNN #2} + + +\providecommand{\chaN}[2]{\S~#1 #2} +\providecommand{\chaparN}[2]{\S~#1 \parN #2} +\providecommand{\chaparNN}[2]{\S~#1 \parNN #2} %%%%%%%%%%% OPTIONS DE BIBLIOGRAPHIE ET DE CITATION %%%%%%%%%%%%%%%% @@ -143,7 +146,7 @@ abbreviate=true, date=long, dateabbrev=false, -ibidtracker=true, +ibidtracker=context, maxbibnames=99, maxcitenames=4, mincrossrefs=1, @@ -349,13 +352,13 @@ titleit=true \DeclareNameFormat{labelname}{% \ifcase\value{uniquename}% - \usebibmacro{name:last}{\ifblank{#5}{}{\textsc{#5}\addspace}#1}{#3}{#5}{#7}% + \usebibmacro{name:last}{\ifblank{#5}{}{\textsc{#5}\addspace}\textsc{#1}}{#3}{#5}{#7}% \or \ifuseprefix - {\usebibmacro{name:last-first}{\ifblank{#5}{}{\textsc{#5}\addspace}#1}{#4}{#5}{#8}} - {\usebibmacro{name:last-first}{\ifblank{#5}{}{\textsc{#5}\addspace}#1}{#4}{#6}{#8}}% + {\usebibmacro{name:last-first}{\ifblank{#5}{}{\textsc{#5}\addspace}\textsc{#1}}{#4}{#5}{#8}} + {\usebibmacro{name:last-first}{\ifblank{#5}{}{\textsc{#5}\addspace}\textsc{#1}}{#4}{#6}{#8}}% \or - \usebibmacro{name:last-first}{\ifblank{#5}{}{\textsc{#5}\addspace}#1}{#3}{#5}{#7}% + \usebibmacro{name:last-first}{\ifblank{#5}{}{\textsc{#5}\addspace}\textsc{#1}}{#3}{#5}{#7}% \fi \usebibmacro{name:andothers}} @@ -364,15 +367,15 @@ titleit=true \DeclareNameFormat*{author}{% \iftoggle{bbx:firstnames}% - {\usebibmacro{name:last-first}{\ifblank{#5}{}{\textsc{#5}\addspace}\textsc{#1}}{#3}{#5}{#7}}% + {\usebibmacro{name:last-first}{\ifblank{#5}{}{\textsc{#5}\addspace}\textsc{#1}}{#3}{}{#7}}% {\ifcase\value{uniquename}% - \usebibmacro{name:last}{\ifblank{#5}{}{\textsc{#5}\addspace}#1}{#3}{#5}{#7}% + \usebibmacro{name:last}{\ifblank{#5}{}{\textsc{#5}\addspace}#1}{#3}{}{#7}% \or% \ifuseprefix - {\usebibmacro{name:last-first}{\ifblank{#5}{}{\textsc{#5}\addspace}#1}{#4}{#5}{#8}} + {\usebibmacro{name:last-first}{\ifblank{#5}{}{\textsc{#5}\addspace}#1}{#4}{}{#8}} {\usebibmacro{name:last-first}{\ifblank{#5}{}{\textsc{#5}\addspace}#1}{#4}{#6}{#8}}% \or - \usebibmacro{name:last-first}{\ifblank{#5}{}{\textsc{#5}\addspace}#1}{#3}{#5}{#7}% + \usebibmacro{name:last-first}{\ifblank{#5}{}{\textsc{#5}\addspace}#1}{#3}{}{#7}% \fi \usebibmacro{name:andothers}}% } @@ -385,15 +388,15 @@ titleit=true \DeclareNameFormat*{translator}{% \iftoggle{bbx:firstnames}% - {\usebibmacro{name:first-last}{\ifblank{#5}{}{\textsc{#5}\addspace}\textsc{#1}}{#3}{#5}{#7}}% + {\usebibmacro{name:first-last}{\ifblank{#5}{}{\textsc{#5}\addspace}\textsc{#1}}{#3}{}{#7}}% {\ifcase\value{uniquename}% - \usebibmacro{name:last}{\ifblank{#5}{}{\textsc{#5}\addspace}#1}{#3}{#5}{#7}% + \usebibmacro{name:last}{\ifblank{#5}{}{\textsc{#5}\addspace}#1}{#3}{}{#7}% \or% \ifuseprefix - {\usebibmacro{name:first-last}{\ifblank{#5}{}{\textsc{#5}\addspace}#1}{#4}{#5}{#8}} + {\usebibmacro{name:first-last}{\ifblank{#5}{}{\textsc{#5}\addspace}#1}{#4}{}{#8}} {\usebibmacro{name:first-last}{\ifblank{#5}{}{\textsc{#5}\addspace}#1}{#4}{#6}{#8}}% \or - \usebibmacro{name:first-last}{\ifblank{#5}{}{\textsc{#5}\addspace}#1}{#3}{#5}{#7}% + \usebibmacro{name:first-last}{\ifblank{#5}{}{\textsc{#5}\addspace}#1}{#3}{}{#7}% \fi \usebibmacro{name:andothers}}% } @@ -424,22 +427,22 @@ titleit=true \iftoggle{bbx:editorssc}% <= test pour savoir si l'option editorssc est activée. {\ifblank{#5}{}{\textsc{#5}\addspace}\textsc{#1}}% Si oui: particule et nom en petites capitales {\ifblank{#5}{}{\textnormal{#5}\addspace}\textnormal{#1}}% - }{#3}{#5}{#7}% Prénom - }% + }{#3}{}{#7}% Prénom + \ignorespaces}% {% Les prénoms ne sont pas imprimés donc potentiel besoin de désambiguation \ifcase\value{uniquename}% A) PAS de désambiguation nécessaire \usebibmacro{name:last}{% \iftoggle{bbx:editorssc}% <= test pour savoir si l'option editorssc est activée. {\ifblank{#5}{}{\textsc{#5}\addspace}\textsc{#1}}% Si oui: particule et nom en petites capitales {\ifblank{#5}{}{\textnormal{#5}\addspace}\textnormal{#1}}% - }{#3}{#5}{#7}% + }{#3}{}{#7}% \or% B) DESAMBIGUATION avec initiales \ifuseprefix {\usebibmacro{name:last-first}{% \iftoggle{bbx:editorssc}% <= test pour savoir si l'option editorssc est activée. {\ifblank{#5}{}{\textsc{#5}\addspace}\textsc{#1}}% Si oui: particule et nom en petites capitales {\ifblank{#5}{}{\textnormal{#5}\addspace}\textnormal{#1}}% - }{#4}{#5}{#8}} + }{#4}{}{#8}} {\usebibmacro{name:last-first}{% \iftoggle{bbx:editorssc}% <= test pour savoir si l'option editorssc est activée. {\ifblank{#5}{}{\textsc{#5}\addspace}\textsc{#1}}% Si oui: particule et nom en petites capitales @@ -450,15 +453,15 @@ titleit=true \iftoggle{bbx:editorssc}% <= test pour savoir si l'option editorssc est activée. {\ifblank{#5}{}{\textsc{#5}\addspace}\textsc{#1}}% Si oui: particule et nom en petites capitales {\ifblank{#5}{}{\textnormal{#5}\addspace}\textnormal{#1}}% - }{#3}{#5}{#7}% + }{#3}{}{#7}% \fi% } - \usebibmacro{name:andothers}% Séparations entre les noms + \usebibmacro{name:andothers}\ignorespaces% Séparations entre les noms } \ifthenelse{\value{listcount}=\value{liststop}}% Mention "(éditeur)": seulement à la fin de la liste {\ifthenelse{\value{listtotal}=1}% si la liste ne comporte qu'un nom - {\addspace\mkbibparens{\biblcstring{editor}}}% alors on utilise le string editor - {\addspace\mkbibparens{\biblcstring{editors}}}% sinon, on utilise le string editors + {\addspace\mkbibparens{\bibstring{editor}}}% alors on utilise le string editor + {\addspace\mkbibparens{\bibstring{editors}}}% sinon, on utilise le string editors }% {}% } @@ -746,7 +749,7 @@ titleit=true {% a) Cas o˘ l'option abrjournal est activée => on vérifie s'il existe un string (cas échéant, on imprime le string en abrégé), puis on imprime la référence de manière raccourcie \iffieldbibstring{journaltitle} {% aa) s'il existe un string pour le nom de la revue - \bibsstring{\thefield{journaltitle}}% + \midsentence\bibsstring{\thefield{journaltitle}}% le midsentence empêche la capitalisation automatique après les deux points en allemand }% {% bb) s'il n'existe pas de string pour le nom de la revue \printfield{journaltitle}% @@ -788,6 +791,18 @@ titleit=true } +% considérant et page topique dans la jurisprudence + +\newbibmacro{recitalandpage}{% +\iffieldundef{usere}% Considérant et page topique + {}% + {\addcomma\addspace\bibsstring{recital}\addspace\printfield{usere}% + \iffieldundef{userf}% + {}% + {\addspace\mkbibparens{\printfield{userf}}}% + }% +} + % Référence principale de la jurisprudence \newbibmacro{mainref}{% @@ -823,19 +838,15 @@ titleit=true \iflistundef{language}% Langue de l'arrêt original {}% {\addspace\mkbibbrackets{\thelist{language}}}% -\iffieldundef{usere}% Considérant et page topique - {} - {\addcomma\addspace\bibsstring{recital}\addspace\printfield{usere}% - \iffieldundef{userf} - {} - {\addspace\mkbibparens{\printfield{userf}}} - }% +\usebibmacro{recitalandpage}% } % Liaison entre référence principale et référence secondaire \newbibmacro{interref}{% +\iffieldundef{howpublished}{}% +{% \iffieldequalstr{howpublished}{publ}% Liaison entre référence principale et secondaire {\iftoggle{bbx:abrjournal}% {\newunit}% @@ -849,7 +860,7 @@ titleit=true }% {\printfield{howpublished}}% \newunit% -} +}} % Pages @@ -1026,25 +1037,90 @@ titleit=true % Ibidem -\newbibmacro{ibidem}{% -\ifcitation{% N'est utilisé que si l'on est dans une citation - \iffieldequalstr{entrytype}{customb}% - {\bibstring{lastruling}}% - {\iffieldequalstr{entrytype}{jurisdiction}% - {\bibstring{lastruling}}% - {\emph{\bibcpstring{ibidem}}}% - }% - }% - {}% -} +\newcommand{\bbltxsl@lastrulingcited@text}{} +\newcommand{\bbltxsl@lastrulingcited@foot}{} \newcommand{\testibid}[1]{% -\ifciteibid% - {\usebibmacro{ibidem}}% - {#1}% +\ifcitation{% N'est utilisé que si l'on est dans une citation +\ifdefequal{\blx@imc@ifciteibid}{\@secondoftwo}% Si l'option ibidtracker=false est activée + {#1}% La citation est imprimée sans autre contrôle + {% Si n'importe quelle autre variable est utilisée +\ifthenelse{% + \iffieldequalstr{entrytype}{jurisdiction}% + }% + {% Si type = @jurisdiction + \ifdefequal{\blx@imc@ifciteibid}{\blx@ifciteibid@context}% Option ibidtracker=context + {% + \iftoggle{blx@footnote}% + {\iffieldequals{entrykey}{\bbltxsl@lastrulingcited@foot}% + {\bibcpstring{lastruling}}% oui = string lastruling + {#1\savefield{entrykey}{\bbltxsl@lastrulingcited@foot}}}% + {\iffieldequals{entrykey}{\bbltxsl@lastrulingcited@text}% + {\bibcpstring{lastruling}}% oui = string lastruling + {#1\savefield{entrykey}{\bbltxsl@lastrulingcited@text}}}% + }% + {% + \ifdefequal{\blx@imc@ifciteibid}{\blx@ifciteibid@constrict}% Option ibidtracker=constrict + {% + \iftoggle{blx@footnote}% + {\iffieldequals{entrykey}{\bbltxsl@lastrulingcited@foot}% + {\bibcpstring{lastruling}}% oui = string lastruling + {#1\savefield{entrykey}{\bbltxsl@lastrulingcited@foot}}}% + {\iffieldequals{entrykey}{\bbltxsl@lastrulingcited@text}% + {\bibcpstring{lastruling}}% oui = string lastruling + {#1\savefield{entrykey}{\bbltxsl@lastrulingcited@text}}}% + }% + {% Option ibidtracker=true ou Option ibidtracker=strict + \iffieldequals{entrykey}{\bbltxsl@lastrulingcited@text}% Si l'arrêt actuel est le même que le précédent cité + {\bibcpstring{lastruling}}% oui = string lastruling + {#1\savefield{entrykey}{\bbltxsl@lastrulingcited@text}\savefield{crossref}{\bbltxsl@lastrulingcited@foot}}% non = référence normale + enregistrement de l'entrykey actuelle pour le test dans l'entrée suivante + }% + }% + } + {% Si type n'est pas @ jurisdiction + \iffieldequalstr{entrytype}{customb}% Si type = @customb + {% + \ifdefequal{\blx@imc@ifciteibid}{\blx@ifciteibid@context}% Option ibidtracker=context + {% + \iftoggle{blx@footnote}% + {\iffieldequals{crossref}{\bbltxsl@lastrulingcited@foot}% + {\bibcpstring{lastruling}\newblock\usebibmacro{recitalandpage}}% oui = string lastruling + consid et page + {#1\savefield{crossref}{\bbltxsl@lastrulingcited@foot}}}% + {\iffieldequals{crossref}{\bbltxsl@lastrulingcited@text}% + {\bibcpstring{lastruling}\newblock\usebibmacro{recitalandpage}}% oui = string lastruling + consid et page + {#1\savefield{crossref}{\bbltxsl@lastrulingcited@text}}}% + }% + {% + \ifdefequal{\blx@imc@ifciteibid}{\blx@ifciteibid@constrict}% Option ibidtracker=constrict + {% + \iftoggle{blx@footnote}% + {\iffieldequals{crossref}{\bbltxsl@lastrulingcited@foot}% + {\bibcpstring{lastruling}\newblock\usebibmacro{recitalandpage}}% oui = string lastruling + consid et page + {#1\savefield{crossref}{\bbltxsl@lastrulingcited@foot}}}% + {\iffieldequals{crossref}{\bbltxsl@lastrulingcited@text}% + {\bibcpstring{lastruling}\newblock\usebibmacro{recitalandpage}}% oui = string lastruling + consid et page + {#1\savefield{crossref}{\bbltxsl@lastrulingcited@text}}}% + }% + {% Option ibidtracker=true ou Option ibidtracker=strict + \iffieldequals{crossref}{\bbltxsl@lastrulingcited@text}% Si l'arrêt actuel est le même que le précédent cité + {\bibcpstring{lastruling}\newblock\usebibmacro{recitalandpage}}% oui = string lastruling + consid et page + {#1\savefield{crossref}{\bbltxsl@lastrulingcited@text}\savefield{crossref}{\bbltxsl@lastrulingcited@foot}}% non = référence normale + enregistrement de l'entrykey actuelle pour le test dans l'entrée suivante + }% + }% + }% + {\ifciteibid% Si le type n'est ni @jurisdiction ni @customb. + {\emph{\bibcpstring{ibidem}}}% + {#1}% + \savefield{entrykey}{\bbltxsl@lastrulingcited@text}% Enregistrement de l'entrykey actuelle + \savefield{entrykey}{\bbltxsl@lastrulingcited@foot}% Enregistrement de l'entrykey actuelle + }% + }% +}}% +{#1}% } -%\testibid{% + + %%%%%%%%%%% DRIVERS %%%%%%%%%%%%% @@ -1084,7 +1160,7 @@ titleit=true \usebibmacro{library}% \usebibmacro{resume}% \usebibmacro{note}% - \finentry% +% \finentry% }} @@ -1110,7 +1186,7 @@ titleit=true \usebibmacro{library}% \usebibmacro{resume}% \usebibmacro{note}% - \finentry% +% \finentry% }} @@ -1136,7 +1212,7 @@ titleit=true \usebibmacro{library}% \usebibmacro{resume}% \usebibmacro{note}% - \finentry% +% \finentry% }} @@ -1155,7 +1231,7 @@ titleit=true \usebibmacro{library}% \usebibmacro{resume}% \usebibmacro{note}% - \finentry% +% \finentry% }} @@ -1182,7 +1258,7 @@ titleit=true \usebibmacro{library}% \usebibmacro{resume}% \usebibmacro{note}% - \finentry% +% \finentry% }} @@ -1336,7 +1412,7 @@ titleit=true \usebibmacro{library}% \usebibmacro{resume}% \usebibmacro{note}% - \finentry% +% \finentry% }} @@ -1352,7 +1428,7 @@ titleit=true \usebibmacro{library}% \usebibmacro{resume}% \usebibmacro{note}% - \finentry% +% \finentry% }} @@ -1412,7 +1488,7 @@ titleit=true \usebibmacro{resume}% \usebibmacro{note}% \usebibmacro{library}% - \finentry% +% \finentry% }} -- cgit v1.2.3