Durch Aufrufen von reftex-label
oder über den Hotkey C-c (
wird automatisch ein Label in das Dokument eingefügt. Für die section
Umgebung ist das Label in Ordnung. Aber für eine Umgebung wie theorem
oder ist thm
ein Label wie \label{thm:pythagoras-theorem-1}
oder \label{theorem:pythagoras-theorem-1}
besser geeignet als \label{sec:pythagoras-theorem-1}
. Kann man reftex-label
die Funktion so anpassen, dass sie sich so verhält?
\documentclass{article}
\usepackage{amsthm}
\newtheorem{thm}{Theorem}
\begin{document}
\section{Pythagoras' theorem}
\label{sec:pythagoras-theorem}
\begin{thm}\label{sec:pythagoras-theorem-1}
In a right triangle, the square of the length of the hypotenuse is equal to the sum of the squares of the lengths of the other two sides
\end{thm}
\end{document}
Antwort1
Die Variable muss noch angepasst werden reftex-label-alist
. Hier ein Auszug aus dem Docstring:
reftex-label-alist
ist eine in definierte Variablereftex-vars.el
.Eine Liste mit Informationen zu Umgebungen für die Verwendung von \label-\ref.
Dieser Doc-String ist nach dem Lesen der Konfigurationsbeispiele im Handbuch leichter zu verstehen. Ein Blick auf die integrierten Standardwerte in der Konstante
reftex-label-alist-builtin
kann ebenfalls aufschlussreich sein.Setzen Sie diese Variable, um Ergänzungen und Änderungen am Standard zu definieren. Das Einzige, was Sie NICHT ändern dürfen, ist
?s
der Typindikator für Abschnittsbeschriftungen und SPC für denany
Beschriftungstyp. Diese sind an anderen Stellen im Code fest codiert.Der Wert der Variable muss eine Liste von Elementen sein. Jedes Element ist selbst eine Liste und hat die folgende Struktur:
(ENV-OR-MACRO TYPE-KEY LABEL-PREFIX REFERENCE-FORMAT CONTEXT-METHOD (MAGIC-WORD ... ) TOC-LEVEL)
Jeder Listeneintrag beschreibt entweder eine Umgebung mit einem Zähler zur Verwendung mit \label und \ref oder ein LaTeX-Makro, das ein Label als (oder innerhalb) eines seiner Argumente definiert. Die Elemente jedes Listeneintrags sind: ...
Kurz gesagt, Sie möchten wahrscheinlich so etwas in Ihrer Init-Datei:
(setq reftex-label-alist
'(("theorem" ?T "thm:" "~ref{%s}"
nil (regexp "[Th]heorems?") nil)))
Ich schlage vor, Sie überprüfendas Handbuchum den obigen Zusatz zu verstehen. Beachten Sie, dass der ?t
Schlüssel für Tabellen voreingestellt ist, also das große ?T
.