biblatex 参考文献で ieee-alphabetic と maxalphanames を組み合わせる

biblatex 参考文献で ieee-alphabetic と maxalphanames を組み合わせる

私は、第一著者の最初の 3 文字と年全体を表示するように bib ラベルをカスタマイズしました。これには が必要ですmaxalphanames=1。ただし、実際の bib エントリには IEEE スタイルを使用したいと思います。

ただしmaxalphanames =style = ieee-alphabetic回避策をご存知ですか?

\documentclass[ngerman]{article}

\usepackage[ngerman]{babel}

\usepackage{filecontents}
\begin{filecontents}{reference.bib}
    @article{author1,
        author  = "George Orwell and Aldous Huxley and William Shakespeare and Oscar Wilde",
        title   = "1984",
        year    = "1948",
        journal = "Books about big brothers",
        volume  = "5",
        number  = "42",
        pages   = "100--111"
    }
\end{filecontents}


\RequirePackage[backend=biber,
                style=alphabetic,%
                % style=ieee-alphabetic, % does not work with maxalphanames
                maxnames=99,
                maxalphanames=1,  
                firstinits=true,
                defernumbers=true,
                ]{biblatex}
\renewcommand*{\labelalphaothers}{}

% Label with full year
\DeclareLabelalphaTemplate{
  \labelelement{
    \field[final]{shorthand}
    \field{label}
    \field[strwidth=3,strside=left,ifnames=1]{labelname}
    \field[strwidth=1,strside=left]{labelname}
  }
  \labelelement{
    \field{year}    
  }
}

\addbibresource{reference.bib}
\begin{document}
    \cite{author1}. \\
    \printbibliography 
\end{document}

そこで、これを組み合わせたいと思います:

ここに画像の説明を入力してください

正しい翻訳を含む音量そして番号、 これとともに:

ここに画像の説明を入力してください

答え1

biblatex-ieeeieee-alphabeticの は と完全に一緒に機能します。と をmaxalphanames設定するだけです。 常に>=でなければならないため、 を設定する必要があります。maxalphanames = 4,minalphanames = 3,maxalphanamesminalphanames

minalphanames=1, maxalphanames=1,  

そして物事はうまくいきます。


volumeしかし、との形式だけがnumber必要な場合はieee-alphabetic、次のようにします。

\DeclareFieldFormat[article,periodical]{number}{\bibstring{number}\addnbspace#1}
\DeclareFieldFormat[article,periodical]{volume}{\bibstring{jourvol}\addnbspace#1}

\renewbibmacro*{volume+number+eid}{%
  \printfield{volume}%
  \setunit{\addcomma\space}%
  \printfield{number}%
  \setunit{\addcomma\space}%
  \printfield{eid}%
}

標準スタイルでalphabetic

関連情報