Biblatex:为某些出版物添加“已提交”或“将出现在”

Biblatex:为某些出版物添加“已提交”或“将出现在”

我的一些文章被接受出版,其他的则没有。在我的参考书目中,我必须将尚未接受的文章标为“已提交”,将已接受但未出版的文章标为“将出现在”。此外,会议论文的参考文献应包括“论文提交给”。我添加了三个不同案例的描述,以说明问题,这些案例都与使用 \fullcite 制作的列表和参考书目有关。

enter image description here

%CLASS and GEOMETRY and PDFs
\documentclass{report}
\usepackage[
    a4paper,
    bindingoffset=0.5cm, left=2.6cm,right=2.6cm,top=2.6cm,bottom=3cm, 
    footskip=.67cm]
    {geometry}
\usepackage{pdfpages}

%FONT and language
\usepackage{gensymb}
\usepackage{polyglossia}
\setdefaultlanguage{english}
\usepackage{xeCJK}
\usepackage{ruby}
\renewcommand{\rubysize}{0.5} % default: 0.4
\renewcommand{\rubysep}{-0.3ex}
\setCJKmainfont{TakaoMincho}

%FLOATS - table and graphics
\usepackage{float}
\usepackage{array} 
\usepackage{longtable}
\setlength\tabcolsep{2mm}
\usepackage{enumitem}
\setlist{noitemsep}

% TOC og LOFT mellemrum
\usepackage{tocloft}
\setlength{\cftbeforesecskip}{2mm} 
\setlength{\cftbeforefigskip}{2mm} 
\setlength{\cftbeforetabskip}{2mm}
\setcounter{secnumdepth}{-3}

%GRAPHICS
\usepackage{graphicx}
\usepackage{tcolorbox}

%SHORT CUTS
\newcommand{\sub}[1]{\textsubscript{#1}}
\newcommand{\ul}[1]{\underline{#1}}
\newcommand{\arrl}{\textleftarrow}
\newcommand{\arrr}{\textrightarrow}
\newcommand{\arrlr}{\textleftrightarrow}

\newcommand{\prs}[1]{PrS\sub{#1}}
\newcommand{\pos}[1]{PoS\sub{#1}}
\newcommand{\obs}[1]{ObS\sub{#1}}
\newcommand{\ds}[1]{DS\sub{#1}}

%BIBLIOGRAPHY
\usepackage[
    backend=biber,
    sortlocale=danish,
    firstinits=true,
    style=authoryear-icomp,
    dashed=false,
    doi=false,
    isbn=false,
    url=true,]
    {biblatex}
\DeclareNameAlias{sortname}{family-given}
\renewbibmacro{in:}{%
    \ifboolexpr{%
        test {\ifentrytype{article}}%
        or
        test {\ifentrytype{inproceedings}}%
    }{}{\printtext{\bibstring{in}\intitlepunct}}%
    }
\makeatletter
\newcommand{\tempmaxup}[1]{\def\blx@maxcitenames{99}#1}
\makeatother
\DeclareCiteCommand{\fullcite}[\tempmaxup] %sets name order to last-first 
    {\usebibmacro{prenote}}
    {\usedriver
        {\DeclareNameAlias{sortname}{default}}
        {\thefield{entrytype}}}
    {\multicitedelim}
    {\usebibmacro{postnote}}

\addbibresource{\jobname.bib}
\usepackage{filecontents}
\begin{filecontents}{\jobname.bib}
    @incollection{winslow2018,
        title = {Theorizing {{Lesson Study}}: {{Two}} Related Frameworks and Two {{Danish}} Case-Studies},
        booktitle = {({{To}} Appear) {{Mathematics Lesson Study Around}} the {{World}}: {{Theoretical}} and Methodological Issues},
        series = {Springer book series of ICME},
        publisher = {{Springer}},
        date = {2018},
        author = {Winsløw, Carl and Bahn, Jacob and Rasmussen, Klaus},
        editor = {Quaresma, Marisa and Winsløw, Carl and Clivaz, Stéphane and da Ponte, João and Ní Shúilleabháin, Aoibhinn and Takahashi, Akihiko},

    }
    @article{bahn2017c,
        title = {Evolution of Teachers' Anticipation of Didactical Situations in the Course of Three Lesson Studies},
        journaltitle = {(article submitted for) Annales de didactique et de Sciences Cognitives},
        date = {2017},
        author = {Bahn, Jacob},

    }

    @inproceedings{bahn2017d,
        location = {{Nagoya, Japan}},
        title = {How Infrastructures of Lesson Studies Impact on Teachers' Learning},
        eventtitle = {(Paper Submitted to) {{WALS Conference}} 2017},
        year = {2017/11/24-26},
        author = {Bahn, Jacob},

    }
\end{filecontents}

%TITLE and AUTHOR and FRONTPAGE
\usepackage{authblk}
\usepackage{eso-pic}

%FONT 
\setmainfont{Liberation Serif}

\begin{document}
\chapter{List of all papers and abstracts produced }
\noindent \fullcite{bahn2017c}.
\bigskip \noindent \fullcite{bahn2017d}.
\bigskip \noindent \fullcite{winslow2018}.
\section{References} % REFERENCES  ---------------------------------
\sloppy
\printbibliography[heading=none]
\end{document}

答案1

最直接的解决方案是将锁步法的答案延伸到本地化 bibtex/biblatex 条目中的术语

\documentclass{article}
\usepackage[style=authoryear]{biblatex}
\addbibresource{biblatex-examples.bib}

\usepackage{filecontents}
\begin{filecontents*}{\jobname.bib}
@incollection{A01,
  author = {Author, A.},
  booktitle = {Foo},
  editor = {Emma Ditor},
  year = {2001},
  title = {Alpha},
  pubstate = {toappear},
}
\end{filecontents*}
\addbibresource{\jobname.bib}

\NewBibliographyString{toappear}
\DefineBibliographyStrings{english}{%
  toappear = {to appear},
}

\renewbibmacro*{in:}{%
  \iffieldundef{pubstate}
    {}
    {\printfield{pubstate}%
     \setunit{\addspace}%
     \clearfield{pubstate}}%
  \printtext{%
    \bibstring{in}\intitlepunct}}

\begin{document}
\cite{A01,westfahl:space}
\printbibliography
\end{document}

处理不同介词的更复杂的解决方案是

\NewBibliographyString{toappearin}
\NewBibliographyString{submittedto}
\DefineBibliographyStrings{english}{%
  toappearin  = {to appear in},
  submittedto = {submitted to},
}

\renewbibmacro*{in:}{%
  \ifboolexpr{not test {\iffieldundef{pubstate}}
              and (test {\iffieldequalstr{pubstate}{toappearin}}
                   or test{\iffieldequalstr{pubstate}{submittedto}})}
    {\printtext{%
       \printfield{pubstate}\intitlepunct}%
     \clearfield{pubstate}}
    {\printtext{%
       \bibstring{in}\intitlepunct}}}

此外:此解决方案与此处揭示的导出技巧结合使用效果完美:https://github.com/retorquere/zotero-better-bibtex/wiki/Customized-Exports

相关内容