Wenn ich die Quelle in TeXShop bearbeite, stelle ich oft fest, dass ich die Betonung eines Wortes oder einer Phrase entfernen möchte. Aber das Löschen von „“ \emph
am Anfang des Wortes und der {}
Umgebung ist etwas ärgerlicher, als ich es gerne hätte.
Ich nehme an, dass ich nach einem Skript suche, das ich zu Beginn eines Befehls (wie \emph
) ausführen kann, das von links nach rechts scannt und alles außer dem Text zwischen den geschweiften Klammern löscht (d. h., es löscht „\emph“, „{“ und „}“).
Etwas, das mich von
This is \emph{emphasized} text
Zu
This is emphasized text
Im Code selbst.
Antwort1
Keine TeX-Lösung, aber Sie können einen regulären Ausdruck verwenden, beispielsweise in vim:
:%s/\\emph{\([^}]*\)}/\1/g
Vorbehalte: Entfernt keine inneren \emph
's ( \emph{foo \emph{bar} baz}
), auch nicht, wenn sich die \emph
über mehrere Zeilen erstreckt. (Kommentare für Verbesserungen sind willkommen!)
Antwort2
Wenn die gleichen Änderungen vorgenommen werden müssen füralleWenn Sie den \emph
Befehl in großen Dokumenten oder großen Teilen verwenden, schlage ich vor, dass Sie den \emph-Befehl überhaupt nicht anfassen, sondern neu definieren (in der Präambel oder im Hauptteil des Dokuments). Der Hauptvorteil besteht darin, dass Sie problemlos zwischen Stilen wechseln können, ohne jedes hervorgehobene Wort anfassen zu müssen. Das MWE:
\documentclass{article}
\begin{document}
% Normal behaviour
normal text \emph{emphasis text} \par
% Emphasis out
\renewcommand{\emph}[1]{#1}
normal text \emph{emphasis text} \par
% Emphasis become bold text
\renewcommand{\emph}[1]{\textbf{#1}}
normal text \emph{emphasis text} \par
% Emphasis become underlined text
\renewcommand{\emph}[1]{\underline{#1}}
normal text \emph{emphasis text} \par
\end{document}
Antwort3
Wenn ich Sie richtig verstanden habe, möchten Sie so etwas:
\documentclass{article}
% \disable takes two arguments and only uses the second
\makeatletter
\let\disable\@secondoftwo
\makeatother
\begin{document}
This is \emph{emphasized} text
This is \disable\emph{emphasized} text
\end{document}