私は、BibLaTeX の\footcite
- コマンドを使用して、参考文献データを脚注に入れています。行末に短いキーワード「W:」(「In:」の翻訳) を配置することは避けたいと思います。この行は、\renewcommand{\intitlepunct}{\addcolon\nobreakspace}
コマンドを使用して配置された参考文献の内容にのみ影響します\printbibliography
(参照:参考文献の bibstring 直後の行分割防止)。
BibLaTeX パッケージのドキュメント (106 ページ) によると、カウンタhighnamepenalty
とをlownamepenalty
設定して、名前の頭文字と姓の間で改行されないようにすることができます (?)。名前の頭文字 (単語「i」(「and」の翻訳) と一緒に) を姓と同じ行に配置する他の方法はありますか? とを設定しようとしました\setcounter{highnamepenalty}{10000}
が\setcounter{lownamepenalty}{0}
、期待した効果はありませんでした。私の MWE:
\documentclass[12pt]{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[polish]{babel}
\usepackage{polski}
\usepackage[style=verbose]{biblatex}
\usepackage{filecontents}
\begin{filecontents}{mylist.bib}
@inbook{gumplowicz2010,
author = {Gumplowicz, L.},
title = {O naturalnym prawie kształtowania się państw},
booktitle = {Dwa życia Ludwika Gumplowicza. Wybór tekstów},
editor = {Mozetič, G. and Surman, J.},
editortype = {redactor},
location = {Warszawa},
year = {2010},
}
\end{filecontents}
\addbibresource{mylist.bib}
\setlength{\textwidth}{115mm}
\renewcommand{\intitlepunct}{\addcolon\nobreakspace} % has no impact on output
\begin{document}
Some text\footcite{gumplowicz2010}.
\end{document}
答え1
名前の頭文字と姓の間の改行を抑制したい場合は、同じ名前部分の異なる部分を表すlownamepenalty
.を設定する必要highnamepenalty
があります。これにより、2つの名前が分離されます。そのため、
\defcounter{lownamepenalty}{10000}
'J. Surman'の改行を抑制します。しかし、'i'を'J. Surman'に結び付けたいので、さらに
\DeclareDelimFormat{finalnamedelim}{%
\ifnumgreater{\value{liststop}}{2}{\finalandcomma}{}%
\addspace\bibstring{and}\nobreakspace}
元の定義では、ここ\space
の代わりにがあります\nobreakspace
。
「W:」の場合、話はもう少し面白いです。実際
\renewcommand{\intitlepunct}{\addcolon\nobreakspace}
は正しい動作をしますが、\intitlepunct
他の句読点とは少し異なる方法で処理されるため、その効果は打ち消されます。これを修正するには、
\renewbibmacro*{in:}{%
\printtext{%
\bibstring{in}\printunit{\intitlepunct}}}
ちなみに、@incolletion
(これはおそらくの代わりに を使用すると、@inbook
の異なる処理が\intitlepunct
明らかになるわけではありません。
\documentclass[12pt]{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[polish]{babel}
\usepackage{polski}
\usepackage[style=verbose]{biblatex}
\usepackage{filecontents}
\begin{filecontents}{\jobname.bib}
@inbook{gumplowicz2010,
author = {Gumplowicz, L.},
title = {O naturalnym prawie kształtowania się państw},
booktitle = {Dwa życia Ludwika Gumplowicza. Wybór tekstów},
editor = {Mozetič, G. and Surman, J.},
editortype = {redactor},
location = {Warszawa},
year = {2010},
}
\end{filecontents}
\addbibresource{\jobname.bib}
\setlength{\textwidth}{115mm}
\defcounter{lownamepenalty}{10000}
\renewcommand{\intitlepunct}{\addcolon\nobreakspace}
\renewbibmacro*{in:}{%
\printtext{%
\bibstring{in}\printunit{\intitlepunct}}}
\DeclareDelimFormat{finalnamedelim}{%
\ifnumgreater{\value{liststop}}{2}{\finalandcomma}{}%
\addspace\bibstring{and}\nobreakspace}
\begin{document}
Some text\footcite{gumplowicz2010}.
\end{document}