biblatex-publist 可以省略包含中間名縮寫的名字而不省略所有與我同名的名字嗎?

biblatex-publist 可以省略包含中間名縮寫的名字而不省略所有與我同名的名字嗎?

我今天正在整理一份出版品清單。我首先從我的簡歷中複製它,我一直手動管理該清單。然而,我最近注意到biblatex-publist,所以我想我應該嘗試一下。

這個問題涉及我遇到的三個問題中的第一個。在我看來,這也是最根本的。

該軟體包的一個關鍵功能是,它允許您從出版物作者列表中省略自己的名字,就像製作清單時通常那樣。但是,我無法讓它正常工作,因為我使用“FirstName MiddleInitial”進行發布。姓氏'因此author被指定為Surname, First M..如果我要求省略所有帶有我姓氏的名字,那就沒問題了。然而,我的姓氏非常常見,所以這不是一個好的解決方案。 (它適用於這種情況,但我不想依賴它。)然而,我指定我的名字的任何嘗試 - 例如 asFirst或 asFirst M.根本不會省略我的名字。

我不確定我是否誤解了語法,但我嘗試了不使用中間名首字母的合著者的名字,並且在這種情況下指定姓氏和名字按預期工作。所以看來這肯定與中間名首字母有關。

這是一個 MWE:

\documentclass{article}
\usepackage{filecontents}
\usepackage[bibstyle=publist,backend=biber]{biblatex}
  \omitname[Me I.]{Mine}
  \bibliography{\jobname}
\begin{filecontents}{\jobname.bib}
    @article{my-article,
      author = {Mine, Me I.},
      title = {Paper I Wrote},
      journal = {Some Journal},
      year = 1022,
      pages = {99--117},
      volume = 45,
      number = 2}
\end{filecontents}

\begin{document}

\nocite{my-article}

\printbibliography

\end{document}

其產生:

參考文獻清單仍包括省略的作者姓名

我還嘗試了以下方法,得到了相同的結果:

\omitname[Me]{Mine}

有沒有一種簡單的方法可以糾正這個問題,以便即使對於使用中間名首字母發表的作者來說,該遺漏也有效?

請注意,我並不是特別喜歡biblatex-publist.如果有其他方法就好了。 (尤其如此,因為這不是我使用時遇到的唯一困難,biblatex-publist所以替代方案可能會更好!)

答案1

如果我們查看該.bbl檔案(由 Biber 創建),我們可以看到簡單的author = {Mine, Me I.}變為(插入換行符以提高可讀性)

  \name{author}{1}{}{%
    {{hash=41274140480afc1dcd1fc7fc1b6f2529}
     {Mine}
     {M\bibinitperiod}
     {Me\bibnamedelima I.}
     {M\bibinitperiod\bibinitdelim I\bibinitperiod}
     {}{}{}{}}%
  }

biblatex名字而言,「Mine,Me I」。是Me\bibnamedelima I.,所以我們必須檢查該名稱:

\omitname[Me\bibnamedelima I.]{Mine}

完整程式碼

\documentclass{article}
\usepackage{filecontents}
\usepackage[bibstyle=publist,backend=biber]{biblatex}
\omitname[Me\bibnamedelima I.]{Mine}
\begin{filecontents*}{\jobname.bib}
@article{my-article,
  author  = {Mine, Me I.},
  title   = {Paper I Wrote},
  journal = {Some Journal},
  year    = 1022,
  pages   = {99--117},
  volume  = 45,
  number  = 2,
}
@article{my-article-w,
  author  = {Mine, Me I. and von Last, Jr, First},
  title   = {Paper I Wrote With Someone Else},
  journal = {Some Journal},
  year    = 1023,
  pages   = {23--45},
  volume  = 2,
  number  = 5,
}
\end{filecontents*}
\addbibresource{\jobname.bib}

\begin{document}
  \nocite{my-article,my-article-w}
  \printbibliography
\end{document}

在此輸入影像描述


對於.bblBibTeX 建立的文件,author = {Mine, Me I.}變成

\name{author}{1}{}{%
  {{}%
   {Mine}{M.}%
   {Me~I.}{M.~I.}%
   {}{}%
   {}{}}%
}

因此,我們必須到\omitname[Me~I.]{Mine}這裡。


biblatex-publist使用哈希來比較名稱之前,最好的選擇是尋找.bbl檔案中格式的名稱並將名字和姓氏從那裡複製到\omitname巨集。

另請注意,目前biblatex-publist僅比較名字和姓氏,而不比較 Jr./von(前置和後綴)部分,因此您最終可能會省略太多內容(在極少數情況下)。

答案2

我以不同的方式處理這個問題,因為不可能在套件的當前 UI 中使用名稱哈希。在軟體包的 0.9 版本中(剛剛正在發送給 CTAN 的路上),該問題應該得到解決。另外,我還\omitname為名稱前綴(又稱 von-part)添加了第二個可選參數。

相關內容