
如何更改命令,例如\textcite[][8]{example}
顯示p.8
而不是p.~8
在文字中,同時按原樣列印後注(如果它與頁碼不同)。
我\DeclareFieldFormat{postnote}{\pno#1}
在查看 biblatex 手冊中的第 3.13.3 節後嘗試使用,但是——毫不奇怪——當後記不是頁面時它不起作用:
微量元素:
\documentclass{article}
\usepackage{filecontents}
\begin{filecontents*}{\jobname.bib}
@ARTICLE{example,
author = {Other, Anthony Norman},
title = {Some things I did},
year = {2014},
journal = {J.~Irrep. Res.},
volume = {1},
number = {1},
pages = {1-10}
}
\end{filecontents*}
\usepackage[backend=biber,style=authoryear-ibid]{biblatex}
\DeclareFieldFormat{postnote}{\pno#1}
\addbibresource{\jobname.bib}
\begin{document}
Hello\textcite[][8]{example}. But \textcite[][Table~5]{example}
\printbibliography
\end{document}
答案1
只需保留標準定義\DeclareFieldFormat{postnote}{\mkpageprefix[pagination]{#1}}
並添加
\renewcommand*{\ppspace}{}
但請注意,省略「p.」/「pp.」之間的空格。頁碼看起來非常奇怪(我甚至會說很糟糕),並且在我所知道的任何語言中都不是常態。
微量元素
\documentclass{article}
\usepackage[backend=biber,style=authoryear-ibid]{biblatex}
\addbibresource{biblatex-examples.bib}
\renewcommand*{\ppspace}{}
\begin{document}
Lorem \textcite[][8]{sigfridsson} ipsum \textcite[][Table~5]{sigfridsson}.
\end{document}