Yanıtlar:
İşte bunun için basit bir elisp işlevi:
(defun labelnameref (string)
"Insert \label{ARG} \index{\nameref{ARG}} at point"
(interactive "sString for \\label and \\nameref: ")
(insert "\\label{" string "} \\index{\\nameref{" string "}}"))
Bu işlev, dizge için minibuffer'da sorgular ve sonra bunları noktaya ekler. Kullanmak için .emac'lerinize koyabilir ve sonra M-x labelnameref
onu bir tuşa çağırabilir veya bir anahtara bağlayabilirsiniz.
Çok sayıda benzer yapı kullanmak istiyorsanız bunları yasnippets olarak yazmak daha kolay olabilir. YASnippet ile kolayca yukarıdaki gibi bir davranışa sahip bir pasaj oluşturabilirsiniz. Örneğin aşağıdakileri kullanabilirsiniz (bunun için bir tuş takımı istiyorsanız, "tuş takımını" uygun bir tuş takımıyla değiştirebilirsiniz):
# -*- mode: snippet -*-
# name: foo
# key: foo
# binding: "keybinding"
# --
\label{$1} \index{\nameref{$1}}
Bununla foo yazar ve Tabdaha sonra doğrudan genişletmek \label{$1} \index{\nameref{$1}}
ve sorgulamak için basın $1
.