
私の原稿では、構文の強調表示がかなり頻繁に行われるため\citep
、両方に対して統一した構文の強調表示を行う方が良いでしょう。\cite
私は提案されたことを実行しようとしましたここそのようです
(setq font-latex-match-reference-keywords
'(
("citeauthor" "[{")
("citep" "[{")))
上記の行が~\.emacs\init.el
ファイルに追加されました。 には機能しますが\citeauthor
、 には影響しません\citep
。 は依然として鎮静状態のままです。
これを機能させる解決策はありますか?
答え1
あなたの質問には2つの解決策があります。
前提条件
AUCTeXを最新バージョン11.90にアップデートしてください。ELPA経由で行うことをお勧めします。マニュアル. よろしければこちらもお読みくださいクイックスタート. そして、必ずこれを init ファイルに記述してください:
(setq TeX-parse-self t)
クイックフィックスソリューション
elsarticle.cls
は内部的にnatbib
、graphicx
および他のいくつかのパッケージをロードします。AUCTeX は、これを認識するために .cls ファイルを解析しません。.tex ファイルのプリアンブルでこれらのパッケージを再度ロードすることで、AUCTeX にヒントを与えることができます。TeX-parse-self
を に設定するとt
、AUCTeX はこれらのパッケージのサポート ファイル (専門用語: スタイル ファイル) をロードし、ファイルは次のようになります。
natbib
また、を押すと、 が提供するマクロの自動補完サポートが利用できるようになりましたC-c C-m citep RET。RefTeX を使用すると、さらに便利になります。
長期的な解決策
これには、AUCTeX サポート ファイルの作成が含まれますelsarticle.el
。 求めている内容については、次の行で十分です。
;;; elsarticle.el --- AUCTeX style for `elsarticle.cls'
(TeX-add-style-hook
"elsarticle"
(lambda ()
(TeX-run-style-hooks "natbib" "graphicx" "geometry")))
変数をTeX-style-private
任意のディレクトリにカスタマイズします。例:
(setq TeX-style-private (expand-file-name "~/.emacs.d/auctex-styles"))
そのディレクトリに保存しelsarticle.el
、Emacs を再起動して .tex ファイルをロードします。これで、再ロードせずにプリアンブルでnatbib
動作するはずです。graphicx