summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/univie-ling/univie-ling.cbx
blob: 30064c8f9119639f683efc3695574987e8406ea2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% univie-ling.cbx
%
% This file is part of the univie-ling LaTeX bundle, consisting of:
%  -- univie-ling-expose.cls: Class for PhD Research Proposals
%  -- univie-ling-handout.cls: Class for Handouts
%  -- univie-ling-paper.cls: Class for student papers
%  -- univie-ling-poster.cls: Class for scientific posters
%  -- univie-ling-thesis.cls: Class for BA, MA or PhD theses
%  -- univie-ling-wlg.cls: Class for the journal Wiener Linguistische Gazette
%  -- univie-logo-sw.pdf: University of Vienna logo
%  -- univie-ling-wlg-logo.pdf: Logo of the journal Wiener Linguistische Gazette
%  -- univie-ling.bbx: Biblatex bibliography style
%  -- univie-ling.cbx: Biblatex citation style (this file)
%
% Author: Jürgen Spitzmüller
%
% The purpose of this file is to provide citation formatting
% following the recommendations of (Applied) Linguistics at University
% of Vienna. Those basically draw on the Unified Style Sheet for Linguistics
% (http://linguistlist.org/pubs/tocs/JournalUnifiedStyleSheet2007.pdf)
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License, either version 1.3
% of this license or (at your option) any later version.
% The latest version of this license is in
%   http://www.latex-project.org/lppl.txt
% and version 1.3 or later is part of all distributions of LaTeX
% version 2003/12/01 or later.
%
% This work has the LPPL maintenance status "maintained".
% 
% This Current Maintainer of this work is Jürgen Spitzmüller.
% Please report issues to https://github.com/jspitz/univie-ling/issues
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%


\ProvidesFile{univie-ling.cbx}[2024/06/27 v.2.6 biblatex citation style]

\RequireCitationStyle{authoryear-comp}

\ExecuteBibliographyOptions{%
  labeldateparts,
  uniquename,
  uniquelist,
  autocite=inline,
  sortcites=false,
  maxcitenames=2
}

\@ifpackagelater{biblatex}{2016/09/07}
  {}
  {\PackageError{biblatex}
    {Outdated 'biblatex' package\MessageBreak
     Upgrade to biblatex v3.5 (2016/09/07) or later.\MessageBreak
     I found: '\csuse{ver@biblatex.sty}'.\MessageBreak
     This is a fatal error. I'm aborting now}%
     \endinput}

\renewbibmacro*{cite:shorthand}{%
  \printtext[bibhyperref]{\printfield{shorthand}}}

\renewbibmacro*{cite:label}{%
  \iffieldundef{label}
    {\printtext[bibhyperref]{\printfield[citetitle]{labeltitle}}}
    {\printtext[bibhyperref]{\printfield{label}}}}

\renewbibmacro*{cite:labeldate+extradate}{%
  \iffieldundef{labelyear}
    {}
    {\printtext[bibhyperref]{%
       \printfield{labelyear}%
       \printfield{extradate}}%
       \iffieldundef{origyear}{}{%
         \iffieldsequal{origyear}{year}{}{%
           \addspace\mkbibbrackets{%
               \iffieldundef{origmonth}{%
                  \printorigdate}{%
                    \printfield{origyear}%
                    \iffieldundef{origenddate}{}{%
                      \bibdaterangesep\printfield{origendyear}%
                  }%
               }%
            }%
         }%
       }%
    }%
}

\renewbibmacro*{cite:extradate}{%
  \iffieldundef{extradate}
    {}
    {\printtext[bibhyperref]{\printfield{extradate}}}}

\renewcommand*{\nameyeardelim}{\addspace}

\renewcommand*{\postnotedelim}{\addcolon\space}

% Fallback for biblatex < 3.11
\AtBeginDocument{\providecommand*\mknormrange[1]{#1}}

\DeclareFieldFormat{postnote}{\mknormrange{#1}}
\DeclareFieldFormat{multipostnote}{\mknormrange{#1}}

\renewcommand*{\multicitedelim}{\addsemicolon\space}
\renewcommand*{\finalnamedelim}{\addspace\&\addspace}

\endinput