|
345 | 345 | \pagestyle{$pagestyle$} |
346 | 346 | $endif$ |
347 | 347 | $if(csl-refs)$ |
| 348 | +% definitions for citeproc citations |
| 349 | +\NewDocumentCommand\citeproctext{}{} |
| 350 | +\NewDocumentCommand\citeproc{mm}{% |
| 351 | +\begingroup\def\citeproctext{#2}\cite{#1}\endgroup} |
| 352 | +\makeatletter |
| 353 | +% allow citations to break across lines |
| 354 | +\let\@cite@ofmt\@firstofone |
| 355 | +% avoid brackets around text for \cite: |
| 356 | +\def\@biblabel#1{} |
| 357 | +\def\@cite#1#2{{#1\if@tempswa , #2\fi}} |
| 358 | +\makeatother |
348 | 359 | \newlength{\cslhangindent} |
349 | 360 | \setlength{\cslhangindent}{1.5em} |
350 | 361 | \newlength{\csllabelwidth} |
351 | 362 | \setlength{\csllabelwidth}{3em} |
352 | | -\newlength{\cslentryspacingunit} % times entry-spacing |
353 | | -\setlength{\cslentryspacingunit}{\parskip} |
354 | | -\newenvironment{CSLReferences}[2] % #1 hanging-ident, #2 entry spacing |
355 | | - {% don't indent paragraphs |
356 | | - \setlength{\parindent}{0pt} |
357 | | - % turn on hanging indent if param 1 is 1 |
358 | | - \ifodd #1 |
359 | | - \let\oldpar\par |
360 | | - \def\par{\hangindent=\cslhangindent\oldpar} |
361 | | - \fi |
362 | | - % set entry spacing |
363 | | - \setlength{\parskip}{#2\cslentryspacingunit} |
364 | | - }% |
365 | | - {} |
| 363 | +\newenvironment{CSLReferences}[2] % #1 hanging-indent, #2 entry-spacing |
| 364 | +{\begin{list}{}{% |
| 365 | + \setlength{\itemindent}{0pt} |
| 366 | + \setlength{\leftmargin}{0pt} |
| 367 | + \setlength{\parsep}{0pt} |
| 368 | + % turn on hanging indent if param 1 is 1 |
| 369 | + \ifodd #1 |
| 370 | + \setlength{\leftmargin}{\cslhangindent} |
| 371 | + \setlength{\itemindent}{-1\cslhangindent} |
| 372 | + \fi |
| 373 | + % set entry spacing |
| 374 | + \setlength{\itemsep}{#2\baselineskip}}} |
| 375 | +{\end{list}} |
366 | 376 | \usepackage{calc} |
367 | | -\newcommand{\CSLBlock}[1]{#1\hfill\break} |
368 | | -\newcommand{\CSLLeftMargin}[1]{\parbox[t]{\csllabelwidth}{#1}} |
369 | | -\newcommand{\CSLRightInline}[1]{\parbox[t]{\linewidth - \csllabelwidth}{#1}\break} |
| 377 | +\newcommand{\CSLBlock}[1]{\hfill\break\parbox[t]{\linewidth}{\strut\ignorespaces#1\strut}} |
| 378 | +\newcommand{\CSLLeftMargin}[1]{\parbox[t]{\csllabelwidth}{\strut#1\strut}} |
| 379 | +\newcommand{\CSLRightInline}[1]{\parbox[t]{\linewidth - \csllabelwidth}{\strut#1\strut}} |
370 | 380 | \newcommand{\CSLIndent}[1]{\hspace{\cslhangindent}#1} |
371 | 381 | $endif$ |
372 | 382 | $for(header-includes)$ |
|
0 commit comments