natbib でタイトルを引用するにはどうすればいいですか?

natbib でタイトルを引用するにはどうすればいいですか?

解決策を探し回ったのですが、有効な解決策が見つかりませんでした。最も有名なものは次のとおりです。 natbib および hyperref パッケージを使用した \citetitle および \citeeditor そして https://stackoverflow.com/questions/2496599/latex で記事のタイトルを引用する方法

私の関連する設定は次のとおりです。

\documentclass[a4paper,11pt,oldfontcommands]{memoir}
\usepackage[colorlinks=true]{hyperref}
\usepackage{natbib}
%\bibliographystyle{agsm}
\bibliographystyle{myabbrvnat}
\newcommand{\myand}{\&\ }
\setcitestyle{authoryear,aysep={},open={(},close={)}}
\begin{document}
In the book (Book Name) such and such is told to be true \citep{RefWorks:}.
\bibliography{cource}
\end{document}

私のsource.bibファイルは次のようになります:

@book{RefWorks:1
     author={John Johnson},
     year={2015},
     title={Book Name},
     publisher={Publishing Company},
     address={United States of America},
     edition={1st},
     isbn={XXX-X-XXXX-XXXX-X}
}

おそらく、私が見つけた提案のいくつかが機能しない理由は です\bibliographystyle{myabbrvnat}。どこで見つけたかは覚えていませんが、それは私の参考文献を必要な方法で設定するためのものです。それは重要ですか? 投稿する必要がある場合、ここでは文字数制限を超えているため、どこにテキストを投稿できますか?

引用エイリアスを作成し\defcitealias{RefWorks:1}{Book Name}、それをテキストに挿入して\citetalias{RefWorks:1}ソースのタイトルを付けるといった「ある種の」解決策があることは知っています。それは問題ありませんが、私が探しているものではありません。そうすると、ライブラリ全体にこれを設定する必要があり、面倒になります。

\cite+ソースのタイトルを指定するために -type を設定する方法はありますか?

編集: セットアップに hyperref パッケージを追加するのを忘れました。

答え1

の代わりにabbrvnat.bstを発行するように変更しました( が表示される場所を変更)。次に、次の入力ファイルを準備しました。\myand{}and" and "

\begin{filecontents*}{\jobname.bib}
@book{RefWorks:1,
     author={John Johnson},
     year={2015},
     title={Book Name},
     publisher={Publishing Company},
     address={United States of America},
     edition={1st},
     isbn={XXX-X-XXXX-XXXX-X}
}
@book{RefWorks:2,
     author={John Johnson and Jack Jackson},
     year={2015},
     title={Book Name},
     publisher={Publishing Company},
     address={United States of America},
     edition={1st},
     isbn={XXX-X-XXXX-XXXX-X}
}
\end{filecontents*}

\documentclass[a4paper,11pt,oldfontcommands,article]{memoir}

\usepackage{natbib}
\usepackage{usebib}
\bibliographystyle{myabbrvnat}
\setcitestyle{authoryear,aysep={},open={(},close={)}}
\bibinput{\jobname} % <--- the same argument as in \bibliography
\newcommand{\myand}{\&}

\begin{document}

In the book ``\usebibentry{RefWorks:1}{title}'' by 
\citeauthor{RefWorks:1}, such and such is told 
to be true \citep{RefWorks:1}.

In the book ``\usebibentry{RefWorks:2}{title}'' by 
\citeauthor{RefWorks:2}, such and such is told 
to be true \citep{RefWorks:2}.

\bibliography{\jobname}

\end{document}

これが出力です

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

filecontents便宜上使用されているだけなので、独自のファイルを使用することもできます。フィールド.bibの制限に注意してください。usebibしなければならないではなく中括弧で区切る必要があります"

一方、強制的biblatexに望ましい出力を生成することもできます。

\begin{filecontents*}{\jobname.bib}
@book{RefWorks:1,
     author={John Johnson},
     year={2015},
     title={Book Name},
     publisher={Publishing Company},
     address={United States of America},
     edition={1st},
     isbn={XXX-X-XXXX-XXXX-X}
}
@book{RefWorks:2,
     author={John Johnson and Jack Jackson},
     year={2015},
     title={Book Name},
     publisher={Publishing Company},
     address={United States of America},
     edition={1st},
     isbn={XXX-X-XXXX-XXXX-X}
}
\end{filecontents*}

\documentclass[a4paper,11pt,oldfontcommands,article]{memoir}

\usepackage[style=authoryear,firstinits,uniquename=init]{biblatex}
\addbibresource{\jobname.bib}
\AtBeginBibliography{%
  \DeclareNameAlias{author}{first-last}%
}
\renewcommand{\finalnamedelim}{%
  \ifnumgreater{\value{liststop}}{2}{\finalandcomma}{}%
  \addspace\&\space
}

\begin{document}

In the book ``\citetitle{RefWorks:1}'' by 
\citeauthor{RefWorks:1}, such and such is told 
to be true \parencite{RefWorks:1}.

In the book ``\citetitle{RefWorks:2}'' by 
\citeauthor{RefWorks:2}, such and such is told 
to be true \parencite{RefWorks:2}.

\printbibliography

\end{document}

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

関連情報