
Seria melhor ter um destaque de sintaxe uniforme para ambos \citep
e \cite
como aparece bastante no meu manuscrito.
Tentei implementar o que foi sugerido emaquiigual a
(setq font-latex-match-reference-keywords
'(
("citeauthor" "[{")
("citep" "[{")))
As linhas acima foram adicionadas ao meu ~\.emacs\init.el
arquivo. Embora funcione \citeauthor
, não afeta \citep
o que ainda parece sedado.
Existe uma solução para fazer isso funcionar?
Responder1
Existem 2 soluções para sua pergunta.
Pré-requisito
Atualize o AUCTeX para a versão mais recente 11.90. Sugiro que você faça isso via ELPA conforme descrito emo manual. Se você fizer isso, leia tambémComeço rápido. E definitivamente coloque isso no seu arquivo init:
(setq TeX-parse-self t)
Solução de solução rápida
elsarticle.cls
carrega internamente natbib
e graphicx
alguns outros pacotes. AUCTeX não analisa o arquivo .cls para estar ciente disso. Você pode dar uma dica ao AUCTeX carregando esses pacotes novamente no preâmbulo do seu arquivo .tex. Com TeX-parse-self
definido como t
, AUCTeX carrega seus arquivos de suporte (jargão: arquivos de estilo) para esses pacotes e seu arquivo ficará assim:
Observe também que agora você obtém suporte de preenchimento automático para macros fornecido natbib
quando você clica em C-c C-m citep RET. As coisas ficam ainda melhores se você usar o RefTeX.
Solução a longo prazo
Isto inclui escrever um arquivo de suporte AUCTeX elsarticle.el
. Para o que você está perguntando, as seguintes linhas serão suficientes:
;;; elsarticle.el --- AUCTeX style for `elsarticle.cls'
(TeX-add-style-hook
"elsarticle"
(lambda ()
(TeX-run-style-hooks "natbib" "graphicx" "geometry")))
Personalize a variável TeX-style-private
para um diretório de sua escolha, por exemplo
(setq TeX-style-private (expand-file-name "~/.emacs.d/auctex-styles"))
Salve elsarticle.el
nesse diretório, reinicie o Emacs e carregue seu arquivo .tex. Isso deve funcionar sem recarregar natbib
e graphicx
no seu preâmbulo.