Ich habe diesen Befehl hinzugefügt, um auf Abschnitte (Abbildungen, Kapitel usw.) zu verweisen:
\newcommand{\secref}[1]{Section~\ref{#1}}
Jetzt zeigt mir die Autovervollständigung von TeXstudio
aber mir fehlt die Autovervollständigung für die eigentlichen Abschnitte. Wie bei der Autovervollständigung für \ref{...
. Ist das möglich?
Eine nicht so schöne Lösung wäre jedoch, den \ref
Befehl zu überspringen
\newcommand{\secref}[1]{Section~#1}
und dann gehen Sie zum Beispiel \secref{\ref{sec:setup}}
.
Antwort1
Anstatt das Rad neu zu erfinden, würde ich lieber verwenden cleveref
. Dadurch werden die entsprechenden Namen der referenzierten Labels automatisch eingefügt und die Autovervollständigung von Texstudios unterstützt.
Beispielsweise im folgenden Dokument
\documentclass{article}
\usepackage[capitalise, noabbrev]{cleveref}
\begin{document}
\section{test}
\label{sec:test}
\begin{figure}
\caption{bla}\label{fig:bla}
\end{figure}
\cref{fig:bla} \cref{sec:test}
\end{document}
Texstudio fordert
und die Ausgabe wird
Antwort2
EDIT: Dies beantwortet die Frage nicht, wie in den Kommentaren angegeben. In dieser Antwort erkläre ich, wie man Makros in Texstudio hinzufügt, sodass der Cursor an eine bestimmte Stelle in diesem Makro springt. Tatsächlich eine ganz andere Sache.
Ursprüngliche Antwort
Obwohl ich samcarter zustimme, gibt es der Vollständigkeit halber eine Möglichkeit, das, was Sie ursprünglich wollten, in Texstudio zu tun.
Gehen Sie zu [Makros > Makros bearbeiten ...] Erstellen Sie dann ein neues Makro, geben Sie ihm einen Namen, eine Abkürzung (nicht erforderlich und meiner Meinung nach ziemlich nutzlos) und einen Trigger (gutes Design ist für die Trigger wichtig). Im Codeabschnitt würden Sie hinzufügen
\secref{%|section%|}
Speichern und schließen. Geben Sie in Ihrem Editorfenster den Trigger ein. Der Triggertext wird automatisch durch den Makrocode ersetzt. \secref{section}
Wählen Sie mit dem Fokus des Cursors das Wort section
in den Klammern aus, das zur Bearbeitung bereit ist.
Wie Sie sehen, missbrauche ich diese Funktion. (Auf dem Bild ist viel Mist, da ich getestet habe, was für mich nützlich ist, und das Chaos noch nicht aufgeräumt habe.)
Übrigens verwende ich am Anfang und am Ende der meisten meiner Trigger ein Leerzeichen, um zu verhindern, dass Texstudio „normalen Text“ in ein Makro umwandelt. Beispielsweise ml
wäre das Makro ohne die Leerzeichen wirklich ärgerlich, da jedes Wort, das die Sequenz „ml“ enthält, mittendrin ein Makro erhalten würde! Wenn ich Umlaute ohne hinzusehen eintippe, würde ich Folgendes erhalten, U\SI{aut and the rest of the text in the braces,}{\ml}
was überhaupt keinen Sinn ergibt. Sie können mit den Triggern und Makros noch viel mehr machen, klicken Sie einfach auf ?
neben dem Wort „Trigger“ und probieren Sie es selbst aus.