ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/trunk/matt_papers/canidacy_talk/jurabib.sty
Revision: 62
Committed: Tue Aug 6 22:06:13 2002 UTC (21 years, 11 months ago) by mmeineke
File size: 215080 byte(s)
Log Message:

added a crapload of crap that may or may norbe neccassary. Time will tell. Also, got footnote references working.

File Contents

# Content
1 %%
2 %% This is file `jurabib.sty',
3 %% generated with the docstrip utility.
4 %%
5 %% The original source files were:
6 %%
7 %% jurabib.dtx (with options: `package')
8 %%
9 %% *** This is jurabib v0.52n (2002/06/24) ***
10 %%
11 %% LaTeX package for citing with abbreviated titles and
12 %% names, supporting short and long forms of citations
13 %%
14 %% Copyright (C) 1999, 2000, 2001, 2002 Jens Berger
15 %% This program is free software; you can redistribute it and/or
16 %% modify it under the terms of the GNU General Public License
17 %% as published by the Free Software Foundation; either version 2
18 %% of the License, or (at your option) any later version.
19 %%
20 %% This program is distributed in the hope that it will be useful,
21 %% but WITHOUT ANY WARRANTY; without even the implied warranty of
22 %% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
23 %% GNU General Public License for more details.
24 %%
25 %% You should have received a copy of the GNU General Public License
26 %% along with this program; if not, write to the Free Software
27 %% Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
28 %%
29 \NeedsTeXFormat{LaTeX2e}[1995/12/01]
30 \ProvidesPackage{jurabib}[2002/07/11 v0.52o Extended citations]
31 \RequirePackage{ifthen}
32 \RequirePackage{calc}
33 \RequirePackage{keyval}
34 \RequirePackage{url}
35 \RequirePackage{array}
36 \newcommand*{\jb@pkg@name}{jurabib}
37 \newif\ifjb@abbrv
38 \newif\ifjbidemabbrvwithperiod
39 \newif\ifjb@all@titles
40 \newif\ifjb@all@full
41 \newif\ifjb@allow@adding@of@pagerange
42 \newif\ifjb@allow@adding@of@pagerange@for@first@cite
43 \newif\ifjb@allow@dot@for@lookat
44 \newif\ifjb@allow@lookat@for@fullcite
45 \newif\ifjb@allow@howcited@art@period
46 \newif\ifjb@allow@hyper@cite@nobib
47 \newif\ifjb@allow@hyper@cite
48 \newif\ifjb@allow@nobib
49 \newif\ifjb@alphanum
50 \newif\ifjb@always@pageranges
51 \newif\ifjbaltformat
52 \newif\ifjb@author@year
53 \newif\ifjb@babel
54 \newif\ifjb@backref
55 \newif\ifjb@before@title@separator
56 \newif\ifjb@bib@hang
57 \newif\ifjb@bibetal\jb@bibetaltrue
58 \newif\ifjb@biblikecite
59 \newif\ifjb@bibssed
60 \newif\ifjb@change@fonts@for@fullcite
61 \newif\ifjb@cite
62 \newif\ifjb@cite@title
63 \newif\ifjb@cite@no@title
64 \newif\ifjb@coauthor@last
65 \newif\ifjb@compare@title@fields
66 \newif\ifjb@comma@before@rest
67 \newif\ifjb@compressed@bib
68 \newif\ifjb@citetoend
69 \newif\ifjbcross
70 \newif\ifjb@debug
71 \newif\ifjb@debug@br
72 \newif\ifjb@dot
73 \newif\ifjb@dynamic@author@fonts
74 \newif\ifjb@dynamic@crossrefs
75 \newif\ifjb@edby
76 \newif\ifjb@endnotes
77 \newif\ifjbetal
78 \newif\ifjb@fn
79 \newif\ifjb@foot
80 \newif\ifjb@footnote@period
81 \newif\ifjb@footnote@period@ibidem
82 \newif\ifjb@first@cite
83 \newif\ifjb@firstcite@full
84 \newif\ifjb@first@author@reversed
85 \newif\ifjb@formatted@pages
86 \newif\ifjb@fullcite@again
87 \newif\ifjblookforgender
88 \newif\ifjb@howcited
89 \newif\ifjb@howcited@all
90 \newif\ifjb@howcited@normal
91 \newif\ifjb@howcited@compare
92 \newif\ifjb@howcited@multiple
93 \newif\ifjb@humanbst@loaded
94 \newif\ifjb@hyper
95 \newif\ifjb@ibidem
96 \newif\ifjb@ibidem@pagewise
97 \newif\ifjb@ibidem@double@pagewise
98 \newif\ifjb@ibidem@with@name
99 \newif\ifjb@ibidem@with@short@name
100 \newif\ifjb@ibidem@with@name@and@title
101 \newif\ifjb@ibidem@with@name@and@title@auto
102 \newif\ifjb@same@author@different@work
103 \newif\ifjb@idem
104 \newif\ifjb@idem@pagewise
105 \newif\ifjb@idem@double@pagewise
106 \newif\ifjb@ignore@varioref
107 \newif\ifjb@index
108 \newif\ifjb@index@bib
109 \newif\ifjb@jura
110 \newif\ifjb@jureco
111 \newif\ifjb@kv@recognized
112 \newif\ifjb@lookat
113 \newif\ifjb@no@bib\global\jb@no@bibfalse
114 \newif\ifjb@no@lookat@for@bib
115 \newif\ifjb@no@nested@crossrefs
116 \newif\ifjb@no@title@replace
117 \newif\ifjb@numbered@bib
118 \newif\ifjb@natbib@opt@arg@order
119 \newif\ifjb@noauthorforcitetitle
120 \newif\ifjbnoformatafterstartpage
121 \newif\ifjb@opcit
122 \newif\ifjb@@opcit
123 \newif\ifjb@period
124 \newif\ifjb@ragged
125 \newif\ifjb@bibformat@ibidem
126 \newif\ifjb@reverse@all@names
127 \newif\ifjb@reverse@names@in@citation
128 \newif\ifjb@same@fullauthor
129 \newif\ifjb@see
130 \newif\ifjb@second@extra@space
131 \newif\ifjb@suppress@dot@for@howcited
132 \newif\ifjb@third@extra@space
133 \newif\ifjb@tabular
134 \newif\ifjb@tested@pageranges
135 \newif\ifjb@save@allfull@status
136 \newif\ifjb@save@lookat@status
137 \newif\ifjb@suppress@etal@dot
138 \newif\ifjb@ssed@after@author
139 \newif\ifjb@ssed@all
140 \newif\ifjb@ssed@commented
141 \newif\ifjb@ssed@kerning@wanted
142 \newif\ifjb@ssed@recent@kerned
143 \newif\ifjb@ssed@mult@works
144 \newif\ifjb@ssed@sw
145 \newif\ifjb@starred@cite
146 \newif\ifjb@start@page
147 \newif\ifjb@switchidemofflocally
148 \newif\ifjb@url
149 \newif\ifjbuseidemhrule
150 \newif\ifjb@vario
151 \newif\ifjbweareinbib
152 \newif\ifjbweareinhowcited
153 \newif\ifjb@yearafterauthor
154 \newif\ifjb@yearaftertitle
155 \jb@allow@adding@of@pagerangetrue
156 \jb@allow@dot@for@lookattrue
157 \jb@allow@lookat@for@fullcitetrue
158 \jb@allow@hyper@cite@nobibtrue
159 \jb@allow@hyper@citetrue
160 \jb@bib@hangtrue
161 \jb@coauthor@lasttrue
162 \jb@second@extra@spacetrue
163 \jb@third@extra@spacetrue
164 \jbnoformatafterstartpagetrue
165 \newcommand*{\NAT@citex}{}%
166 \def\bbl@cite@choice{%
167 \global\let\bibcite\bbl@bibcite
168 \@ifpackageloaded{jurabib}{\global\let\bibcite\org@bibcite}{}%
169 \global\let\bbl@cite@choice\relax
170 }%
171 \edef\jbselectlanguage{\noexpand\protect%
172 \expandafter\noexpand\csname jbselectlanguage \endcsname}%
173 \expandafter\def\csname jbselectlanguage \endcsname#1{%
174 \edef\languagename{\ifnum\escapechar=\expandafter`\string#1\@empty%
175 \else \string#1\@empty\fi}\select@language{\languagename}%
176 }%
177 \let\jb@typeout\typeout
178 \let\jb@package@warning\PackageWarning
179 \let\jb@package@warningNoLine\PackageWarningNoLine
180 \def\jb@info#1{\PackageInfo{\jb@pkg@name}{#1}}%
181 \newcommand*{\jbsilent}{%
182 \jb@info{*** Silent Mode ON ***}%
183 \let\jb@package@warning\@gobbletwo
184 \let\jb@package@warningNoLine\@gobbletwo
185 \let\jb@typeout\@gobble%
186 }%
187 \newcommand*{\jbauthorfont}{}%
188 \newcommand*{\jborgauthorfont}{}%
189 \newcommand*{\jbcoauthorfont}{}%
190 \newcommand*{\jbtitlefont}{}%
191 \newcommand*{\jbactualauthorfont}{\textit}%
192 \newcommand*{\jbapifont}{\jbtitlefont}%
193 \newcommand*{\jbbtitlefont}{\normalfont}%
194 \newcommand*{\jbauthorfnfont}{\normalfont}%
195 \newcommand*{\jbactualauthorfnfont}{\textit}%
196 \newcommand*{\jbauthorfontifcoauthor}{\jborgauthorfont}%
197 \newcommand*{\jbignorevarioref}{\global\jb@ignore@varioreftrue}%
198 \newcommand*{\jbdisablecitationcrossref}{\jb@no@nested@crossrefstrue}%
199 \newcommand*{\jbdotafterbibentry}{\jb@dottrue}%
200 \newcommand*{\jbdotafterendnote}{\AtBeginDocument{\def\@endanenote{\unskip.\par\endgroup}}}%
201 \newcommand*{\jbsseditionkerned}{\jb@ssed@kerning@wantedtrue}%
202 \newcommand*{\jbsuperscripteditionafterauthor}{\jb@ssed@after@authortrue}%
203 \newcommand*{\jbssedbd}{}\let\jbssedbd\@gobble
204 \@ifpackageloaded{bibunits}{%
205 \ClassError{\jb@pkg@name}{Please load `bibunits' after `jurabib'}{%
206 Just put the command `\string\usepackage{bibunits}' %
207 after `\string\usepackage{jurabib}',\MessageBreak
208 otherwise these packages won't work together.}}{\relax}
209 \@ifpackageloaded{hyperref}{% NOTE: there's another check for hyperref \AtBeginDocument
210 \ClassError{\jb@pkg@name}{Please load `jurabib' before `hyperref'}{%
211 Just put the command `\string\usepackage{hyperref}' %
212 after `\string\usepackage{jurabib}',\MessageBreak
213 otherwise these packages won't work together.}}{\relax}%
214 \newcommand*{\jbyearaftertitle}{%
215 \AtBeginDocument{%
216 \global\jb@yearafterauthorfalse
217 \global\jb@yearaftertitletrue
218 }%
219 }
220 \newcommand*{\bibauthormultiple}{%
221 \stepcounter{multiple@author}% to suppress inside bibliographic entry
222 \ifthenelse{\boolean{jblookforgender}}{%
223 \ifthenelse{\equal{\jb@@gender}{sm}}{%
224 \bibibidfont{\bibidemSmname}%
225 }{%
226 \ifthenelse{\equal{\jb@@gender}{pm}}{%
227 \bibibidfont{\bibidemPmname}%
228 }{%
229 \ifthenelse{\equal{\jb@@gender}{sf}}{%
230 \bibibidfont{\bibidemSfname}%
231 }{%
232 \ifthenelse{\equal{\jb@@gender}{pf}}{%
233 \bibibidfont{\bibidemPfname}%
234 }{%
235 \ifthenelse{\equal{\jb@@gender}{sn}}{%
236 \bibibidfont{\bibidemSnname}%
237 }{%
238 \ifthenelse{\equal{\jb@@gender}{pn}}{%
239 \bibibidfont{\bibidemPnname}%
240 }{%
241 \ifthenelse{\equal{\jb@@gender}{}}{%
242 \jb@package@warningNoLine{\jb@pkg@name}{%
243 You are using \string\jblookforgender,\MessageBreak
244 but gender field for `\jb@key'\MessageBreak
245 is empty}%
246 \bibibidfont{\bibidemSmname}%
247 }{%
248 \jb@package@warningNoLine{\jb@pkg@name}{%
249 You are using \string\jblookforgender,\MessageBreak
250 but gender field for `\jb@key'\MessageBreak
251 is not valid}%
252 \bibibidfont{\bibidemSmname}%
253 }%
254 }%
255 }%
256 }%
257 }%
258 }%
259 }%
260 \bibansep{}%
261 }{%
262 \ifjbuseidemhrule
263 \leavevmode\vrule height 2pt depth -1.6pt width 21pt\hspace{8pt}%
264 \else
265 \bibibidfont{\bibidemSmname}%
266 %
267 \ifthenelse{\equal{\jb@@testlast@au@or@ed}{au}%
268 \and\equal{\jb@@test@au@or@ed}{ed}%
269 }{%
270 \space\bibEIMfont{\editorname}%
271 }{}%
272 %
273 \bibansep{}%
274 \fi
275 }%
276 }%
277 \newcommand*{\jbmultfootsep}{\textsuperscript{,\,}}%
278 \AtBeginDocument{%
279 \@ifpackageloaded{footmisc}{}{%
280 \let\jb@@footnote\footnote
281 \renewcommand\footnote[2][]{\def\@tempa{#1}%
282 \ifx\@tempa\@empty\jb@@footnote{#2}\else
283 \jb@@footnote[#1]{#2}\fi
284 \futurelet\@let@token\@next@footnote}%
285 \let\jb@@footnotemark\footnotemark
286 \renewcommand\footnotemark[1][]{\def\@tempa{#1}%
287 \ifx\@tempa\@empty\jb@@footnotemark\else
288 \jb@@footnotemark[2]\fi
289 \futurelet\@let@token\@next@footnote}%
290 }%
291 }%
292 \def\@next@footnote{%
293 \ifx\@let@token\footnote
294 \jbmultfootsep%
295 \else
296 \ifx\@let@token\footnotemark
297 \jbmultfootsep%
298 \else
299 \ifx\@let@token\footcite
300 \jbmultfootsep%
301 \else
302 \ifx\@let@token\footfullcite
303 \jbmultfootsep%
304 \else
305 \ifx\@let@token\footcitetitle
306 \jbmultfootsep%
307 \else
308 \ifx\@let@token\footcitep
309 \jbmultfootsep%
310 \else
311 \ifx\@let@token\footcitet
312 \jbmultfootsep%
313 \else
314 \ifx\@let@token\footcitealp
315 \jbmultfootsep%
316 \else
317 \ifx\@let@token\footcitealt
318 \jbmultfootsep%
319 \else
320 \ifx\@let@token\footciteauthor
321 \jbmultfootsep%
322 \else
323 \ifx\@let@token\footciteyear
324 \jbmultfootsep%
325 \else
326 \ifx\@let@token\footciteyearpar
327 \jbmultfootsep%
328 \else
329 \ifx\@let@token\cite
330 \ifjb@citetoend\jbmultfootsep\fi
331 \else
332 \ifx\@let@token\fullcite
333 \jbmultfootsep%
334 \else
335 \ifx\@let@token\citetitle
336 \ifjb@citetoend\jbmultfootsep\fi
337 \else
338 \ifx\@let@token\citep
339 \ifjb@citetoend\jbmultfootsep\fi
340 \else
341 \ifx\@let@token\citet
342 \ifjb@citetoend\jbmultfootsep\fi
343 \else
344 \ifx\@let@token\citealp
345 \ifjb@citetoend\jbmultfootsep\fi
346 \else
347 \ifx\@let@token\citealt
348 \ifjb@citetoend\jbmultfootsep\fi
349 \else
350 \ifx\@let@token\citeauthor
351 \ifjb@citetoend\jbmultfootsep\fi
352 \else
353 \ifx\@let@token\citeyear
354 \ifjb@citetoend\jbmultfootsep\fi
355 \else
356 \ifx\@let@token\citeyearpar
357 \ifjb@citetoend\jbmultfootsep\fi
358 \fi
359 \fi
360 \fi
361 \fi
362 \fi
363 \fi
364 \fi
365 \fi
366 \fi
367 \fi
368 \fi
369 \fi
370 \fi
371 \fi
372 \fi
373 \fi
374 \fi
375 \fi
376 \fi
377 \fi
378 \fi
379 \fi
380 }%
381 \providecommand\textitswitch[1]{\textit{#1}}%
382 \providecommand\Wrapquotes[1]{``#1''}%
383 \newcommand*{\jbdy}{}\global\let\jbdy\@gobble % !!! dummy year for .bst label generating mechanism
384 \DeclareRobustCommand{\jbissn}[1]{\unskip,\space ISSN #1}%
385 \DeclareRobustCommand{\jbisbn}[1]{\unskip,\space ISBN #1}%
386 \DeclareRobustCommand{\fsted}[1]{%
387 \ifjbaltformat
388 \ifjbweareinbib\else
389 \space\bibEIMfont{#1}%
390 \fi
391 \else
392 \space\bibEIMfont{#1}%
393 \fi
394 }%
395 \DeclareRobustCommand{\snded}[1]{%
396 \ifjbaltformat
397 \ifjbweareinbib
398 \begingroup
399 \def\bibfnfont{\textnormal}%
400 #1\bibansep%
401 \endgroup
402 \else\fi
403 \else\fi
404 }%
405 \DeclareRobustCommand{\bibedformat}[1]{%% exists only in jhuman.bst = \fsted!
406 \ifjbaltformat
407 \ifjbweareinbib\else
408 \space\edfont{#1}%
409 \fi
410 \else
411 \space\edfont{#1}%
412 \fi
413 }%
414 \DeclareRobustCommand{\bibedinformat}[1]{\unskip\unskip\space\edfont{#1}}%
415 \newcommand*{\addtoalllanguages}{}%
416 \newcommand*{\bibsall}{\addto\addtoalllanguages}%
417 \AtBeginDocument{\ifjbaltformat\else\let\snded\@gobble\fi}
418 \newcommand*{\jbedseplikecite}{%
419 \ifjb@before@title@separator
420 \AtBeginDocument{%
421 \renewcommand\bibaesep{%
422 \ifjb@reverse@all@names
423 \bibefnfont{\jbhowsepbeforetitle}%
424 \else
425 \bibelnfont{\jbhowsepbeforetitle}%
426 \fi
427 \space%
428 }%
429 }%
430 \fi
431 }%
432 \DeclareRobustCommand{\jbbtasep}{{\normalfont\slash}}
433 \DeclareRobustCommand{\jbbfsasep}{{\normalfont\slash}}
434 \DeclareRobustCommand{\jbbstasep}{{\normalfont\slash}}
435 \DeclareRobustCommand{\jbbtesep}{{\normalfont\slash}}
436 \DeclareRobustCommand{\jbbfsesep}{{\normalfont\slash}}
437 \DeclareRobustCommand{\jbbstesep}{{\normalfont\slash}}
438 \DeclareRobustCommand{\jbatsep}{,}
439 \DeclareRobustCommand{\jbaensep}{.}
440 \DeclareRobustCommand\el[1]{#1}%
441 \DeclareRobustCommand\bibel[1]{}%
442 \newcommand*{\jbshowbibextralabel}{\renewcommand\bibel[1]{##1}}%
443 \newcommand*{\jblookforgender}{%
444 \AtBeginDocument{%
445 \ifthenelse{%
446 \equal{\bbl@main@language}{german}%
447 \or
448 \equal{\bbl@main@language}{ngerman}%
449 }{%
450 \global\jblookforgendertrue
451 }{%
452 \jb@package@warningNoLine{\jb@pkg@name}{%
453 You are not using German as main language.\MessageBreak
454 Gender fields are only implemented for German\MessageBreak
455 at the moment. Please contact jb@jurabib.org}%
456 \global\jblookforgenderfalse
457 }%
458 }%
459 }%
460 \newcommand*{\jbuseidemhrule}{%
461 \global\jbuseidemhruletrue
462 \global\jblookforgenderfalse
463 }%
464 \newcommand*{\jbrealcitation}[2]{\@gobble}
465 \newcommand*{\jbcitationyearformat}[1]{(#1)}
466 \newcommand*{\jbbibyearformat}[1]{(#1)}
467 \newcommand*{\jbindexbib}{\jb@index@bibtrue}
468 \newcommand*{\jb@reset@look@label@for}{}%
469 \newcommand*{\jb@reset@opcit@label@for}{}%
470 \newcommand*{\jb@authorlist}{}%
471 \newcommand*{\jb@savelist}{}%
472 \newcommand*{\jb@append@to}[2]{%
473 \let\jb@savelist=#1%
474 \ifx\jb@savelist\@empty
475 \protected@xdef#1{#2}%
476 \else
477 \protected@xdef#1{\jb@savelist; #2}%
478 \fi
479 }%
480 \newcommand*{\jb@fornoop}{}\newcommand*{\@jb@for}{}
481 \newcommand*{\jb@forloop}{}\newcommand*{\jb@if@forloop}{}
482 \def\jb@fornoop#1\@@#2#3{}
483 \long\def\jb@for#1:=#2\do#3{%
484 \expandafter\def\expandafter\jb@fortmp\expandafter{#2}%
485 \ifx\jb@fortmp\@empty \else\expandafter\jb@forloop#2; %
486 \@nil; \@nil\@@#1{#3}\fi}
487 \long\def\jb@forloop#1; #2; #3\@@#4#5{%
488 \def#4{#1}\ifx #4\@nnil \else
489 #5\def#4{#2}\ifx #4\@nnil \else#5\jb@if@forloop #3\@@#4{#5}\fi\fi}
490 \long\def\jb@if@forloop#1; #2\@@#3#4{%
491 \def#3{#1}\ifx #3\@nnil\expandafter\jb@fornoop \else
492 #4\relax\expandafter\jb@if@forloop\fi#2\@@#3{#4}}
493 \newcommand*{\jbindextype}{}
494 \newcommand*{\jb@do@index}[1]{%
495 \@ifundefined{@indexfile}{}{%
496 \@bsphack\begingroup\def~{\string~}\@wrindex{#1}%
497 }%
498 }
499 \newcommand*{\jb@do@index@alt}[1]{%
500 \mbox{}\index[\jbindextype]{#1}%
501 }
502 \newcommand*{\jb@index@as@alias}[1]{%
503 \ifjb@index
504 \@ifundefined{Idx@alias#1}{}{%
505 \protected@edef\@tempb{\csname Idx@alias#1\endcsname}%
506 \jb@for\@tempa:=\@tempb\do{%
507 \protected@edef\@tempc{\jb@index@markup{\@tempa}}%<= contributed by Stefan Ulrich
508 \expandafter\jb@do@index\expandafter{\@tempc}}%
509 }%
510 \fi
511 }%
512 \newcommand{\jbmakeindexactual}{@}%
513 \newcommand{\jbauthorindexfont}{}%
514 \newcommand{\jb@index@markup}[1]{#1\jbmakeindexactual\jbauthorindexfont{#1}}%
515 \newcommand*{\jb@define@alias}[2]{%
516 \ifthenelse{\equal{#2}{}}{%
517 \jb@package@warning{\jb@pkg@name}{%
518 key `#1' has no author list\MessageBreak(not indexing it)}%
519 \global\@namedef{Idx@alias#1}{}%
520 }{%
521 \@ifundefined{Idx@alias#1}{%
522 \global\@namedef{Idx@alias#1}{#2}%
523 }{\relax}%
524 }%
525 }%
526 \AtEndDocument{\ifjb@index\let\jb@define@alias\@gobbletwo\fi}%
527 \newcommand*{\jb@inside@author}{}
528 \newcommand*{\jb@inside@editor}{}
529 \newcounter{ibidem@author}
530 \newcounter{multiple@author}% counter will be set by \bibauthormultiple
531 \newcommand*{\jb@last@ibidem@author}{}
532 \def\jb@tempcntc{}%
533 \newcommand*{\jb@bib@gender@checked}{%
534 \ifthenelse{\equal{\jb@@gender}{sm}}{%
535 \ifthenelse{\boolean{jb@edby}}{%
536 \@ifundefined{jb@morethanonecite}{\idemSmedbyname}{\idemsmedbyname}%
537 }{%
538 \@ifundefined{jb@morethanonecite}{\ifjbcross\idemSmname\else\bibidemSmname\fi}{\idemsmname}%
539 }%
540 }{%
541 \ifthenelse{\equal{\jb@@gender}{pm}}{%
542 \ifthenelse{\boolean{jb@edby}}{%
543 \@ifundefined{jb@morethanonecite}{\idemPmedbyname}{\idempmedbyname}%
544 }{%
545 \@ifundefined{jb@morethanonecite}{\ifjbcross\idemPmname\else\bibidemPmname\fi}{\idempmname}%
546 }%
547 }{%
548 \ifthenelse{\equal{\jb@@gender}{sf}}{%
549 \ifthenelse{\boolean{jb@edby}}{%
550 \@ifundefined{jb@morethanonecite}{\idemSfedbyname}{\idemsfedbyname}%
551 }{%
552 \@ifundefined{jb@morethanonecite}{\ifjbcross\idemSfname\else\bibidemSfname\fi}{\idemsfname}%
553 }%
554 }{%
555 \ifthenelse{\equal{\jb@@gender}{pf}}{%
556 \ifthenelse{\boolean{jb@edby}}{%
557 \@ifundefined{jb@morethanonecite}{\idemPfedbyname}{\idempfedbyname}%
558 }{%
559 \@ifundefined{jb@morethanonecite}{\ifjbcross\idemPfname\else\bibidemPfname\fi}{\idempfname}%
560 }%
561 }{%
562 \ifthenelse{\equal{\jb@@gender}{sn}}{%
563 \ifthenelse{\boolean{jb@edby}}{%
564 \@ifundefined{jb@morethanonecite}{\idemSnedbyname}{\idemsnedbyname}%
565 }{%
566 \@ifundefined{jb@morethanonecite}{\ifjbcross\idemSnname\else\bibidemSnname\fi}{\idemsnname}%
567 }%
568 }{%
569 \ifthenelse{\equal{\jb@@gender}{pn}}{%
570 \ifthenelse{\boolean{jb@edby}}{%
571 \@ifundefined{jb@morethanonecite}{\idemPnedbyname}{\idempnedbyname}%
572 }{%
573 \@ifundefined{jb@morethanonecite}{\ifjbcross\idemPnname\else\bibidemPnname\fi}{\idempnname}%
574 }%
575 }{%
576 \@ifundefined{jb@morethanonecite}{\ifjbcross\idemSmname\else\bibidemSmname\fi}{\idemsmname}%
577 }%
578 }%
579 }%
580 }%
581 }%
582 }%
583 }
584 \newcommand\jbCheckedFirst{\ifjb@abbrv\jbFirstAbbrv\else\jbFirst\fi}
585 %% Reved=reversed, NotReved=not reversed, First=First author, NotFirst=Not the first author
586 %% NoVon=No von Part given, NoJr=No junior part given
587 %% Von=von Part given, Jr=junior part given
588 %% Ind=for indexing macros
589 \newcommand\jbRevedFirstOnlyLast{\biblnfmt{\jbLast}}%
590 \newcommand\jbRevedFirstNoVonNoJr{\biblnfmt{\jbLast, }\bibfnfmt{\jbCheckedFirst}}%
591 \newcommand\jbRevedFirstNoVonJr{\biblnfmt{\jbLast, \jbJunior, }\bibfnfmt{\jbCheckedFirst}}%
592 \newcommand\jbRevedFirstVonNoJr{\biblnfmt{\jbLast, }\bibfnfmt{\jbCheckedFirst\space\jbVon}}%
593 \newcommand\jbRevedFirstVonJr{\biblnfmt{\jbLast, \jbJunior, }\bibfnfmt{\jbCheckedFirst\space\jbVon}}%
594 \newcommand\jbRevedNotFirstOnlyLast{\biblnfmt{\jbLast}}%
595 \newcommand\jbRevedNotFirstNoVonNoJr{\bibfnfmt{\jbCheckedFirst\space}\biblnfmt{\jbLast}}%
596 \newcommand\jbRevedNotFirstNoVonJr{\bibfnfmt{\jbCheckedFirst\space}\biblnfmt{\jbLast, \jbJunior}}%
597 \newcommand\jbRevedNotFirstVonNoJr{\bibfnfmt{\jbCheckedFirst\space\jbVon~}\biblnfmt{\jbLast}}%
598 \newcommand\jbRevedNotFirstVonJr{\bibfnfmt{\jbCheckedFirst\space\jbVon~}\biblnfmt{\jbLast, \jbJunior}}%
599 \newcommand\jbNotRevedOnlyLast{\biblnfmt{\jbLast}}%
600 \newcommand\jbNotRevedNoVonNoJr{\biblnfmt{\jbLast, }\bibfnfmt{\jbCheckedFirst}}%
601 \newcommand\jbNotRevedNoVonJr{\biblnfmt{\jbLast, \jbJunior, }\bibfnfmt{\jbCheckedFirst}}%
602 \newcommand\jbNotRevedVonNoJr{\biblnfmt{\jbLast, }\bibfnfmt{\jbCheckedFirst\space\jbVon}}%
603 \newcommand\jbNotRevedVonJr{\biblnfmt{\jbLast, \jbJunior, }\bibfnfmt{\jbCheckedFirst\space\jbVon}}%
604 \newcommand\jbIndOnlyLast{\jb@append@to\jb@authorlist{\jbLast}}%
605 \newcommand\jbnfIndOnlyLast{\jbIndOnlyLast}%
606 \newcommand\jbrnfIndOnlyLast{\jbIndOnlyLast}%
607 \newcommand\jbenfIndOnlyLast{\jbIndOnlyLast}%
608 \newcommand\jbrenfIndOnlyLast{\jbIndOnlyLast}%
609 \newcommand\jbIndNoVonNoJr{\jb@append@to\jb@authorlist{\jbLast, \jbCheckedFirst}}%
610 \newcommand\jbnfIndNoVonNoJr{\jbIndNoVonNoJr}%
611 \newcommand\jbrnfIndNoVonNoJr{\jbIndNoVonNoJr}%
612 \newcommand\jbenfIndNoVonNoJr{\jbIndNoVonNoJr}%
613 \newcommand\jbrenfIndNoVonNoJr{\jbIndNoVonNoJr}%
614 \newcommand\jbIndNoVonJr{\jb@append@to\jb@authorlist{\jbLast, \jbJunior, \jbCheckedFirst}}%
615 \newcommand\jbnfIndNoVonJr{\jbIndNoVonJr}%
616 \newcommand\jbrnfIndNoVonJr{\jbIndNoVonJr}%
617 \newcommand\jbenfIndNoVonJr{\jbIndNoVonJr}%
618 \newcommand\jbrenfIndNoVonJr{\jbIndNoVonJr}%
619 \newcommand\jbIndVonNoJr{\jb@append@to\jb@authorlist{\jbLast, \jbCheckedFirst\space\jbVon}}%
620 \newcommand\jbnfIndVonNoJr{\jbIndVonNoJr}%
621 \newcommand\jbrnfIndVonNoJr{\jbIndVonNoJr}%
622 \newcommand\jbenfIndVonNoJr{\jbIndVonNoJr}%
623 \newcommand\jbrenfIndVonNoJr{\jbIndVonNoJr}%
624 \newcommand\jbIndVonJr{\jb@append@to\jb@authorlist{\jbLast, \jbJunior, \jbCheckedFirst\space\jbVon}}%
625 \newcommand\jbnfIndVonJr{\jbIndVonJr}%
626 \newcommand\jbrnfIndVonJr{\jbIndVonJr}%
627 \newcommand\jbenfIndVonJr{\jbIndVonJr}%
628 \newcommand\jbrenfIndVonJr{\jbIndVonJr}%
629 %% #1 = last #2 = first #3 = f. #4 = von #5 = jr.
630 \DeclareRobustCommand{\bibnf}[5]{%
631 \def\biblnfmt{\biblnfont}%
632 \def\bibfnfmt{\bibfnfont}%
633 \def\jbLast{#1}\def\jbFirst{#2}\def\jbFirstAbbrv{#3}\def\jbVon{#4}\def\jbJunior{#5}% NEW 0.51f
634 \stepcounter{ibidem@author}\def\jb@ibidem@author{#1#2#3#4#5}%
635 \ifthenelse{\equal{#2}{\@empty}}{%
636 \jbIndOnlyLast%
637 }{%
638 \ifthenelse{\equal{#4}{\@empty}}{%
639 \ifthenelse{\equal{#5}{\@empty}}{%
640 \jbnfIndNoVonNoJr%
641 }{%
642 \jbnfIndNoVonJr%
643 }%
644 }{%
645 \ifthenelse{\equal{#5}{\@empty}}{%
646 \jbnfIndVonNoJr%
647 }{%
648 \jbnfIndVonJr%
649 }%
650 }%
651 }%
652 \ifthenelse{\boolean{jb@bibformat@ibidem}%
653 \and\not
654 \boolean{jbcross}%
655 \and
656 \theibidem@author=1%
657 \and
658 \themultiple@author<1%
659 \and
660 \equal{\jb@ibidem@author}{\jb@last@ibidem@author}%
661 \and
662 \equal{\jb@simple@pageref@by@heiko{jbib:\jb@tempcntc}}{%
663 \jb@simple@pageref@by@heiko{jbib:\thebibnamereplace}}%
664 }{%
665 \bibauthormultiple%
666 }{%
667 \ifjb@first@author@reversed
668 \@ifundefined{jb@first@author}{%
669 \@namedef{jb@first@author}{}%
670 \ifthenelse{\equal{#2}{\@empty}}{%
671 \jbRevedFirstOnlyLast
672 }{%
673 \ifthenelse{\equal{#4}{\@empty}}{%
674 \ifthenelse{\equal{#5}{\@empty}}{%
675 \jbRevedFirstNoVonNoJr%
676 }{%
677 \jbRevedFirstNoVonJr%
678 }%
679 }{%
680 \ifthenelse{\equal{#5}{\@empty}}{%
681 \jbRevedFirstVonNoJr%
682 }{%
683 \jbRevedFirstVonJr%
684 }%
685 }%
686 }%
687 }{% not first author!
688 \ifthenelse{\equal{#2}{\@empty}}{%
689 \jbRevedNotFirstOnlyLast%
690 }{%
691 \ifthenelse{\equal{#4}{\@empty}}{%
692 \ifthenelse{\equal{#5}{\@empty}}{%
693 \jbRevedNotFirstNoVonNoJr%
694 }{%
695 \jbRevedNotFirstNoVonJr%
696 }%
697 }{%
698 \ifthenelse{\equal{#5}{\@empty}}{%
699 \jbRevedNotFirstVonNoJr%
700 }{%
701 \jbRevedNotFirstVonJr%
702 }%
703 }%
704 }%
705 }%
706 \else
707 \ifthenelse{\equal{#2}{\@empty}}{%
708 \jbNotRevedOnlyLast
709 }{%
710 \ifthenelse{\equal{#4}{\@empty}}{%
711 \ifthenelse{\equal{#5}{\@empty}}{%
712 \jbNotRevedNoVonNoJr%
713 }{%
714 \jbNotRevedNoVonJr%
715 }%
716 }{%
717 \ifthenelse{\equal{#5}{\@empty}}{%
718 \jbNotRevedVonNoJr%
719 }{%
720 \jbNotRevedVonJr%
721 }%
722 }%
723 }%
724 \fi
725 }%
726 \gdef\jb@inside@author{#1#2#3#4#5}%
727 \ifjbcross\else\gdef\jb@last@ibidem@author{#1#2#3#4#5}\fi
728 }%
729 \DeclareRobustCommand{\bibrnf}[5]{%
730 \def\biblnfmt{\biblnfont}%
731 \def\bibfnfmt{\bibfnfont}%
732 \def\jbLast{#1}\def\jbFirst{#2}\def\jbFirstAbbrv{#3}\def\jbVon{#4}\def\jbJunior{#5}% NEW 0.51f
733 \stepcounter{ibidem@author}\def\jb@ibidem@author{#1#2#3#4#5}%
734 \ifthenelse{\equal{#2}{\@empty}}{%
735 \jbIndOnlyLast%
736 }{%
737 \ifthenelse{\equal{#4}{\@empty}}{%
738 \ifthenelse{\equal{#5}{\@empty}}{%
739 \jbrnfIndNoVonNoJr%
740 }{%
741 \jbrnfIndNoVonJr%
742 }%
743 }{%
744 \ifthenelse{\equal{#5}{\@empty}}{%
745 \jbrnfIndVonNoJr%
746 }{%
747 \jbrnfIndVonJr%
748 }%
749 }%
750 }%
751 \ifthenelse{\boolean{jb@bibformat@ibidem}%
752 \and\not
753 \boolean{jbcross}%
754 \and
755 \theibidem@author=1%
756 \and
757 \themultiple@author<1%
758 \and
759 \equal{\jb@ibidem@author}{\jb@last@ibidem@author}%
760 \and
761 \equal{\jb@simple@pageref@by@heiko{jbib:\jb@tempcntc}}{%
762 \jb@simple@pageref@by@heiko{jbib:\thebibnamereplace}}%
763 }{%
764 \bibauthormultiple%
765 }{%
766 \ifthenelse{\equal{#2}{\@empty}}{%
767 \jbRevedNotFirstOnlyLast%
768 }{%
769 \ifthenelse{\equal{#4}{\@empty}}{%
770 \ifthenelse{\equal{#5}{\@empty}}{%
771 \jbRevedNotFirstNoVonNoJr%
772 }{%
773 \jbRevedNotFirstNoVonJr%
774 }%
775 }{%
776 \ifthenelse{\equal{#5}{\@empty}}{%
777 \jbRevedNotFirstVonNoJr%
778 }{%
779 \jbRevedNotFirstVonJr%
780 }%
781 }%
782 }%
783 }%
784 \gdef\jb@inside@author{#1#2#3#4#5}%
785 \ifjbcross\else\gdef\jb@last@ibidem@author{#1#2#3#4#5}\fi
786 }%
787 \DeclareRobustCommand{\bibenf}[5]{%
788 \def\biblnfmt{\bibelnfont}%
789 \def\bibfnfmt{\bibefnfont}%
790 \def\jbLast{#1}\def\jbFirst{#2}\def\jbFirstAbbrv{#3}\def\jbVon{#4}\def\jbJunior{#5}% NEW 0.51f
791 \stepcounter{ibidem@author}\def\jb@ibidem@author{#1#2#3#4#5}%
792 \ifthenelse{\equal{#2}{\@empty}}{%
793 \jbIndOnlyLast%
794 }{%
795 \ifthenelse{\equal{#4}{\@empty}}{%
796 \ifthenelse{\equal{#5}{\@empty}}{%
797 \jbenfIndNoVonNoJr%
798 }{%
799 \jbenfIndNoVonJr%
800 }%
801 }{%
802 \ifthenelse{\equal{#5}{\@empty}}{%
803 \jbenfIndVonNoJr%
804 }{%
805 \jbenfIndVonJr%
806 }%
807 }%
808 }%
809 \def\jb@inside@editor{#1#2#3#4#5}%
810 \ifthenelse{%
811 \equal{\jb@inside@author}{\jb@inside@editor}%
812 \and
813 \boolean{jb@idem}%
814 }{%
815 \ifthenelse{\equal{\bbl@main@language}{english}\and\boolean{jboxford}}{%
816 \ifjbuseidemhrule
817 \leavevmode\vrule height 2pt depth -1.6pt width 21pt\hspace{3pt}%
818 \else
819 \edfont{\idemname}%
820 \fi
821 }{%
822 \ifjbuseidemhrule
823 \leavevmode\vrule height 2pt depth -1.6pt width 21pt\hspace{3pt}%
824 \else
825 \edfont{\jb@bib@gender@checked}%
826 \fi
827 }%
828 \jb@bibetalfalse
829 }{%
830 \ifthenelse{\boolean{jb@bibformat@ibidem}%
831 \and\not
832 \boolean{jbcross}%
833 \and
834 \theibidem@author=1%
835 \and
836 \themultiple@author<1%
837 \and
838 \equal{\jb@ibidem@author}{\jb@last@ibidem@author}%
839 \and
840 \equal{\jb@simple@pageref@by@heiko{jbib:\jb@tempcntc}}{%
841 \jb@simple@pageref@by@heiko{jbib:\thebibnamereplace}}%
842 }{%
843 \bibauthormultiple%
844 }{%
845 \ifjb@first@author@reversed
846 \@ifundefined{jb@first@editor}{%
847 \@namedef{jb@first@editor}{}%
848 \ifthenelse{\equal{#2}{\@empty}}{%
849 \jbRevedFirstOnlyLast%
850 }{%
851 \ifthenelse{\equal{#4}{\@empty}}{%
852 \ifthenelse{\equal{#5}{\@empty}}{%
853 \jbRevedFirstNoVonNoJr%
854 }{%
855 \jbRevedFirstNoVonJr%
856 }%
857 }{%
858 \ifthenelse{\equal{#5}{\@empty}}{%
859 \jbRevedFirstVonNoJr%
860 }{%
861 \jbRevedFirstVonJr%
862 }%
863 }%
864 }%
865 }{% not first author!
866 \ifthenelse{\equal{#2}{\@empty}}{%
867 \jbRevedNotFirstOnlyLast%
868 }{%
869 \ifthenelse{\equal{#4}{\@empty}}{%
870 \ifthenelse{\equal{#5}{\@empty}}{%
871 \jbRevedNotFirstNoVonNoJr%
872 }{%
873 \jbRevedNotFirstNoVonJr%
874 }%
875 }{%
876 \ifthenelse{\equal{#5}{\@empty}}{%
877 \jbRevedNotFirstVonNoJr%
878 }{%
879 \jbRevedNotFirstVonJr%
880 }%
881 }%
882 }%
883 }%
884 \else
885 \ifthenelse{\equal{#2}{\@empty}}{%
886 \jbNotRevedOnlyLast%
887 }{%
888 \ifthenelse{\equal{#4}{\@empty}}{%
889 \ifthenelse{\equal{#5}{\@empty}}{%
890 \jbNotRevedNoVonNoJr%
891 }{%
892 \jbNotRevedNoVonJr%
893 }%
894 }{%
895 \ifthenelse{\equal{#5}{\@empty}}{%
896 \jbNotRevedVonNoJr%
897 }{%
898 \jbNotRevedVonJr%
899 }%
900 }%
901 }%
902 \fi
903 }%
904 }%
905 \gdef\jb@inside@author{#1#2#3#4#5}%
906 \gdef\jb@inside@editor{#1#2#3#4#5}%
907 \ifjbcross\else\gdef\jb@last@ibidem@author{#1#2#3#4#5}\fi
908 }%
909 \DeclareRobustCommand{\bibrenf}[5]{%
910 \def\biblnfmt{\bibelnfont}%
911 \def\bibfnfmt{\bibefnfont}%
912 \def\jbLast{#1}\def\jbFirst{#2}\def\jbFirstAbbrv{#3}\def\jbVon{#4}\def\jbJunior{#5}% NEW 0.51f
913 \stepcounter{ibidem@author}\def\jb@ibidem@author{#1#2#3#4#5}%
914 \ifthenelse{\equal{#2}{\@empty}}{%
915 \jbIndOnlyLast%
916 }{%
917 \ifthenelse{\equal{#4}{\@empty}}{%
918 \ifthenelse{\equal{#5}{\@empty}}{%
919 \jbrenfIndNoVonNoJr%
920 }{%
921 \jbrenfIndNoVonJr%
922 }%
923 }{%
924 \ifthenelse{\equal{#5}{\@empty}}{%
925 \jbrenfIndVonNoJr%
926 }{%
927 \jbrenfIndVonJr%
928 }%
929 }%
930 }%
931 \def\jb@inside@editor{#1#2#3#4#5}%
932 \ifthenelse{%
933 \equal{\jb@inside@author}{\jb@inside@editor}%
934 \and
935 \boolean{jb@idem}%
936 }{%
937 \ifthenelse{\equal{\bbl@main@language}{english}\and\boolean{jboxford}}{%
938 \ifjbuseidemhrule
939 \leavevmode\vrule height 2pt depth -1.6pt width 21pt\hspace{3pt}%
940 \else
941 \edfont{\idemname}%
942 \fi
943 }{%
944 \ifjbuseidemhrule
945 \leavevmode\vrule height 2pt depth -1.6pt width 21pt\hspace{3pt}%
946 \else
947 \edfont{\jb@bib@gender@checked}%
948 \fi
949 }%
950 \jb@bibetalfalse
951 }{%
952 \ifthenelse{\boolean{jb@bibformat@ibidem}%
953 \and\not
954 \boolean{jbcross}%
955 \and
956 \theibidem@author=1%
957 \and
958 \themultiple@author<1%
959 \and
960 \equal{\jb@ibidem@author}{\jb@last@ibidem@author}%
961 \and
962 \equal{\jb@simple@pageref@by@heiko{jbib:\jb@tempcntc}}{%
963 \jb@simple@pageref@by@heiko{jbib:\thebibnamereplace}}%
964 }{%
965 \bibauthormultiple%
966 }{%
967 \ifthenelse{\equal{#2}{\@empty}}{%
968 \jbRevedNotFirstOnlyLast
969 }{%
970 \ifthenelse{\equal{#4}{\@empty}}{%
971 \ifthenelse{\equal{#5}{\@empty}}{%
972 \jbRevedNotFirstNoVonNoJr%
973 }{%
974 \jbRevedNotFirstNoVonJr%
975 }%
976 }{%
977 \ifthenelse{\equal{#5}{\@empty}}{%
978 \jbRevedNotFirstVonNoJr%
979 }{%
980 \jbRevedNotFirstVonJr%
981 }%
982 }%
983 }%
984 }%
985 }%
986 \gdef\jb@inside@author{#1#2#3#4#5}%
987 \gdef\jb@inside@editor{#1#2#3#4#5}%
988 \ifjbcross\else\gdef\jb@last@ibidem@author{#1#2#3#4#5}\fi
989 }%
990 \DeclareRobustCommand{\biblenf}[5]{\bibenf{#1}{#2}{#3}{#4}{#5}}
991 \DeclareRobustCommand{\bibrlenf}[5]{\bibrenf{#1}{#2}{#3}{#4}{#5}}
992 \newcommand*{\jblinebreak}{\linebreak[4]}%
993 \newcommand*{\jb@check@language@start}{%
994 \ifjb@debug\ifjb@babel
995 \iflanguage{german}{\textcolor{red}{[}}{%
996 \iflanguage{english}{\textcolor{blue}{[}}{%
997 \iflanguage{dutch}{\textcolor{green}{[}}{%
998 \iflanguage{french}{\textcolor{yellow}{[}}{}}}}%
999 \fi\fi
1000 }%
1001 \newcommand*{\jb@check@language@end}{%
1002 \ifjb@debug\ifjb@babel
1003 \iflanguage{german}{\textcolor{red}{]\textsuperscript{\tiny de}}}{%
1004 \iflanguage{english}{\textcolor{blue}{]\textsuperscript{\tiny en}}}{%
1005 \iflanguage{dutch}{\textcolor{green}{]\textsuperscript{\tiny du}}}{%
1006 \iflanguage{french}{\textcolor{yellow}{]\textsuperscript{\tiny fr}}}{}}}}%
1007 \fi\fi
1008 }%
1009 \DeclareRobustCommand{\biblnfont}{\textbf}%
1010 \DeclareRobustCommand{\bibfnfont}{\textbf}%
1011 \DeclareRobustCommand{\bibelnfont}{\textbf}%
1012 \DeclareRobustCommand{\bibefnfont}{\textbf}%
1013 \DeclareRobustCommand{\bibtfont}{}%
1014 \DeclareRobustCommand{\bibbtfont}{}%
1015 \DeclareRobustCommand{\bibjtfont}{}%
1016 \DeclareRobustCommand{\bibapifont}{}%
1017 \DeclareRobustCommand{\bibibidfont}{\biblnfont}%
1018 \newcommand{\bibimfont}{\bibfnfont}%
1019 \newcommand{\jbimfont}{\textnormal}%
1020 \newcommand{\bibeimfont}{\bibefnfont}%
1021 \newcommand{\jbeimfont}{\textnormal}%
1022 \DeclareRobustCommand{\bibIMfont}[1]{%
1023 \ifjbweareinbib
1024 \ifjbweareinhowcited
1025 \jbimfont{#1}%
1026 \else
1027 \bibimfont{#1}%
1028 \fi
1029 \else
1030 \jbimfont{#1}%
1031 \fi
1032 }%
1033 \DeclareRobustCommand{\bibEIMfont}[1]{%
1034 \ifjbweareinbib
1035 \ifjbweareinhowcited
1036 \jbeimfont{#1}%
1037 \else
1038 \bibeimfont{#1}%
1039 \fi
1040 \else
1041 \jbeimfont{#1}%
1042 \fi
1043 }%
1044 \DeclareRobustCommand{\edfont}[1]{%
1045 \ifjbweareinbib
1046 \ifjbweareinhowcited
1047 \jbeimfont{#1}%
1048 \else
1049 \bibeimfont{#1}%
1050 \fi
1051 \else
1052 \jbeimfont{#1}%
1053 \fi
1054 }%
1055 \DeclareRobustCommand{\bibbtasep}{{\normalfont\slash}}%
1056 \DeclareRobustCommand{\bibbfsasep}{{\normalfont\slash}}%
1057 \DeclareRobustCommand{\bibbstasep}{{\normalfont\slash}}%
1058 \DeclareRobustCommand{\Bibbtasep}{\bibbtasep\ifjb@tabular\jblinebreak\fi}%
1059 \DeclareRobustCommand{\Bibbfsasep}{\bibbfsasep\ifjb@tabular\jblinebreak\fi}%
1060 \DeclareRobustCommand{\Bibbstasep}{\bibbstasep\ifjb@tabular\jblinebreak\fi}%
1061 \DeclareRobustCommand{\bibbtesep}{{\normalfont\slash}}%
1062 \DeclareRobustCommand{\bibbfsesep}{{\normalfont\slash}}%
1063 \DeclareRobustCommand{\bibbstesep}{{\normalfont\slash}}%
1064 \DeclareRobustCommand{\Bibbtesep}{\bibbtesep\ifjb@tabular\jblinebreak\fi}%
1065 \DeclareRobustCommand{\Bibbfsesep}{\bibbfsesep\ifjb@tabular\jblinebreak\fi}%
1066 \DeclareRobustCommand{\Bibbstesep}{\bibbstesep\ifjb@tabular\jblinebreak\fi}%
1067 \DeclareRobustCommand{\bibansep}{\bibfnfont{: }}%
1068 \DeclareRobustCommand{\bibaesep}{\bibefnfont{: }}%
1069 \DeclareRobustCommand{\bothaesep}{\ifjbweareinbib\bibaesep\else\jbhowsepbeforetitleae\fi}%
1070 \DeclareRobustCommand{\bibatsep}{}\renewcommand*{\bibatsep}{.}%
1071 \DeclareRobustCommand{\bibbdsep}{,}%
1072 \DeclareRobustCommand{\bibBTsep}{\def\jb@first@editor{}\bibbtsep}%
1073 \DeclareRobustCommand{\bibJTsep}{\def\jb@first@editor{}\bibjtsep}%
1074 \DeclareRobustCommand{\bibbtsep}{\inname{} }%
1075 \DeclareRobustCommand{\bibjtsep}{}%
1076 \DeclareRobustCommand{\bibaldelim}{}%
1077 \DeclareRobustCommand{\bibardelim}{}%
1078 \DeclareRobustCommand{\bibpldelim}{[}%
1079 \DeclareRobustCommand{\bibprdelim}{]}%
1080 \DeclareRobustCommand{\bibapyldelim}{}%
1081 \DeclareRobustCommand{\bibapyrdelim}{}%
1082 \DeclareRobustCommand{\dateldelim}{}%
1083 \DeclareRobustCommand{\daterdelim}{}%
1084 \DeclareRobustCommand{\bpubaddr}{:}% between publisher and address
1085 \DeclareRobustCommand{\apyformat}[1]{%
1086 \ifjb@bibssed
1087 \let\jbedition\@gobble%
1088 \unskip\unskip\space%
1089 \bibapyldelim{}\ifthenelse{\equal{\jb@@edition}{\@empty}}{}{%
1090 \textsuperscript{\jb@@edition}}#1\bibapyrdelim{}%
1091 \else
1092 \bibapyldelim{}#1\bibapyrdelim{}%
1093 \fi
1094 }%
1095 \DeclareRobustCommand{\ajtsep}{}
1096 \DeclareRobustCommand{\jblangle}{\raisebox{.15ex}{$\langle$}}
1097 \DeclareRobustCommand{\jbrangle}{\raisebox{.15ex}{$\rangle$}}
1098 \DeclareRobustCommand{\biburlprefix}{\jblangle{}URL: }
1099 \DeclareRobustCommand{\biburlsuffix}{\jbrangle{}}
1100 \DeclareRobustCommand{\biburlfont}[1]{\urlstyle{#1}}%
1101 \DeclareRobustCommand{\urldatecomment}{}
1102 \DeclareRobustCommand{\bibbudcsep}{~--\space}
1103 \DeclareRobustCommand{\bibcommenthowcited}{}
1104 \DeclareRobustCommand{\bibartperiodhowcited}{}
1105 \DeclareRobustCommand{\bibnotcited}{}
1106 \DeclareRobustCommand{\bibhowcited}{}
1107 \DeclareRobustCommand{\howcitedprefix}{}
1108 \DeclareRobustCommand{\howcitedsuffix}{}
1109 \DeclareRobustCommand{\bibvolumecomment}{}
1110 \DeclareRobustCommand{\volumeofname}{}
1111 \DeclareRobustCommand{\alsothesisname}{}
1112 \DeclareRobustCommand{\bibces}{: }
1113 \DeclareRobustCommand{\bibcrossrefcite}{}
1114 \DeclareRobustCommand{\bibcrossrefciteagain}{}
1115 \DeclareRobustCommand{\bibincollcrossrefcite}{}
1116 \DeclareRobustCommand{\bibincollcrossrefciteagain}{}
1117 \DeclareRobustCommand{\bibsnfont}{}%
1118 \DeclareRobustCommand{\bibvtfont}{\textit}%
1119 \DeclareRobustCommand{\osep}{%
1120 \ifjbweareinbib
1121 \ifjboxford;\else.\fi % Maarten wishes semi-colon
1122 \else
1123 \ifjboxford
1124 ;% Maarten wishes semi-colon
1125 \else
1126 \ifjbchicago
1127 ;%
1128 \else
1129 .%
1130 \fi
1131 \fi
1132 \fi
1133 }%
1134 \DeclareRobustCommand{\reprintname}{\ifjbweareinbib\Reprint\else\reprint\fi}%
1135 \newcommand*{\jbedafti}[1]{}%
1136 \newcommand*{\jbtiafed}[1]{#1}%
1137 \newcommand*{\jbbookedaftertitle}{%
1138 \renewcommand\jbedafti[1]{##1}%
1139 \renewcommand\jbtiafed[1]{}}
1140 \providecommand{\J@LongToc}{}
1141 \providecommand{\addto}{\g@addto@macro}
1142 \def\jb@add@to#1#2{\addto{#1}{#2}#2}% <=== ?????
1143 \def\AddTo#1#2{\AtBeginDocument{\jb@add@to#1{#2}}}%
1144 \newcommand*{\jbonlyforcitations}{}
1145 \newcommand*{\jbonlyforbib}{}
1146 \newcommand*{\jbonlyforfirstcitefullbegin}{}
1147 \newcommand*{\jbonlyforfirstcitefullend}{}
1148 \newcommand{\bibAnnote}[1]{}
1149 \newcommand{\bibAnnoteFile}[1]{}
1150 \newcommand{\bibAnnotePath}[1]{\def\jb@ann@input@path{#1}}
1151 \ifx\jb@ann@input@path\@undefined\let\jb@ann@input@path\input@path\fi
1152 \newcommand{\jbannoteformat}[1]{{\small#1\par}}% Grouping is important!
1153 \providecommand{\bbl@main@language}{english}%
1154 \newif\ifjbhum
1155 \newif\ifjboxford
1156 \newif\ifjbchicago
1157 \newcommand*{\aftervolsep}{,}%
1158 \DeclareRobustCommand{\volumeformat}[1]{\Volumename~#1\aftervolsep}%
1159 \DeclareRobustCommand{\artvolumeformat}[1]{#1}%
1160 \DeclareRobustCommand{\pervolumeformat}[1]{#1}%
1161 \DeclareRobustCommand{\artnumberformat}[1]{\unskip,\space Nr.~#1}%
1162 \DeclareRobustCommand{\pernumberformat}[1]{\unskip\space Nr.~#1}%
1163 \DeclareRobustCommand{\artyearformat}[1]{\bibaldelim#1\bibardelim}%
1164 \DeclareRobustCommand{\peryearformat}[1]{\bibpldelim#1\bibprdelim}%
1165 \DeclareRobustCommand{\artvolnumformat}[2]{%
1166 \ifthenelse{\equal{#1}{}}{%
1167 #2%
1168 }{%
1169 \ifthenelse{\equal{#2}{}}{%
1170 #1%
1171 }{%
1172 \artvolumeformat{#1}\artnumberformat{#2}%
1173 }%
1174 }%
1175 }%
1176 \DeclareRobustCommand{\translator}[3]{%
1177 \unskip\unskip\space%
1178 \ifthenelse{\equal{#1}{}}{% translator missing
1179 \ifjboxford\transfrom\else\Transfrom\fi\jbflanguage{#2}%
1180 }{% translator given
1181 \ifthenelse{\equal{\bbl@main@language}{german}}{% main language german
1182 \ifthenelse{\equal{#2}{}}{% language missing
1183 {\"U}bers. \transby{} #1%
1184 }{% language given
1185 \ifjboxford\transfrom\else\Transfrom\fi\jbflanguage{#2} ^^fcbers. \transby{} #1%
1186 }%
1187 }{%
1188 \ifthenelse{\equal{#2}{}}{% language missing
1189 \trans{} \transby{} #1%
1190 }{% language given
1191 \trans{} \transfrom{}\jbflanguage{#2} \transby{} #1%
1192 }%
1193 }%
1194 }% dot or not?
1195 \ifjbchicago
1196 \ifthenelse{\equal{#3}{1}}{% \(type=incollection \and editor given\) \or type=article
1197 \bibatsep{}%
1198 }{}%
1199 \else
1200 \ifthenelse{\equal{#3}{1}\and\not\boolean{jboxford}}{%
1201 \bibatsep{}%
1202 }{}%
1203 \fi
1204 }%
1205 \DeclareRobustCommand{\jbflanguage}[1]{%
1206 \unskip\space% prevent from additional spaces for empty \transfrom macros
1207 \ifthenelse{\equal{#1}{german}}{%
1208 \fromgerman%
1209 }{%
1210 \ifthenelse{\equal{#1}{english}}{%
1211 \fromenglish%
1212 }{%
1213 \ifthenelse{\equal{#1}{french}}{%
1214 \fromfrench%
1215 }{%
1216 \ifthenelse{\equal{#1}{dutch}}{%
1217 \fromdutch%
1218 }{%
1219 \ifthenelse{\equal{#1}{spanish}}{%
1220 \fromspanish%
1221 }{%
1222 \ifthenelse{\equal{#1}{italian}}{%
1223 \fromitalian%
1224 }{%
1225 \ifthenelse{\equal{#1}{norsk}}{%
1226 \fromnorsk%
1227 }{%
1228 \relax
1229 }%
1230 }%
1231 }%
1232 }%
1233 }%
1234 }%
1235 }%
1236 }%
1237 \renewcommand*{\bibstyle}[1]{%
1238 \ifthenelse{\equal{#1}{jox}}{%
1239 \global\jb@humanbst@loadedtrue
1240 \global\jboxfordtrue
1241 }{%
1242 \ifthenelse{\equal{#1}{jchicago}}{%
1243 \global\jb@author@yeartrue
1244 \global\jb@yearafterauthortrue
1245 }{%
1246 \ifthenelse{\equal{#1}{jureco}}{%
1247 \global\jb@jurecotrue
1248 \global\jb@author@yeartrue
1249 \global\jb@yearafterauthortrue
1250 \global\jb@yearaftertitlefalse
1251 }{%
1252 \ifthenelse{\equal{#1}{jhuman}}{\global\jb@humanbst@loadedtrue}{}%
1253 }%
1254 }%
1255 }%
1256 }%
1257 \DeclareRobustCommand{\jbapifont}[1]{#1}%
1258 \DeclareRobustCommand{\jbbtfont}{}%
1259 \newif\ifjbopcit
1260 \newcommand*{\opcit}{\textit{op.\,cit.}}%
1261 \newcommand*{\OpCit}{%
1262 \ifjbweareinbib\else
1263 \ifjb@opcit
1264 \ifjb@@opcit
1265 \unskip\unskip,%
1266 \ifjb@ssed@recent@kerned
1267 \jb@do@ssed@kerning%
1268 \else
1269 \space% space part of the opcit hyperlink?
1270 \fi
1271 \ifjb@allow@hyper@cite\hyper@jblinkend\fi
1272 \endgroup % <=== here we are ending with the link to the bibliography
1273 \begingroup % <=== here we are starting a new hyperlink to the source citation of the opcit-sequence
1274 \ifjb@allow@hyper@cite\hyper@jblinkstart{opcit.\@citeb.\jb@reset@opcit@label@for}\fi
1275 \opcit%
1276 \ifthenelse{\equal{\jb@@newpagecite}{}}{\ifjb@lookat\else\global\jb@footnote@periodfalse\fi}{}%
1277 \ifjb@allow@hyper@cite\hyper@jblinkend\fi % <=== we are closing the opcit hyperlink ...
1278 \endgroup
1279 \begingroup
1280 \ifjb@allow@hyper@cite\hyper@jblinkstart{\@citeb}\fi % <=== ... an reopen the hyperlink to the bibliography
1281 \jb@extract
1282 \fi
1283 \fi
1284 \fi
1285 }%
1286 \newcommand*{\jb@open}{}%
1287 \newcommand*{\jb@close}{}%
1288 \newcommand*{\jb@cr@open}{}%
1289 \newcommand*{\jb@cr@close}{}%
1290 \newcommand*{\jb@incoll@cr@open}{}%
1291 \newcommand*{\jb@incoll@cr@close}{}%
1292 \newcommand*{\jb@art@cr@open}{}%
1293 \newcommand*{\jb@art@cr@close}{}%
1294 \DeclareRobustCommand{\jbpages}{}%
1295 \DeclareRobustCommand{\jbedition}[1]{%
1296 \unskip\unskip\ifjb@humanbst@loaded\else\space\fi#1}%
1297 \DeclareRobustCommand{\jbPAGES}{}
1298 \DeclareRobustCommand{\jbPages}[1]{%
1299 \unskip\unskip\ifjbweareinbib, \else
1300 \ifjb@comma@before@rest, \else\space\fi\fi
1301 \ifjb@formatted@pages\jbprformat{#1}\else#1\fi
1302 }%
1303 \DeclareRobustCommand{\jbartPages}[1]{%
1304 \ifjbchicago
1305 \unskip:\space
1306 \else
1307 \unskip\unskip\ifjbweareinbib, \else
1308 \ifjb@comma@before@rest, \else\space\fi\fi
1309 \fi
1310 \ifjb@formatted@pages\jbprformat{#1}\else#1\fi
1311 }%
1312 \let\origPAGES\jbPAGES
1313 \let\origpages\jbpages
1314 \let\origPages\jbPages
1315 \let\origartPages\jbartPages
1316 \newcommand*{\jb@endnote}{}%
1317 \DeclareRobustCommand{\jbendnote}[1]{}% default
1318 \DeclareRobustCommand{\jbnote}[2]{%
1319 \ifjbweareinbib
1320 \ifthenelse{\equal{#1}{1}}{\unskip\unskip, #2}{#2}%
1321 \fi
1322 }%
1323 \newcommand*{\jb@open@clean@for@crossref}{%
1324 \jb@no@lookat@for@bibtrue
1325 \jbcrosstrue
1326 \ifjb@all@full
1327 \jb@save@allfull@statustrue
1328 \jb@all@fullfalse
1329 \jb@fullcite@againfalse
1330 \fi
1331 \ifjb@lookat
1332 \jb@save@lookat@statustrue
1333 \jb@lookatfalse
1334 \fi
1335 \noibidem
1336 \let\jbauthorfont\biblnfont
1337 \let\jbauthorfnfont\bibfnfont
1338 \let\jbactualauthorfont\biblnfont
1339 \let\jbactualauthorfnfont\bibfnfont
1340 \ifjbweareinbib
1341 \let\jbhowsepbeforetitle\bibansep
1342 \let\jbhowsepbeforetitleae\bibaesep
1343 \fi
1344 \let\jbbtasep\bibbtasep
1345 \let\jbbfsasep\bibbfsasep
1346 \let\jbbstasep\bibbstasep
1347 \let\jbbtesep\bibbtesep
1348 \let\jbbfsesep\bibbfsesep
1349 \let\jbbstesep\bibbstesep
1350 \let\jbtitlefont\bibtfont
1351 \let\jbbtitlefont\bibbtfont
1352 \let\jbapifont\bibapifont
1353 \let\jb@extraspace\space
1354 }%
1355 \newcommand*{\jb@close@clean@for@crossref}{%
1356 \ifjb@save@allfull@status
1357 \jb@all@fulltrue
1358 \jb@save@allfull@statusfalse
1359 \fi
1360 \ifjb@save@lookat@status
1361 \jb@lookattrue
1362 \jb@save@lookat@statusfalse
1363 \fi
1364 \jb@no@lookat@for@bibfalse
1365 \jbcrossfalse
1366 \jb@indextrue
1367 \noidem
1368 }%
1369 \DeclareRobustCommand{\jbcrossrefchecked}[2][]{%
1370 \begingroup
1371 \jb@open@clean@for@crossref
1372 \ifjb@firstcite@full\ifjb@all@full\else
1373 \@ifundefined{citefull@#2}{%
1374 \global\@namedef{citefull@#2}{citefull}%
1375 }{}%
1376 \fi\fi
1377 \ifthenelse{\equal{#1}{}}{%
1378 \jb@cr@open%
1379 \inname{} %
1380 % make a difference between first crossref cite
1381 % and again crossref cite (ONLY FOR CITATION! 0.5e)
1382 \ifjbweareinbib
1383 \ifjb@index@bib\else\jb@indexfalse\fi\bibcrossrefcite{#2}%
1384 \else
1385 \@ifundefined{NORMCR@#2}{%
1386 \global\@namedef{NORMCR@#2}{}%
1387 \bibcrossrefcite{#2}%
1388 }{%
1389 \jb@indexfalse\bibcrossrefciteagain{#2}%
1390 }%
1391 \fi
1392 \jb@cr@close%
1393 }{%
1394 \jb@cr@open%
1395 \ifjboxford\volumename\else\Volumename\fi~#1 \volumeofname{} %
1396 % make a difference between first crossref cite
1397 % and again crossref cite (ONLY FOR CITATION! 0.5e)
1398 \ifjbweareinbib
1399 \ifjb@index@bib\else\jb@indexfalse\fi\bibcrossrefcite{#2}%
1400 \else
1401 \@ifundefined{NORMCR@#2}{%
1402 \global\@namedef{NORMCR@#2}{}%
1403 \bibcrossrefcite{#2}%
1404 }{%
1405 \jb@indexfalse\bibcrossrefciteagain{#2}%
1406 }%
1407 \fi
1408 \jb@cr@close%
1409 }%
1410 \jb@close@clean@for@crossref
1411 \endgroup
1412 }%
1413 \DeclareRobustCommand{\jbartcrossrefchecked}[2][]{{%
1414 \jb@open@clean@for@crossref
1415 \ifjb@firstcite@full\ifjb@all@full\else
1416 \@ifundefined{citefull@#2}{%
1417 \global\@namedef{citefull@#2}{citefull}%
1418 }{}%
1419 \fi\fi
1420 \ifthenelse{\equal{#1}{}}{%
1421 \jb@art@cr@open%
1422 \inname{} %
1423 % make a difference between first crossref cite
1424 % and again crossref cite (ONLY FOR CITATION! 0.5e)
1425 \ifjbweareinbib
1426 \ifjb@index@bib\else\jb@indexfalse\fi\bibcrossrefcite{#2}%
1427 \else
1428 \@ifundefined{ARTCR@#2}{%
1429 \global\@namedef{ARTCR@#2}{}%
1430 \bibcrossrefcite{#2}%
1431 }{%
1432 \jb@indexfalse\bibcrossrefciteagain{#2}%
1433 }%
1434 \fi
1435 \jb@art@cr@close%
1436 }{%
1437 \jb@art@cr@open%
1438 \Volumename~#1 \volumeofname{} %
1439 % make a difference between first crossref cite
1440 % and again crossref cite (ONLY FOR CITATION! 0.5e)
1441 \ifjbweareinbib
1442 \ifjb@index@bib\else\jb@indexfalse\fi\bibcrossrefcite{#2}%
1443 \else
1444 \@ifundefined{ARTCR@#2}{%
1445 \global\@namedef{ARTCR@#2}{}%
1446 \bibcrossrefcite{#2}%
1447 }{%
1448 \jb@indexfalse\bibcrossrefciteagain{#2}%
1449 }%
1450 \fi
1451 \jb@art@cr@close%
1452 }%
1453 \jb@close@clean@for@crossref
1454 }%
1455 }%
1456 \newcommand*{\fullnameoxfordcrossref}[1]{%
1457 \ifjb@debug
1458 \ifjb@debug@br[\fi
1459 \textcolor[named]{Dandelion}{\citefield{author}{#1}\jbhowsepbeforetitle\citefield{title}{#1}}%
1460 \ifjb@debug@br]\fi
1461 \else
1462 \citefield{author}{#1}\jbhowsepbeforetitle\citefield{title}{#1}%
1463 \fi
1464 }
1465 \newcommand*{\jbedbyincollcrossreflong}[1]{%
1466 \ifjbweareinbib
1467 \bibtfont{\citefield{title}{#1}}%
1468 \else
1469 \jbbtfont{\citefield{title}{#1}}%
1470 \fi
1471 \bibatsep{} %
1472 \ifthenelse{\equal{\bibatsep}{.}}{\Edbyname{} }{\edbyname{} }%
1473 \citefield{author}{#1}%
1474 \unskip\ifjbetal\jbetalfalse\else.\fi\space%
1475 \citefield{apy}{#1}%
1476 \unskip\unskip%
1477 }
1478 \newcommand*{\jbedbyincollcrossrefshortwithapy}[1]{%
1479 \ifjbweareinbib
1480 \bibtfont{\citefield{shorttitle}{#1}}%
1481 \else
1482 \jbbtfont{\citefield{shorttitle}{#1}}%
1483 \fi
1484 \bibatsep{} %
1485 \ifthenelse{\equal{\bibatsep}{.}}{\Edbyname{} }{\edbyname{} }%
1486 \citefield{shortauthor}{#1}%
1487 \unskip\ifjbetal\jbetalfalse\else.\fi\space%
1488 \citefield{apy}{#1}%
1489 \unskip\unskip%
1490 }
1491 \newcommand*{\jbedbyincollcrossrefshortnoapy}[1]{%
1492 \ifjbweareinbib
1493 \bibtfont{\citefield{shorttitle}{#1}}%
1494 \else
1495 \jbbtfont{\citefield{shorttitle}{#1}}%
1496 \fi
1497 \bibatsep{} %
1498 \ifthenelse{\equal{\bibatsep}{.}}{\Edbyname{} }{\edbyname{} }%
1499 \citefield{shortauthor}{#1}%
1500 \unskip\unskip%
1501 }
1502 \newcommand*{\jbedbyincollcrossrefshort}[1]{%
1503 \citefield{shortauthor}{#1}%
1504 \unskip\unskip%
1505 }
1506 \DeclareRobustCommand{\jbincollcrossref}[2]{%
1507 \begingroup
1508 \jb@open@clean@for@crossref
1509 \jb@incoll@cr@open%
1510 \ifjb@firstcite@full\ifjb@all@full\else
1511 \@ifundefined{citefull@#1}{%
1512 \global\@namedef{citefull@#1}{citefull}%
1513 }{}%
1514 \fi\fi
1515 \ifthenelse{%
1516 \boolean{jb@edby}%
1517 \and
1518 \boolean{jbchicago}%
1519 \and
1520 \equal{#2}{1}% is there an editor???
1521 }{%
1522 \let\bibedformat\@gobble % exists only in jhuman.bst
1523 \incollinname{} %
1524 \hyper@jblinkstart{#1}%
1525 \ifjbweareinbib
1526 \jbedbyincollcrossrefcite{#1}%
1527 \else
1528 \@ifundefined{INCCR@#1}{%
1529 \global\@namedef{INCCR@#1}{}%
1530 \jbedbyincollcrossrefcite{#1}%
1531 }{%
1532 \jbedbyincollcrossrefciteagain{#1}%
1533 }%
1534 \fi
1535 \hyper@jblinkend%
1536 }{%
1537 \incollinname{} %
1538 % make a difference between first crossref cite
1539 % and again crossref cite (ONLY FOR CITATION! 0.5e)
1540 \ifjbweareinbib
1541 \ifjb@index@bib\else\jb@indexfalse\fi\bibincollcrossrefcite{#1}%
1542 \else
1543 \@ifundefined{INCCR@#1}{%
1544 \global\@namedef{INCCR@#1}{}%
1545 \bibincollcrossrefcite{#1}%
1546 }{%
1547 \jb@indexfalse\bibincollcrossrefciteagain{#1}%
1548 }%
1549 \fi
1550 }%
1551 \jb@incoll@cr@close%
1552 \jb@close@clean@for@crossref
1553 \endgroup
1554 }%
1555 \DeclareRobustCommand{\numberandseries}[2]{%
1556 \unskip\unskip,\space\bibsnfont{#2}%
1557 \ifthenelse{\equal{#1}{}}{}{~#1}%
1558 }%
1559 \newcommand*{\jb@@tempa}{.}%
1560 \newcommand*{\edbysep}{\bibatsep{} }%
1561 \newcommand*{\incolledformat}[5]{%
1562 \bibBTsep%
1563 \ifjb@edby
1564 #3%
1565 \ifx\relax#1\relax
1566 \ifx\relax#5\relax\else
1567 \ifx\relax#4\relax
1568 \bibatsep{}%
1569 \else
1570 \bibatsep{}\space%
1571 \fi
1572 \fi
1573 \else
1574 \ifx\relax#5\relax
1575 \ifjb@humanbst@loaded\edbysep{}\fi
1576 \ifx\bibatsep\jb@@tempa\Edbyname{} \else\edbyname{} \fi
1577 \else
1578 \edbysep{}%
1579 \ifx\bibatsep\jb@@tempa\Edbyname{} \else\edbyname{} \fi
1580 \fi
1581 \begingroup
1582 #1%
1583 \endgroup
1584 \fi
1585 \ifx\relax#4\relax\else
1586 \ifx\relax#1\relax\else
1587 \ifx\relax#5\relax
1588 .\space%
1589 \else
1590 \bibatsep{} %
1591 \fi
1592 \fi
1593 \volumeformat{#4}%
1594 \fi
1595 \ifx\relax#1\relax
1596 \ifx\relax#4\relax\else.\fi % volume empty
1597 \else
1598 \ifjb@humanbst@loaded\else
1599 \ifjbchicago\else.\fi
1600 \fi
1601 \fi
1602 \else
1603 \ifx\relax#1\relax\else
1604 \begingroup
1605 #1 % editor
1606 \endgroup
1607 \ifx\relax#2\relax\else#2\fi
1608 \bothaesep%
1609 \fi
1610 #3%
1611 \ifx\relax#4\relax
1612 \ifx\relax#5\relax\else% No volume, but booktitleaddon
1613 \bibatsep%
1614 \fi
1615 \else
1616 \ifx\relax#5\relax\else,\space\fi% volume and booktitleaddon
1617 \volumeformat{#4}%
1618 \fi
1619 \fi
1620 }
1621 \newcommand\jburldef{}
1622 \newcommand\jb@urldef{}
1623 \newcommand\jb@returnAfterFi{}
1624 \long\def\jb@returnAfterFi#1\fi{\fi#1}
1625 \newcommand*\jb@remove@percentCr{}% see hyperref.sty's \Hy@RemovePercentCr
1626 \begingroup % no `%' inside this group! (Changing \endlinechar makes this easier).
1627 \endlinechar\m@ne
1628 \catcode`\^^M\active
1629 \catcode`\%=12
1630 \gdef\jburldef#1{
1631 \begingroup
1632 \def\jb@bbl@key{#1}
1633 \let\do\@makeother\dospecials
1634 \catcode`{\@ne \catcode`}\tw@
1635 \catcode`\^^M\active
1636 \def^^M{ }
1637 \jb@urldef
1638 }
1639 \gdef\jb@remove@percentCr#1%^^M#2\@nil{
1640 #1
1641 \ifx\limits#2\limits
1642 \else
1643 \jb@returnAfterFi\jb@remove@percentCr#2\@nil
1644 \fi
1645 }
1646 \gdef\jb@urldef#1{
1647 \edef\@tempa{\jb@remove@percentCr#1%^^M\@nil}
1648 \immediate\write\jb@urlfile{
1649 \string\expandafter\string\urldef\string\csname\space
1650 jburl@\jb@bbl@key\string\endcsname\string\url\string{\@tempa\string}
1651 }
1652 \endgroup
1653 }
1654 \endgroup
1655 \DeclareRobustCommand*\jburluse[1]{%
1656 \biburlprefix\csname jburl@#1\endcsname\biburlsuffix%
1657 }
1658 \newwrite\jb@urlfile
1659 \InputIfFileExists{\jobname.url}{}{}
1660 \newread\jb@tempfile
1661 \newcommand*\testnosig{}%
1662 {% no spaces or percents in this group! (Changing \endlinechar makes this easier).
1663 \catcode`\ =12
1664 \catcode`\%=12
1665 \endlinechar\m@ne
1666 \gdef\jb@signature@line{%%% jurabib url repository}
1667 \gdef\jb@if@no@sigline#1#2{\ifx#1\jb@signature@line\else#2\fi}}
1668 \newcommand*\jb@chk@overwrite[1]{%
1669 \bgroup
1670 \openin\jb@tempfile=#1\relax
1671 \let\do\@makeother \dospecials
1672 \endlinechar\m@ne
1673 \ifeof\jb@tempfile
1674 % \typeout{File `#1' doesn't exist}%
1675 \else
1676 \read\jb@tempfile to\@tempa
1677 \ifeof\jb@tempfile
1678 % \typeout{File `#1' is empty}%
1679 \else
1680 \jb@if@no@sigline{\@tempa}{%
1681 \ClassError{jurabib}{%
1682 file `#1' not written by jurabib%
1683 }{%
1684 This doesn't look like a file written by jurabib.^^J%
1685 Please save any valuable information contained in this file^^J%
1686 to another place.^^J%
1687 If you hit RETURN now, the file will be overwritten.^^J%
1688 }%
1689 }%
1690 \fi
1691 \fi
1692 \closein\jb@tempfile
1693 \egroup
1694 \immediate\openout\jb@urlfile#1
1695 \immediate\write\jb@urlfile{\jb@signature@line}%
1696 \AtEndDocument{\closeout\jb@urlfile}
1697 }
1698 \jb@chk@overwrite{\jobname.url}
1699 \DeclareRobustCommand{\lookatprefix}{}%
1700 \DeclareRobustCommand{\lookatsuffix}{}%
1701 \newcommand*{\noibidem}{%
1702 \gdef\jb@@lastauthorcite{}%
1703 \gdef\jb@@lastcoauthorcite{}%
1704 \gdef\jb@@lastpagecite{}%
1705 }%
1706 \newcommand*{\noidem}{%
1707 \gdef\jb@@last@@author{}%
1708 \gdef\jb@@last@@title{}%
1709 }%
1710 \newcommand*{\nextcitefull}[1]{%
1711 {\@for\@tempa:=#1\do{%
1712 \global\@namedef{\@tempa}{allnextfull}}}%
1713 }%
1714 \newcommand*{\nextciteshort}[1]{%
1715 {\@for\@tempa:=#1\do{%
1716 \global\@namedef{\@tempa}{allnextshort}}}%
1717 }%
1718 \newcommand*{\nextcitenotitle}[1]{%
1719 {\@for\@tempa:=#1\do{%
1720 \global\@namedef{\@tempa}{allnextnotitle}}}%
1721 }%
1722 \newcommand*{\nextcitereset}[1]{%
1723 {\@for\@tempa:=#1\do{%
1724 \global\@namedef{\@tempa}{}}}%
1725 }%
1726 \newcommand*{\citeswithoutentry}[1]{%
1727 {\@for\@tempa:=#1\do{%
1728 \global\@namedef{NOBIB@\@tempa}{suppress}}}%
1729 }%
1730 \newcommand*{\jb@cite@title@types}{}%
1731 \newcommand*{\jb@cite@notitle@types}{}%
1732 \newcommand*{\citetitlefortype}[1]{\gdef\jb@cite@title@types{#1}}%
1733 \newcommand*{\citenotitlefortype}[1]{\gdef\jb@cite@notitle@types{#1}}%
1734 \newcommand*{\jb@cite@title@for@type@hook}{%
1735 \@for\@tempa:=\jb@cite@title@types\do{%
1736 \protected@edef\@tempb{\jb@@type}%
1737 \ifx\@tempa\@tempb
1738 \def\jb@@title@switch{1}%
1739 \fi
1740 }%
1741 }%
1742 \newcommand*{\jb@cite@no@title@for@type@hook}{%
1743 \@for\@tempa:=\jb@cite@notitle@types\do{%
1744 \protected@edef\@tempb{\jb@@type}%
1745 \ifx\@tempa\@tempb
1746 \def\jb@@title@switch{-1}%
1747 \fi
1748 }%
1749 }%
1750 \def\jb@@cite@fullfirst@switch{}%
1751 \newcommand*{\jb@cite@full@first@types}{}%
1752 \newcommand*{\citefullfirstfortype}[1]{\gdef\jb@cite@full@first@types{#1}}%
1753 \newcommand*{\jb@cite@full@first@fortype@hook}{%
1754 \@for\@tempa:=\jb@cite@full@first@types\do{%
1755 \protected@edef\@tempb{\jb@@type}%
1756 \ifx\@tempa\@tempb
1757 \def\jb@@cite@fullfirst@switch{1}%
1758 \fi
1759 }%
1760 }%
1761 \citefullfirstfortype{article,book,booklet,commented,inbook,incollection,inproceedings,jurthesis,manual,mastersthesis,misc,periodical,phdthesis,proceedings,techreport,unpublished,www}
1762 \newcommand*{\jb@cite@title@work}{}%
1763 \newcommand*{\citeworkwithtitle}[1]{\gdef\jb@cite@title@work{#1}}%
1764 \newcommand*{\jb@cite@title@for@work@hook}{%
1765 \@for\@tempa:=\jb@cite@title@work\do{%
1766 \protected@edef\@tempb{\jb@@newauthorcite}%
1767 \ifx\@tempa\@tempb
1768 \def\jb@@mult@switch{1}%
1769 \fi
1770 }%
1771 }%
1772 \newcommand*{\jb@start@page@for@types}{}%
1773 \newcommand*{\jb@start@page@for@types@arg}{}%
1774 \newcommand*{\jb@start@page@for@type@hook}{%
1775 \@for\@tempa:=\jb@start@page@for@types\do{%
1776 \protected@edef\@tempb{\jb@@type}%
1777 \ifx\@tempa\@tempb
1778 \def\jb@start@page@for@types@arg{1}%
1779 \fi
1780 }%
1781 }%
1782 \newcommand*{\jb@formatted@year}{\nobreakspace\textup{\jbcitationyearformat{\jb@@year}}}%
1783 \DeclareRobustCommand{\jbyear}{% NEW 0.5c
1784 \ifjb@author@year
1785 \ifthenelse{\equal{\jb@@year}{}}{%
1786 \@ifundefined{NOYEAR@\jb@@newauthorcite}{%
1787 \global\@namedef{NOYEAR@\jb@@newauthorcite}{}%
1788 \jb@package@warningNoLine{\jb@pkg@name}{%
1789 No year for `\jb@@newauthorcite'!}}{\relax}%
1790 \let\jbcitationyearformat\@empty
1791 }{%
1792 \jb@formatted@year%
1793 }%
1794 \fi
1795 }%
1796 \DeclareRobustCommand{\bibYear}[1]{% only for jureco.bst
1797 \ifx\relax#1\relax\else
1798 \nobreakspace\bibfnfont{%
1799 \textup{%
1800 \ifjbweareinbib
1801 \jbbibyearformat{#1}%
1802 \else
1803 \jbcitationyearformat{#1}%
1804 \fi
1805 }%
1806 }%
1807 \fi
1808 }%
1809 \DeclareRobustCommand{\jbts}{\textsuperscript}%
1810 \newcommand*{\bibleftcolumn}{\textwidth /3}
1811 \newcommand*{\bibrightcolumn}{\textwidth-\bibleftcolumn-1cm}
1812 \newcommand*{\bibleftcolumnadjust}{\raggedright}%
1813 \newcommand*{\bibrightcolumnadjust}{\raggedright}%
1814 \newcommand*{\bibaltformatalign}{\relax}%
1815 \newcommand*{\jbdebug}{\jb@debugtrue
1816 \jb@info{*** Debugging ON ***}%
1817 \footnote{\textcolor[named]{Blue}{[volles Erstzitat]}}%
1818 \footnote{\textcolor[named]{Red}{[volles Wiederholungszitat]}}%
1819 \footnote{\textcolor[named]{Dandelion}{[Kurzzitat]}}%
1820 \footnote{\textcolor[named]{WildStrawberry}{[ibidem]}}%
1821 \footnote{\textcolor[named]{Gray}{[Titel ersetzt]}}%
1822 \setcounter{footnote}{0}%
1823 }%
1824 \DeclareRobustCommand{\jbhowsepcoauthorlast}{{\normalfont\slash}}%
1825 \DeclareRobustCommand{\jbhowsepbeforetitle}{\space}%
1826 \DeclareRobustCommand{\jbhowsepbeforetitleae}{\jbhowsepbeforetitle}%
1827 \DeclareRobustCommand{\jbhowsepbeforetitleibidemname}{,}%
1828 \DeclareRobustCommand{\jbhowsepcoauthorfirst}{}%
1829 \newcommand*{\jbbeforestartpagesep}{\space}%
1830 \renewcommand*{\@biblabel}[1]{}%
1831 \newcommand*{\jb@firstofseven} [7]{#1}%
1832 \newcommand*{\jb@secondofseven} [7]{#2}%
1833 \newcommand*{\jb@thirdofseven} [7]{#3}%
1834 \newcommand*{\jb@fourthofseven} [7]{#4}%
1835 \newcommand*{\jb@fifthofseven} [7]{#5}%
1836 \newcommand*{\jb@sixthofseven} [7]{#6}%
1837 \newcommand*{\jb@seventhofseven}[7]{#7}%
1838 \def\jb@@author{\expandafter\jb@firstofseven\jb@tempa\@empty}% Never add \unskip HERE !!!!!
1839 \def\jb@@shorttitle{\expandafter\jb@secondofseven\jb@tempa\@empty}% Never add \unskip HERE !!!!!
1840 \def\jb@@fullname{\expandafter\jb@fifthofseven\jb@tempa\@empty}% Never add \unskip HERE !!!!!
1841 \def\jb@@fulltitle{\expandafter\jb@sixthofseven\jb@tempa\@empty\unskip}%
1842 \newcommand*{\jb@firstofnine} [9]{#1}%
1843 \newcommand*{\jb@secondofnine} [9]{#2}%
1844 \newcommand*{\jb@thirdofnine} [9]{#3}%
1845 \newcommand*{\jb@fourthofnine} [9]{#4}%
1846 \newcommand*{\jb@fifthofnine} [9]{#5}%
1847 \newcommand*{\jb@sixthofnine} [9]{#6}%
1848 \newcommand*{\jb@seventhofnine}[9]{#7}%
1849 \newcommand*{\jb@eighthofnine} [9]{#8}%
1850 \newcommand*{\jb@ninethofnine} [9]{#9}%
1851 \def\jb@@mult@switch{\expandafter\jb@firstofnine\jb@tempb}%
1852 \def\jb@@howcited{\expandafter\jb@secondofnine\jb@tempb}%
1853 \def\jb@@type{\expandafter\jb@thirdofnine\jb@tempb}%
1854 \def\jb@@year{\expandafter\jb@fourthofnine\jb@tempb}%
1855 \def\jb@@edition{\expandafter\jb@fifthofnine\jb@tempb}%
1856 \def\jb@@edition@switch{\expandafter\jb@sixthofnine\jb@tempb}%
1857 \def\jb@@language{\expandafter\jb@seventhofnine\jb@tempb}%
1858 \def\jb@@pages{\expandafter\jb@eighthofnine\jb@tempb}%
1859 \def\jb@@apy{\expandafter\jb@ninethofnine\jb@tempb}%
1860 \def\jb@@title{\expandafter\jb@firstofnine\jb@tempc}%
1861 \def\jb@@gender{\expandafter\jb@secondofnine\jb@tempc}%
1862 \def\jb@@title@switch{}%
1863 \newcommand*{\jb@extract}{%
1864 \protected@edef\jb@tempa{\csname b@\@citeb\@extra@b@citeb\endcsname}%
1865 \protected@edef\jb@tempb{\expandafter\jb@thirdofseven\jb@tempa\@empty}%
1866 \protected@edef\jb@tempc{\expandafter\jb@fourthofseven\jb@tempa\@empty}%
1867 }%
1868 \def\jb@use@fullcite{%
1869 \ifthenelse{\equal{\jb@@author}{empty}}{%
1870 \ifthenelse{\equal{\jb@@fullname}{\@empty}}{%
1871 \jb@@fulltitle%
1872 }{%
1873 \jb@@fullname\normalfont{\jbhowsepbeforetitle}\jb@@fulltitle\unskip%
1874 }%
1875 }{%
1876 \ifthenelse{\equal{\jb@@fullname}{\@empty}}{%
1877 \jbauthorfont{\jb@@author}\normalfont{\jbhowsepbeforetitle}\jb@@fulltitle%
1878 }{%
1879 \jb@@fullname\normalfont{\jbhowsepbeforetitle}\jb@@fulltitle\unskip%
1880 }%
1881 }%
1882 }%
1883 \newcommand*{\jb@extraspace}{\space}%
1884 \@ifundefined{@extra@b@citeb}{\def\@extra@b@citeb{}}{}%
1885 \newcommand*{\jb@save@auxfile}{\let\jb@auxout@bak\@auxout}%
1886 \newcommand*{\jb@restore@auxfile}{\let\@auxout\jb@auxout@bak}
1887 \providecommand\hyper@natlinkstart[1]{}%
1888 \providecommand\hyper@natlinkend{}%
1889 \providecommand\hyper@natanchorstart[1]{}%
1890 \providecommand\hyper@natanchorend{}%
1891 \def\hyper@jblinkstart{\hyper@natlinkstart}
1892 \def\hyper@jblinkend{\hyper@natlinkend}
1893 \def\hyper@jbanchorstart{\hyper@natanchorstart}
1894 \def\hyper@jbanchorend{\hyper@natanchorend}
1895 \def\NAT@parse{}%
1896 \def\Hy@reserved@a{}%
1897 \newcounter{jbbibcnt}%
1898 \newcounter{jbbibcnta}%
1899 \newcounter{idemcnt}% NEW 0.5e idem feature
1900 \newcounter{bibnamereplace}%
1901 \newcounter{citefull}%
1902 \newcounter{opcit}%
1903 \newcounter{jb@cites@in@footnote}
1904 \newcommand*{\samepageibidemname}{\ibidemname}
1905 \newcommand*{\samepageibidemmidname}{\ibidemmidname}
1906 \newcommand*{\diffpageibidemname}{\ibidemname}
1907 \newcommand*{\diffpageibidemmidname}{\ibidemmidname}
1908 \newcommand*{\IbidemName}{\ifthenelse{\equal{\jb@@newpagecite}{\jb@@lastpagecite}}{\samepageibidemname}{\diffpageibidemname}}
1909 \newcommand*{\IbidemMidName}{\ifthenelse{\equal{\jb@@newpagecite}{\jb@@lastpagecite}}{\samepageibidemmidname}{\diffpageibidemmidname}}
1910 \newcommand*{\jb@@lastpagecite}{}%
1911 \newcommand*{\jb@@lastcoauthorcite}{}%
1912 \newcommand*{\jb@@lastauthorcite}{}%
1913 \newcommand*{\jb@getsecondarg}{}%
1914 \long\def\jb@getsecondarg#1#2#3\@nil{#2}%
1915 \newcommand*{\jb@simple@pageref@by@heiko}[1]{%
1916 \expandafter\expandafter\expandafter\jb@getsecondarg
1917 \csname r@#1\endcsname{??}\@nil}%
1918 \newcommand*{\jb@checked@edition}{}%
1919 \newcommand*{\jb@aftertitleedition}{}%
1920 \newcommand*{\jb@handle@superscript@ed}{%
1921 \let\jb@checked@edition\@empty % complete removal of superscript edition or
1922 %\let\jb@kerning@title@ed\@empty % only removal of kerning?
1923 %\let\jb@kerning@notitle@ed\@empty %
1924 }%
1925 \newcommand*{\jb@formatted@author}{%
1926 \ifjbcross
1927 \ifthenelse{%
1928 \equal{\jb@inside@author}{\jb@inside@editor}%
1929 \and\boolean{jb@idem}%
1930 }{%
1931 \jb@@fullname% contains `idem, editor'
1932 }{%
1933 \jbauthorfont{\jb@@author}\ifjb@yearafterauthor\jbyear\fi
1934 }%
1935 \else
1936 \jbauthorfont{\jb@@author}\ifjb@yearafterauthor\jbyear\fi
1937 \fi
1938 }%
1939 \newcommand*{\jb@formatted@co@author}{%
1940 \jbcoauthorfont{\jb@@newcoauthorcite}}%
1941 \newcommand*{\jb@formatted@co@author@see}{%
1942 \textup{\jb@@newcoauthorcite}\ifthenelse{\equal{\jb@@newcoauthorcite}{}}{}{\space}}%
1943 \newcommand*{\jb@formatted@co@author@in}{%
1944 \ifthenelse{\equal{\jb@@newcoauthorcite}{\@empty}}{\relax}{%
1945 \jbcoauthorfont{\jb@@newcoauthorcite}\jbhowsepcoauthorfirst}}%
1946 \newcommand*{\jb@checked@title}{%
1947 \ifjbhum
1948 \ifthenelse{\equal{\jb@@type}{book}}{%
1949 \let\jbtitlefont\jbbtfont}{\let\jbtitlefont\jbapifont}%
1950 \fi
1951 \ifthenelse{\equal{\jb@@shorttitle}{}}{%
1952 \ifjb@author@year\else% NEW 0.52i, no title, but shorttitle if `authorformat=year' is used.
1953 \ifjb@no@title@replace\else
1954 \ifjb@noauthorforcitetitle\else
1955 \normalfont{\jbhowsepbeforetitle}%
1956 \fi
1957 \fi
1958 \ifjb@no@title@replace\else
1959 \@ifundefined{REPL@\jb@@newauthorcite}{%
1960 \global\@namedef{REPL@\jb@@newauthorcite}{}%
1961 \jb@package@warning{\jb@pkg@name}{%
1962 `shorttitle' for `\jb@@newauthorcite'\MessageBreak
1963 is missing -- replacing with `title'\MessageBreak
1964 field}}{}%
1965 \ifjb@debug
1966 \textcolor[named]{Gray}{%
1967 \ifjb@debug@br[\fi
1968 \jbtitlefont{\jb@@title}%
1969 \ifjb@debug@br]\fi
1970 }%
1971 \else
1972 \jbtitlefont{\jb@@title}%
1973 \fi%
1974 \fi
1975 \fi
1976 }{%
1977 \ifjb@noauthorforcitetitle\else
1978 \normalfont{\jbhowsepbeforetitle}%
1979 \fi
1980 \jbtitlefont{\jb@@shorttitle}%
1981 \@ifundefined{TITLE@\jb@@newauthorcite}{%
1982 \global\@namedef{TITLE@\jb@@newauthorcite}{used}%
1983 }{}%
1984 }%
1985 }%
1986 \newcommand*{\jb@checked@author}{%
1987 \ifthenelse{\equal{\jb@@fullname}{}}{%
1988 \ifthenelse{\equal{\jb@@author}{}}{%
1989 \relax
1990 }{%
1991 \jbauthorfont{\jb@@author}%
1992 }%
1993 }{%
1994 \jbauthorfont{\jb@@fullname}%
1995 }%
1996 }%
1997 \newcommand*{\jb@make@coauthor@emph}{%
1998 \ifjb@dynamic@author@fonts%
1999 \let\jbcoauthorfont\jbactualauthorfont%
2000 \let\jbauthorfont\jbauthorfontifcoauthor%
2001 \fi
2002 }%
2003 \newcommand*{\jb@make@author@emph}{%
2004 \ifjb@dynamic@author@fonts%
2005 \let\jbauthorfont\jbactualauthorfont%
2006 \let\jbcoauthorfont\normalfont%
2007 \fi
2008 }%
2009 \newcommand*{\jb@relaxcommandsforfullcite}{%
2010 \let\IbidemName\@empty
2011 \let\jb@@author\@empty
2012 \let\jb@@title\@empty
2013 \let\jb@@shorttitle\relax
2014 \let\jbyear\@empty
2015 \let\jb@checked@edition\@empty
2016 \let\jb@@newcoauthorcite\@empty
2017 \let\jbhowsepbeforetitle\@empty
2018 \let\jbapifont\@empty
2019 \let\jbbtfont\@empty
2020 \let\jb@formatted@author\@empty
2021 }%
2022 \newcommand*{\jb@checkperiod}[1]{\jb@periodfalse\jb@@checkperiod#1.\jb@@end}%
2023 \newcommand*{\jb@@checkperiod}{}%
2024 \long\def\jb@@checkperiod#1.#2\jb@@end{%
2025 \ifthenelse{\equal{#1}{}}{\jb@periodtrue\let\ecmd\relax}{%
2026 \ifthenelse{\equal{#2}{}}{\let\ecmd\relax}{%
2027 \def\ecmd{\jb@@checkperiod#2\jb@@end}}}\ecmd}%
2028 \newlength{\jbbibhang}
2029 \setlength{\jbbibhang}{2.5em}
2030 \newlength{\jbnumberbibwidth}
2031 \settowidth{\jbnumberbibwidth}{8888.\,}
2032 \DeclareRobustCommand{\jb@checked@bibetal}{%
2033 \ifjb@bibetal
2034 \unskip\nobreakspace%
2035 \ifjb@cite@no@title
2036 \ifx\jb@@newpagecite\@empty
2037 \bibIMfont{\etalnamenodot}%
2038 \else
2039 \bibIMfont{\etalname}%
2040 \fi
2041 \else
2042 \bibIMfont{\etalname}%
2043 \fi
2044 \fi
2045 }
2046 \DeclareRobustCommand{\Bibetal}{\jb@checked@bibetal\global\jbetaltrue}
2047 \newcommand*{\jb@checked@etal}{%
2048 \let\@latex@info\@gobble
2049 \DeclareRobustCommand{\Bibetal}{%
2050 \bibIMfont{\etalname}%
2051 \ifthenelse{\equal{\jb@@newpagecite}{}%
2052 \or
2053 \(
2054 \boolean{jb@firstcite@full}%
2055 \and
2056 \equal{\jb@@newpagecite}{}%
2057 \and
2058 \equal{\@nameuse{citefull@\jb@@newauthorcite}}{citefull}%
2059 \)
2060 }{%
2061 \ifthenelse{%
2062 \not\boolean{jbcross}% NEW, otherwise missing footnote period for citations containing crossref's
2063 \and
2064 \not\boolean{jb@lookat}%
2065 \and
2066 \not\boolean{jb@author@year}%
2067 \and
2068 \not\boolean{jb@fullcite@again}%
2069 \and
2070 \not\equal{\jb@@mult@switch}{1}%
2071 }{%
2072 \global\jb@footnote@periodfalse
2073 }{}%
2074 }{}%
2075 }%
2076 }%
2077 \newcommand*{\jb@missing@ldf@files}[1]{\ClassError{\jb@pkg@name}{You are in trouble here.\MessageBreak%
2078 File `#1' not found}{Make sure that all .ldf files are living in the jurabib directory!}}%
2079 \gdef\@bibsfrench{\InputIfFileExists{frjbbib.ldf}{}{\jb@missing@ldf@files{frjbbib.ldf}}}%
2080 \gdef\@bibsgerman{\InputIfFileExists{dejbbib.ldf}{}{\jb@missing@ldf@files{dejbbib.ldf}}}%
2081 \gdef\@bibsaustrian{\InputIfFileExists{dejbbib.ldf}{}{\jb@missing@ldf@files{dejbbib.ldf}}\def\janname{J{^^e4}nner}}%
2082 \gdef\@bibsenglish{\InputIfFileExists{enjbbib.ldf}{}{\jb@missing@ldf@files{enjbbib.ldf}}}%
2083 \gdef\@bibsdutch{\InputIfFileExists{dujbbib.ldf}{}{\jb@missing@ldf@files{dujbbib.ldf}}}%
2084 \gdef\@bibsspanish{\InputIfFileExists{spjbbib.ldf}{}{\jb@missing@ldf@files{spjbbib.ldf}}}%
2085 \gdef\@bibsitalian{\InputIfFileExists{itjbbib.ldf}{}{\jb@missing@ldf@files{itjbbib.ldf}}}%
2086 \gdef\@bibsnorsk{\InputIfFileExists{nojbbib.ldf}{}{\jb@missing@ldf@files{nojbbib.ldf}}}%
2087 \newcommand*{\jb@kv@warning}[2]{%
2088 \jb@package@warningNoLine{\jb@pkg@name}{%
2089 unrecognized value `#1'\MessageBreak
2090 for key `#2' ignored}}
2091 \define@key{jb}{authorformat}{%
2092 \@for\jb@val:=#1\do{%
2093 \jb@kv@recognizedfalse
2094 \ifthenelse{\equal{\jb@val}{smallcaps}}{%
2095 \jb@kv@recognizedtrue
2096 \renewcommand*{\jbauthorfont}{\textsc}%
2097 \renewcommand*{\jbauthorfnfont}{\textsc}%
2098 \renewcommand*{\jborgauthorfont}{\textsc}%
2099 \renewcommand*{\jbcoauthorfont}{\textsc}%
2100 }{\relax}%
2101 \ifthenelse{\equal{\jb@val}{italic}}{%
2102 \jb@kv@recognizedtrue
2103 \renewcommand*{\jbauthorfont}{\textit}%
2104 \renewcommand*{\jbauthorfnfont}{\textit}%
2105 \renewcommand*{\jborgauthorfont}{\textit}%
2106 \renewcommand*{\jbcoauthorfont}{\textit}%
2107 }{\relax}%
2108 \ifthenelse{\equal{\jb@val}{dynamic}}{%
2109 \jb@kv@recognizedtrue
2110 \jb@dynamic@author@fontstrue
2111 }{\relax}%
2112 \ifthenelse{\equal{\jb@val}{citationreversed}}{%
2113 \jb@kv@recognizedtrue
2114 \jb@reverse@names@in@citationtrue
2115 \jb@reverse@all@namesfalse
2116 }{\relax}%
2117 \ifthenelse{\equal{\jb@val}{firstnotreversed}}{%
2118 \jb@kv@recognizedtrue
2119 \jb@first@author@reversedtrue
2120 }{\relax}%
2121 \ifthenelse{\equal{\jb@val}{allreversed}}{%
2122 \jb@kv@recognizedtrue
2123 \jb@reverse@all@namestrue
2124 \global\let\bibnf\bibrnf
2125 \global\let\bibenf\bibrenf
2126 \global\let\biblenf\bibrlenf
2127 }{\relax}%
2128 \ifthenelse{\equal{\jb@val}{reducedifibidem}}{%
2129 \jb@kv@recognizedtrue
2130 \jb@ibidem@with@short@nametrue
2131 }{\relax}%
2132 \ifthenelse{\equal{\jb@val}{year}}{%
2133 \jb@kv@recognizedtrue
2134 \jb@author@yeartrue
2135 \jb@yearafterauthortrue
2136 \jbshowbibextralabel
2137 }{\relax}%
2138 \ifthenelse{\equal{\jb@val}{indexed}}{%
2139 \jb@kv@recognizedtrue
2140 \jb@indextrue
2141 }{\relax}%
2142 \ifthenelse{\equal{\jb@val}{and}}{%
2143 \jb@kv@recognizedtrue
2144 \addto\@bibsgerman{%
2145 \DeclareRobustCommand\jbbtasep { \bibIMfont{\textandname} }%
2146 \DeclareRobustCommand\jbbfsasep {\unskip\bibIMfont{\commaname} }%
2147 \DeclareRobustCommand\jbbstasep { \bibIMfont{\textandname} }%
2148 \DeclareRobustCommand\bibbtasep { \bibIMfont{\bibandname} }%
2149 \DeclareRobustCommand\bibbfsasep{\unskip\bibIMfont{\commaname} }%
2150 \DeclareRobustCommand\bibbstasep{ \bibIMfont{\bibandname} }%
2151 \DeclareRobustCommand\jbbtesep { \bibEIMfont{\texteandname} }%
2152 \DeclareRobustCommand\jbbfsesep {\unskip\bibEIMfont{\commaename} }%
2153 \DeclareRobustCommand\jbbstesep { \bibEIMfont{\texteandname} }%
2154 \DeclareRobustCommand\bibbtesep { \bibEIMfont{\bibeandname} }%
2155 \DeclareRobustCommand\bibbfsesep{\unskip\bibEIMfont{\commaename} }%
2156 \DeclareRobustCommand\bibbstesep{ \bibEIMfont{\bibeandname} }%
2157 }%
2158 \addto\@bibsenglish{%
2159 \DeclareRobustCommand\jbbtasep { \bibIMfont{\textandname} }%
2160 \DeclareRobustCommand\jbbfsasep {\unskip\bibIMfont{\commaname} }%
2161 \DeclareRobustCommand\jbbstasep {\unskip\bibIMfont{\commaname{} \textandname} }%
2162 \DeclareRobustCommand\bibbtasep { \bibIMfont{\bibandname} }%
2163 \DeclareRobustCommand\bibbfsasep{\unskip\bibIMfont{\commaname} }%
2164 \DeclareRobustCommand\bibbstasep{\unskip\bibIMfont{\commaname{} \bibandname} }%
2165 \DeclareRobustCommand\jbbtesep { \bibEIMfont{\texteandname} }%
2166 \DeclareRobustCommand\jbbfsesep {\unskip\bibEIMfont{\commaename} }%
2167 \DeclareRobustCommand\jbbstesep {\unskip\bibEIMfont{\commaename{} \texteandname} }%
2168 \DeclareRobustCommand\bibbtesep { \bibEIMfont{\bibeandname} }%
2169 \DeclareRobustCommand\bibbfsesep{\unskip\bibEIMfont{\commaename} }%
2170 \DeclareRobustCommand\bibbstesep{\unskip\bibEIMfont{\commaename{} \bibeandname} }%
2171 }%
2172 \addto\@bibsfrench{%
2173 \DeclareRobustCommand\jbbtasep { \bibIMfont{\textandname} }%
2174 \DeclareRobustCommand\jbbfsasep {\unskip\bibIMfont{\commaname} }%
2175 \DeclareRobustCommand\jbbstasep { \bibIMfont{\textandname} }%
2176 \DeclareRobustCommand\bibbtasep { \bibIMfont{\bibandname} }%
2177 \DeclareRobustCommand\bibbfsasep{\unskip\bibIMfont{\commaname} }%
2178 \DeclareRobustCommand\bibbstasep{ \bibIMfont{\bibandname} }%
2179 \DeclareRobustCommand\jbbtesep { \bibEIMfont{\texteandname} }%
2180 \DeclareRobustCommand\jbbfsesep {\unskip\bibEIMfont{\commaename} }%
2181 \DeclareRobustCommand\jbbstesep { \bibEIMfont{\texteandname} }%
2182 \DeclareRobustCommand\bibbstasep{ \bibEIMfont{\bibandname} }%
2183 \DeclareRobustCommand\bibbtesep { \bibEIMfont{\bibeandname} }%
2184 \DeclareRobustCommand\bibbfsesep{\unskip\bibEIMfont{\commaename} }%
2185 \DeclareRobustCommand\bibbstesep{ \bibEIMfont{\bibeandname} }%
2186 }%
2187 \addto\@bibsdutch{%
2188 \DeclareRobustCommand\jbbtasep { \bibIMfont{\textandname} }%
2189 \DeclareRobustCommand\jbbfsasep {\unskip\bibIMfont{\commaname} }%
2190 \DeclareRobustCommand\jbbstasep { \bibIMfont{\textandname} }%
2191 \DeclareRobustCommand\bibbtasep { \bibIMfont{\bibandname} }%
2192 \DeclareRobustCommand\bibbfsasep{\unskip\bibIMfont{\commaname} }%
2193 \DeclareRobustCommand\bibbstasep{ \bibIMfont{\bibandname} }%
2194 \DeclareRobustCommand\jbbtesep { \bibEIMfont{\texteandname} }%
2195 \DeclareRobustCommand\jbbfsesep {\unskip\bibEIMfont{\commaename} }%
2196 \DeclareRobustCommand\jbbstesep { \bibEIMfont{\texteandname} }%
2197 \DeclareRobustCommand\bibbstasep{ \bibEIMfont{\bibandname} }%
2198 \DeclareRobustCommand\bibbtesep { \bibEIMfont{\bibeandname} }%
2199 \DeclareRobustCommand\bibbfsesep{\unskip\bibEIMfont{\commaename} }%
2200 \DeclareRobustCommand\bibbstesep{ \bibEIMfont{\bibeandname} }%
2201 }%
2202 \addto\@bibsspanish{%
2203 \DeclareRobustCommand\jbbtasep { \bibIMfont{\textandname} }%
2204 \DeclareRobustCommand\jbbfsasep {\unskip\bibIMfont{\commaname} }%
2205 \DeclareRobustCommand\jbbstasep { \bibIMfont{\textandname} }%
2206 \DeclareRobustCommand\bibbtasep { \bibIMfont{\bibandname} }%
2207 \DeclareRobustCommand\bibbfsasep{\unskip\bibIMfont{\commaname} }%
2208 \DeclareRobustCommand\bibbstasep{ \bibIMfont{\bibandname} }%
2209 \DeclareRobustCommand\jbbtesep { \bibEIMfont{\texteandname} }%
2210 \DeclareRobustCommand\jbbfsesep {\unskip\bibEIMfont{\commaename} }%
2211 \DeclareRobustCommand\jbbstesep { \bibEIMfont{\texteandname} }%
2212 \DeclareRobustCommand\bibbstasep{ \bibEIMfont{\bibandname} }%
2213 \DeclareRobustCommand\bibbtesep { \bibEIMfont{\bibeandname} }%
2214 \DeclareRobustCommand\bibbfsesep{\unskip\bibEIMfont{\commaename} }%
2215 \DeclareRobustCommand\bibbstesep{ \bibEIMfont{\bibeandname} }%
2216 }%
2217 \addto\@bibsitalian{%
2218 \DeclareRobustCommand\jbbtasep { \bibIMfont{\textandname} }%
2219 \DeclareRobustCommand\jbbfsasep {\unskip\bibIMfont{\commaname} }%
2220 \DeclareRobustCommand\jbbstasep { \bibIMfont{\textandname} }%
2221 \DeclareRobustCommand\bibbtasep { \bibIMfont{\bibandname} }%
2222 \DeclareRobustCommand\bibbfsasep{\unskip\bibIMfont{\commaname} }%
2223 \DeclareRobustCommand\bibbstasep{ \bibIMfont{\bibandname} }%
2224 \DeclareRobustCommand\jbbtesep { \bibEIMfont{\texteandname} }%
2225 \DeclareRobustCommand\jbbfsesep {\unskip\bibEIMfont{\commaename} }%
2226 \DeclareRobustCommand\jbbstesep { \bibEIMfont{\texteandname} }%
2227 \DeclareRobustCommand\bibbstasep{ \bibEIMfont{\bibandname} }%
2228 \DeclareRobustCommand\bibbtesep { \bibEIMfont{\bibeandname} }%
2229 \DeclareRobustCommand\bibbfsesep{\unskip\bibEIMfont{\commaename} }%
2230 \DeclareRobustCommand\bibbstesep{ \bibEIMfont{\bibeandname} }%
2231 }%
2232 \addto\@bibsnorsk{%
2233 \DeclareRobustCommand\jbbtasep { \bibIMfont{\textandname} }%
2234 \DeclareRobustCommand\jbbfsasep {\unskip\bibIMfont{\commaname} }%
2235 \DeclareRobustCommand\jbbstasep { \bibIMfont{\textandname} }%
2236 \DeclareRobustCommand\bibbtasep { \bibIMfont{\bibandname} }%
2237 \DeclareRobustCommand\bibbfsasep{\unskip\bibIMfont{\commaname} }%
2238 \DeclareRobustCommand\bibbstasep{ \bibIMfont{\bibandname} }%
2239 \DeclareRobustCommand\jbbtesep { \bibEIMfont{\texteandname} }%
2240 \DeclareRobustCommand\jbbfsesep {\unskip\bibEIMfont{\commaename} }%
2241 \DeclareRobustCommand\jbbstesep { \bibEIMfont{\texteandname} }%
2242 \DeclareRobustCommand\bibbstasep{ \bibEIMfont{\bibandname} }%
2243 \DeclareRobustCommand\bibbtesep { \bibEIMfont{\bibeandname} }%
2244 \DeclareRobustCommand\bibbfsesep{\unskip\bibEIMfont{\commaename} }%
2245 \DeclareRobustCommand\bibbstesep{ \bibEIMfont{\bibeandname} }%
2246 }%
2247 }{\relax}%
2248 \ifthenelse{\equal{\jb@val}{abbrv}}{%
2249 \jb@kv@recognizedtrue
2250 \jb@abbrvtrue
2251 }{\relax}%
2252 \ifjb@kv@recognized\else\jb@kv@warning{\jb@val}{authorformat}\fi
2253 }%
2254 }%
2255 \define@key{jb}{coauthorformat}{%
2256 \@for\jb@val:=#1\do{%
2257 \jb@kv@recognizedfalse
2258 \ifthenelse{\equal{\jb@val}{italic}}{%
2259 \jb@kv@recognizedtrue
2260 \renewcommand*{\jbcoauthorfont}{\textit}%
2261 }{\relax}%
2262 \ifthenelse{\equal{\jb@val}{normal}}{%
2263 \jb@kv@recognizedtrue
2264 \renewcommand*{\jbcoauthorfont}{\normalfont}%
2265 }{\relax}%
2266 \ifjb@kv@recognized\else\jb@kv@warning{\jb@val}{coauthorformat}\fi
2267 }%
2268 }%
2269 \define@key{jb}{superscriptedition}[commented]{%
2270 \@for\jb@val:=#1\do{%
2271 \jb@kv@recognizedfalse
2272 \ifthenelse{\equal{\jb@val}{all}}{%
2273 \jb@kv@recognizedtrue\jb@ssed@alltrue}{}%
2274 \ifthenelse{\equal{\jb@val}{commented}}{%
2275 \jb@kv@recognizedtrue\jb@ssed@commentedtrue}{}%
2276 \ifthenelse{\equal{\jb@val}{switch}}{%
2277 \jb@kv@recognizedtrue\jb@ssed@swtrue}{}%
2278 \ifthenelse{\equal{\jb@val}{bib}\or\equal{\jb@val}{address}}{%
2279 \jb@kv@recognizedtrue\jb@bibssedtrue
2280 \let\jbedition\@gobble}{}%
2281 \ifthenelse{\equal{\jb@val}{multiple}}{%
2282 \jb@kv@recognizedtrue\jb@ssed@mult@workstrue}{}%
2283 \ifthenelse{\equal{\jb@val}{kerning}}{%
2284 \jb@kv@recognizedtrue\jb@ssed@kerning@wantedtrue}{}%
2285 \ifthenelse{\equal{\jb@val}{year}}{\jb@kv@recognizedtrue
2286 \renewcommand*{\jbssedbd}{\textsuperscript}%
2287 \let\jbedition\@gobble\DeclareRobustCommand{\apyformat}[1]{%
2288 \unskip\unskip\space\bibapyldelim{}##1\bibapyrdelim{}}
2289 }{}%
2290 \ifjb@kv@recognized\else\jb@kv@warning{\jb@val}{superscriptedition}\fi
2291 }%
2292 }%
2293 \define@key{jb}{titleformat}{%
2294 \@for\jb@val:=#1\do{%
2295 \jb@kv@recognizedfalse
2296 \ifthenelse{\equal{\jb@val}{italic}}{%
2297 \jb@kv@recognizedtrue
2298 \DeclareRobustCommand{\jbtitlefont}{\textit}%
2299 }{\relax}%
2300 \ifthenelse{\equal{\jb@val}{all}}{%
2301 \jb@kv@recognizedtrue
2302 \ifjb@no@title@replace
2303 \global\jb@no@title@replacefalse
2304 \jb@package@warningNoLine{\jb@pkg@name}{%
2305 `titleformat=all' and `titleformat=noreplace'\MessageBreak
2306 cannot be used together. I will replace missing\MessageBreak
2307 shorttitles to avoid ambiguity of citations}%
2308 \fi
2309 \jb@all@titlestrue
2310 }{\relax}%
2311 \ifthenelse{\equal{\jb@val}{noreplace}}{%
2312 \jb@kv@recognizedtrue
2313 \jb@no@title@replacetrue
2314 }{\relax}%
2315 \ifthenelse{\equal{\jb@val}{commasep}}{%
2316 \jb@kv@recognizedtrue
2317 \jb@before@title@separatortrue
2318 \renewcommand*{\jbhowsepbeforetitle}{, }%
2319 }{\relax}%
2320 \ifthenelse{\equal{\jb@val}{colonsep}}{%
2321 \jb@kv@recognizedtrue
2322 \jb@before@title@separatortrue
2323 \renewcommand*{\jbhowsepbeforetitle}{: }%
2324 }{\relax}%
2325 \ifjb@kv@recognized\else\jb@kv@warning{\jb@val}{titleformat}\fi
2326 }%
2327 }%
2328 \define@key{jb}{din}[true]{%
2329 \AtEndOfPackage{%
2330 \DeclareRobustCommand{\biblnfont}{\textsc}%
2331 \DeclareRobustCommand{\bibfnfont}{\normalfont}%
2332 \DeclareRobustCommand{\bibbtfont}{\textit}%
2333 \DeclareRobustCommand{\bibtfont}{\textit}%
2334 \DeclareRobustCommand{\bibjtfont}{\textit}%
2335 \DeclareRobustCommand{\bibapifont}{\normalfont}%
2336 \DeclareRobustCommand{\bibatsep}{.}%
2337 \DeclareRobustCommand{\bibbtsep}{\inname: }%
2338 \DeclareRobustCommand{\bibjtsep}{\inname: }%
2339 }%
2340 }%
2341 \define@key{jb}{howcited}[normal]{%
2342 \@for\jb@val:=#1\do{%
2343 \jb@kv@recognizedfalse
2344 \ifthenelse{\equal{\jb@val}{all}}{%
2345 \jb@kv@recognizedtrue
2346 \jb@howcitedtrue
2347 \jb@howcited@alltrue
2348 }{\relax}%
2349 \ifthenelse{\equal{\jb@val}{normal}}{%
2350 \jb@kv@recognizedtrue
2351 \jb@howcitedtrue
2352 \jb@howcited@normaltrue
2353 }{\relax}%
2354 \ifthenelse{\equal{\jb@val}{multiple}}{%
2355 \jb@kv@recognizedtrue
2356 \jb@howcitedtrue
2357 \jb@howcited@multipletrue
2358 }{\relax}%
2359 \ifthenelse{\equal{\jb@val}{compare}}{%
2360 \jb@kv@recognizedtrue
2361 \jb@howcitedtrue
2362 \jb@howcited@comparetrue
2363 }{\relax}%
2364 \ifjb@kv@recognized\else\jb@kv@warning{\jb@val}{howcited}\fi
2365 }%
2366 \renewcommand*{\jbrealcitation}[2]{%
2367 \@ifundefined{b@##2@C}{\global\@namedef{b@##2@C}{cite}}{\relax}%
2368 \ifthenelse{\equal{##1}{citetitle}}{%
2369 \global\@namedef{b@##2@C}{citetitle}}{\relax}%
2370 \ifthenelse{\equal{##1}{citenotitle}}{%
2371 \global\@namedef{b@##2@C}{citenotitle}}{\relax}}%
2372 }%
2373 \define@key{jb}{cofirstsep}{%
2374 \jb@kv@recognizedfalse
2375 \ifthenelse{\equal{#1}{comma}}{%
2376 \jb@kv@recognizedtrue
2377 \jb@coauthor@lastfalse
2378 \renewcommand*{\jbhowsepcoauthorfirst}{, }%
2379 }{\relax}%
2380 \ifthenelse{\equal{#1}{in}}{%
2381 \jb@kv@recognizedtrue
2382 \jb@coauthor@lastfalse
2383 \renewcommand*{\jbhowsepcoauthorfirst}{~in: }%
2384 }{\relax}%
2385 \ifjb@kv@recognized\else\jb@kv@warning{#1}{cofirstsep}\fi
2386 }%
2387 \define@key{jb}{colastsep}{%
2388 \jb@kv@recognizedfalse
2389 \ifthenelse{\equal{#1}{divis}}{%
2390 \jb@kv@recognizedtrue
2391 \jb@coauthor@lasttrue
2392 \renewcommand*{\jbhowsepcoauthorlast}{--}%
2393 }{\relax}%
2394 \ifjb@kv@recognized\else\jb@kv@warning{#1}{colastsep}\fi
2395 }%
2396 \define@key{jb}{commabeforerest}[true]{\jb@comma@before@resttrue\renewcommand*{\jbbeforestartpagesep}{,\space}}%
2397 \define@key{jb}{bibformat}{%
2398 \@for\jb@val:=#1\do{%
2399 \jb@kv@recognizedfalse
2400 \ifthenelse{\equal{\jb@val}{compress}}{%
2401 \jb@kv@recognizedtrue
2402 \jb@compressed@bibtrue
2403 }{\relax}%
2404 \ifthenelse{\equal{\jb@val}{raggedright}}{%
2405 \jb@kv@recognizedtrue
2406 \addto\jbonlyforbib{\raggedright}
2407 \let\bibaltformatalign\raggedright
2408 }{\relax}%
2409 \ifthenelse{\equal{\jb@val}{tabular}}{%
2410 \jb@kv@recognizedtrue
2411 \jb@tabulartrue\jb@bib@hangfalse
2412 }{\relax}%
2413 \ifthenelse{\equal{\jb@val}{numbered}}{%
2414 \jb@kv@recognizedtrue
2415 \jb@numbered@bibtrue
2416 }{\relax}%
2417 \ifthenelse{\equal{\jb@val}{ibidem}}{%
2418 \jb@kv@recognizedtrue
2419 \jb@bibformat@ibidemtrue
2420 }{\relax}%
2421 \ifthenelse{\equal{\jb@val}{ibidemalt}}{%
2422 \jb@kv@recognizedtrue
2423 \jb@bibformat@ibidemtrue
2424 \jbaltformattrue
2425 \jb@compressed@bibtrue % make a compressed list
2426 }{\relax}%
2427 \ifthenelse{\equal{\jb@val}{nohang}}{%
2428 \jb@kv@recognizedtrue
2429 \jb@bib@hangfalse
2430 }{\relax}%
2431 \ifjb@kv@recognized\else\jb@kv@warning{\jb@val}{bibformat}\fi
2432 }%
2433 }%
2434 \define@key{jb}{citefull}[all]{%
2435 \@for\jb@val:=#1\do{%
2436 \jb@kv@recognizedfalse
2437 \ifthenelse{\equal{\jb@val}{first}}{%
2438 \jb@kv@recognizedtrue
2439 \jb@change@fonts@for@fullcitetrue
2440 \jb@firstcite@fulltrue
2441 \jb@allow@nobibtrue
2442 \global\jb@coauthor@lastfalse
2443 % make sure see is off for `in'
2444 \ifjb@see\else\renewcommand*{\jbhowsepcoauthorfirst}{~in: }\fi
2445 \jb@all@fullfalse
2446 }{%
2447 \ifthenelse{\equal{\jb@val}{all}}{%
2448 \jb@kv@recognizedtrue
2449 \jb@all@fulltrue
2450 \jb@allow@nobibtrue
2451 \global\jb@howcitedfalse
2452 \global\jb@coauthor@lastfalse
2453 % make sure see is off for `in'
2454 \ifjb@see\else\renewcommand*{\jbhowsepcoauthorfirst}{~in: }\fi
2455 \jb@firstcite@fullfalse
2456 }{\relax}%
2457 }%
2458 \ifthenelse{\equal{\jb@val}{chapter}}{%
2459 \jb@kv@recognizedtrue
2460 \@ifundefined{chapter}{%
2461 \ClassError{\jb@pkg@name}{%
2462 Sorry, `citefull=chapter' makes no sense for\MessageBreak
2463 classes without \string\chapter%
2464 }{Try `citefull=section' for an article class}}{}%
2465 \setkeys{jb}{citefull=first}%
2466 \@addtoreset{citefull}{chapter}%
2467 \def\jb@resetfor{chapter}%
2468 \def\jb@reset@look@label@for{\thechapter}% for lookat
2469 }{%
2470 \ifthenelse{\equal{\jb@val}{section}}{%
2471 \jb@kv@recognizedtrue
2472 \@ifundefined{chapter}{}{%
2473 \jb@package@warningNoLine{\jb@pkg@name}{%
2474 `citefull=section' was designed for use with\MessageBreak
2475 an article class, note that it's not well\MessageBreak
2476 tested for use with book or report classes}}%
2477 \setkeys{jb}{citefull=first}%
2478 \@addtoreset{citefull}{section}%
2479 \def\jb@resetfor{section}%
2480 \def\jb@reset@look@label@for{\thesection}% for lookat, to check
2481 }{%
2482 \ifthenelse{\equal{\jb@val}{false}}{%
2483 \jb@kv@recognizedtrue
2484 \global\jb@all@fullfalse
2485 \global\jb@allow@nobibfalse
2486 \global\jb@firstcite@fullfalse
2487 }{\relax}%
2488 }%
2489 }%
2490 \ifjb@kv@recognized\else\jb@kv@warning{\jb@val}{citefull}\fi
2491 }%
2492 }%
2493 \define@key{jb}{see}[true]{%
2494 \jb@seetrue\jb@coauthor@lastfalse
2495 \renewcommand*{\jbhowsepcoauthorfirst}{}%
2496 \renewcommand*{\jbcoauthorfont}{\normalfont}%
2497 \let\jb@formatted@co@author\jb@formatted@co@author@see
2498 \let\jb@formatted@co@author@in\jb@formatted@co@author@see
2499 }%
2500 \define@key{jb}{ibidem}[strict]{%
2501 \@for\jb@val:=#1\do{%
2502 \jb@kv@recognizedfalse
2503 \ifthenelse{\equal{\jb@val}{false}}{%
2504 \jb@kv@recognizedtrue
2505 \AtBeginDocument{%
2506 \global\jb@ibidemfalse
2507 \global\jb@ibidem@pagewisefalse
2508 \global\jb@ibidem@double@pagewisefalse
2509 \global\jb@ibidem@with@namefalse
2510 \global\jb@ibidem@with@name@and@titlefalse
2511 }%
2512 }{%
2513 \ifthenelse{\equal{\jb@val}{strict}}{%
2514 \jb@kv@recognizedtrue
2515 \jb@ibidemtrue
2516 \jb@ibidem@pagewisetrue
2517 \jb@ibidem@double@pagewisefalse
2518 }{%
2519 \ifthenelse{\equal{\jb@val}{strictdoublepage}}{%
2520 \jb@kv@recognizedtrue
2521 \jb@ibidemtrue
2522 \jb@ibidem@pagewisetrue
2523 \if@twoside\jb@ibidem@double@pagewisetrue
2524 \else\jb@ibidem@double@pagewisefalse\fi
2525 }{%
2526 \ifthenelse{\equal{\jb@val}{nostrict}}{%
2527 \jb@kv@recognizedtrue
2528 \jb@ibidemtrue
2529 \jb@ibidem@pagewisefalse
2530 \jb@ibidem@double@pagewisefalse
2531 }{%
2532 \ifthenelse{\equal{\jb@val}{name}}{%
2533 \jb@kv@recognizedtrue
2534 %% first make citefull=first
2535 \setkeys{jb}{citefull=first}%
2536 \jb@ibidemfalse
2537 \global\jb@ibidem@with@nametrue
2538 }{%
2539 \ifthenelse{\equal{\jb@val}{name&title}}{%
2540 \jb@kv@recognizedtrue
2541 %% first make citefull=first
2542 \setkeys{jb}{citefull=first}%
2543 \jb@ibidemfalse
2544 \jb@ibidem@with@nametrue
2545 \jb@ibidem@with@name@and@titletrue
2546 }{%
2547 \ifthenelse{\equal{\jb@val}{name&title&auto}}{%
2548 \jb@kv@recognizedtrue
2549 %% first make citefull=first
2550 \setkeys{jb}{citefull=first}%
2551 \jb@ibidemfalse
2552 \jb@ibidem@with@nametrue
2553 \jb@ibidem@with@name@and@title@autotrue
2554 }{\relax}}}}}}}%
2555 \ifjb@kv@recognized\else\jb@kv@warning{\jb@val}{ibidem}\fi
2556 }%
2557 }%
2558 \define@key{jb}{idem}[strict]{%
2559 \@for\jb@val:=#1\do{%
2560 \jb@kv@recognizedfalse
2561 \ifthenelse{\equal{\jb@val}{false}}{%
2562 \jb@kv@recognizedtrue
2563 \AtBeginDocument{%
2564 \global\jb@idemfalse
2565 \global\jb@idem@pagewisefalse
2566 \global\jb@idem@double@pagewisefalse
2567 }%
2568 }{%
2569 \ifthenelse{\equal{\jb@val}{strict}}{%
2570 \jb@kv@recognizedtrue
2571 \jb@idemtrue
2572 \jb@idem@pagewisetrue
2573 \jb@idem@double@pagewisefalse
2574 }{%
2575 \ifthenelse{\equal{\jb@val}{strictdoublepage}}{%
2576 \jb@kv@recognizedtrue
2577 \jb@idemtrue
2578 \jb@idem@pagewisetrue
2579 \if@twoside\jb@idem@double@pagewisetrue
2580 \else\jb@idem@double@pagewisefalse\fi
2581 }{%
2582 \ifthenelse{\equal{\jb@val}{nostrict}}{%
2583 \jb@kv@recognizedtrue
2584 \jb@idemtrue
2585 \jb@idem@pagewisefalse
2586 \jb@idem@double@pagewisefalse
2587 }{\relax}}}}%
2588 \ifjb@kv@recognized\else\jb@kv@warning{\jb@val}{idem}\fi
2589 }%
2590 }%
2591 \define@key{jb}{footnotes}{%
2592 \@for\jb@val:=#1\do{%
2593 \jb@kv@recognizedfalse
2594 \ifthenelse{\equal{\jb@val}{marginal}}{%
2595 \jb@kv@recognizedtrue
2596 \newlength\jbfootnoteindent
2597 \setlength\jbfootnoteindent{\parindent}%
2598 \newlength\jbfootnotenumwidth
2599 \settowidth\jbfootnotenumwidth{99}%
2600 \newcommand*{\jbfootnotenumalign}{r}%
2601 \newcommand*{\jbfootnoteformat}{\textsuperscript}%
2602 \renewcommand\@makefntext[1]{\@setpar{\@@par
2603 \@tempdima\hsize\advance\@tempdima-\jbfootnoteindent
2604 \parshape\@ne\jbfootnoteindent\@tempdima}%
2605 \parindent 1em\par\noindent
2606 \makebox[0pt][r]{\makebox[\jbfootnoteindent][r]{%
2607 \makebox[\jbfootnotenumwidth][\jbfootnotenumalign]{%
2608 \jbfootnoteformat{\@thefnmark}}\hspace*{\fill}}}##1}%
2609 \AtBeginDocument{%
2610 \ifjb@endnotes
2611 \def\enoteformat{\@setpar{\@@par\@tempdima\hsize
2612 \advance\@tempdima-\jbfootnoteindent
2613 \parshape\@ne\jbfootnoteindent\@tempdima}%
2614 \parindent 1em\par\noindent
2615 \makebox[0pt][r]{\makebox[\jbfootnoteindent][r]{%
2616 \makebox[\jbfootnotenumwidth][\jbfootnotenumalign]{%
2617 \jbfootnoteformat{\@theenmark}}\hspace*{\fill}}}}%
2618 \fi
2619 }%
2620 }{\relax}%
2621 \ifjb@kv@recognized\else\jb@kv@warning{\jb@val}{footnotes}\fi
2622 }%
2623 }%
2624 \define@key{jb}{natoptargorder}[true]{\jb@natbib@opt@arg@ordertrue}%
2625 \define@key{jb}{round}[true]{%
2626 \renewcommand*{\jb@open}{(}%
2627 \renewcommand*{\jb@close}{)}%
2628 }%
2629 \define@key{jb}{square}[true]{%
2630 \renewcommand*{\jb@open}{[}%
2631 \renewcommand*{\jb@close}{]}%
2632 }%
2633 \define@key{jb}{lookat}[true]{\jb@lookattrue}%
2634 \define@key{jb}{crossref}[normal]{%
2635 \@for\jb@val:=#1\do{%
2636 \jb@kv@recognizedfalse
2637 \ifthenelse{\equal{\jb@val}{dynamic}}{%
2638 \jb@kv@recognizedtrue
2639 \global\jb@dynamic@crossrefstrue
2640 \setkeys{jb}{crossref=long}%
2641 }{%
2642 \ifthenelse{\equal{\jb@val}{short}}{%
2643 \jb@kv@recognizedtrue
2644 \AtBeginDocument{%
2645 \ifjb@dynamic@crossrefs
2646 \renewcommand*{\bibcrossrefcite}{\citetitle}%
2647 \renewcommand*{\bibcrossrefciteagain}{\cite}%
2648 \renewcommand*{\bibincollcrossrefcite}{\citetitle}%
2649 \renewcommand*{\bibincollcrossrefciteagain}{\cite}%
2650 \let\jbedbyincollcrossrefcite\jbedbyincollcrossrefshortnoapy
2651 \let\jbedbyincollcrossrefciteagain\jbedbyincollcrossrefshort
2652 \else
2653 \renewcommand*{\bibcrossrefcite}{\cite}%
2654 \renewcommand*{\bibcrossrefciteagain}{\cite}%
2655 \renewcommand*{\bibincollcrossrefcite}{\cite}%
2656 \renewcommand*{\bibincollcrossrefciteagain}{\cite}%
2657 \let\jbedbyincollcrossrefcite\jbedbyincollcrossrefshort
2658 \let\jbedbyincollcrossrefciteagain\jbedbyincollcrossrefshort
2659 \fi
2660 }%
2661 }{%
2662 \ifthenelse{\equal{\jb@val}{normal}}{%
2663 \jb@kv@recognizedtrue
2664 \AtBeginDocument{%
2665 \ifjb@dynamic@crossrefs
2666 \renewcommand*{\bibcrossrefcite}{\citetitle}%
2667 \renewcommand*{\bibincollcrossrefcite}{\citetitle}%
2668 \renewcommand*{\bibcrossrefciteagain}{\cite}%
2669 \renewcommand*{\bibincollcrossrefciteagain}{\cite}%
2670 \let\jbedbyincollcrossrefcite\jbedbyincollcrossrefshortwithapy
2671 \let\jbedbyincollcrossrefciteagain\jbedbyincollcrossrefshortnoapy
2672 \else
2673 \renewcommand*{\bibcrossrefcite}{\citetitle}%
2674 \renewcommand*{\bibincollcrossrefcite}{\citetitle}%
2675 \renewcommand*{\bibcrossrefciteagain}{\citetitle}%
2676 \renewcommand*{\bibincollcrossrefciteagain}{\citetitle}%
2677 \let\jbedbyincollcrossrefcite\jbedbyincollcrossrefshortwithapy
2678 \let\jbedbyincollcrossrefciteagain\jbedbyincollcrossrefshortwithapy
2679 \fi
2680 }%
2681 }{%
2682 \ifthenelse{\equal{\jb@val}{long}}{%
2683 \jb@kv@recognizedtrue
2684 \AtBeginDocument{%
2685 \ifjb@dynamic@crossrefs
2686 \renewcommand*{\bibcrossrefcite}{\fullcite}%
2687 \renewcommand*{\bibincollcrossrefcite}{\fullcite}%
2688 \renewcommand*{\bibcrossrefciteagain}{\citetitle}%
2689 \renewcommand*{\bibincollcrossrefciteagain}{\citetitle}%
2690 \let\jbedbyincollcrossrefcite\jbedbyincollcrossreflong
2691 \let\jbedbyincollcrossrefciteagain\jbedbyincollcrossrefshortwithapy
2692 \else
2693 \renewcommand*{\bibcrossrefcite}{\fullcite}%
2694 \renewcommand*{\bibincollcrossrefcite}{\fullcite}%
2695 \renewcommand*{\bibcrossrefciteagain}{\fullcite}%
2696 \renewcommand*{\bibincollcrossrefciteagain}{\fullcite}%
2697 \let\jbedbyincollcrossrefcite\jbedbyincollcrossreflong
2698 \let\jbedbyincollcrossrefciteagain\jbedbyincollcrossreflong
2699 \fi
2700 }%
2701 }{\relax}}}}%
2702 \ifjb@kv@recognized\else\jb@kv@warning{\jb@val}{crossref}\fi
2703 }%
2704 }%
2705 \define@key{jb}{pages}{%
2706 \@for\jb@val:=#1\do{%
2707 \jb@kv@recognizedfalse
2708 \ifthenelse{\equal{\jb@val}{format}}{%
2709 \jb@kv@recognizedtrue
2710 \jb@formatted@pagestrue
2711 }{\relax}%
2712 \ifthenelse{\equal{\jb@val}{always}}{%
2713 \jb@kv@recognizedtrue
2714 \jb@always@pagerangestrue
2715 }{\relax}%
2716 \ifthenelse{\equal{\jb@val}{test}}{%
2717 \jb@kv@recognizedtrue
2718 \jb@tested@pagerangestrue
2719 }{\relax}%
2720 \ifjb@kv@recognized\else\jb@kv@warning{\jb@val}{pages}\fi
2721 }%
2722 }%
2723 \define@key{jb}{oxford}[true]{%
2724 \jb@kv@recognizedtrue
2725 \global\jbhumtrue
2726 \global\jboxfordtrue\global\jbchicagofalse
2727 \setkeys{jb}{%
2728 authorformat={citationreversed},see,%
2729 titleformat=commasep,%
2730 }%
2731 \jbdotafterbibentry
2732 \AtEndOfPackage{%
2733 \ifjboxford
2734 \ifjb@biblikecite\else
2735 \jb@info{*** jurabib set up for oxford style ***}%
2736 %%%%%% bibliographic font commands %%%%%%%%%
2737 \renewcommand*{\bibfnfont}{}% first name font
2738 \renewcommand*{\biblnfont}{}% last name font
2739 \renewcommand*{\bibefnfont}{}% editor first name font
2740 \renewcommand*{\bibelnfont}{}% editor last name font
2741 \renewcommand*{\bibtfont}{\textit}% title font
2742 \renewcommand*{\bibbtfont}{\textit}% booktitle font
2743 \renewcommand*{\bibjtfont}{\textit}% journal title font
2744 \renewcommand*{\bibapifont}[1]{`##1'}% bib article/incollection title font
2745 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2746 \renewcommand*{\jbapifont}[1]{`##1'}% text article/incollection title font
2747 \renewcommand*{\jbtitlefont}{}% text title font
2748 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2749 \renewcommand*{\bibansep}{,}% author name sep
2750 \renewcommand*{\bibaesep}{, }% after editor sep
2751 \renewcommand*{\bibatsep}{,}% after title sep
2752 \DeclareRobustCommand{\bibapyldelim}{(}% always parentheses for oxford!
2753 \DeclareRobustCommand{\bibapyrdelim}{)}% always parentheses for oxford!
2754 \DeclareRobustCommand{\dateldelim}{(}% enclose the date in parentheses
2755 \DeclareRobustCommand{\daterdelim}{)}% enclose the date in parentheses
2756 %%%%%% author separation bibliography %%%%%%
2757 \renewcommand*{\bibbtasep}{ \ }% between two authors sep
2758 \renewcommand*{\bibbfsasep}{, }% between first second author sep
2759 \renewcommand*{\bibbstasep}{ \ }% between second third author sep
2760 %%%%%% editor separation bibliography %%%%%%
2761 \renewcommand*{\bibbtesep}{ \ }% between two editors sep
2762 \renewcommand*{\bibbfsesep}{, }% between first second editor sep
2763 \renewcommand*{\bibbstesep}{ \ }% between second third editor sep
2764 %%%%%% author separation citation %%%%%%%%%%
2765 % already done by authorformat=and
2766 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2767 \renewcommand*{\bibbtsep}{\inname: }% booktitle sep
2768 \renewcommand*{\jb@cr@open}{}% crossref left delimiter
2769 \renewcommand*{\jb@cr@close}{}% crossref right delimiter
2770 \renewcommand*{\jb@art@cr@open}{}% article crossref left delimiter
2771 \renewcommand*{\jb@art@cr@close}{}% article crossref right delimiter
2772 \renewcommand*{\jb@incoll@cr@open}{}% incoll crossref left delimiter
2773 \renewcommand*{\jb@incoll@cr@close}{}% incoll crossref right delimiter
2774 \renewcommand*{\bibaldelim}{(}% article year left delimiter
2775 \renewcommand*{\bibardelim}{)}% article year right delimiter
2776 \fi\fi
2777 }%
2778 \addto\jbonlyforbib{\renewcommand*{\bibansep}{, }}% make sure that a space appear
2779 \DeclareRobustCommand{\artnumberformat}[1]{\unskip:##1}%
2780 \ifjb@kv@recognized\else\jb@kv@warning{#1}{oxford}\fi
2781 }%
2782 \define@key{jb}{chicago}[true]{%
2783 \jb@kv@recognizedtrue
2784 \global\jbchicagotrue\global\jboxfordfalse
2785 \setkeys{jb}{%
2786 authorformat={citationreversed,firstnotreversed},edby,see,%
2787 bibformat=ibidem,%
2788 citefull=first,%
2789 titleformat=commasep,%
2790 commabeforerest,%
2791 }%
2792 \jbdotafterbibentry% (added in 0.5f)
2793 \AtEndOfPackage{%
2794 \ifjbchicago
2795 \ifjb@biblikecite\else
2796 \jb@info{*** jurabib set up for chicago style ***}%
2797 %%%%%% bibliographic font commands %%%%%%%%%
2798 \renewcommand*{\bibfnfont}{}% first name font
2799 \renewcommand*{\biblnfont}{}% last name font
2800 \renewcommand*{\bibefnfont}{}% editor first name font
2801 \renewcommand*{\bibelnfont}{}% editor last name font
2802 \renewcommand*{\bibtfont}{\textit}% title font
2803 \renewcommand*{\bibbtfont}{\textit}% booktitle font
2804 \renewcommand*{\bibjtfont}{\textit}% journal title font
2805 \renewcommand*{\bibapifont}[1]{``##1''}% bib article/incollection title font (changed in 0.5f)
2806 \renewcommand*{\bibsnfont}{}% series name font
2807 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2808 \renewcommand*{\jbapifont}[1]{``##1''}% text article/incollection title font (changed in 0.5f)
2809 \renewcommand*{\jbtitlefont}{}% text title font
2810 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2811 \renewcommand*{\bibansep}{. }% author name sep (changed in 0.5f)
2812 \renewcommand*{\bibaesep}{, }% after editor sep
2813 \renewcommand*{\bibatsep}{,}% after title sep
2814 \renewcommand*{\bibbdsep}{,}% before date sep (changed in 0.5f)
2815 %%%%%% author separation bibliography %%%%%%
2816 \renewcommand*{\bibbtasep}{ \bibIMfont{\bibandname} }% between two authors sep (changed in 0.5f)
2817 \renewcommand*{\bibbfsasep}{\unskip\bibIMfont{\commaname} }% between first and second author sep (changed in 0.5f)
2818 \renewcommand*{\bibbstasep}{ \bibIMfont{\bibandname} }% between second and third author sep (changed in 0.5f)
2819 %%%%%% editor separation bibliography %%%%%%
2820 \renewcommand*{\bibbtesep}{ \bibEIMfont{\bibandname} }% between two editors sep (changed in 0.5f)
2821 \renewcommand*{\bibbfsesep}{\unskip\bibEIMfont{\commaname} }% between first and second editor sep (changed in 0.5f)
2822 \renewcommand*{\bibbstesep}{ \bibEIMfont{\bibandname} }% between second and third editor sep (changed in 0.5f)
2823 %%%%%% author separation citation %%%%%%%%%%
2824 \renewcommand*{\jbbtasep}{ \bibIMfont{\textandname} }% between two authors sep (changed in 0.5f)
2825 \renewcommand*{\jbbfsasep}{\unskip\bibIMfont{\commaname} }% between first and second author sep (changed in 0.5f)
2826 \renewcommand*{\jbbstasep}{ \bibIMfont{\textandname} }% between second and third author sep (changed in 0.5f)
2827 %%%%%% editor separation citation %%%%%%
2828 \renewcommand*{\jbbtesep}{ \bibEIMfont{\texteandname} }% between two editors sep (changed in 0.5f)
2829 \renewcommand*{\jbbfsesep}{\unskip\bibEIMfont{\commaename} }% between first and second editor sep (changed in 0.5f)
2830 \renewcommand*{\jbbstesep}{ \bibEIMfont{\texteandname} }% between second and third editor sep (changed in 0.5f)
2831 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
2832 \renewcommand*{\bibbtsep}{\inname{} }% booktitle sep (changed in 0.5f)
2833 \renewcommand*{\jb@cr@open}{}% crossref left delimiter
2834 \renewcommand*{\jb@cr@close}{}% crossref right delimiter
2835 \renewcommand*{\jb@art@cr@close}{}% article crossref left delimiter
2836 \renewcommand*{\jb@art@cr@close}{}% article crossref right delimiter
2837 \renewcommand*{\jb@incoll@cr@open}{}% incoll crossref left delimiter
2838 \renewcommand*{\jb@incoll@cr@close}{}% incoll crossref right delimiter
2839 \renewcommand*{\bibaldelim}{(}% article year left delimiter
2840 \renewcommand*{\bibardelim}{)}% article year right delimiter
2841 \renewcommand*{\artnumberformat}[1]{,\space{}no.~##1}% article number format (added in 0.5f)
2842 \renewcommand*{\pernumberformat}[1]{,\space{}no.~##1}% periodical format (added in 0.5f)
2843 \renewcommand*{\edbysep}{, }% (added in 0.5f)
2844 \def\bibauthormultiple{%
2845 \stepcounter{multiple@author}% to suppress inside bibliographic entry
2846 \leavevmode\vrule height 2pt depth -1.6pt width 3em\hspace{1pt}.\space}% (added in 0.5f)
2847 \DeclareRobustCommand{\jbnote}[2]{%
2848 \ifjbweareinbib
2849 \ifthenelse{\equal{##1}{1}}{\unskip\unskip\bibatsep{} ##2}{##2}%
2850 \fi
2851 }% (added in 0.5f)
2852 \ifjbweareinbib\else
2853 \renewcommand*{\bibapyldelim}{\unskip\space(}%
2854 \renewcommand*{\bibapyrdelim}{)}%
2855 \fi
2856 \addto\jbonlyforbib{%
2857 \DeclareRobustCommand\incollinname{\inname{} }% (added in 0.5f)
2858 \DeclareRobustCommand{\bibbtsep}{\inname{} }% (added in 0.5f)
2859 \DeclareRobustCommand{\bibapyldelim}{\unskip\unskip\space}%
2860 \DeclareRobustCommand{\bibapyrdelim}{}%
2861 \DeclareRobustCommand{\bibatsep}{.}% (added in 0.5f)
2862 \DeclareRobustCommand{\dateldelim}{\unskip.}%
2863 \DeclareRobustCommand{\daterdelim}{}%
2864 }%
2865 \AddTo\bibsenglish{%
2866 \def\incollinname{in}% (added in 0.5f)
2867 \def\inname{in}% (added in 0.5f)
2868 \def\editorname{\unskip,\space{}ed.}% (added in 0.5f)
2869 \def\editorsname{\unskip,\space{}eds.}% (added in 0.5f)
2870 \def\edbyname{ed.}% (added in 0.5f)
2871 \def\Edbyname{Ed.}% (added in 0.5f)
2872 \def\volumename{vol.}% (added in 0.5f)
2873 \def\Volumename{Vol.}% (added in 0.5f)
2874 \def\firstedname{1st}% (added in 0.5f)
2875 \def\secondedname{2nd}% (added in 0.5f)
2876 \def\thirdedname{3rd}% (added in 0.5f)
2877 \def\fourthedname{4th}% (added in 0.5f)
2878 \def\fifthedname{5th}% (added in 0.5f)
2879 \def\thedname{th}% (added in 0.5f)
2880 \def\editionname{ed}% dot removed, suggested by Robert Schlicht
2881 }%
2882 \fi\fi
2883 }%
2884 \addto\jbonlyforbib{\renewcommand*{\bibansep}{. }}% make sure that a space appear
2885 \ifjb@kv@recognized\else\jb@kv@warning{#1}{chicago}\fi
2886 }%
2887 \define@key{jb}{human}[true]{\global\jbhumtrue}
2888 \define@key{jb}{edby}[true]{\global\jb@edbytrue}
2889 \define@key{jb}{endnote}[true]{%
2890 \DeclareRobustCommand{\jbnote}[2]{\unskip}%
2891 \DeclareRobustCommand{\jbendnote}[1]{\def\jb@endnote{\unskip\unskip\ifjb@dot\else,\fi\space##1}}%
2892 }
2893 \define@key{jb}{biblikecite}[true]{%
2894 \global\jb@biblikecitetrue
2895 \AtBeginDocument{% <== to make redefintions work
2896 \global\let\biblnfont\jbauthorfont
2897 \global\let\bibfnfont\jbauthorfnfont
2898 \global\let\bibelnfont\jbauthorfont
2899 \global\let\bibefnfont\jbauthorfnfont
2900 \global\let\bibbtfont\jbtitlefont
2901 \global\let\bibtfont\jbtitlefont
2902 \global\let\bibapifont\jbapifont
2903 }%
2904 }
2905 \define@key{jb}{opcit}[true]{%
2906 \@for\jb@val:=#1\do{%
2907 \jb@kv@recognizedfalse
2908 \ifthenelse{\equal{\jb@val}{true}}{%
2909 \jb@kv@recognizedtrue
2910 \jb@opcittrue
2911 }{}%
2912 \ifthenelse{\equal{\jb@val}{chapter}}{%
2913 \jb@kv@recognizedtrue
2914 \global\jb@opcittrue
2915 \@ifundefined{chapter}{%
2916 \ClassError{\jb@pkg@name}{%
2917 Sorry, `opcit=chapter' makes no sense for\MessageBreak
2918 classes without \string\chapter%
2919 }{Try `opcit=section' for an article class}}{}%
2920 \@addtoreset{opcit}{chapter}%
2921 \def\jb@reset@opcit@for{chapter}%
2922 \def\jb@reset@opcit@label@for{\thechapter}% for opcit
2923 }{%
2924 \ifthenelse{\equal{\jb@val}{section}}{%
2925 \jb@kv@recognizedtrue
2926 \global\jb@opcittrue
2927 \@ifundefined{chapter}{}{%
2928 \jb@package@warningNoLine{\jb@pkg@name}{%
2929 `opcit=section' was designed for use with\MessageBreak
2930 an article class, note that it's not well\MessageBreak
2931 tested for use with book or report classes}}%
2932 \@addtoreset{opcit}{section}%
2933 \def\jb@reset@opcit@for{section}%
2934 \def\jb@reset@opcit@label@for{\thesection}% for opcit
2935 }{}%
2936 }%
2937 \ifjb@kv@recognized\else\jb@kv@warning{\jb@val}{opcit}\fi
2938 }%
2939 }%
2940 \define@key{jb}{annote}[true]{%
2941 \renewcommand{\bibAnnote}[1]{%
2942 \ifjb@tabular
2943 \par%
2944 \begin{minipage}[t]{\bibleftcolumn}%
2945 \renewcommand*{\bibansep}{}%
2946 \bibleftcolumnadjust\mbox{}%
2947 \end{minipage}%
2948 \ifjb@numbered@bib\hspace{15mm}\else\hspace{10mm}\fi
2949 \begin{minipage}[t]{\bibrightcolumn}%
2950 \bibrightcolumnadjust%
2951 \jbannoteformat{##1}%
2952 \end{minipage}%
2953 \else
2954 \par\jbannoteformat{##1}%
2955 \fi
2956 }%
2957 \renewcommand{\bibAnnoteFile}[1]{%
2958 \ifjb@tabular
2959 \par%
2960 \begin{minipage}[t]{\bibleftcolumn}%
2961 \renewcommand*{\bibansep}{}%
2962 \bibleftcolumnadjust\mbox{}%
2963 \end{minipage}%
2964 \ifjb@numbered@bib\hspace{15mm}\else\hspace{10mm}\fi
2965 \begin{minipage}[t]{\bibrightcolumn}%
2966 \bibrightcolumnadjust%
2967 \begingroup
2968 \let\input@path\jb@ann@input@path
2969 \IfFileExists{##1}{\ProvidesFile{##1.tex}%
2970 [Bibliography annote file]\jbannoteformat{\input{##1}}}{}%
2971 \endgroup
2972 \end{minipage}%
2973 \else
2974 \begingroup
2975 \let\input@path\jb@ann@input@path
2976 \IfFileExists{##1}{\ProvidesFile{##1.tex}%
2977 [Bibliography annote file]\par\jbannoteformat{\input{##1}}}{}%
2978 \endgroup
2979 \fi
2980 }%
2981 }
2982 \define@key{jb}{citetoend}[true]{\jb@citetoendtrue}
2983 \define@key{jb}{hypercite}{%
2984 \ifthenelse{\equal{#1}{true}}{\jb@allow@hyper@citetrue}{%
2985 \ifthenelse{\equal{#1}{false}}{\jb@allow@hyper@citefalse}{\relax}}%
2986 }
2987 \newcommand*{\jb@enotes@warning}{%
2988 \PackageWarning{\jb@pkg@name}{%
2989 I assume you know what you are doing!\MessageBreak
2990 You are using `\string\cite' or something similar inside\MessageBreak
2991 a footnote while using endnotes.sty. This will\MessageBreak
2992 produce ambiguous references and not the\MessageBreak
2993 expected results. If you are unsure what\MessageBreak
2994 to do, use \string\cite\space or \string\footcite\space\MessageBreak
2995 instead}%
2996 }
2997 \AtBeginDocument{%
2998 \setkeys{jb}{crossref=normal}% set the default crossref option
2999 \ifjbhum
3000 \setkeys{jb}{authorformat=and}%
3001 \DeclareRobustCommand{\jbbtfont}{\textit}%
3002 \jb@typeout{^^JPackage jurabib Info: *** jurabib set up for humanities stuff ***^^J}%
3003 \fi
3004 \renewcommand*{\SS}{\S\kern-.8pt\S\relax}%
3005 \@ifclassloaded{jura}{\global\jb@juratrue\global\jb@alphanumtrue}{\relax}%
3006 \@ifpackageloaded{alphanum}{\global\jb@alphanumtrue}{\relax}%
3007 \@ifpackageloaded{ragged2e}{\global\jb@raggedtrue}{\relax}%
3008 \@ifpackageloaded{url}{\global\jb@urltrue}{\relax}%
3009 \@ifpackageloaded{index}{\let\jb@do@index\jb@do@index@alt}{\relax}%
3010 \@ifpackageloaded{babel}{\global\jb@babeltrue}{\relax}%
3011 \@ifpackageloaded{varioref}{\ifjb@ignore@varioref\global\jb@variofalse\else\global\jb@variotrue\fi}{\relax}%
3012 \@ifpackageloaded{hyperref}{%
3013 \@ifpackageloaded{tex4ht}{}{% Hook for tex4ht added
3014 \global\jb@hypertrue
3015 \long\def\@footnotetext#1{%
3016 \H@@footnotetext{%
3017 \jb@fntrue% we are in footnote, borrowed from camel.sty
3018 \def\baselinestretch{1}% no spacing in footnotes (jura.cls!)
3019 \ifHy@nesting
3020 \hyper@@anchor{\@currentHref}{#1}%
3021 \else
3022 \Hy@raisedlink{\hyper@@anchor{\@currentHref}{\relax}}#1%
3023 \fi
3024 \setcounter{jb@cites@in@footnote}{0}%
3025 }%
3026 }%
3027 }{\relax}%
3028 }{\relax}%
3029 \@ifpackageloaded{backref}{\global\jb@backreftrue}{\relax}%
3030 \@ifpackageloaded{bibtopic}{\global\jb@all@titlestrue%
3031 \ifjb@author@year\else
3032 \jb@package@warningNoLine{\jb@pkg@name}{%
3033 All titles are cited, you're using `bibtopic'!\MessageBreak
3034 Make sure that the `shorttitle' fields are not\MessageBreak
3035 empty, otherwise I'll using the `title' fields for\MessageBreak
3036 replacement. See the package documentation for\MessageBreak
3037 further explanation}%
3038 \fi
3039 }{\relax}%
3040 \ifjb@babel
3041 \jb@typeout{^^JPackage jurabib Info: *** jurabib set up for babel ***^^J}%
3042 \ifthenelse{\equal{\bbl@main@language}{german}}{\@bibsgerman\bibsgerman}{%
3043 \ifthenelse{\equal{\bbl@main@language}{ngerman}}{\@bibsgerman\bibsgerman}{%
3044 \ifthenelse{\equal{\bbl@main@language}{french}}{\@bibsfrench\bibsfrench}{%
3045 \ifthenelse{\equal{\bbl@main@language}{english}}{\@bibsenglish\bibsenglish}{%
3046 \ifthenelse{\equal{\bbl@main@language}{dutch}}{\@bibsdutch\bibsdutch}{%
3047 \ifthenelse{\equal{\bbl@main@language}{spanish}}{\@bibsspanish\bibsspanish}{%
3048 \ifthenelse{\equal{\bbl@main@language}{italian}}{\@bibsitalian\bibsitalian}{%
3049 \ifthenelse{\equal{\bbl@main@language}{norsk}}{\@bibsnorsk\bibsnorsk}{}}}}}}}}%
3050 \else
3051 \@ifpackageloaded{german}{\@bibsgerman\bibsgerman\renewcommand{\bbl@main@language}{german}}{%
3052 \@ifpackageloaded{ngerman}{\@bibsgerman\bibsgerman\renewcommand{\bbl@main@language}{german}}{
3053 \@ifpackageloaded{french}{\@bibsfrench\bibsfrench\renewcommand{\bbl@main@language}{french}}{%
3054 \@ifpackageloaded{frenchle}{\@bibsfrench\bibsfrench\renewcommand{\bbl@main@language}{french}}{%
3055 \@bibsenglish\bibsenglish}}}}%
3056 \fi
3057 \ifjb@hyper
3058 \let\J@SetCurrent\relax
3059 \def\toclevel@lvla{0}\def\toclevel@lvlb{1}
3060 \def\toclevel@lvlc{2}\def\toclevel@lvld{3}
3061 \def\toclevel@lvle{4}\def\toclevel@lvlf{5}
3062 \def\toclevel@lvlg{6}\def\toclevel@lvlh{7}
3063 \def\toclevel@lvli{8}\def\toclevel@lvlj{9}
3064 \def\toclevel@lvlj{10}\def\toclevel@lvll{11}
3065 \newcommand*{\theHlvla}{\J@Number}\newcommand*{\theHlvlb}{\J@Number}
3066 \newcommand*{\theHlvlc}{\J@Number}\newcommand*{\theHlvld}{\J@Number}
3067 \newcommand*{\theHlvle}{\J@Number}\newcommand*{\theHlvlf}{\J@Number}
3068 \newcommand*{\theHlvlg}{\J@Number}\newcommand*{\theHlvlh}{\J@Number}
3069 \newcommand*{\theHlvli}{\J@Number}\newcommand*{\theHlvlj}{\J@Number}
3070 \newcommand*{\theHlvlk}{\J@Number}\newcommand*{\theHlvll}{\J@Number}
3071 \renewcommand*{\J@LongToc}[2][]{%
3072 \@startsection{lvl\alph{tiefe}}{\number\value{tiefe}}{0pt}%
3073 {\ifnum\value{tiefe}=1 -4ex plus-1,5ex minus-0,ex\else%
3074 -2,7ex plus-0,8ex minus-0,2ex\fi}{\ifnum\value{tiefe}>7 %
3075 -1em plus-0,5em\relax\else 0,6ex plus0,3ex minus0,1ex\fi}%
3076 {\sectfont\csname lvl\alph{tiefe}style\endcsname}[#1]{#2}%
3077 }%
3078 \fi
3079 \ifjb@hyper
3080 \def\BR@@lbibitem[#1]#2#3\par{\BRorg@bibitem[#1]{#2}#3\par}%
3081 \fi
3082 \@ifundefined{chapter}{%
3083 \let\jb@orig@section\section % chapterbib.sty + numberedbib
3084 \renewcommand*{\section}{\setcounter{jbbibcnta}{0}\jb@orig@section}%
3085 }{%
3086 \let\jb@orig@chapter\chapter % chapterbib.sty + numberedbib
3087 \renewcommand*{\chapter}{\setcounter{jbbibcnta}{0}\jb@orig@chapter}%
3088 }%
3089 \ifjb@hyper\else
3090 \long\def\@footnotetext#1{\insert\footins{%
3091 \jb@fntrue% we are in footnote, borrowed from camel.sty
3092 \def\baselinestretch{1}% no spacing in footnotes (jura.cls!)
3093 \reset@font\footnotesize
3094 \interlinepenalty\interfootnotelinepenalty
3095 \splittopskip\footnotesep
3096 \splitmaxdepth \dp\strutbox \floatingpenalty \@MM
3097 \hsize\columnwidth \@parboxrestore
3098 \let\@tempa\protect
3099 \def\protect{\noexpand\protect\noexpand}%
3100 \edef\@currentlabel{\csname p@footnote\endcsname\@thefnmark}%
3101 \let\protect\@tempa
3102 \color@begingroup
3103 \normalcolor
3104 \@makefntext{%
3105 \rule\z@\footnotesep\ignorespaces#1%
3106 \@finalstrut\strutbox}
3107 \color@endgroup%
3108 \setcounter{jb@cites@in@footnote}{0}%
3109 }%
3110 }%
3111 \fi
3112 \@ifundefined{@xendnotenext}{\relax}{%
3113 \global\jb@endnotestrue
3114 \let\jb@orig@citex\@citex
3115 \let\orig@emulate@nat@cite\jb@emulate@nat@cite
3116 \def\@citex[#1][#2]#3{%
3117 \ifjbcross % no extra endnote for crossref's
3118 \jb@orig@citex[#1][#2]{#3}%
3119 \else
3120 \ifjbweareinbib % no extra endnote for howcited's
3121 \jb@orig@citex[#1][#2]{#3}%
3122 \else
3123 \ifjb@fn
3124 \jb@enotes@warning\jb@orig@citex[#1][#2]{#3}%
3125 \else
3126 \ifthenelse{\boolean{jb@foot}\or\boolean{jb@citetoend}}{%
3127 \expandafter\endnote\expandafter{\jb@enote@hook\jb@orig@citex[#1][#2]{#3}}%
3128 }{\jb@enote@hook\jb@orig@citex[#1][#2]{#3}}%
3129 \fi
3130 \fi
3131 \fi
3132 }%
3133 \def\jb@emulate@nat@cite[#1][#2]#3{%
3134 \ifjbcross % no extra endnote for crossref's
3135 \orig@emulate@nat@cite[#1][#2]{#3}%
3136 \else
3137 \ifjbweareinbib % no extra endnote for howcited's
3138 \orig@emulate@nat@cite[#1][#2]{#3}%
3139 \else
3140 \ifjb@fn
3141 \jb@enotes@warning\orig@emulate@nat@cite[#1][#2]{#3}%
3142 \else
3143 \ifthenelse{\boolean{jb@foot}\or\boolean{jb@citetoend}}{%
3144 \expandafter\endnote\expandafter{\jb@enote@hook\orig@emulate@nat@cite[#1][#2]{#3}}%
3145 }{\jb@enote@hook\orig@emulate@nat@cite[#1][#2]{#3}}%
3146 \fi
3147 \fi
3148 \fi
3149 }%
3150 }%
3151 \@ifpackageloaded{index}{\relax}{%
3152 \ifjb@index
3153 \@ifundefined{@indexfile}{%
3154 \jb@package@warningNoLine{\jb@pkg@name}{%
3155 The `makeidx' package is not loaded,\MessageBreak
3156 `authorformat=indexed' will not work}%
3157 }{}%
3158 \fi
3159 }%
3160 }%
3161 \AtEndOfPackage{%
3162 \ifjb@ragged
3163 \renewcommand*{\bibleftcolumnadjust}{\RaggedRight}%
3164 \renewcommand*{\bibrightcolumnadjust}{\RaggedRight}%
3165 \fi
3166 }%
3167 \def\jurabibsetup{\setkeys{jb}}
3168 \let\jb@origExecuteOptions\ExecuteOptions
3169 \let\ExecuteOptions\jurabibsetup
3170 \def\ProcessOptionsWithKV#1{%
3171 \let\@tempa\@empty
3172 \@for\CurrentOption:=\@classoptionslist\do{%
3173 \@ifundefined{KV@#1@\CurrentOption}%
3174 {}{\edef\@tempa{\@tempa,\CurrentOption,}}}%
3175 \edef\@tempa{%
3176 \noexpand\setkeys{#1}{\@tempa\@ptionlist{\@currname.\@currext}}}%
3177 \@tempa%
3178 \AtEndOfPackage{\let\@unprocessedoptions\relax}%
3179 }%
3180 \ProcessOptionsWithKV{jb}%
3181 \let\ExecuteOptions\jb@origExecuteOptions
3182 \@ifundefined{bib@heading}{%
3183 \@ifundefined{chapter}{%
3184 \newcommand*{\bib@heading}%
3185 {\section*{\refname\@mkboth{\refname}{\refname}}}%
3186 }{%
3187 \newcommand*{\bib@heading}%
3188 {\chapter*{\bibname\@mkboth{\bibname}{\bibname}}}%
3189 }%
3190 }{%
3191 \relax
3192 }%
3193 \newcommand*{\jbmakeinbiblist}{}%
3194 \newcommand*{\jbmakeinbib}{%
3195 \jbweareinbibtrue
3196 \jbonlyforbib%
3197 \let\jbPAGES\origPAGES
3198 \let\jbpages\origpages
3199 \let\jbPages\origPages
3200 \let\jbartPages\origartPages
3201 \jb@lookatfalse
3202 \let\jbatsep\@empty
3203 \jb@third@extra@spacefalse
3204 \jb@ibidemfalse
3205 \jb@ibidem@pagewisefalse
3206 \jb@ibidem@double@pagewisefalse
3207 \jb@ibidem@with@namefalse
3208 \jb@ibidem@with@short@namefalse
3209 \jb@ibidem@with@name@and@titlefalse
3210 \jb@no@lookat@for@bibtrue
3211 \ifjb@dynamic@crossrefs
3212 \renewcommand*{\bibcrossrefcite}{\citetitle}%
3213 \renewcommand*{\bibincollcrossrefcite}{\citetitle}%
3214 \renewcommand*{\bibcrossrefciteagain}{\citetitle}%
3215 \renewcommand*{\bibincollcrossrefciteagain}{\citetitle}%
3216 \fi
3217 \let\jb@last@ibidem@author\@empty
3218 \let\jb@ibidem@author\@empty
3219 }%
3220 \renewenvironment{thebibliography}[1]{%
3221 \bib@heading
3222 \jbmakeinbib%
3223 \addtolength{\jb@biblaw@entry@width}{\textwidth}%
3224 \list{\relax}{%
3225 \ifjb@compressed@bib
3226 \setlength{\parsep}{0.2ex plus 0.1ex minus 0.1ex}%
3227 \setlength{\itemsep}{0.2ex plus 0.1ex minus 0.1ex}%
3228 \fi
3229 \jbmakeinbiblist% NEW 0.5e make \itemsep configurable with \addto
3230 \ifjb@bib@hang%
3231 \setlength{\itemindent}{-\jbbibhang}%
3232 \setlength{\leftmargin}{\jbbibhang}%
3233 \else
3234 \setlength{\itemindent}{0pt}%
3235 \setlength{\leftmargin}{0pt}%
3236 \fi
3237 }%
3238 \sloppy\clubpenalty4000\widowpenalty4000%
3239 \sfcode`\.=\@m%
3240 }%
3241 {\def\@noitemerr
3242 {\@latex@warning{Empty `thebibliography' environment}%
3243 }\endlist\jbweareinbibfalse%
3244 }%
3245 \newcommand*{\jb@make@howcited}{% @* except of ...
3246 \renewcommand*{\bibhowcited}{%
3247 \jbweareinhowcitedtrue
3248 \space\howcitedprefix%
3249 \jb@specialcite{\jb@key}%
3250 \howcitedsuffix\jbweareinhowcitedfalse}}%
3251 \newcommand*{\jb@make@comment@howcited}{% ... @COMMENTED
3252 \renewcommand*{\bibcommenthowcited}{%
3253 \jbweareinhowcitedtrue
3254 \space\howcitedprefix%
3255 \jb@specialcite[][Bearbeiter]{\jb@key}%
3256 \howcitedsuffix\jbweareinhowcitedfalse}}%
3257 \newcommand*{\jb@make@artperiod@howcited}{% ... @ARTICLE and @PERIODICAL
3258 \ifjb@allow@howcited@art@period
3259 \renewcommand*{\bibartperiodhowcited}{%
3260 \jbweareinhowcitedtrue
3261 \space\howcitedprefix%
3262 \jb@specialcite{\jb@key}%
3263 \howcitedsuffix\jbweareinhowcitedfalse}%
3264 \fi}%
3265 \newcommand*{\jb@make@all@howcited@empty}{%
3266 \let\bibhowcited\@empty
3267 \let\bibcommenthowcited\@empty
3268 \ifjb@allow@howcited@art@period
3269 \let\bibartperiodhowcited\@empty
3270 \fi
3271 }%
3272 \newcommand*{\nocitebuthowcited}[1]{%
3273 \if@filesw\immediate\write\@auxout{%
3274 \string\citation{#1}^^J%
3275 \string\jbrealcitation{cite}{#1}}
3276 \fi
3277 }%
3278 \newcommand*{\jbhowcitedcomparepart}{%
3279 \ifthenelse{\equal{\jb@@howcited}{}}{%
3280 \ifthenelse{\equal{\jb@@shorttitle}{\@empty}}{%
3281 \jb@make@all@howcited@empty
3282 }{%
3283 \ifthenelse{\equal{\jb@@shorttitle}{\jb@@title}}{%
3284 \jb@make@all@howcited@empty
3285 }{%
3286 \ifthenelse{\equal{\jb@@author}{empty}}{%
3287 \jb@make@all@howcited@empty
3288 }{%
3289 \ifthenelse{%
3290 \equal{\@nameuse{TITLE@\jb@key}}{used}%
3291 }{%
3292 \jb@suppress@dot@for@howcitedtrue
3293 \jb@make@howcited%
3294 \jb@make@comment@howcited%
3295 \jb@make@artperiod@howcited%
3296 }{%
3297 \jb@make@all@howcited@empty
3298 }%
3299 }%
3300 }%
3301 }%
3302 }{%
3303 \ifthenelse{\equal{\jb@@howcited}{1}}{%
3304 \ifthenelse{%
3305 \equal{\@nameuse{TITLE@\jb@key}}{used}%
3306 }{%
3307 \jb@suppress@dot@for@howcitedtrue
3308 \jb@make@howcited%
3309 \jb@make@comment@howcited%
3310 \jb@make@artperiod@howcited%
3311 }{%
3312 \jb@make@all@howcited@empty
3313 }%
3314 }{%
3315 \renewcommand*{\bibhowcited}{%
3316 \space\howcitedprefix \jb@@howcited\howcitedsuffix}%
3317 \renewcommand*{\bibcommenthowcited}{%
3318 \space\howcitedprefix \jb@@howcited\howcitedsuffix}%
3319 \ifjb@allow@howcited@art@period
3320 \renewcommand*{\bibartperiodhowcited}{%
3321 \space\howcitedprefix \jb@@howcited\howcitedsuffix}%
3322 \fi
3323 }%
3324 }%
3325 }%
3326 \newcommand*{\jbhowcitednormalpart}{%
3327 \ifthenelse{\equal{\jb@@howcited}{}}{% %
3328 \jb@make@all@howcited@empty
3329 }{%
3330 \ifthenelse{\equal{\jb@@howcited}{1}}{%
3331 \jb@suppress@dot@for@howcitedtrue
3332 \jb@make@howcited%
3333 \jb@make@comment@howcited%
3334 \jb@make@artperiod@howcited%
3335 }{%
3336 \renewcommand*{\bibhowcited}{%
3337 \space\howcitedprefix \jb@@howcited\howcitedsuffix}%
3338 \renewcommand*{\bibcommenthowcited}{%
3339 \space\howcitedprefix \jb@@howcited\howcitedsuffix}%
3340 \ifjb@allow@howcited@art@period
3341 \renewcommand*{\bibartperiodhowcited}{%
3342 \space\howcitedprefix \jb@@howcited\howcitedsuffix}%
3343 \fi
3344 }%
3345 }%
3346 }
3347 \newcommand*{\jbaddtomakehowcited}{}
3348 \newcommand*{\jb@make@the@howcited}{%
3349 \ifthenelse{\boolean{jb@howcited@normal}}{%
3350 % NORMAL=TRUE
3351 \ifthenelse{\boolean{jb@howcited@compare}}{%
3352 % NORMAL=TRUE, COMPARE=TRUE
3353 \ifthenelse{\boolean{jb@howcited@multiple}}{%
3354 % NORMAL=TRUE, COMPARE=TRUE, MULTIPLE=TRUE
3355 \ifthenelse{\equal{\jb@@mult@switch}{1}}{% multiple part start
3356 \jb@make@howcited
3357 \jb@make@comment@howcited
3358 \jb@make@artperiod@howcited % multiple part end
3359 }{%
3360 \jbhowcitednormalpart%
3361 \jbhowcitedcomparepart%
3362 }%
3363 }{% NORMAL=TRUE, COMPARE=TRUE, multiple=false
3364 \jbhowcitednormalpart%
3365 \jbhowcitedcomparepart%
3366 }%
3367 }{%
3368 % NORMAL=TRUE, compare=false
3369 \ifthenelse{\boolean{jb@howcited@multiple}}{%
3370 % NORMAL=TRUE, compare=false, MULTIPLE=TRUE
3371 % howcited=normal AND howcited=multiple
3372 \ifthenelse{\equal{\jb@@mult@switch}{1}}{% multiple part start
3373 \jb@make@howcited
3374 \jb@make@comment@howcited
3375 \jb@make@artperiod@howcited % multiple part end
3376 }{%
3377 \jbhowcitednormalpart%
3378 }%
3379 }{% NORMAL=TRUE, compare=false, multiple=false
3380 \jbhowcitednormalpart%
3381 }%
3382 }%
3383 }{%
3384 % normal=false
3385 \ifthenelse{\boolean{jb@howcited@compare}%
3386 }{% normal=false, COMPARE=TRUE
3387 \ifthenelse{\boolean{jb@howcited@multiple}}{%
3388 % normal=false, COMPARE=TRUE, MULTIPLE=TRUE
3389 \ifthenelse{\equal{\jb@@mult@switch}{1}}{% multiple part start
3390 \jb@make@howcited
3391 \jb@make@comment@howcited
3392 \jb@make@artperiod@howcited % multiple part end
3393 }{%
3394 \jbhowcitedcomparepart%
3395 }%
3396 }{% normal=false, COMPARE=TRUE, multiple=false
3397 \jbhowcitedcomparepart%
3398 }%
3399 }{% normal=false, compare=false
3400 \ifthenelse{\boolean{jb@howcited@multiple}}{%
3401 % normal=false, compare=false, MULTIPLE=TRUE
3402 \jb@suppress@dot@for@howcitedtrue
3403 \ifthenelse{\equal{\jb@@mult@switch}{1}}{% multiple part start
3404 \jb@make@howcited
3405 \jb@make@comment@howcited
3406 \jb@make@artperiod@howcited % multiple part end
3407 }{%
3408 \jb@make@all@howcited@empty
3409 }%
3410 }{% normal=false, compare=false, multiple=false, all=true
3411 \ifthenelse{\boolean{jb@howcited@all}}{%
3412 \jb@suppress@dot@for@howcitedtrue
3413 \jb@make@howcited
3414 \jb@make@comment@howcited
3415 \jb@allow@howcited@art@periodtrue
3416 \jb@make@artperiod@howcited
3417 }{%
3418 % normal=false, compare=false, multiple=false, all=false
3419 % no howcited option
3420 \relax
3421 }%
3422 }%
3423 }%
3424 }%
3425 \jbaddtomakehowcited%
3426 }%
3427 %% we have to switch on `howcited' for articles and periodicals
3428 \newcommand*{\jb@detect@used@cite@commands}{%
3429 \ifthenelse{\equal{\@nameuse{b@\jb@key @C}}{cite}}{%
3430 \let\jb@specialcite\cite}{\relax}%
3431 \ifthenelse{\equal{\@nameuse{b@\jb@key @C}}{citetitle}}{%
3432 \let\jb@specialcite\citetitle}{\relax}%
3433 \ifthenelse{\equal{\@nameuse{b@\jb@key @C}}{citenotitle}}{%
3434 \let\jb@specialcite\jbcitenotitle}{\relax}%
3435 }%
3436 \newcommand*{\jb@last@label}{}
3437 \newcommand*{\jb@last@mult@author}{}
3438 \AtEndDocument{\let\jb@chk@multiple\@gobbletwo}
3439 \newcommand*{\jb@chk@multiple}[2]{%
3440 \ifthenelse{\equal{#1}{\jb@last@mult@author}}{%
3441 \global\@namedef{jb@fm@\jb@last@label}{}%
3442 \global\@namedef{jb@fm@#2}{}%
3443 }{%
3444 \relax
3445 }%
3446 \def\jb@last@mult@author{#1}%
3447 \def\jb@last@label{#2}%
3448 }%
3449 \newcommand*\jb@chk@bibetal[2]{%
3450 \begingroup
3451 \protected@edef\x{%
3452 \endgroup
3453 \def\noexpand\jb@@chk@bibetal####1\Bibetal####2\noexpand\end{%
3454 \noexpand\jb@@bibetal@argcheck{####1}{####2}{#2}%
3455 }%
3456 }\x
3457 \protected@edef\@tempa{#1}%
3458 \protected@edef\@tempb{\Bibetal}%
3459 \expandafter\expandafter\expandafter
3460 \jb@@chk@bibetal\expandafter\@tempa\@tempb\end
3461 }
3462 \newcommand*\jb@@bibetal@argcheck[3]{%
3463 \ifthenelse{\equal{#2}{}}{%
3464 }{%
3465 \if@filesw{%
3466 \let\protect\noexpand
3467 \immediate\write\@auxout{\string\jb@chk@multiple{#1#2}{#3}}%
3468 }%
3469 \fi
3470 }%
3471 }
3472 \newcommand*{\jb@@name}{}%
3473 \newcommand*{\jb@last@fullname}{}%
3474 \newcommand*{\jb@biblaw@item}{\hspace{0.5em}$\triangleright$\hspace{0.5em}}
3475 \newlength{\jb@biblaw@entry@width}
3476 \newlength{\jb@biblaw@item@width}
3477 \settowidth{\jb@biblaw@item@width}{\jb@biblaw@item}
3478 \setlength{\jb@biblaw@entry@width}{\jb@biblaw@item@width}
3479 \setlength{\jb@biblaw@entry@width}{-\jb@biblaw@entry@width}
3480 \newcolumntype{j}[1]{>{\bibaltformatalign\hspace{0pt}}p{#1}}
3481 \newcommand*{\jb@item}{\item}%
3482 \newcommand\jb@deactivate@babel{%
3483 %FIXME: \noextrasfrench or \bbl@deactivate don't work here?? just do it the low-level way:
3484 \let\do\@makeother\do\:\do\;\do\!\do\?\do\"\do\`\do\'\do\^%<---! solved in 0.51r (bug reported by Andreas Altenburger)
3485 }
3486 \newcommand*{\bibnumberformat}[1]{\biblnfont{#1.}}%
3487 \newcommand\jb@@test@fullname{}
3488 \newcommand\jb@@testlast@fullname{}
3489 \newcommand\jb@@test@au@or@ed{}
3490 \newcommand\jb@@testlast@au@or@ed{}
3491 \newcommand*{\jbdoitem}{%
3492 \ifjb@index\protected@xdef\curr@key{\jb@key}%
3493 \gdef\jb@authorlist{}\fi
3494 \ifjb@no@bib\relax\else
3495 \ifthenelse{\equal{\@nameuse{NOBIB@\jb@key}}{suppress}}{}{%
3496 \jb@item\hyper@jbanchorstart{\jb@key}\hyper@jbanchorend
3497 \ifjb@howcited
3498 \@ifundefined{b@\jb@key @C}{%
3499 \renewcommand*{\bibhowcited}{%
3500 \space\bibnotcited}%
3501 \renewcommand*{\bibcommenthowcited}{%
3502 \space\bibnotcited}%
3503 \ifjb@allow@howcited@art@period
3504 \renewcommand*{\bibartperiodhowcited}{%
3505 \space\bibnotcited}%
3506 \fi
3507 }{%
3508 \jb@detect@used@cite@commands
3509 \jb@handle@superscript@ed
3510 \jb@make@the@howcited
3511 \let\OpCit\@empty
3512 }%
3513 \fi
3514 \protected@edef\jb@tempcntc{\thebibnamereplace}%
3515 \stepcounter{bibnamereplace}%
3516 \label{jbib:\thebibnamereplace}%
3517 \@tempcnta=\jb@tempcntc
3518 \advance\@tempcnta\@ne
3519 \protected@edef\jb@tempcntd{\the\@tempcnta}%
3520 \ifthenelse{\boolean{jb@bibformat@ibidem}}{%
3521 \ifthenelse{%
3522 \equal{\jb@simple@pageref@by@heiko{jbib:\jb@tempcntc}}{%
3523 \jb@simple@pageref@by@heiko{jbib:\thebibnamereplace}}%
3524 }{%
3525 \ifjb@debug SAME PAGE/\fi
3526 \ifthenelse{\equal{\jb@@test@fullname}{\jb@@testlast@fullname}}{%
3527 \ifjb@debug SAME AUTHOR \fi
3528 \ifthenelse{\equal{\jb@@fullname}{}}{}{%
3529 \ifthenelse{%
3530 \boolean{jbaltformat}%
3531 }{%
3532 \def\jb@@name{}%
3533 }{%
3534 \def\jb@@name{\bibauthormultiple}%
3535 }%
3536 }%
3537 }{%
3538 \ifjb@debug AUTHOR DIFFERS \fi
3539 \ifthenelse{\equal{\jb@@fullname}{}}{%
3540 \def\jb@@name{}%
3541 }{%
3542 \def\jb@@name{\jb@@fullname\bibansep}%
3543 }%
3544 }%
3545 }{% DIFFERENT PAGES !!!!!
3546 \ifthenelse{%
3547 \boolean{@twoside}%
3548 \and
3549 \isodd{\jb@simple@pageref@by@heiko{jbib:\thebibnamereplace}}%
3550 \and
3551 \equal{%
3552 \jb@simple@pageref@by@heiko{jbib:\jb@tempcntd}}{%
3553 \jb@simple@pageref@by@heiko{jbib:\thebibnamereplace}}%
3554 }{%
3555 \ifjb@debug DIFF AND ODD/\fi
3556 \ifthenelse{%
3557 \equal{\jb@@test@fullname}{\jb@@testlast@fullname}%
3558 }{%
3559 \ifjb@debug SAME AUTHOR \fi
3560 \ifthenelse{\equal{\jb@@fullname}{}}{}{%
3561 \ifthenelse{%
3562 \boolean{jbaltformat}%
3563 }{%
3564 \def\jb@@name{%
3565 \jb@@fullname%
3566 \space%
3567 \bibfnfont{\bibcontinuedname}%
3568 \bibansep%
3569 }%
3570 }{%
3571 \def\jb@@name{\bibauthormultiple}%
3572 }%
3573 }%
3574 }{%
3575 \ifjb@debug AUTHORS DIFFERS \fi
3576 \ifthenelse{\equal{\jb@@fullname}{}}{%
3577 \def\jb@@name{}%
3578 }{%
3579 \def\jb@@name{\jb@@fullname\bibansep}%
3580 }%
3581 }%
3582 }{%
3583 \ifjb@debug DIFF AND EVEN/\fi
3584 \ifthenelse{%
3585 \equal{\jb@@test@fullname}{\jb@@testlast@fullname}%
3586 }{%
3587 \ifjb@debug SAME AUTHOR \fi
3588 \ifthenelse{\equal{\jb@@fullname}{}}{}{%
3589 \ifthenelse{%
3590 \boolean{jbaltformat}%
3591 }{%
3592 \def\jb@@name{%
3593 \jb@@fullname%
3594 \space%
3595 \bibfnfont{\bibcontinuedname}%
3596 \bibansep%
3597 }%
3598 }{%
3599 \def\jb@@name{\jb@@fullname\bibansep}%
3600 }%
3601 }%
3602 }{%
3603 \ifjb@debug AUTHORS DIFFERS \fi
3604 \ifthenelse{\equal{\jb@@fullname}{}}{%
3605 \def\jb@@name{}%
3606 }{%
3607 \def\jb@@name{\jb@@fullname\bibansep}%
3608 }%
3609 }%
3610 }%
3611 }%
3612 }{% bibformat=ibidem false
3613 \ifthenelse{\equal{\jb@@fullname}{}}{%
3614 \def\jb@@name{}%
3615 }{%
3616 \def\jb@@name{\jb@@fullname\bibansep}%
3617 }%
3618 }%
3619 \ifjb@babel
3620 \ifthenelse{\equal{\jb@@language}{\@empty}}{%
3621 \expandafter\jbselectlanguage\expandafter{\bbl@main@language}%
3622 }{%
3623 \language=\csname l@\jb@@language\endcsname\relax%
3624 }%
3625 \jb@check@language@start%
3626 \fi
3627 \ifjbaltformat\else
3628 \ifjb@numbered@bib
3629 \renewcommand*{\bibleftcolumn}{.36\linewidth}%
3630 \renewcommand*{\bibrightcolumn}{%
3631 \textwidth-\bibleftcolumn-5mm-\jbnumberbibwidth}%
3632 \begin{minipage}[t]{\jbnumberbibwidth}%
3633 \stepcounter{jbbibcnta}\bibnumberformat{\thejbbibcnta}%
3634 \end{minipage}%
3635 \fi
3636 \fi
3637 \ifjb@tabular
3638 \begin{minipage}[t]{\bibleftcolumn}%
3639 \renewcommand*{\bibansep}{}%
3640 \bibleftcolumnadjust\mbox{}%
3641 \jb@@name%
3642 \end{minipage}\ifjb@numbered@bib\hspace{5mm}\else\hspace{10mm}\fi%
3643 \begin{minipage}[t]{\bibrightcolumn}%
3644 \bibrightcolumnadjust%
3645 \let\jblinebreak\@empty
3646 \jb@@fulltitle%
3647 \begingroup
3648 \jb@check@language@end%
3649 \let\hyper@jblinkstart\@gobble
3650 \let\hyper@jblinkend\relax
3651 \jb@bibarg@howcited%
3652 \endgroup
3653 \ifjb@dot\unskip\unskip\unskip.\fi
3654 \jb@endnote%
3655 \ifjb@backref~\backref{\csname br@\jb@key\endcsname}\fi
3656 \end{minipage}%\medskip%
3657 \else
3658 \ifjbaltformat
3659 \ifx\jb@@name\@empty\else\medskip\fi % add some vertical space between different authors
3660 \let\jblinebreak\@empty\setlength{\tabcolsep}{0pt}\mbox{}\noindent
3661 \begin{tabular}{p{\jb@biblaw@item@width}j{\jb@biblaw@entry@width}}
3662 \ifx\jb@@name\@empty\else\multicolumn{2}{p{\columnwidth}}{\jb@@name}\\\fi
3663 \jb@biblaw@item & \jb@@fulltitle%
3664 \begingroup
3665 \jb@check@language@end%
3666 \let\hyper@jblinkstart\@gobble
3667 \let\hyper@jblinkend\relax
3668 \jb@bibarg@howcited%
3669 \endgroup
3670 \ifjb@dot\unskip\unskip\unskip.\fi
3671 \jb@endnote%
3672 \ifjb@backref
3673 ~\backref{\csname br@\jb@key\endcsname}%
3674 \fi
3675 \end{tabular}
3676 \else
3677 \jb@@name\jb@@fulltitle%
3678 \begingroup
3679 \jb@check@language@end%
3680 \let\hyper@jblinkstart\@gobble
3681 \let\hyper@jblinkend\relax
3682 \jb@bibarg@howcited%
3683 \endgroup
3684 \ifjb@dot\unskip\unskip\unskip.\fi
3685 \jb@endnote%
3686 \ifjb@backref~\backref{\csname br@\jb@key\endcsname}\fi
3687 \fi
3688 \fi
3689 \gdef\jb@endnote{}%
3690 \ifjb@index\ifjb@index@bib\jb@index@as@alias{\jb@key}\fi\fi
3691 \protected@edef\jb@@testlast@fullname{\jb@@test@fullname}%
3692 \protected@edef\jb@@testlast@au@or@ed{\jb@@test@au@or@ed}%
3693 }%
3694 \fi
3695 \if@filesw{\let\protect\noexpand\immediate\write\@auxout{%
3696 \string\bibcite{\jb@key}{\jb@tempa}%
3697 \ifjb@index
3698 \ifjb@no@bib\else
3699 ^^J\string\jb@define@alias{\curr@key}{\jb@authorlist}%
3700 \fi
3701 \fi}}%
3702 \fi
3703 \ignorespaces
3704 }%
3705 \newcommand*{\jbbibargs}[5]{%
3706 \protected@edef\jb@tempa{\jb@tempb{#1}{#4}}%
3707 \protected@edef\jb@tempb{\expandafter\jb@thirdofseven\jb@tempa\@empty}%
3708 \protected@edef\jb@tempc{\expandafter\jb@fourthofseven\jb@tempa\@empty}%
3709 \def\jb@bibarg@howcited{#5}%
3710 \ifthenelse{\equal{#2}{jureco}}{\global\jb@bibformat@ibidemfalse\global\jbaltformatfalse}{\gdef\jb@@test@fullname{#2}}%
3711 \ifthenelse{\equal{#3}{}}{}{\gdef\jb@@test@au@or@ed{#3}}%
3712 \jb@chk@bibetal{\jb@@author}{\jb@key}%
3713 \let\jb@first@author\@undefined
3714 \let\jb@first@editor\@undefined
3715 \setcounter{ibidem@author}{0}%
3716 \setcounter{multiple@author}{0}%
3717 }%
3718 \def\@lbibitem{%
3719 \begingroup
3720 \jb@deactivate@babel
3721 \jb@lbibitem
3722 }
3723 \def\jb@lbibitem[#1]#2{\gdef\jb@tempb{#1}\gdef\jb@key{#2}\endgroup}%
3724 \newcommand*{\nobibliography}[1]{%
3725 \ifjb@allow@nobib
3726 \global\jb@no@bibtrue
3727 \if@filesw\immediate\write\@auxout{%
3728 \string\global\string\jb@allow@hyper@citefalse^^J%
3729 \string\global\string\jb@allow@hyper@cite@nobibfalse^^J%
3730 \string\global\string\jb@no@bibtrue
3731 }%
3732 \fi
3733 \begingroup
3734 \renewenvironment{thebibliography}[1]{%
3735 \usecounter{enumiv}%
3736 \renewcommand*{\item}[1][]{%
3737 \ifx\relax####1\relax\stepcounter\@listctr\fi
3738 }%
3739 }{\relax}%
3740 \bibliography{#1}%
3741 \endgroup
3742 \else
3743 \jb@package@warningNoLine{\jb@pkg@name}{%
3744 You are using the `\string\nobibliography' command\MessageBreak
3745 without using one of the `citefull' options.\MessageBreak
3746 Choose `citefull=first' or `citefull=all'.\MessageBreak
3747 I'm putting out the normal `\string\bibliography'%
3748 }%
3749 \bibliography{#1}%
3750 \fi
3751 }%
3752 \newcommand\jb@enote@hook{}
3753 \def\cite{%
3754 \begingroup
3755 \jb@deactivate@babel%
3756 \jb@save@auxfile%
3757 \@ifstar{\jbcitenotitle}{\@ifnextchar[{\jb@cite}{\jb@cite[]}}%
3758 }%
3759 \newcommand*{\jb@cite}{}%
3760 \def\jb@cite{%
3761 \@ifnextchar[{\jb@@cite}{\jb@@cite[]}%
3762 }
3763 \def\jb@@cite[#1]{%
3764 \@ifnextchar[{\jb@@@cite[#1]}{\jb@@@cite[#1][]}%
3765 }
3766 \def\jb@@@cite[#1][#2]#3{%
3767 \ifjb@index\ifjb@no@bib\gdef\jb@authorlist{}\fi\fi
3768 \def\jb@enote@hook{%
3769 \ifjb@all@full
3770 \jb@change@fonts@for@fullcitetrue
3771 \jb@fullcite@againtrue
3772 \jb@citefalse
3773 \else
3774 \jb@citetrue
3775 \jb@fullcite@againfalse
3776 \fi
3777 \jb@cite@titlefalse
3778 \jb@cite@no@titlefalse
3779 \jb@footfalse % works for endnotes too
3780 }%
3781 \jb@enote@hook
3782 \jb@footfalse % works only for non-endnotes
3783 \@citex[#1][#2]{#3}%
3784 \endgroup
3785 \ifjb@index\ifjb@no@bib\if@filesw
3786 {\let\protect\noexpand\immediate\write\@auxout{%
3787 \string\jb@define@alias{#3}{\jb@authorlist}}}%
3788 \fi\fi\fi
3789 \futurelet\@let@token\@next@footnote
3790 }%
3791 \newcommand*{\jbcitenotitle}{%
3792 \begingroup
3793 \jb@deactivate@babel%
3794 \jb@save@auxfile%
3795 \jb@starred@citetrue
3796 \@ifnextchar[{\jb@cite@no@title}{\jb@cite@no@title[]}%
3797 }
3798 \newcommand*{\jb@cite@no@title}{}%
3799 \def\jb@cite@no@title{%
3800 \@ifnextchar[{\jb@@cite@no@title}{\jb@@cite@no@title[]}%
3801 }
3802 \def\jb@@cite@no@title[#1]{%
3803 \@ifnextchar[{\jb@@@cite@no@title[#1]}{\jb@@@cite@no@title[#1][]}%
3804 }
3805 \def\jb@@@cite@no@title[#1][#2]#3{%
3806 \ifjb@index\ifjb@no@bib\gdef\jb@authorlist{}\fi\fi
3807 \def\jb@enote@hook{%
3808 \ifjb@all@full
3809 \jb@change@fonts@for@fullcitetrue
3810 \jb@fullcite@againtrue
3811 \jb@cite@no@titlefalse
3812 \else
3813 \jb@cite@no@titletrue
3814 \jb@fullcite@againfalse
3815 \fi
3816 \jb@citefalse
3817 \jb@cite@titlefalse
3818 \jb@footfalse % works for endnotes too
3819 }%
3820 \jb@enote@hook
3821 \jb@footfalse % works only for non-endnotes
3822 \@citex[#1][#2]{#3}%
3823 \endgroup
3824 \ifjb@index\ifjb@no@bib\if@filesw
3825 {\let\protect\noexpand\immediate\write\@auxout{%
3826 \string\jb@define@alias{#3}{\jb@authorlist}}}%
3827 \fi\fi\fi
3828 \futurelet\@let@token\@next@footnote
3829 }%
3830 \newcommand*{\jbcitetitle}{%
3831 \begingroup
3832 \jb@deactivate@babel%
3833 \jb@save@auxfile%
3834 \@ifnextchar[{\jb@cite@title}{\jb@cite@title[]}%
3835 }
3836 \newcommand*{\jb@cite@title}{}%
3837 \def\jb@cite@title{%
3838 \@ifnextchar[{\jb@@cite@title}{\jb@@cite@title[]}%
3839 }
3840 \def\jb@@cite@title[#1]{%
3841 \@ifnextchar[{\jb@@@cite@title[#1]}{\jb@@@cite@title[#1][]}%
3842 }
3843 \def\jb@@@cite@title[#1][#2]#3{%
3844 \ifjb@index\ifjb@no@bib\gdef\jb@authorlist{}\fi\fi
3845 \def\jb@enote@hook{%
3846 \ifjb@all@full
3847 \jb@change@fonts@for@fullcitetrue
3848 \jb@fullcite@againtrue
3849 \jb@cite@titlefalse
3850 \else
3851 \jb@cite@titletrue
3852 \jb@fullcite@againfalse
3853 \fi
3854 \jb@citefalse
3855 \jb@cite@no@titlefalse
3856 \jb@footfalse % works for endnotes too
3857 }%
3858 \jb@enote@hook
3859 \jb@footfalse % works only for non-endnotes
3860 \@citex[#1][#2]{#3}%
3861 \endgroup
3862 \ifjb@index\ifjb@no@bib\if@filesw
3863 {\let\protect\noexpand\immediate\write\@auxout{%
3864 \string\jb@define@alias{#3}{\jb@authorlist}}}%
3865 \fi\fi\fi
3866 \futurelet\@let@token\@next@footnote
3867 }%
3868 \newcommand*{\jbfullcite}{%
3869 \begingroup
3870 \jb@deactivate@babel%
3871 \jb@save@auxfile%
3872 \@ifnextchar[{\jb@fullcite}{\jb@fullcite[]}%
3873 }
3874 \newcommand*{\jb@fullcite}{}%
3875 \def\jb@fullcite{%
3876 \@ifnextchar[{\jb@@fullcite}{\jb@@fullcite[]}%
3877 }
3878 \def\jb@@fullcite[#1]{%
3879 \@ifnextchar[{\jb@@@fullcite[#1]}{\jb@@@fullcite[#1][]}%
3880 }
3881 \def\jb@@@fullcite[#1][#2]#3{%
3882 \ifjb@index\ifjb@no@bib\gdef\jb@authorlist{}\fi\fi
3883 \def\jb@enote@hook{%
3884 \noibidem%
3885 \jb@change@fonts@for@fullcitetrue
3886 \jb@cite@no@titlefalse
3887 \jb@fullcite@againtrue
3888 \jb@citefalse
3889 \jb@cite@titlefalse
3890 \jb@footfalse % works for endnotes too
3891 }%
3892 \jb@enote@hook
3893 \jb@footfalse % works only for non-endnotes
3894 \@citex[#1][#2]{#3}%
3895 \endgroup
3896 \ifjb@index\ifjb@no@bib\if@filesw
3897 {\let\protect\noexpand\immediate\write\@auxout{%
3898 \string\jb@define@alias{#3}{\jb@authorlist}}}%
3899 \fi\fi\fi
3900 \futurelet\@let@token\@next@footnote
3901 }%
3902 \newcommand*{\jbfootcite}{%
3903 \begingroup
3904 \jb@deactivate@babel%
3905 \jb@save@auxfile%
3906 \@ifstar{\jbfootcitenotitle}{%
3907 \@ifnextchar[{\jb@footcite}{\jb@footcite[]}}}%
3908 \newcommand*{\jb@footcite}{}%
3909 \def\jb@footcite{%
3910 \@ifnextchar[{\jb@@footcite}{\jb@@footcite[]}%
3911 }
3912 \def\jb@@footcite[#1]{%
3913 \@ifnextchar[{\jb@@@footcite[#1]}{\jb@@@footcite[#1][]}%
3914 }
3915 \def\jb@@@footcite[#1][#2]#3{%
3916 \ifjb@index\ifjb@no@bib\gdef\jb@authorlist{}\fi\fi
3917 \ifjb@fn\ClassError{\jb@pkg@name}{%
3918 You are using `\string\footcite' inside a footnote}{%
3919 Sorry, that makes no sense.}\fi
3920 \def\jb@enote@hook{\unskip%
3921 \ifjb@all@full
3922 \jb@change@fonts@for@fullcitetrue
3923 \jb@fullcite@againtrue
3924 \jb@citefalse
3925 \else
3926 \jb@citetrue
3927 \jb@fullcite@againfalse
3928 \fi
3929 \jb@cite@titlefalse
3930 \jb@cite@no@titlefalse
3931 \jb@footfalse % works for endnotes too
3932 }%
3933 \jb@enote@hook
3934 \jb@footnote@periodtrue
3935 \jb@foottrue % works only for non-endnotes
3936 \@citex[#1][#2]{#3}%
3937 \endgroup
3938 \ifjb@index\ifjb@no@bib\if@filesw
3939 {\let\protect\noexpand\immediate\write\@auxout{%
3940 \string\jb@define@alias{#3}{\jb@authorlist}}}%
3941 \fi\fi\fi
3942 \futurelet\@let@token\@next@footnote
3943 }%
3944 \newcommand*{\jbfootcitetitle}{%
3945 \begingroup
3946 \jb@deactivate@babel%
3947 \jb@save@auxfile%
3948 \@ifnextchar[{\jb@footcitetitle}{\jb@footcitetitle[]}%
3949 }%
3950 \newcommand*{\jb@footcitetitle}{}%
3951 \def\jb@footcitetitle{%
3952 \@ifnextchar[{\jb@@footcitetitle}{\jb@@footcitetitle[]}%
3953 }
3954 \def\jb@@footcitetitle[#1]{%
3955 \@ifnextchar[{\jb@@@footcitetitle[#1]}{\jb@@@footcitetitle[#1][]}%
3956 }
3957 \def\jb@@@footcitetitle[#1][#2]#3{%
3958 \ifjb@index\ifjb@no@bib\gdef\jb@authorlist{}\fi\fi
3959 \ifjb@fn\ClassError{\jb@pkg@name}{%
3960 You are using `\string\footcitetitle' inside a footnote}{%
3961 Sorry, that makes no sense.}\fi
3962 \def\jb@enote@hook{\unskip% <== added to skip spaces before endnotes
3963 \ifjb@all@full
3964 \jb@change@fonts@for@fullcitetrue
3965 \jb@fullcite@againtrue
3966 \jb@cite@titlefalse
3967 \else
3968 \jb@cite@titletrue
3969 \jb@fullcite@againfalse
3970 \fi
3971 \jb@citefalse
3972 \jb@cite@no@titlefalse
3973 \jb@footfalse % works for endnotes too
3974 }%
3975 \jb@enote@hook
3976 \jb@footnote@periodtrue
3977 \jb@foottrue % works only for non-endnotes
3978 \@citex[#1][#2]{#3}%
3979 \endgroup
3980 \ifjb@index\ifjb@no@bib\if@filesw
3981 {\let\protect\noexpand\immediate\write\@auxout{%
3982 \string\jb@define@alias{#3}{\jb@authorlist}}}%
3983 \fi\fi\fi
3984 \futurelet\@let@token\@next@footnote
3985 }%
3986 \newcommand*{\jbfootcitenotitle}{%
3987 \begingroup
3988 \jb@deactivate@babel%
3989 \jb@save@auxfile%
3990 \jb@starred@citetrue
3991 \@ifnextchar[{\jb@footcitenotitle}{\jb@footcitenotitle[]}}%
3992 \newcommand*{\jb@footcitenotitle}{}%
3993 \def\jb@footcitenotitle{%
3994 \@ifnextchar[{\jb@@footcitenotitle}{\jb@@footcitenotitle[]}%
3995 }
3996 \def\jb@@footcitenotitle[#1]{%
3997 \@ifnextchar[{\jb@@@footcitenotitle[#1]}{\jb@@@footcitenotitle[#1][]}%
3998 }
3999 \def\jb@@@footcitenotitle[#1][#2]#3{%
4000 \ifjb@index\ifjb@no@bib\gdef\jb@authorlist{}\fi\fi
4001 \ifjb@fn\ClassError{\jb@pkg@name}{%
4002 You are using `\string\footcite*' inside a footnote}{%
4003 Sorry, that makes no sense.}\fi
4004 \def\jb@enote@hook{\unskip%
4005 \ifjb@all@full
4006 \jb@change@fonts@for@fullcitetrue
4007 \jb@fullcite@againtrue
4008 \jb@cite@no@titlefalse
4009 \else
4010 \jb@cite@no@titletrue
4011 \jb@fullcite@againfalse
4012 \fi
4013 \jb@citefalse
4014 \jb@cite@titlefalse
4015 \jb@footfalse % works for endnotes too
4016 }%
4017 \jb@enote@hook
4018 \jb@footnote@periodtrue
4019 \jb@foottrue % works only for non-endnotes
4020 \@citex[#1][#2]{#3}%
4021 \endgroup
4022 \ifjb@index\ifjb@no@bib\if@filesw
4023 {\let\protect\noexpand\immediate\write\@auxout{%
4024 \string\jb@define@alias{#3}{\jb@authorlist}}}%
4025 \fi\fi\fi
4026 \futurelet\@let@token\@next@footnote
4027 }%
4028 \newcommand*{\jbfootfullcite}{%
4029 \begingroup
4030 \jb@deactivate@babel%
4031 \jb@save@auxfile%
4032 \@ifnextchar[{\jb@footfullcite}{\jb@footfullcite[]}%
4033 }%
4034 \newcommand*{\jb@footfullcite}{}%
4035 \def\jb@footfullcite{%
4036 \@ifnextchar[{\jb@@footfullcite}{\jb@@footfullcite[]}%
4037 }
4038 \def\jb@@footfullcite[#1]{%
4039 \@ifnextchar[{\jb@@@footfullcite[#1]}{\jb@@@footfullcite[#1][]}%
4040 }
4041 \def\jb@@@footfullcite[#1][#2]#3{%
4042 \ifjb@index\ifjb@no@bib\gdef\jb@authorlist{}\fi\fi
4043 \ifjb@fn\ClassError{\jb@pkg@name}{%
4044 You are using `\string\footfullcite' inside a footnote}{%
4045 Sorry, that makes no sense.}\fi
4046 \def\jb@enote@hook{\unskip%
4047 \noibidem%
4048 \jb@change@fonts@for@fullcitetrue
4049 \jb@cite@no@titlefalse
4050 \jb@fullcite@againtrue
4051 \jb@citefalse
4052 \jb@cite@titlefalse
4053 \jb@footfalse % works for endnotes too
4054 }%
4055 \jb@enote@hook
4056 \jb@footnote@periodtrue
4057 \jb@foottrue % works only for non-endnotes
4058 \@citex[#1][#2]{#3}%
4059 \endgroup
4060 \ifjb@index\ifjb@no@bib\if@filesw
4061 {\let\protect\noexpand\immediate\write\@auxout{%
4062 \string\jb@define@alias{#3}{\jb@authorlist}}}%
4063 \fi\fi\fi
4064 \futurelet\@let@token\@next@footnote
4065 }%
4066 \newcommand*{\citetitleonly}{%
4067 \begingroup
4068 \jb@deactivate@babel%
4069 \jb@save@auxfile%
4070 \@ifnextchar[%
4071 {\jb@cite@titlewithoutauthor}{\jb@cite@titlewithoutauthor[]}}%
4072 \newcommand*{\jb@cite@titlewithoutauthor}{}%
4073 \def\jb@cite@titlewithoutauthor[#1]{%
4074 \def\jb@enote@hook{%
4075 \ifjb@all@full
4076 \jb@change@fonts@for@fullcitetrue
4077 \jb@fullcite@againtrue
4078 \jb@cite@titlefalse
4079 \else
4080 \jb@cite@titletrue
4081 \jb@noauthorforcitetitletrue
4082 \jb@fullcite@againfalse
4083 \fi
4084 \jb@citefalse
4085 \jb@cite@no@titlefalse
4086 \jb@footfalse % works for endnotes too
4087 }%
4088 \jb@enote@hook
4089 \jb@footfalse % works only for non-endnotes
4090 \@ifnextchar[{\@citex[#1]}{\@citex[#1][]}%
4091 }%
4092 \newcommand*{\citefield}[3][]{%
4093 \renewcommand*{\@cite}[2]{##1##2}%
4094 \let\@citea\@empty\@cite{\@for\@citeb:=#3\do{%
4095 \@citea\def\@citea{;\penalty\@m\ }%
4096 \edef\@citeb{\expandafter\@firstofone\@citeb\@empty}%
4097 \if@filesw\immediate\write\@auxout{\jb@makehowcited%
4098 \string\citation{\@citeb}}\fi
4099 \@ifundefined{b@\@citeb\@extra@b@citeb}{%
4100 \mbox{\reset@font\bfseries ?}\G@refundefinedtrue\@latex@warning%
4101 {Citation `\@citeb' on page \thepage \space undefined}}{%
4102 \begingroup
4103 \def\jb@@newauthorcite{#3}%
4104 \ifjb@allow@hyper@cite\hyper@jblinkstart{\@citeb}\fi
4105 \jb@extract
4106 \ifthenelse{\equal{#2}{}}{???}{%
4107 \ifthenelse{\equal{#2}{title}}{%
4108 \jbtitlefont{\jb@@title}%
4109 }{%
4110 \ifthenelse{\equal{#2}{juratitle}
4111 \or\equal{#2}{shorttitle}}{%
4112 \jbtitlefont{\jb@@shorttitle}%
4113 }{%
4114 \ifthenelse{\equal{#2}{year}}{%
4115 \ifx\jb@@year\@empty\else
4116 \textup{\jbcitationyearformat{\jb@@year}}\fi
4117 }{%
4118 \ifthenelse{\equal{#2}{author}}{%
4119 \let\biblnfont\jbauthorfont
4120 \let\bibfnfont\jbauthorfnfont
4121 \let\bibelnfont\jbauthorfont
4122 \let\bibefnfont\jbauthorfnfont
4123 \ifjbcross
4124 \jb@checked@author%
4125 \else
4126 \jbauthorfont{\jb@@fullname}%
4127 \fi
4128 }{%
4129 \ifthenelse{\equal{#2}{juraauthor}\or\equal{#2}{shortauthor}}{%
4130 \ifthenelse{\equal{\jb@@mult@switch}{1}\or\equal{\jb@@title@switch}{1}}{%
4131 \jbauthorfont{\jb@@author}%
4132 \ifjbcross\jb@checked@title\fi%
4133 }{%
4134 \jbauthorfont{\jb@@author}%
4135 }%
4136 }{%
4137 \ifthenelse{\equal{#2}{apy}}{%
4138 \apyformat{\jb@@apy}%
4139 }{%
4140 \ifthenelse{\equal{#2}{url}}{%
4141 \jburluse{#3}%
4142 }{%
4143 #2%
4144 }%
4145 }%
4146 }%
4147 }%
4148 }%
4149 }%
4150 }%
4151 }%
4152 \ifjb@allow@hyper@cite\hyper@jblinkend\fi
4153 \endgroup
4154 \ifthenelse{\equal{#1}{\@empty}}{\relax}{,\space #1}%
4155 }}}{}}%
4156 \newcommand{\jb@nat@cite@left@sep}{}%
4157 \newcommand{\jb@nat@cite@right@sep}{}%
4158 \newcommand*{\citep}{\begingroup\jb@deactivate@babel\@ifnextchar[{\jb@citep}{\jb@citep[]}}%
4159 \def\jb@citep[#1]{\@ifnextchar[{\jb@@citep[#1]}{\jb@@citep[][#1]}}%
4160 \def\jb@@citep[#1][#2]#3{%
4161 \def\jb@enote@hook{%
4162 \def\jb@nat@commands{\jbauthorfont{\jb@@author}\ifthenelse{\equal{\jb@@year}{}}{}{,\space\jb@@year}}%
4163 \renewcommand{\jb@nat@cite@left@sep}{(}\renewcommand{\jb@nat@cite@right@sep}{)}%
4164 \jb@footfalse
4165 }%
4166 \jb@enote@hook
4167 \jb@footfalse
4168 \jb@emulate@nat@cite[#1][#2]{#3}\endgroup
4169 \futurelet\@let@token\@next@footnote
4170 }%
4171 \newcommand*{\citet}{\begingroup\jb@deactivate@babel\@ifnextchar[{\jb@citet}{\jb@citet[]}}%
4172 \def\jb@citet[#1]{\@ifnextchar[{\jb@@citet[#1]}{\jb@@citet[][#1]}}%
4173 \def\jb@@citet[#1][#2]#3{%
4174 \def\jb@enote@hook{%
4175 \def\jb@nat@commands{\jbauthorfont{\jb@@author}\ifthenelse{\equal{\jb@@year}{}}{}{\space(\jb@@year}}%
4176 \renewcommand{\jb@nat@cite@left@sep}{}\renewcommand{\jb@nat@cite@right@sep}{)}%
4177 \jb@footfalse
4178 }%
4179 \jb@enote@hook
4180 \jb@footfalse
4181 \jb@emulate@nat@cite[#1][#2]{#3}\endgroup
4182 \futurelet\@let@token\@next@footnote
4183 }%
4184 \newcommand*{\citealt}{\begingroup\jb@deactivate@babel\@ifnextchar[{\jb@citealt}{\jb@citealt[]}}%
4185 \def\jb@citealt[#1]{\@ifnextchar[{\jb@@citealt[#1]}{\jb@@citealt[][#1]}}%
4186 \def\jb@@citealt[#1][#2]#3{%
4187 \def\jb@enote@hook{%
4188 \def\jb@nat@commands{\jbauthorfont{\jb@@author}\ifthenelse{\equal{\jb@@year}{}}{}{\space\jb@@year}}%
4189 \renewcommand{\jb@nat@cite@left@sep}{}\renewcommand{\jb@nat@cite@right@sep}{}%
4190 \jb@footfalse
4191 }%
4192 \jb@enote@hook
4193 \jb@footfalse
4194 \jb@emulate@nat@cite[#1][#2]{#3}\endgroup
4195 \futurelet\@let@token\@next@footnote
4196 }%
4197 \newcommand*{\citealp}{\begingroup\jb@deactivate@babel\@ifnextchar[{\jb@citealp}{\jb@citealp[]}}%
4198 \def\jb@citealp[#1]{\@ifnextchar[{\jb@@citealp[#1]}{\jb@@citealp[][#1]}}%
4199 \def\jb@@citealp[#1][#2]#3{%
4200 \def\jb@enote@hook{%
4201 \def\jb@nat@commands{\jbauthorfont{\jb@@author}\ifthenelse{\equal{\jb@@year}{}}{}{,\space\jb@@year}}%
4202 \renewcommand{\jb@nat@cite@left@sep}{}\renewcommand{\jb@nat@cite@right@sep}{}%
4203 \jb@footfalse
4204 }%
4205 \jb@enote@hook
4206 \jb@footfalse
4207 \jb@emulate@nat@cite[#1][#2]{#3}\endgroup
4208 \futurelet\@let@token\@next@footnote
4209 }%
4210 \newcommand*{\citeauthor}{\begingroup\jb@deactivate@babel\@ifnextchar[{\jb@citeauthor}{\jb@citeauthor[]}}%
4211 \def\jb@citeauthor[#1]{\@ifnextchar[{\jb@@citeauthor[#1]}{\jb@@citeauthor[][#1]}}%
4212 \def\jb@@citeauthor[#1][#2]#3{%
4213 \def\jb@enote@hook{%
4214 \def\jb@nat@commands{\jbauthorfont{\jb@@author}}%
4215 \renewcommand{\jb@nat@cite@left@sep}{}\renewcommand{\jb@nat@cite@right@sep}{}%
4216 \jb@footfalse
4217 }%
4218 \jb@enote@hook
4219 \jb@footfalse
4220 \jb@emulate@nat@cite[#1][#2]{#3}\endgroup
4221 \futurelet\@let@token\@next@footnote
4222 }%
4223 \newcommand*{\citeyear}{\begingroup\jb@deactivate@babel\@ifnextchar[{\jb@citeyear}{\jb@citeyear[]}}%
4224 \def\jb@citeyear[#1]{\@ifnextchar[{\jb@@citeyear[#1]}{\jb@@citeyear[][#1]}}%
4225 \def\jb@@citeyear[#1][#2]#3{%
4226 \def\jb@enote@hook{%
4227 \def\jb@nat@commands{\ifthenelse{\equal{\jb@@year}{}}{?}{\jb@@year}}%
4228 \renewcommand{\jb@nat@cite@left@sep}{}\renewcommand{\jb@nat@cite@right@sep}{}%
4229 \jb@footfalse
4230 }%
4231 \jb@enote@hook
4232 \jb@footfalse
4233 \jb@emulate@nat@cite[#1][#2]{#3}\endgroup
4234 \futurelet\@let@token\@next@footnote
4235 }%
4236 \newcommand*{\citeyearpar}{\begingroup\jb@deactivate@babel\@ifnextchar[{\jb@citeyearpar}{\jb@citeyearpar[]}}%
4237 \def\jb@citeyearpar[#1]{\@ifnextchar[{\jb@@citeyearpar[#1]}{\jb@@citeyearpar[][#1]}}%
4238 \def\jb@@citeyearpar[#1][#2]#3{%
4239 \def\jb@enote@hook{%
4240 \def\jb@nat@commands{\ifthenelse{\equal{\jb@@year}{}}{?}{(\jb@@year)}}%
4241 \renewcommand{\jb@nat@cite@left@sep}{}\renewcommand{\jb@nat@cite@right@sep}{}%
4242 \jb@footfalse
4243 }%
4244 \jb@enote@hook
4245 \jb@footfalse
4246 \jb@emulate@nat@cite[#1][#2]{#3}\endgroup
4247 \futurelet\@let@token\@next@footnote
4248 }%
4249 \newcommand*{\footcitep}{\begingroup\jb@deactivate@babel\@ifnextchar[{\jb@footcitep}{\jb@footcitep[]}}%
4250 \def\jb@footcitep[#1]{\@ifnextchar[{\jb@@footcitep[#1]}{\jb@@footcitep[][#1]}}%
4251 \def\jb@@footcitep[#1][#2]#3{%
4252 \def\jb@enote@hook{%
4253 \def\jb@nat@commands{\jbauthorfont{\jb@@author}\ifthenelse{\equal{\jb@@year}{}}{}{,\space\jb@@year}}%
4254 \renewcommand{\jb@nat@cite@left@sep}{(}\renewcommand{\jb@nat@cite@right@sep}{)}%
4255 \jb@footfalse % works for endnotes too
4256 }%
4257 \jb@enote@hook
4258 \jb@foottrue
4259 \jb@emulate@nat@cite[#1][#2]{#3}\endgroup
4260 \futurelet\@let@token\@next@footnote
4261 }%
4262 \newcommand*{\footcitet}{\begingroup\jb@deactivate@babel\@ifnextchar[{\jb@footcitet}{\jb@footcitet[]}}%
4263 \def\jb@footcitet[#1]{\@ifnextchar[{\jb@@footcitet[#1]}{\jb@@footcitet[][#1]}}%
4264 \def\jb@@footcitet[#1][#2]#3{%
4265 \def\jb@enote@hook{%
4266 \def\jb@nat@commands{\jbauthorfont{\jb@@author}\ifthenelse{\equal{\jb@@year}{}}{}{\space(\jb@@year)}}%
4267 \renewcommand{\jb@nat@cite@left@sep}{}\renewcommand{\jb@nat@cite@right@sep}{}%
4268 \jb@footfalse % works for endnotes too
4269 }%
4270 \jb@enote@hook
4271 \jb@foottrue
4272 \jb@emulate@nat@cite[#1][#2]{#3}\endgroup
4273 \futurelet\@let@token\@next@footnote
4274 }%
4275 \newcommand*{\footcitealt}{\begingroup\jb@deactivate@babel\@ifnextchar[{\jb@footcitealt}{\jb@footcitealt[]}}%
4276 \def\jb@footcitealt[#1]{\@ifnextchar[{\jb@@footcitealt[#1]}{\jb@@footcitealt[][#1]}}%
4277 \def\jb@@footcitealt[#1][#2]#3{%
4278 \def\jb@enote@hook{%
4279 \def\jb@nat@commands{\jbauthorfont{\jb@@author}\ifthenelse{\equal{\jb@@year}{}}{}{\space\jb@@year}}%
4280 \renewcommand{\jb@nat@cite@left@sep}{}\renewcommand{\jb@nat@cite@right@sep}{}%
4281 \jb@footfalse % works for endnotes too
4282 }%
4283 \jb@enote@hook
4284 \jb@foottrue
4285 \jb@emulate@nat@cite[#1][#2]{#3}\endgroup
4286 \futurelet\@let@token\@next@footnote
4287 }%
4288 \newcommand*{\footcitealp}{\begingroup\jb@deactivate@babel\@ifnextchar[{\jb@footcitealp}{\jb@footcitealp[]}}%
4289 \def\jb@footcitealp[#1]{\@ifnextchar[{\jb@@footcitealp[#1]}{\jb@@footcitealp[][#1]}}%
4290 \def\jb@@footcitealp[#1][#2]#3{%
4291 \def\jb@enote@hook{%
4292 \def\jb@nat@commands{\jbauthorfont{\jb@@author}\ifthenelse{\equal{\jb@@year}{}}{}{,\space\jb@@year}}%
4293 \renewcommand{\jb@nat@cite@left@sep}{}\renewcommand{\jb@nat@cite@right@sep}{}%
4294 \jb@footfalse % works for endnotes too
4295 }%
4296 \jb@enote@hook
4297 \jb@foottrue
4298 \jb@emulate@nat@cite[#1][#2]{#3}\endgroup
4299 \futurelet\@let@token\@next@footnote
4300 }%
4301 \newcommand*{\footciteauthor}{\begingroup\jb@deactivate@babel\@ifnextchar[{\jb@footciteauthor}{\jb@footciteauthor[]}}%
4302 \def\jb@footciteauthor[#1]{\@ifnextchar[{\jb@@footciteauthor[#1]}{\jb@@footciteauthor[][#1]}}%
4303 \def\jb@@footciteauthor[#1][#2]#3{%
4304 \def\jb@enote@hook{%
4305 \def\jb@nat@commands{\jbauthorfont{\jb@@author}}%
4306 \renewcommand{\jb@nat@cite@left@sep}{}\renewcommand{\jb@nat@cite@right@sep}{}%
4307 \jb@footfalse % works for endnotes too
4308 }%
4309 \jb@enote@hook
4310 \jb@foottrue
4311 \jb@emulate@nat@cite[#1][#2]{#3}\endgroup
4312 \futurelet\@let@token\@next@footnote
4313 }%
4314 \newcommand*{\footciteyear}{\begingroup\jb@deactivate@babel\@ifnextchar[{\jb@footciteyear}{\jb@footciteyear[]}}%
4315 \def\jb@footciteyear[#1]{\@ifnextchar[{\jb@@footciteyear[#1]}{\jb@@footciteyear[][#1]}}%
4316 \def\jb@@footciteyear[#1][#2]#3{%
4317 \def\jb@enote@hook{%
4318 \def\jb@nat@commands{\ifthenelse{\equal{\jb@@year}{}}{?}{\jb@@year}}%
4319 \renewcommand{\jb@nat@cite@left@sep}{}\renewcommand{\jb@nat@cite@right@sep}{}%
4320 \jb@footfalse % works for endnotes too
4321 }%
4322 \jb@enote@hook
4323 \jb@foottrue
4324 \jb@emulate@nat@cite[#1][#2]{#3}\endgroup
4325 \futurelet\@let@token\@next@footnote
4326 }%
4327 \newcommand*{\jb@emulate@nat@cite}{\@ifnextchar[{\jb@@emulate@nat@cite}{\jb@@emulate@nat@cite[]}}%
4328 \def\jb@@emulate@nat@cite[#1]{\@ifnextchar[{\jb@@@emulate@nat@cite[#1]}{\jb@@@emulate@nat@cite[#1][]}}%
4329 \def\jb@@@emulate@nat@cite[#1][#2]#3{%
4330 \ifjb@foot
4331 \renewcommand*{\@cite}[2]{\unskip\footnote{##1##2.}}%
4332 \else
4333 \renewcommand*{\@cite}[2]{##1##2}%
4334 \fi
4335 \let\@citea\@empty
4336 \@cite{%
4337 \@for\@citeb:=#3\do{%
4338 \@citea\def\@citea{;\penalty\@m\ }%
4339 \edef\@citeb{\expandafter\@firstofone\@citeb\@empty}%
4340 \if@filesw
4341 \immediate\write\@auxout{%
4342 \jb@makehowcited\string\citation{\@citeb}}%
4343 \fi
4344 \@ifundefined{b@\@citeb\@extra@b@citeb}{%
4345 \mbox{\reset@font\bfseries ?}%
4346 \G@refundefinedtrue
4347 \@latex@warning{Citation `\@citeb' on page \thepage \space undefined}%
4348 }{%
4349 \begingroup
4350 \ifjb@allow@hyper@cite\hyper@jblinkstart{\@citeb}\fi
4351 \jb@extract%
4352 \jb@nat@cite@left@sep%
4353 \ifthenelse{\equal{#1}{\@empty}}{}{#1\space}%
4354 \jb@nat@commands%
4355 \endgroup
4356 \ifthenelse{\equal{#2}{\@empty}}{}{,\space%
4357 \ifjb@formatted@pages\jbprformat{#2}\else#2\fi}%
4358 \jb@nat@cite@right@sep%
4359 \ifjb@allow@hyper@cite\hyper@jblinkend\fi
4360 }%
4361 }%
4362 }{}%
4363 }%
4364 \newcommand*{\jb@makehowcited}{%
4365 \ifjb@howcited
4366 \ifjbcross\else
4367 \ifjb@allow@hyper@cite@nobib
4368 \ifjb@cite\string\jbrealcitation{cite}{\@citeb}^^J\fi
4369 \ifjb@cite@title\string\jbrealcitation{citetitle}{\@citeb}^^J\fi
4370 \ifjb@cite@no@title\string\jbrealcitation{citenotitle}{\@citeb}^^J\fi
4371 \fi
4372 \fi
4373 \fi
4374 }%
4375 \newcommand*{\jb@changefontsforfullcite}{%
4376 \ifjb@reverse@names@in@citation
4377 \let\bibnf\bibrnf
4378 \let\bibenf\bibrenf
4379 \fi
4380 \let\bibansep\jbhowsepbeforetitle
4381 \let\bibbtasep\jbbtasep
4382 \let\bibbfsasep\jbbfsasep
4383 \let\bibbstasep\jbbstasep
4384 \let\bibbtesep\jbbtesep
4385 \let\bibbfsesep\jbbfsesep
4386 \let\bibbstesep\jbbstesep
4387 \let\jblinebreak\@empty
4388 \ifjb@change@fonts@for@fullcite
4389 \let\biblnfont\jbauthorfont%
4390 \let\bibfnfont\jbauthorfnfont%
4391 \let\bibelnfont\jbauthorfont%
4392 \let\bibefnfont\jbauthorfnfont%
4393 \let\bibtfont\jbtitlefont%
4394 \let\bibbtfont\jbbtitlefont%
4395 \let\bibapifont\jbapifont%
4396 \ifthenelse{\equal{\jb@@newcoauthorcite}{\@empty}}{%
4397 \ifjb@dynamic@author@fonts
4398 \let\jbauthorfont\jbactualauthorfont
4399 \let\biblnfont\jbactualauthorfont
4400 \let\bibfnfont\jbactualauthorfnfont
4401 \fi
4402 }{%
4403 \ifjb@dynamic@author@fonts
4404 \ifjb@see
4405 \let\biblnfont\jbactualauthorfont
4406 \else
4407 \let\jbcoauthorfont\jbactualauthorfont
4408 \let\jbauthorfont\jbauthorfontifcoauthor
4409 \fi
4410 \fi
4411 }%
4412 \fi
4413 }%
4414 \newcommand*{\jb@test@last@author@ibidem}{%
4415 \ifjb@see
4416 \ifthenelse{\equal{\jb@@newcoauthorcite}{\@empty}}{}{%
4417 \jb@formatted@co@author%
4418 \let\IbidemName\IbidemMidName
4419 }%
4420 \fi
4421 \ifthenelse{\equal{\jb@@newcoauthorcite}{\jb@@lastcoauthorcite}\or\boolean{jb@see}}{%
4422 \let\jb@@newcoauthorcite\@empty
4423 \@ifundefined{ibidem}{\@namedef{ibidem}{}}{\relax}%
4424 \ifjb@debug
4425 \textcolor[named]{WildStrawberry}{%
4426 \ifjb@debug@br[\fi\ifthenelse{\thejb@cites@in@footnote<2}{\IbidemName}{\IbidemMidName}\ifjb@debug@br]\fi}%
4427 \else
4428 \ifthenelse{\thejb@cites@in@footnote<2}{\IbidemName}{\IbidemMidName}%
4429 \jb@switchidemofflocallytrue
4430 \jbnoformatafterstartpagefalse
4431 \fi
4432 \ifthenelse{\equal{\jb@@newpagecite}{\jb@@lastpagecite}}{\let\jb@@newpagecite\@empty}{}%
4433 \let\jb@extraspace\@empty
4434 \let\jbapifont\@empty% <== remove single quotes after ibid.
4435 \let\jbbtfont\@empty % <== remove single quotes after ibid.
4436 \ifjb@ibidem@with@name
4437 \let\jb@@fullname\@empty
4438 \let\IbidemName\@empty
4439 \let\jbatsep\@empty
4440 \jb@second@extra@spacefalse
4441 \fi
4442 \let\jb@use@fullcite\@empty
4443 \let\jb@@author\@empty
4444 \let\jb@aftertitleedition\@empty
4445 \let\jb@checked@edition\@empty
4446 \let\jbhowsepbeforetitle\@empty
4447 \let\jb@@title\@empty
4448 \let\jb@@shorttitle\relax
4449 \let\jb@formatted@year\@empty
4450 \let\OpCit\relax
4451 \ifjb@see\else\let\jb@@newcoauthorcite\@empty\fi
4452 \ifthenelse{%
4453 \equal{\jb@@newpagecite}{\jb@@lastpagecite}%
4454 \or
4455 \equal{\jb@@newpagecite}{}%
4456 }{%
4457 \global\jb@footnote@periodfalse
4458 }{}%
4459 %\let\jb@makeidem\@empty
4460 }{\relax}%
4461 }%
4462 \newcommand*{\jb@idem@gender@checked}{%
4463 \ifjb@noauthorforcitetitle\else
4464 \ifjb@switchidemofflocally\else
4465 \ifthenelse{%
4466 \not\equal{\jb@@gender}{}%
4467 \and
4468 \boolean{jblookforgender}%
4469 }{%
4470 \ifthenelse{\equal{\jb@@gender}{sm}}{%
4471 \@ifundefined{jb@morethanonecite}{\idemSmname}{\idemsmname}%
4472 }{%
4473 \ifthenelse{\equal{\jb@@gender}{pm}}{%
4474 \@ifundefined{jb@morethanonecite}{\idemPmname}{\idempmname}%
4475 }{%
4476 \ifthenelse{\equal{\jb@@gender}{sf}}{%
4477 \@ifundefined{jb@morethanonecite}{\idemSfname}{\idemsfname}%
4478 }{%
4479 \ifthenelse{\equal{\jb@@gender}{pf}}{%
4480 \@ifundefined{jb@morethanonecite}{\idemPfname}{\idempfname}%
4481 }{%
4482 \ifthenelse{\equal{\jb@@gender}{sn}}{%
4483 \@ifundefined{jb@morethanonecite}{\idemSnname}{\idemsnname}%
4484 }{%
4485 \ifthenelse{\equal{\jb@@gender}{pn}}{%
4486 \@ifundefined{jb@morethanonecite}{\idemPnname}{\idempnname}%
4487 }{%
4488 \@ifundefined{jb@morethanonecite}{\idemSmname}{\idemsmname}%
4489 }%
4490 }%
4491 }%
4492 }%
4493 }%
4494 }%
4495 }{%
4496 \ifthenelse{\equal{\bbl@main@language}{english}\and\boolean{jboxford}}{%
4497 \edfont{\idemname}%
4498 }{%
4499 \ifjbcross\edfont{\idemmidname}\else\edfont{\idemname}\fi
4500 }%
4501 }%
4502 \fi
4503 \fi
4504 }
4505 \newcommand*{\jb@do@idem}{%
4506 \@ifundefined{idem}{\@namedef{idem}{}}{\relax}%
4507 \ifjb@same@fullauthor
4508 \ifthenelse{%
4509 \equal{\jb@@mult@switch}{1}% 1. author wrote multiple works,
4510 \and\equal{\jb@@shorttitle}{}% 2. shorttitle is empty,
4511 \and\equal{\@nameuse{citefull@\jb@@newauthorcite}}{citefull}% 3. not the very first citation, and
4512 \and\boolean{jb@no@title@replace}% 4. replacing shorttitle by title not possible
4513 }{%
4514 \@ifundefined{ETFII@\jb@@newauthorcite}{% The same warning is placed somewhere else,
4515 \global\@namedef{ETFII@\jb@@newauthorcite}{}% but we don't want to disturb the user with warnings.
4516 \jb@package@warningNoLine{\jb@pkg@name}{%
4517 *** `\jb@@newauthorcite' ***\on@line\MessageBreak
4518 is an ambiguous citation! Because you are using\MessageBreak
4519 `titleformat=noreplace', the title field can't\MessageBreak
4520 be used to replace the missing shorttitle}%
4521 }{\relax}%
4522 }{}%
4523 \ifjb@debug
4524 \textcolor[named]{WildStrawberry}{%
4525 \ifjb@debug@br[\fi
4526 \jb@idem@gender@checked%
4527 \ifjb@debug@br]\fi
4528 }%
4529 \else
4530 \jb@idem@gender@checked%
4531 \fi
4532 \let\jb@@fullname\@empty
4533 \let\jb@@author\@empty
4534 \ifthenelse{%
4535 \equal{\jb@@newpagecite}{\jb@@lastpagecite}%
4536 \TE@or % normal \or causes problems
4537 \equal{\jb@@newpagecite}{}%
4538 }{%
4539 \ifjb@opcit\else
4540 \@ifundefined{jb@morethanonecite}{%
4541 \ifjbidemabbrvwithperiod
4542 \ifthenelse{\equal{\jb@@mult@switch}{1}\TE@or\equal{\jb@@title@switch}{1}}{}{%
4543 \global\jb@footnote@periodfalse
4544 }%
4545 \fi
4546 }{\global\jb@footnote@periodtrue}%
4547 \fi
4548 }{}%
4549 \fi
4550 }
4551 \newcommand*{\jb@test@last@author@idem}{%
4552 \ifjb@see
4553 \ifthenelse{\equal{\jb@@newcoauthorcite}{\@empty}}{}{%
4554 \jb@formatted@co@author%
4555 \let\idemname\idemmidname
4556 \let\jb@@newcoauthorcite\@empty
4557 }%
4558 \jb@do@idem
4559 \else
4560 \ifjb@coauthor@last
4561 \jb@do@idem
4562 \ifthenelse{\equal{\jb@@newcoauthorcite}{\@empty}}{}{%
4563 \jbhowsepcoauthorlast%
4564 \jb@formatted@co@author%
4565 \let\idemname\idemmidname
4566 \let\jb@@newcoauthorcite\@empty
4567 }%
4568 \else
4569 \ifthenelse{\equal{\jb@@newcoauthorcite}{\@empty}}{}{%
4570 \jb@formatted@co@author%
4571 \jbhowsepcoauthorfirst%
4572 \let\idemname\idemmidname
4573 \let\jb@@newcoauthorcite\@empty
4574 }%
4575 \jb@do@idem
4576 \fi
4577 \fi
4578 }%
4579 \newcommand*{\jb@makeibidem}{%
4580 \ifthenelse{\equal{\jb@@author}{empty}}{%
4581 \jb@all@titlestrue
4582 \let\jbhowsepcoauthorlast\@empty
4583 \ifjb@see\else
4584 \let\jb@@newcoauthorcite\@empty
4585 \fi
4586 \@ifundefined{MISS@##3}{%
4587 \global\@namedef{MISS@##3}{}%
4588 \jb@package@warningNoLine{\jb@pkg@name}{%
4589 The author of `\jb@@newauthorcite'\MessageBreak
4590 is missing, I assume you know what %
4591 you are doing}%
4592 }{\relax}%
4593 }{\relax}%
4594 \ifthenelse{\boolean{jb@ibidem}}{%
4595 \protected@edef\jb@tempcnt{\thejbbibcnt}%
4596 \stepcounter{jbbibcnt}%
4597 \ifjb@fn
4598 \begingroup
4599 \jb@restore@auxfile
4600 \label{ibidem:\thejbbibcnt}%
4601 \endgroup
4602 \fi
4603 \ifthenelse{\equal{\jb@@newauthorcite}{\jb@@lastauthorcite}}{%
4604 \@tempcnta=\jb@tempcnt
4605 \ifjb@ibidem@double@pagewise
4606 \advance\@tempcnta\@ne
4607 \fi
4608 \protected@edef\jb@idemcnta{\the\@tempcnta}%
4609 \ifthenelse{\boolean{jb@ibidem@pagewise}}{%
4610 \ifthenelse{%
4611 \(%
4612 \boolean{jb@ibidem@double@pagewise}%
4613 \and
4614 \isodd{\jb@simple@pageref@by@heiko{ibidem:\thejbbibcnt}}
4615 \and
4616 \equal{%
4617 \jb@simple@pageref@by@heiko{ibidem:\jb@idemcnta}}{%
4618 \jb@simple@pageref@by@heiko{ibidem:\thejbbibcnt}}%
4619 \)%
4620 \or
4621 \equal{%
4622 \jb@simple@pageref@by@heiko{ibidem:\jb@tempcnt}}{%
4623 \jb@simple@pageref@by@heiko{ibidem:\thejbbibcnt}}%
4624 }{%
4625 \jb@test@last@author@ibidem
4626 \jb@lookatfalse
4627 }{%
4628 \relax
4629 }%
4630 }{%
4631 \jb@test@last@author@ibidem
4632 }% jb@ibidem@pagewise end
4633 }{\relax}% authors equal
4634 }{\relax}% jb@ibidem
4635 }%
4636 \newcommand*{\jb@makeidem}{%
4637 \ifjbweareinbib\else
4638 \ifthenelse{\boolean{jb@idem}}{%
4639 \protected@edef\jb@idemcnta{\theidemcnt}%
4640 \stepcounter{idemcnt}%
4641 \ifjb@fn
4642 \begingroup
4643 \jb@restore@auxfile
4644 \label{idem:\theidemcnt}%
4645 \endgroup
4646 \fi
4647 \ifjb@same@fullauthor
4648 \@tempcnta=\jb@idemcnta
4649 \ifjb@idem@double@pagewise
4650 \advance\@tempcnta\@ne
4651 \fi
4652 \protected@edef\jb@idemcntb{\the\@tempcnta}%
4653 \ifthenelse{\boolean{jb@idem@pagewise}}{%
4654 \ifthenelse{%
4655 \boolean{jb@idem@double@pagewise}%
4656 \and
4657 \isodd{\jb@simple@pageref@by@heiko{idem:\theidemcnt}}%
4658 \and
4659 \equal{%
4660 \jb@simple@pageref@by@heiko{idem:\jb@idemcntb}}{%
4661 \jb@simple@pageref@by@heiko{idem:\theidemcnt}}%
4662 }{%
4663 \jb@test@last@author@idem
4664 }{%
4665 \ifthenelse{%
4666 \equal{\jb@simple@pageref@by@heiko{idem:\jb@idemcnta}}{%
4667 \jb@simple@pageref@by@heiko{idem:\theidemcnt}}%
4668 }{%
4669 \jb@test@last@author@idem
4670 }{}%
4671 }%
4672 }{%
4673 \jb@test@last@author@idem
4674 }%
4675 \fi
4676 }{}%
4677 \fi
4678 }%
4679 \newcommand{\jb@make@ibidem@name@title}{%
4680 \jb@relaxforemptyauthor
4681 \ifthenelse{\equal{\jb@@shorttitle}{}}{%
4682 \ifjb@no@title@replace\else
4683 \jbhowsepbeforetitle\jbtitlefont{\jb@@title}%
4684 \fi%
4685 }{%
4686 \jbhowsepbeforetitle\jbtitlefont{\jb@@shorttitle}%
4687 \@ifundefined{TITLE@##3}{\global\@namedef{TITLE@##3}{used}}{}%
4688 }%
4689 \ifjb@author@year\ifjb@yearaftertitle\jb@formatted@year\fi\fi
4690 }%
4691 \newcommand*{\jb@makecheckednameibidem}{%
4692 \ifjb@fullcite@again\else
4693 \ifjb@ibidem@with@name
4694 \jb@allow@adding@of@pagerangefalse
4695 \ifthenelse{\equal{\jb@@author}{empty}}{%
4696 \jb@second@extra@spacefalse}{\relax}%
4697 \ifjb@debug@br[\fi
4698 \jb@formatted@co@author@in%
4699 \ifjb@ibidem@with@short@name
4700 \ifthenelse{\equal{\jb@@author}{empty}}{%
4701 \jbauthorfont{\jb@@fullname}%
4702 }{%
4703 \jbauthorfont{\jb@@author}%
4704 }%
4705 \else
4706 \jb@@fullname%
4707 \fi
4708 \ifjb@author@year\ifjb@yearafterauthor\jb@formatted@year\fi\fi
4709 \ifthenelse{\equal{\jb@@mult@switch}{1}}{%
4710 \@ifundefined{MULT@##3}{%
4711 \global\@namedef{MULT@##3}{}%
4712 \ifjb@ibidem@with@name@and@title\else
4713 \ifjb@ibidem@with@name@and@title@auto\else
4714 \jb@package@warningNoLine{\jb@pkg@name}{%
4715 The author of `\jb@@newauthorcite'\MessageBreak
4716 is cited with more than one work, %
4717 I'm switching\MessageBreak to %
4718 `ibidem=name&title&auto' to avoid %
4719 ambiguous citations}%
4720 \global\jb@ibidem@with@name@and@title@autotrue
4721 \fi\fi
4722 }{\relax}%
4723 }{\relax}%
4724 \ifjb@ibidem@with@name@and@title
4725 \jb@make@ibidem@name@title%
4726 \else
4727 \ifjb@ibidem@with@name@and@title@auto
4728 \ifjb@same@author@different@work% WECHSEL!%
4729 \jb@make@ibidem@name@title%
4730 \fi
4731 \fi
4732 \fi
4733 \ifthenelse{\equal{\jb@@title}{}}{%
4734 \ifthenelse{\equal{\jb@@shorttitle}{}}{%
4735 \IbidemName%
4736 }{,\space\IbidemMidName}%
4737 }{,\space\IbidemMidName}%
4738 \ifthenelse{%
4739 \equal{\jb@@newpagecite}{\jb@@lastpagecite}%
4740 \TE@or % normal \or causes problems
4741 \equal{\jb@@newpagecite}{}%
4742 }{%
4743 \ifjb@opcit\else
4744 \global\jb@footnote@periodfalse
4745 \fi
4746 }{}%
4747 \jb@relaxcommandsforfullcite
4748 \ifjb@debug@br]\fi
4749 \fi
4750 \fi
4751 }%
4752 \newcommand*{\jb@dofullcite}{%
4753 \ifjb@debug
4754 \textcolor[named]{Red}{%
4755 \ifjb@debug@br[\fi
4756 \jb@formatted@co@author@in\jb@use@fullcite%
4757 \ifjb@debug@br]\fi}%
4758 \else
4759 \jb@formatted@co@author@in\jb@use@fullcite%
4760 \fi%
4761 \jb@relaxcommandsforfullcite
4762 \let\jb@extraspace\@empty
4763 \jb@allow@lookat@for@fullcitefalse
4764 }%
4765 \newcommand*{\jb@makeagainfullcite}{%
4766 \ifjb@fullcite@again
4767 \jb@allow@adding@of@pagerangefalse
4768 \ifthenelse{%
4769 \equal{\@nameuse{\jb@@newauthorcite}}{allnextshort}}{%
4770 \relax
4771 }{%
4772 \jb@dofullcite%
4773 }%
4774 \else
4775 \ifthenelse{%
4776 \equal{\@nameuse{\jb@@newauthorcite}}{allnextfull}}{%
4777 \jb@dofullcite%
4778 }{%
4779 \relax
4780 }%
4781 \fi
4782 }%
4783 \newcommand*{\jb@relaxforemptyauthor}{%
4784 \ifthenelse{\equal{\jb@@author}{empty}}{%
4785 \let\jb@@author\@empty
4786 \let\jbhowsepbeforetitle\relax
4787 \let\jb@extraspace\@empty
4788 }{\relax}%
4789 }%
4790 \newcommand*{\jb@warningfootciteusage}{%
4791 \ifjb@cite@no@title
4792 \ifthenelse{%
4793 \equal{\jb@@mult@switch}{1}%
4794 \and
4795 \not\boolean{jb@author@year}%
4796 }{%
4797 \jb@package@warning{\jb@pkg@name}{%
4798 *** `\jb@@newauthorcite' ***\MessageBreak
4799 is an ambiguous citation! Beware of\MessageBreak
4800 using \string\[foot]cite*}%
4801 }{\relax}%
4802 \fi
4803 }%
4804 \newcommand*{\jb@checktitlefields}{%
4805 \ifthenelse{\equal{\jb@@mult@switch}{1}}{%
4806 \ifthenelse{\equal{\jb@@shorttitle}{}\and\not\boolean{jb@author@year}}{%
4807 \ifthenelse{\equal{\jb@@title}{}}{%
4808 \let\jb@extraspace\@empty
4809 \@ifundefined{ETF@\jb@@newauthorcite}{%
4810 \global\@namedef{ETF@\jb@@newauthorcite}{}%
4811 \jb@package@warning{\jb@pkg@name}{%
4812 *** `\jb@@newauthorcite' ***\MessageBreak
4813 is an ambiguous citation! The `shorttitle'\MessageBreak
4814 can't be used. I tried to substitute with\MessageBreak
4815 `title' field - without success, please check the\MessageBreak
4816 citation}{\relax}%
4817 }{\relax}%
4818 }{%
4819 \ifthenelse{%
4820 \equal{\@nameuse{citefull@\jb@@newauthorcite}}{citefull}%
4821 \or
4822 \boolean{jbcross}%
4823 }{%
4824 \ifjbweareinbib\else
4825 \ifjb@no@title@replace
4826 \@ifundefined{ETFII@\jb@@newauthorcite}{%
4827 \global\@namedef{ETFII@\jb@@newauthorcite}{}%
4828 \jb@package@warningNoLine{\jb@pkg@name}{%
4829 *** `\jb@@newauthorcite' ***\on@line\MessageBreak
4830 is an ambiguous citation! Because you are using\MessageBreak
4831 `titleformat=noreplace', the title field can't\MessageBreak
4832 be used to replace the missing shorttitle}%
4833 }{\relax}%
4834 \fi\fi
4835 }{\relax}%
4836 }%
4837 }{\relax}%
4838 }{%
4839 \@ifundefined{jb@fm@\@citeb}{}{%
4840 \ifthenelse{\equal{\jb@@mult@switch}{0}%
4841 \and\not\boolean{jbweareinbib}%
4842 \and\boolean{jb@no@title@replace}%
4843 }{%
4844 \@ifundefined{ETFII@\jb@@newauthorcite}{%
4845 \global\@namedef{ETFII@\jb@@newauthorcite}{}%
4846 \jb@package@warningNoLine{\jb@pkg@name}{%
4847 *** `\jb@@newauthorcite' ***\on@line\MessageBreak
4848 is an ambiguous citation! Because you are using\MessageBreak
4849 `titleformat=noreplace', the title field can't\MessageBreak
4850 be used to replace the missing shorttitle}%
4851 }{\relax}%
4852 }{\relax}%
4853 }%
4854 }%
4855 }%
4856 \newcommand*{\jb@maketitlewishestrue}{%
4857 \ifjb@all@titles\def\jb@@title@switch{1}\fi
4858 \ifjb@cite@title\def\jb@@title@switch{1}\fi
4859 \ifjb@cite@no@title\def\jb@@title@switch{0}\fi
4860 }%
4861 \newcommand*{\jb@makecoauthorlastwithtitle}{%
4862 \ifjb@noauthorforcitetitle\else
4863 \ifthenelse{\equal{\jb@@newcoauthorcite}{\@empty}}{%
4864 \jb@make@author@emph%
4865 \jb@formatted@author%
4866 \jb@checked@edition%
4867 }{%
4868 \jb@formatted@author%
4869 \ifjb@ssed@after@author\jb@checked@edition\fi
4870 \jb@make@coauthor@emph%
4871 \jbhowsepcoauthorlast%
4872 \jb@formatted@co@author%
4873 \ifjb@ssed@after@author\else\jb@checked@edition\fi
4874 }%
4875 \fi
4876 \ifthenelse{%
4877 \equal{\@nameuse{\jb@@newauthorcite}}{allnextnotitle}}{%
4878 }{%
4879 \jb@checked@title%
4880 }%
4881 }%
4882 \newcommand*{\jb@makecoauthorfirstwithtitle}{%
4883 \ifjb@noauthorforcitetitle\else
4884 \ifthenelse{\equal{\jb@@newcoauthorcite}{\@empty}}{%
4885 \jb@make@author@emph%
4886 \jb@formatted@author%
4887 \jb@checked@edition%
4888 }{%
4889 \jb@make@coauthor@emph%
4890 \jb@formatted@co@author%
4891 \jbhowsepcoauthorfirst%
4892 \jb@formatted@author%
4893 \jb@checked@edition%
4894 }%
4895 \fi
4896 \ifthenelse{%
4897 \equal{\@nameuse{\jb@@newauthorcite}}{allnextnotitle}}{%
4898 }{%
4899 \jb@checked@title%
4900 }%
4901 }%
4902 \newcommand*{\jb@makecoauthorlastwithouttitle}{%
4903 \ifjb@noauthorforcitetitle\else
4904 \ifthenelse{\equal{\jb@@newcoauthorcite}{\@empty}}{%
4905 \jb@make@author@emph%
4906 \jb@formatted@author%
4907 \jb@checked@edition%
4908 }{%
4909 \jb@formatted@author%
4910 \ifjb@ssed@after@author\jb@checked@edition\fi
4911 \jb@make@coauthor@emph%
4912 \jbhowsepcoauthorlast%
4913 \jb@formatted@co@author%
4914 \ifjb@ssed@after@author\else\jb@checked@edition\fi
4915 }%
4916 \fi
4917 }%
4918 \newcommand*{\jb@makecoauthorfirstwithouttitle}{%
4919 \ifjb@noauthorforcitetitle\else
4920 \ifthenelse{\equal{\jb@@newcoauthorcite}{\@empty}}{%
4921 \jb@make@author@emph%
4922 \jb@formatted@author%
4923 \jb@checked@edition%
4924 }{%
4925 \jb@make@coauthor@emph%
4926 \jb@formatted@co@author%
4927 \jbhowsepcoauthorfirst%
4928 \jb@formatted@author%
4929 \jb@checked@edition%
4930 }%
4931 \fi
4932 }%
4933 \newcommand*{\jb@makecheckedcite}{%
4934 \ifthenelse{%
4935 \equal{\jb@@mult@switch}{1}%
4936 \or\equal{\jb@@title@switch}{1}%
4937 \and\not\boolean{jb@starred@cite}%
4938 }{%
4939 \ifjb@coauthor@last
4940 \jb@makecoauthorlastwithtitle
4941 \else
4942 \jb@makecoauthorfirstwithtitle
4943 \fi
4944 }{%
4945 \ifjb@coauthor@last
4946 \jb@makecoauthorlastwithouttitle
4947 \else
4948 \jb@makecoauthorfirstwithouttitle
4949 \fi
4950 }%
4951 \ifthenelse{\equal{\jb@@shorttitle}{}\and\equal{\jb@@author}{}%
4952 \and\not\equal{\jburluse{\jb@@newauthorcite}}{}}{\jburluse{\jb@@newauthorcite}}{}%
4953 \jb@aftertitleedition%
4954 \ifjb@yearaftertitle\jbyear\fi
4955 }%
4956 \newcommand*{\jb@ssed@size}{\tiny}%
4957 \newlength{\jb@length@i} \settowidth{\jb@length@i} {\jb@ssed@size 1}%
4958 \newlength{\jb@length@ii} \settowidth{\jb@length@ii} {\jb@ssed@size 11}%
4959 \newlength{\jb@length@iii}\settowidth{\jb@length@iii}{\jb@ssed@size 111}%
4960 \newcommand*{\jb@kern@before@sepi} {\hspace{-\jb@length@i}}%
4961 \newcommand*{\jb@kern@after@sepi} {\hspace{\jb@length@i}}%
4962 \newcommand*{\jb@kern@before@sepii} {\hspace{-\jb@length@ii}}%
4963 \newcommand*{\jb@kern@after@sepii} {\hspace{\jb@length@ii}}%
4964 \newcommand*{\jb@kern@before@sepiii}{\hspace{-\jb@length@iii}}%
4965 \newcommand*{\jb@kern@after@sepiii} {\hspace{\jb@length@iii}}%
4966 \newcommand*{\jb@kern@sep}{}%
4967 \newcommand*{\jb@extract@starting@page}[1]{%
4968 \protected@edef\sp@tempa{#1}%
4969 \expandafter\jb@@extract@starting@page\sp@tempa-\end%
4970 }
4971 \newcommand\jb@@start@page@switch{0}%
4972 \newcommand*{\jb@@extract@starting@page}{}% make sure it's undefined
4973 \def\jb@@extract@starting@page#1-#2\end{%
4974 \def\jb@@start@page{#1}%
4975 }%
4976 %% NEW 0.5e
4977 %% The following code for testing pageranges was completely
4978 %% contributed by Stefan Ulrich, very special thanks!
4979 \def\sndecmd{}%
4980 \DeclareRobustCommand*{\nopage}{}
4981 \newcommand*{\pageadd}[1]{{\space{}#1}}
4982 \newcommand*{\jbprformat}[1]{%
4983 \if\nopage#1\else
4984 \jb@parse@page{#1}%
4985 \fi
4986 }%
4987 \newcommand{\jbpagesnamesep}{\,}\newcommand{\bibpagesnamesep}{\,}%
4988 \newcommand*{\jb@parse@page}[1]{%
4989 \ifthenelse{\equal{\jbpagename}{}\and\equal{\jbpagesname}{}}{\def\jbpagesnamesep{}}{}%
4990 \ifthenelse{\equal{\bibpagename}{}\and\equal{\bibpagesname}{}}{\def\bibpagesnamesep{}}{}%
4991 \jb@if@contains@ff{#1}{%
4992 \ifjbweareinbib
4993 \bibpagesname\bibpagesnamesep#1%
4994 \else
4995 \jbpagesname\jbpagesnamesep#1%
4996 \fi
4997 }{%
4998 \jb@if@contains@f{#1}{%
4999 \ifjbweareinbib
5000 \bibpagesname\bibpagesnamesep#1%
5001 \else
5002 \jbpagesname\jbpagesnamesep#1%
5003 \fi
5004 }{%
5005 \jb@if@contains@endash{#1}{%
5006 \ifjbweareinbib
5007 \bibpagesname\bibpagesnamesep#1%
5008 \else
5009 \jbpagesname\jbpagesnamesep#1%
5010 \fi
5011 }{%
5012 \jb@if@contains@multiple{#1}{%
5013 \ifjbweareinbib
5014 \bibpagesname\bibpagesnamesep#1%
5015 \else
5016 \jbpagesname\jbpagesnamesep#1%
5017 \fi
5018 }{%
5019 \ifjbweareinbib
5020 \bibpagename\bibpagesnamesep#1%
5021 \else
5022 \jbpagename\jbpagesnamesep#1%
5023 \fi
5024 }%
5025 }%
5026 }%
5027 }%
5028 }%
5029 \newcommand*{\jb@if@contains@multiple}[1]{%
5030 \protected@edef\@tempa{#1}%
5031 \expandafter\expandafter\expandafter\jb@@if@contains@multiple
5032 \expandafter\@tempa\space\@nil
5033 }
5034 \newcommand*{\jb@if@contains@endash}[1]{%
5035 \protected@edef\@tempa{#1}%
5036 \expandafter\jb@@if@contains@endash\@tempa--\@nil}%
5037 \newcommand*{\jb@if@contains@ff}[1]{%
5038 \protected@edef\@tempa{#1}%
5039 \expandafter\jb@@if@contains@ff\@tempa ff\@nil}%
5040 \newcommand*{\jb@if@contains@f}[1]{%
5041 \protected@edef\@tempa{#1}%
5042 \expandafter\jb@@if@contains@f\@tempa f\@nil}%
5043 \newcommand*{\jb@@if@contains@multiple}{}
5044 \def\jb@@if@contains@multiple#1 #2\@nil{%
5045 \ifx\\#2\\% is #2 empty?
5046 \expandafter\@secondoftwo
5047 \else
5048 \expandafter\@firstoftwo
5049 \fi
5050 }%
5051 \newcommand*{\jb@@if@contains@endash}{}
5052 \def\jb@@if@contains@endash#1--#2\@nil{%
5053 \ifx\\#2\\% is #2 empty?
5054 \expandafter\@secondoftwo
5055 \else
5056 \expandafter\@firstoftwo
5057 \fi
5058 }%
5059 \newcommand*{\jb@@if@contains@f}{}
5060 \def\jb@@if@contains@f#1f#2\@nil{%
5061 \ifx\\#2\\% is #2 empty?
5062 \expandafter\@secondoftwo
5063 \else
5064 \expandafter\@firstoftwo
5065 \fi
5066 }%
5067 \newcommand*{\jb@@if@contains@ff}{}
5068 \def\jb@@if@contains@ff#1ff#2\@nil{%
5069 \ifx\\#2\\% is #2 empty?
5070 \let\sndecmd\@secondoftwo
5071 \else
5072 \def\@tempa{ff}%
5073 \def\@tempb{#2}%
5074 \ifx\@tempa\@tempb
5075 \let\sndecmd\@firstoftwo
5076 \else
5077 \let\sndecmd\@secondoftwo
5078 \fi
5079 \fi
5080 \sndecmd
5081 }%
5082 \newcommand*{\jbpagesformat}[1]{#1}%
5083 \newcommand*{\jbafterstartpagesep}{,}%
5084 \newcommand*{\formatpages}{\@ifnextchar[{\jb@formatpages}{\jb@formatpages[]}}%
5085 \def\jb@formatpages[#1]{\@ifnextchar[{\jb@@formatpages[#1]}{\jb@@formatpages[#1][]}}%
5086 \def\jb@@formatpages[#1][#2]#3#4#5{%
5087 \def\jb@afterstartpagesep{#1}%
5088 \def\jb@beforestartpagesep{#2}%
5089 \def\jb@start@page@for@types{#3}%
5090 \def\jb@normalpageldelim{#4}%
5091 \def\jb@normalpagerdelim{#5}%
5092 \ifthenelse{\equal{#1}{}\and\equal{#2}{}%
5093 }{%
5094 \renewcommand*{\jbpagesformat}[1]{%
5095 \jb@normalpageldelim##1\jb@normalpagerdelim}%
5096 }{\jb@start@pagetrue}%
5097 }%
5098 \newcommand*{\formatarticlepages}[3][]{\formatpages[#1]{article}{#2}{#3}}%
5099 \newcommand*{\jb@do@ssed@kerning}{%
5100 \ifjb@ssed@after@author\else
5101 \ifthenelse{\equal{\jb@@edition}{}}{}{%
5102 \ifthenelse{\jb@@edition>9}{%
5103 \ifthenelse{\jb@@edition>99}{%
5104 \ifjb@comma@before@rest\,\,\,\,\,\,\else\kern\jbedwidth\fi
5105 }{%
5106 \ifjb@comma@before@rest\,\,\,\,\else\kern\jbedwidth\fi
5107 }%
5108 }{%
5109 \ifjb@comma@before@rest\,\,\else\kern\jbedwidth\fi
5110 }%
5111 }%
5112 \fi
5113 }%
5114 \newcommand\herename{}
5115 \newcommand*{\jbfirstcitepageranges}{\jb@allow@adding@of@pagerange@for@first@citetrue}
5116 \newcommand*{\jb@add@something@before@page}{%
5117 \ifthenelse{%
5118 \boolean{jb@allow@adding@of@pagerange@for@first@cite}%
5119 \and
5120 \not\equal{\jb@@pages}{}%
5121 \and
5122 \(
5123 \boolean{jb@first@cite}%
5124 \or
5125 \boolean{jb@fullcite@again}%
5126 \)
5127 }{%
5128 \herename%
5129 }{}%
5130 }%
5131 \newcommand*{\jb@before@page@sep}{%
5132 \unskip\jb@kern@sep\space%
5133 \ifjb@ssed@recent@kerned
5134 \jb@do@ssed@kerning%
5135 \fi
5136 \jb@add@something@before@page%
5137 }%
5138 \newcommand*{\jb@formatted@start@page}{%
5139 \ifthenelse{%
5140 \not\equal{\jb@@start@page}{}%
5141 \and
5142 \boolean{jb@allow@adding@of@pagerange}%
5143 \and
5144 \(%
5145 \boolean{jb@start@page}%
5146 \and
5147 \equal{\jb@start@page@for@types@arg}{1}%
5148 \)%
5149 \and\not\boolean{jb@switchidemofflocally}%
5150 }{%
5151 \ifthenelse{\equal{\jb@beforestartpagesep}{}}{}{%
5152 \renewcommand*{\jbbeforestartpagesep}{\jb@beforestartpagesep}}%
5153 \renewcommand*{\jbafterstartpagesep}{\jb@afterstartpagesep}%
5154 \renewcommand*{\jbpagesformat}[1]{%
5155 \jb@normalpageldelim##1\jb@normalpagerdelim}%
5156 \jb@allow@adding@of@pagerangefalse % avoid additional pagerange
5157 \jbbeforestartpagesep%
5158 \ifjb@formatted@pages
5159 \jbprformat{\jb@@start@page}%
5160 \else
5161 \jb@@start@page%
5162 \fi
5163 \ifthenelse{\equal{\jb@@newpagecite}{}}{}{%
5164 \let\jb@before@page@sep\@empty % remove commabeforerest
5165 \jbafterstartpagesep%
5166 }%
5167 }{}%
5168 }
5169 \newcommand*{\jb@@formatted@pages}{%
5170 \ifthenelse{\equal{\jb@@pages}{}}{%
5171 \ifthenelse{\equal{\jb@@newpagecite}{}}{}{%
5172 \jb@before@page@sep%
5173 \jbpagesformat{\jb@@newpagecite}%
5174 }%
5175 }{%
5176 \jb@formatted@start@page%
5177 \ifjb@always@pageranges
5178 \ifjb@first@cite
5179 \ifjb@allow@adding@of@pagerange
5180 \ifjb@formatted@pages
5181 \jb@before@page@sep%
5182 \jbprformat{\jb@@pages}%
5183 \else
5184 \jb@before@page@sep%
5185 \jb@@pages%
5186 \fi
5187 \fi
5188 \fi
5189 \ifthenelse{\equal{\jb@@newpagecite}{}}{}{%
5190 \jb@before@page@sep%
5191 \jbpagesformat{\jb@@newpagecite}%
5192 }%
5193 \else
5194 \ifjb@tested@pageranges
5195 \ifthenelse{\equal{\jb@@newpagecite}{}}{%
5196 \ifjb@allow@adding@of@pagerange
5197 \ifthenelse{\not\equal{\diffpageibidemname}{\samepageibidemname}%
5198 \TE@or
5199 \not\equal{\diffpageibidemmidname}{\samepageibidemmidname}%
5200 }{%
5201 \jb@package@warning{\jb@pkg@name}{%
5202 You have redefined one ore more ibidem macros\MessageBreak
5203 while using `pages=test'. Please note it is\MessageBreak
5204 possible that you did not get the desired\MessageBreak
5205 results}%
5206 }{}%
5207 \ifjb@formatted@pages
5208 \jb@before@page@sep%
5209 \jbprformat{\jb@@pages}%
5210 \else
5211 \jb@before@page@sep%
5212 \jb@@pages%
5213 \fi
5214 \fi
5215 }{%
5216 \jb@before@page@sep%
5217 \jbpagesformat{\jb@@newpagecite}%
5218 }%
5219 \else
5220 \ifthenelse{\equal{\jb@@newpagecite}{}}{}{%
5221 \jb@before@page@sep%
5222 \jbpagesformat{\jb@@newpagecite}%
5223 }%
5224 \fi
5225 \fi
5226 }%
5227 }%
5228 \newcommand*{\jb@checked@kerning}{%
5229 \jb@@formatted@pages\unskip%
5230 }%
5231 \newcommand*{\jb@makecheckedpages}{%
5232 \ifthenelse{\equal{\jb@@newpagecite}{\@empty}}{%
5233 \ifjb@suppress@dot@for@howcited\else
5234 \ifjbcross\else
5235 \ifjb@allow@dot@for@lookat
5236 %% \ifjb@comma@before@rest.\else\unskip.\fi
5237 \ifthenelse{\boolean{jb@comma@before@rest}}{%
5238 \ifthenelse{%
5239 \(
5240 \not\equal{\jb@@pages}{}%
5241 \and
5242 \(
5243 \boolean{jb@always@pageranges}%
5244 \or
5245 \boolean{jb@tested@pageranges}%
5246 \)
5247 \)
5248 \or
5249 \(
5250 \not\equal{\jb@@start@page}{}%
5251 \and
5252 \boolean{jb@allow@adding@of@pagerange}%
5253 \and
5254 \boolean{jb@start@page}%
5255 \and
5256 \equal{\jb@@type}{article}%
5257 \)
5258 }{%
5259 \renewcommand*{\jb@kern@sep}{,}%
5260 }{%
5261 \renewcommand*{\jb@kern@sep}{}%
5262 }%
5263 \jb@checked@kerning%
5264 }{%
5265 \renewcommand*{\jb@kern@sep}{}%
5266 \jb@checked@kerning%
5267 }%
5268 \fi
5269 \fi
5270 \fi
5271 }{%
5272 \ifjb@period
5273 \ifjb@comma@before@rest
5274 \renewcommand*{\jb@kern@sep}{,}%
5275 \jb@checked@kerning%
5276 \else
5277 \renewcommand*{\jb@kern@sep}{}%
5278 \jb@checked@kerning%
5279 \fi
5280 \else
5281 \ifjb@comma@before@rest
5282 \renewcommand*{\jb@kern@sep}{,}%
5283 \jb@checked@kerning%
5284 \else
5285 \renewcommand*{\jb@kern@sep}{}%
5286 \jb@checked@kerning%
5287 \fi
5288 \fi
5289 }%
5290 }%
5291 \newcommand*{\jb@list}{}
5292 \newcommand*{\jb@opcit@list}{}
5293 \newcommand*{\jb@elt}{}
5294 \let\jb@elt\relax
5295 \newtoks\jb@temptoks
5296 \newcommand*{\jb@@append}[2]{%
5297 \ifthenelse{\equal{#2}{}}{%
5298 \protected@xdef#2{#1}%
5299 }{%
5300 \jb@temptoks=\expandafter{#2}%
5301 \protected@xdef#2{\the\jb@temptoks,#1}%
5302 }%
5303 }%
5304 \newcommand*{\jb@append}[2]{%
5305 \jb@if@elem{#1}{#2}{%
5306 }{%
5307 \jb@@append{#1}{#2}%
5308 }%
5309 }%
5310 \newcommand*{\jb@list@tempa}{}
5311 \newcommand*{\jb@list@tempb}{}
5312 \newcommand*{\jb@test@cmd}{}
5313 \newcommand*{\jb@if@elem}[2]{%
5314 \protected@edef\jb@list@tempa{#1}%
5315 \let\jb@test@cmd\@secondoftwo
5316 \@for\jb@list@tempb:=#2\do{%
5317 \ifx\jb@list@tempa\jb@list@tempb
5318 \let\jb@test@cmd\@firstoftwo
5319 \fi
5320 }%
5321 \jb@test@cmd
5322 }%
5323 \newcommand*{\jb@undefineall}[2]{%
5324 \ifthenelse{\equal{#2}{opcit}}{%
5325 \ifthenelse{\equal{\jb@reset@opcit@for}{chapter}}{%
5326 \@ifundefined{resetopcit\thechapter}{%
5327 \global\@namedef{resetopcit\thechapter}{}%
5328 \jb@typeout{Package jurabib Info: Resetting `#2'
5329 for Chapter \thechapter}%
5330 \@for\jb@list@tempa:=#1\do{%
5331 \expandafter\gdef\csname\jb@list@tempa\endcsname{}%
5332 }%
5333 }{\relax}%
5334 }{%
5335 \@ifundefined{resetcf\thesection}{%
5336 \global\@namedef{resetcf\thesection}{}%
5337 \jb@typeout{Package jurabib Info: Resetting `#2'
5338 for Section \thesection}%
5339 \@for\jb@list@tempa:=#1\do{%
5340 \expandafter\gdef\csname\jb@list@tempa\endcsname{}%
5341 }%
5342 }{\relax}%
5343 }%
5344 }{%
5345 \ifthenelse{\equal{\jb@resetfor}{chapter}}{%
5346 \@ifundefined{resetcitefull\thechapter}{%
5347 \global\@namedef{resetcitefull\thechapter}{}%
5348 \jb@typeout{Package jurabib Info: Resetting `#2'
5349 for Chapter \thechapter}%
5350 \@for\jb@list@tempa:=#1\do{%
5351 \expandafter\gdef\csname\jb@list@tempa\endcsname{}%
5352 }%
5353 }{\relax}%
5354 }{%
5355 \@ifundefined{resetcitefull\thesection}{%
5356 \global\@namedef{resetcitefull\thesection}{}%
5357 \jb@typeout{Package jurabib Info: Resetting `#2'
5358 for Section \thesection}%
5359 \@for\jb@list@tempa:=#1\do{%
5360 \expandafter\gdef\csname\jb@list@tempa\endcsname{}%
5361 }%
5362 }{\relax}%
5363 }%
5364 }%
5365 }%
5366 \newcommand*{\jb@showelems}[1]{%
5367 \@for\jb@list@tempa:=#1\do{%
5368 \jb@typeout{\jb@list@tempa:
5369 \expandafter\meaning\csname\jb@list@tempa\endcsname}%
5370 }%
5371 }%
5372 \newcommand*{\jb@firstcitefull}{%
5373 \@ifundefined{jb@resetfor}{}{%
5374 \ifthenelse{%
5375 \(
5376 \equal{\jb@resetfor}{chapter}%
5377 \or
5378 \equal{\jb@resetfor}{section}%
5379 \)
5380 \and\value{citefull}=0%
5381 }{%
5382 \jb@undefineall{\jb@list}{citefull=first}%
5383 }{}%
5384 }%
5385 \ifthenelse{%
5386 \not\boolean{jbweareinbib}%
5387 \and%
5388 \boolean{jb@firstcite@full}%
5389 \and%
5390 \equal{\jb@@cite@fullfirst@switch}{1}%
5391 \and\not\boolean{jb@all@full}%
5392 \and\not\boolean{jb@no@lookat@for@bib}%
5393 }{%
5394 \ifthenelse{\equal{\@nameuse{citefull@\jb@@newauthorcite}}{citefull}}{%
5395 \let\jb@extraspace\@empty %!!!
5396 \@ifundefined{jb@morethanonecite}{%
5397 \jb@makecheckednameibidem%
5398 }{\relax}%
5399 \ifjb@ibidem@with@name@and@title\else
5400 \@ifundefined{ibidem}{\let\jb@extraspace\space}{}%
5401 \fi
5402 }{% the first cite
5403 \jb@first@citetrue
5404 \ifthenelse{\not\equal{\jb@start@page@for@types@arg}{1}}{%
5405 \jb@allow@adding@of@pagerangefalse
5406 }{}%
5407 \global\@namedef{citefull@\jb@@newauthorcite}{citefull}%
5408 \global\@namedef{NORMCR@\jb@@newauthorcite}{}%
5409 \global\@namedef{ARTCR@\jb@@newauthorcite}{}%
5410 \global\@namedef{INCCR@\jb@@newauthorcite}{}%
5411 \jb@append{citefull@\jb@@newauthorcite}{\jb@list}%
5412 \jbonlyforfirstcitefullbegin%
5413 \let\jb@extraspace\@empty
5414 \ifjb@lookat
5415 \ifjb@allow@lookat@for@fullcite
5416 \begingroup
5417 \jb@restore@auxfile
5418 \label{look@\@citeb:\jb@reset@look@label@for}%
5419 \hyper@jbanchorstart{look@\@citeb:\jb@reset@look@label@for}\hyper@jbanchorend%
5420 \endgroup
5421 \@namedef{look@\jb@@newauthorcite}{firsttime}%
5422 \fi
5423 \fi
5424 \ifjb@debug
5425 \textcolor[named]{Blue}{%
5426 \ifjb@debug@br[\fi
5427 \jb@formatted@co@author@in\jb@use@fullcite%
5428 \ifjb@debug@br]\fi}%
5429 \else
5430 \jb@formatted@co@author@in\jb@use@fullcite%
5431 \fi
5432 \jbonlyforfirstcitefullend%
5433 \let\jb@makeagainfullcite\@empty
5434 \let\OpCit\@empty % ??????
5435 \jb@relaxcommandsforfullcite
5436 }%
5437 }{%
5438 \jb@allow@lookat@for@fullcitefalse
5439 }%
5440 }%
5441 \newcommand*{\jb@ssed@format}{%
5442 \ifthenelse{\equal{\jb@@edition}{}}{}{%
5443 \textsuperscript{\jb@ssed@size\jb@@edition}}}%
5444 \newcommand*{\jb@ssed@notitle@format}{%
5445 \ifthenelse{\equal{\jb@@edition}{}}{}{%
5446 \textsuperscript{\jb@ssed@size\jb@@edition}%
5447 }%
5448 }%
5449 \newcommand{\jb@@samework@edition@differs}{}%
5450 \newlength{\jbedwidth}
5451 \newcommand*{\jb@make@superscript@edition}{%
5452 \ifthenelse{\equal{\jb@@edition}{\@empty}}{}{%
5453 \ifjb@ssed@all
5454 \renewcommand*{\jb@checked@edition}{%
5455 \ifthenelse{\equal{\jb@@mult@switch}{1}\TE@or\equal{\jb@@title@switch}{1}}{%
5456 \ifthenelse{%
5457 \equal{\jb@@samework@edition@differs}{1}%
5458 }{%
5459 \let\jb@checked@title\@empty
5460 \jb@ssed@format%
5461 \settowidth{\jbedwidth}{\jb@ssed@format}%
5462 \ifjb@ssed@kerning@wanted\ifjb@ssed@after@author\else
5463 \kern-\jbedwidth\jb@ssed@recent@kernedtrue\fi
5464 \fi
5465 }{%
5466 \renewcommand*{\jb@aftertitleedition}{\jb@ssed@format}%
5467 }%
5468 }{%
5469 \jb@ssed@notitle@format%
5470 }%
5471 }%
5472 \else
5473 \ifjb@ssed@commented
5474 \renewcommand*{\jb@checked@edition}{%
5475 \ifthenelse{\equal{\jb@@type}{commented}}{%
5476 \ifthenelse{\equal{\jb@@mult@switch}{1}\TE@or\equal{\jb@@title@switch}{1}}{%
5477 \ifthenelse{%
5478 \equal{\jb@@samework@edition@differs}{1}%
5479 }{%
5480 \let\jb@checked@title\@empty
5481 \jb@ssed@format%
5482 \settowidth{\jbedwidth}{\jb@ssed@format}%
5483 \ifjb@ssed@kerning@wanted\ifjb@ssed@after@author\else
5484 \kern-\jbedwidth\jb@ssed@recent@kernedtrue\fi
5485 \fi
5486 }{%
5487 \renewcommand*{\jb@aftertitleedition}{\jb@ssed@format}%
5488 }%
5489 }{%
5490 \jb@ssed@notitle@format%
5491 }%
5492 }{}%
5493 }%
5494 \else
5495 \ifjb@ssed@sw
5496 \ifthenelse{\equal{\jb@@edition@switch}{1}}{%
5497 \renewcommand*{\jb@checked@edition}{%
5498 \ifthenelse{\equal{\jb@@mult@switch}{1}\TE@or\equal{\jb@@title@switch}{1}}{%
5499 \ifthenelse{%
5500 \equal{\jb@@samework@edition@differs}{1}%
5501 }{%
5502 \let\jb@checked@title\@empty
5503 \jb@ssed@format%
5504 \settowidth{\jbedwidth}{\jb@ssed@format}%
5505 \ifjb@ssed@kerning@wanted\ifjb@ssed@after@author\else
5506 \kern-\jbedwidth\jb@ssed@recent@kernedtrue\fi
5507 \fi
5508 }{%
5509 \renewcommand*{\jb@aftertitleedition}{\jb@ssed@format}%
5510 }%
5511 }{%
5512 \jb@ssed@notitle@format%
5513 }%
5514 }%
5515 }{}%
5516 \else
5517 \ifjb@ssed@mult@works
5518 \renewcommand\jb@checked@edition{%
5519 \ifthenelse{%
5520 \boolean{jb@ssed@mult@works}%
5521 \and
5522 \equal{\jb@@samework@edition@differs}{1}%
5523 }{%
5524 \let\jb@checked@title\@empty
5525 \jb@ssed@format%
5526 \settowidth{\jbedwidth}{\jb@ssed@format}%
5527 \ifjb@ssed@kerning@wanted\ifjb@ssed@after@author\else
5528 \kern-\jbedwidth\jb@ssed@recent@kernedtrue\fi
5529 \fi
5530 }{}%
5531 }%
5532 \fi
5533 \fi
5534 \fi
5535 \fi
5536 }%
5537 }%
5538 \newtoks\jb@ta\newtoks\jb@tb
5539 \newcommand\jbauthorinfo{%
5540 \begingroup\@sanitize % needed to deactivate \" etc.
5541 \jb@deactivate@babel
5542 \catcode`\ =10 % but treat spaces as usual (gobble between arguments)
5543 \jb@define@verbatim@
5544 }
5545 \newcommand\jb@define@verbatim@[2]{%
5546 \def\jb@curr@key{#2}\def\jb@list{}\jb@do@authorinfo#1\jb@end\endgroup}
5547 \newcommand\jb@curr@cite{}
5548 \newcommand\jb@last@cite{}
5549 \newcommand\jb@citeasedn[1]{\global\@namedef{jb@#1}{}}
5550 \newcommand\jb@check@edn[1]{%
5551 \@ifundefined{jb@#1}{%
5552 \def\jb@@samework@edition@differs{0}%
5553 }{%
5554 \def\jb@@samework@edition@differs{1}%
5555 }%
5556 }
5557 \def\jb@do@authorinfo#1#2\jb@end{%
5558 \jb@ta=\expandafter{\jb@list}%
5559 \protected@edef\@tempa{#1}%
5560 \protected@edef\@tempa{\expandafter\strip@prefix\meaning\@tempa}%
5561 \jb@tb=\expandafter{\@tempa}%
5562 \ifthenelse{\equal{#2}{}}{%
5563 \@ifundefined{\the\jb@ta\the\jb@tb}{%
5564 }{%
5565 \protected@write\@auxout{}{%
5566 % save previous label, and current label:
5567 \string\csname\space jb@citeasedn\string\endcsname{\@nameuse{\the\jb@ta\the\jb@tb}}^^J%
5568 \string\csname\space jb@citeasedn\string\endcsname{\jb@curr@key}%
5569 }%
5570 }%
5571 \expandafter\global\expandafter\@namedef\expandafter{\the\jb@ta\the\jb@tb\expandafter}\expandafter{\jb@curr@key}%
5572 }{%
5573 \jb@do@authorinfo#2\jb@end
5574 }%
5575 }
5576 \newcommand\jb@@last@@author{}
5577 \newcommand\jb@@new@@author{}
5578 \newcommand\jb@@last@@title{}
5579 \newcommand\jb@@new@@title{}
5580 \newcommand\jb@@last@fullname@author{}
5581 \newcommand\jb@@new@fullname@author{}
5582 \newcommand{\jb@do@ibidem@name@title@test}{%
5583 \def\jb@@new@fullname@author{INTT@\jb@@fullname}% INTT= ibidem name & title test
5584 \ifthenelse{\equal{\jb@@last@fullname@author}{\jb@@new@fullname@author}%
5585 \and\not\equal{\jb@@newauthorcite}{\jb@@lastauthorcite}%
5586 }{%
5587 \jb@same@author@different@worktrue
5588 }{%
5589 \jb@same@author@different@workfalse
5590 }%
5591 \global\let\jb@@last@fullname@author\jb@@new@fullname@author
5592 }%
5593 \newcommand*{\jb@do@if@multiple@bibetal}{\def\jb@@title@switch{1}}
5594 \newcommand*{\jb@make@opcit}{%
5595 \ifjbweareinbib\else
5596 \ifjbcross\else
5597 \ifjb@opcit
5598 \@ifundefined{jb@reset@opcit@for}{}{%
5599 \ifthenelse{%
5600 \not\equal{\jb@reset@opcit@for}{}%
5601 \and\value{opcit}=0%
5602 }{%
5603 \jb@undefineall{\jb@opcit@list}{opcit}%
5604 }{}%
5605 }%
5606 \ifthenelse{\equal{\@nameuse{opcit@\jb@@newauthorcite}}{cited}}{%
5607 \jb@@opcittrue
5608 %% INSERT A WARNING ABOUT AMBIGUOUS CITATIONS!!!!!!!!!!!!
5609 }{%
5610 \global\@namedef{opcit@\jb@@newauthorcite}{cited}%
5611 \hyper@jbanchorstart{opcit.\jb@@newauthorcite.\jb@reset@opcit@label@for}%
5612 \hyper@jbanchorend%
5613 \jb@append{opcit@\@citeb}{\jb@opcit@list}%
5614 \jb@@opcitfalse
5615 }%
5616 \fi
5617 \fi
5618 \fi
5619 }%
5620 \newcommand*{\jb@make@pageranges@for@first@cite}{%
5621 \ifthenelse{\equal{\@nameuse{citefull@\@citeb}}{citefull}%
5622 \and\not\boolean{jb@allow@adding@of@pagerange@for@first@cite}%
5623 }{%
5624 \let\jbPAGES\@gobble
5625 \let\jbpages\@gobble
5626 \let\jbPages\@gobble
5627 \let\jbartPages\@gobble
5628 }{%
5629 \ifthenelse{\(\equal{\jb@@type}{article}\or\equal{\jb@@type}{periodical}%
5630 \)%
5631 \and\boolean{jb@allow@adding@of@pagerange@for@first@cite}%
5632 }{% do nothing
5633 }{%
5634 \let\jbPAGES\@gobble
5635 \let\jbpages\@gobble
5636 \let\jbPages\@gobble
5637 \let\jbartPages\@gobble
5638 }%
5639 }%
5640 }
5641 \def\@citex[#1][#2]#3{%
5642 \stepcounter{jb@cites@in@footnote}% \thejb@cites@in@footnote
5643 \ifjb@ssed@mult@works\jb@check@edn{#3}\fi
5644 \ifjb@foot
5645 \renewcommand*{\@cite}[2]{\unskip\footnote{##1##2\ifthenelse{\boolean{jb@footnote@period}}{\unskip.}{}}}%
5646 \else
5647 \renewcommand*{\@cite}[2]{%
5648 \ifjb@fn\else\ifjbweareinbib\else\jb@open\fi\fi
5649 ##1##2%
5650 \ifjb@fn\else\ifjbweareinbib\else\jb@close\fi\fi
5651 }%
5652 \fi
5653 \ifjb@natbib@opt@arg@order
5654 \def\jb@@newcoauthorcite{#1}%
5655 \ifx\relax#2\relax
5656 \def\jb@@newpagecite{#2}%
5657 \else
5658 \ifjb@formatted@pages
5659 \def\jb@@newpagecite{\jbprformat{#2}}%
5660 \else
5661 \def\jb@@newpagecite{#2}%
5662 \fi
5663 \fi
5664 \else
5665 \ifx\relax#1\relax
5666 \def\jb@@newpagecite{#1}%
5667 \else
5668 \ifjb@formatted@pages
5669 \def\jb@@newpagecite{\jbprformat{#1}}%
5670 \else
5671 \def\jb@@newpagecite{#1}%
5672 \fi
5673 \fi
5674 \def\jb@@newcoauthorcite{#2}%
5675 \fi
5676 \ifjb@no@nested@crossrefs
5677 \let\origcrossref\jbcrossrefchecked
5678 \renewcommand*{\jbcrossrefchecked}[2][]{}%
5679 \let\origbibces\bibces
5680 \renewcommand*{\bibces}{}%
5681 \fi
5682 \let\@citea\@empty%
5683 \@cite{%
5684 \@for\@citeb:=#3\do{%
5685 \@citea%
5686 \def\@citea{;\penalty\@m\ %
5687 \@ifundefined{jb@morethanonecite}{%
5688 \global\@namedef{jb@morethanonecite}{}}{}%
5689 \ifthenelse{\equal{\jb@@newpagecite}{\@empty}}{\relax}{%
5690 \jb@package@warning{\jb@pkg@name}{%
5691 I assume you know what you're doing %
5692 using `\jb@@newpagecite'\MessageBreak
5693 on a citation with more than one\MessageBreak
5694 author}{\relax}%
5695 }%
5696 }%
5697 \@ifundefined{b@\@citeb}{}{%
5698 \protected@edef\@tempa{\csname b@\@citeb\endcsname}%
5699 \protected@edef\jb@@new@@author{\expandafter\jb@fifthofseven\@tempa\@empty}%
5700 }%
5701 \ifthenelse{\equal{\jb@@last@@author}{\jb@@new@@author}\and\not\equal{\jb@@new@@author}{}}{%
5702 \jb@same@fullauthortrue
5703 }{%
5704 \jb@same@fullauthorfalse
5705 }%
5706 \global\let\jb@@last@@author\jb@@new@@author
5707 \@ifundefined{jb@morethanonecite}{\relax}{%
5708 \let\jb@@newcoauthorcite\@empty
5709 \let\idemname\idemmidname
5710 }%
5711 \edef\@citeb{\expandafter\@firstofone\@citeb\@empty}%
5712 \if@filesw
5713 \immediate\write
5714 \@auxout{%
5715 \jb@makehowcited\string\citation{\@citeb}%
5716 }%
5717 \fi
5718 \@ifundefined{b@\@citeb\@extra@b@citeb}{%
5719 \mbox{\reset@font\bfseries ?}%
5720 \G@refundefinedtrue
5721 \@latex@warning{%
5722 Citation `\@citeb' on page \thepage \space undefined
5723 }%
5724 }{%
5725 \begingroup
5726 \jb@extract%
5727 \ifjb@always@pageranges\else\ifjb@tested@pageranges
5728 \ifthenelse{\equal{\jb@@newpagecite}{}}{}{\jb@make@pageranges@for@first@cite}%
5729 \else\jb@make@pageranges@for@first@cite\fi\fi
5730 \def\jb@@newauthorcite{\@citeb}%
5731 \jb@make@opcit%
5732 \jb@index@as@alias{\@citeb}%
5733 \jb@changefontsforfullcite
5734 \ifjb@allow@hyper@cite\hyper@jblinkstart{\@citeb}\fi
5735 \jb@extract%
5736 \jb@do@ibidem@name@title@test%
5737 \ifthenelse{%
5738 \equal{\jb@@fullname}{\@empty}%
5739 \and
5740 \equal{\jb@@author}{\@empty}%
5741 }{%
5742 \let\jbhowsepbeforetitle\@empty
5743 }{}%
5744 \jbonlyforcitations%
5745 \jb@cite@title@for@type@hook%
5746 \jb@cite@full@first@fortype@hook%
5747 \jb@cite@title@for@work@hook%
5748 \jb@start@page@for@type@hook%
5749 \jb@make@superscript@edition%
5750 \@ifundefined{jb@fm@\@citeb}{}{%
5751 \ifthenelse{\equal{\jb@@mult@switch}{0}}{%
5752 \@ifundefined{jb@fmmess@\@citeb}{% only one message per entry
5753 \global\@namedef{jb@fmmess@\@citeb}{}%
5754 \jb@package@warning{\jb@pkg@name}{%
5755 Multiple use of `et. al.' for the author(s)\MessageBreak
5756 of `#3' \MessageBreak
5757 detected, printing the title to\MessageBreak
5758 avoid ambiguity}}{}}{\relax}%
5759 \jb@do@if@multiple@bibetal% the things to do if true
5760 }%
5761 \ifjb@babel
5762 \ifthenelse{%
5763 \equal{\jb@@language}{\bbl@main@language}%
5764 }{%
5765 }{%
5766 \ifthenelse{%
5767 \equal{\jb@@language}{\@empty}%
5768 }{%
5769 \expandafter\jbselectlanguage%
5770 \expandafter{\bbl@main@language}%
5771 }{%
5772 \language=\csname l@\jb@@language\endcsname\relax%
5773 }%
5774 }%
5775 \jb@check@language@start%
5776 \fi
5777 \jb@checktitlefields
5778 \@ifundefined{jb@morethanonecite}{\jb@makeibidem}{\relax}%
5779 \jb@makeidem
5780 \jb@firstcitefull
5781 \jb@checked@etal
5782 \jb@makeagainfullcite%
5783 \jb@relaxforemptyauthor
5784 \jb@warningfootciteusage
5785 \jb@maketitlewishestrue
5786 \jb@cite@no@title@for@type@hook%
5787 \ifjb@debug
5788 \textcolor[named]{Dandelion}{%
5789 \ifjb@debug@br[\fi\jb@makecheckedcite\ifjb@debug@br]\fi}%
5790 \else
5791 \jb@makecheckedcite%
5792 \fi
5793 \OpCit%
5794 \ifjb@lookat
5795 \ifjb@firstcite@full
5796 \ifjb@allow@lookat@for@fullcite
5797 \ifjb@all@full\else
5798 \ifjb@fn\else
5799 \ifjb@endnotes\else
5800 \ClassError{\jb@pkg@name}{%
5801 Do not use package option `lookat' %
5802 without\MessageBreak using footnotes %
5803 (at least for the initial\MessageBreak
5804 citations)%
5805 }{%
5806 I don't know what to use for referencing %
5807 when you aren't using\MessageBreak
5808 footnotes at least for the initial %
5809 citations. If you can't \MessageBreak
5810 believe it, type `r' and check your %
5811 citations. You will see\MessageBreak
5812 the labels of the chapter or sections.%
5813 }%
5814 \fi
5815 \fi
5816 \ifthenelse{%
5817 \equal{\@nameuse{look@\@citeb}}{firsttime}%
5818 }{%
5819 \relax
5820 }{%
5821 \unskip\space\lookatprefix%
5822 \ifjb@allow@hyper@cite\hyper@jblinkend\fi
5823 \endgroup
5824 \ifjb@vario
5825 \vref{look@\@citeb:\jb@reset@look@label@for}%
5826 \else
5827 \ref{look@\@citeb:\jb@reset@look@label@for}%
5828 \fi
5829 \begingroup
5830 \ifjb@allow@hyper@cite\hyper@jblinkstart{\@citeb}\fi
5831 \lookatsuffix%
5832 \jb@extract
5833 }%
5834 \fi % allfull end
5835 \fi % allow@lookat@for@fullcite end
5836 \fi % jb@firstcite@full end
5837 \fi % jb@lookat end
5838 \ifjb@natbib@opt@arg@order
5839 \jb@checkperiod{#2}%
5840 \else
5841 \jb@checkperiod{#1}%
5842 \fi
5843 \jb@extract@starting@page{\jb@@pages}%
5844 \ifjb@formatted@pages
5845 \ifthenelse{%
5846 \boolean{jbnoformatafterstartpage}%
5847 \and\not\equal{\jb@@start@page}{}%
5848 \and\equal{\jb@start@page@for@types@arg}{1}%
5849 }{%
5850 \ifjb@natbib@opt@arg@order
5851 \def\jb@@newpagecite{#2}%
5852 \else
5853 \def\jb@@newpagecite{#1}%
5854 \fi
5855 }{}%
5856 \fi
5857 \jb@makecheckedpages
5858 \jb@check@language@end%
5859 \ifjb@allow@hyper@cite\hyper@jblinkend\fi
5860 \endgroup
5861 \ifjb@natbib@opt@arg@order
5862 \gdef\jb@@lastcoauthorcite{#1}%
5863 \ifx\relax#2\relax
5864 \gdef\jb@@lastpagecite{#2}%
5865 \else
5866 \ifjb@formatted@pages
5867 \gdef\jb@@lastpagecite{\jbprformat{#2}}%
5868 \else
5869 \gdef\jb@@lastpagecite{#2}%
5870 \fi
5871 \fi
5872 \else
5873 \ifx\relax#1\relax
5874 \gdef\jb@@lastpagecite{#1}%
5875 \else
5876 \ifjb@formatted@pages
5877 \gdef\jb@@lastpagecite{\jbprformat{#1}}%
5878 \else
5879 \gdef\jb@@lastpagecite{#1}%
5880 \fi
5881 \fi
5882 \gdef\jb@@lastcoauthorcite{#2}%
5883 \fi
5884 \ifjbweareinbib\else\gdef\jb@@lastauthorcite{#3}\fi
5885 \global\let\jb@morethanonecite\@undefined
5886 \let\ibidem\@undefined
5887 \ifjb@no@nested@crossrefs
5888 \global\let\jbcrossrefchecked\origcrossref
5889 \fi
5890 \ifjb@fn
5891 \let\jb@close\@empty
5892 \let\jb@open\@empty
5893 \fi
5894 \stepcounter{citefull}%
5895 \stepcounter{opcit}%
5896 \jb@allow@adding@of@pagerangetrue
5897 }%
5898 }%
5899 \global\jb@fullcite@againfalse
5900 \jb@noauthorforcitetitlefalse
5901 }{}%
5902 \ifjb@fn\else\jb@fnfalse\fi
5903 \jb@ssed@recent@kernedfalse
5904 }%
5905 \AtBeginDocument{%
5906 \let\citetitle\jbcitetitle
5907 \let\fullcite\jbfullcite
5908 \let\footfullcite\jbfootfullcite
5909 \let\footcite\jbfootcite
5910 \let\footcitetitle\jbfootcitetitle
5911 }%
5912 \InputIfFileExists{jurabib.cfg}{%
5913 \jb@typeout{Package jurabib Info: *** Local config file `jurabib.cfg' used ***^^J}}{%
5914 \jb@typeout{Package jurabib Info: *** No local config file found ***^^J}%
5915 }%
5916 \endinput
5917 %%
5918 %% End of file `jurabib.sty'.