En-têtes communes pour LaTeX
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 

93 lines
3.4 KiB

% Ajouts dans la table des matières
\KOMAoption{toc}{bibliography}
%\KOMAoption{toc}{bibliography,index}
% Références croisées
\usepackage{cleveref}
% Bibliographie
\usepackage[
natbib=true, % Pour pouvoir garder/utiliser les commandes natbib
backref=true, % Indique les pages citant les articles dans la bibliographie
style=authoryear-comp, % Style Auteur(s)-Année avec compression
labelnumber, % Pour pouvoir faire aussi des citation numériques
defernumbers, % Pour séparer les deux numérotations
sorting=nyvt, % Tri par nom, année, volume, titre pour la biblio
sortcites=false, % Mais pas de tri lors des citations
uniquelist=minyear, % Éviter les citations trop verbeuses
uniquename=init, % Ne considérer que l’initiale du prénom pour décider l’unicité d’un auteur
maxcitenames=2, % Pas plus de deux noms pour les citations
maxbibnames=4, % Jusqu’à 4 noms affichés dans la biblio
minbibnames=4, % Et pas moins si ça dépasse
dashed=false, % Répétition des noms dans la bibliographie
doi=false, % Ne pas afficher le DOI, en lien sur le titre
url=false, % Ne pas afficher l’URL, en lien sur le titre
isbn=false, % Ne pas afficher l’ISBN
autolang=hyphen % Hyphénation en fonction de la langue
]{biblatex}
% Guillemets en fonction de la langue dans la bibliographie
\usepackage{csquotes}
\makeatletter
\def\blx@hook@initlang{\csq@reset=0\csq@setstyle{\abx@field@langid}}
\makeatletter
% Nom, Prénom pour tous
\DeclareNameAlias{sortname}{family-given}
% Pas de “In :” pour les articles
\renewbibmacro{in:}{\ifentrytype{article}{}{\printtext{\bibstring{in}\intitlepunct}}}
% Citations numériques pour les articles choisis
\newbibmacro*{cite:num}{\printtext[bibhyperref]{\printfield{labelnumber}}}
\DeclareCiteCommand{\citenum}
{\bibopenbracket}
{\usebibmacro{prenote}\usebibmacro{citeindex}\usebibmacro{cite:num}\usebibmacro{postnote}}
{\multicitedelim}
{\bibclosebracket}
% Ajouts des numéros dans la bibliographie par conséquent
\DeclareFieldFormat[book,inbook,proceedings,thesis]{labelnumber}{\RN{#1}} % Numérotation romaine séparée
\DeclareFieldFormat{labelnumberwidth}{#1.}
\defbibenvironment{bibliography}{%
\list{%
\printtext[labelnumberwidth]{%
\printfield{labelprefix}%
\printfield{labelnumber}%
}%
}{%
\setlength{\labelwidth}{\labelnumberwidth}%
\setlength{\leftmargin}{\labelwidth}%
\setlength{\labelsep}{\biblabelsep}%
\addtolength{\leftmargin}{\labelsep}%
\setlength{\itemsep}{\bibitemsep}%
\setlength{\parsep}{\bibparsep}}%
\renewcommand*{\makelabel}[1]{\hss##1}%
}%
{\endlist}%
{\item}%
% DOI/URL comme lien sur le titre au lieu de l’affichage
\newbibmacro{string+doiurl}[1]{%
\iffieldundef{doi}{%
\iffieldundef{url}{%
#1%
}{%
\href{\thefield{url}}{#1}%
}%
}{%
\href{https://dx.doi.org/\thefield{doi}}{#1}%
}%
}
\DeclareFieldFormat{title}{\usebibmacro{string+doiurl}{\mkbibemph{#1}}}
\DeclareFieldFormat[article,inproceedings,inbook]{title}{\usebibmacro{string+doiurl}{\mkbibquote{#1}}}
\DeclareFieldFormat{url}{} % Désactiver l’affichage de l’URL aussi pour les @online
% Déclarer les articles comme en anglais par défaut
\DeclareSourcemap{
\maps[datatype=bibtex]{
\map{
\step[fieldset=langid,fieldvalue=english]
}
}
}