Sowohl in normalem Fließtext, als auch in durch Makros erzeugten oder aus Datei eingelesenen Texten möchte ich bestimmte Wörter hervorheben, ohne dass ich sie alle durch Makros ersetzen muss. An einem einfachen Beispiel: Open in Online-Editor
\documentclass{article} \usepackage[ngerman]{babel} \usepackage{blindtext} \usepackage{xcolor} \begin{document} \blindtext \end{document} Hierin möchte ich alle Vorkommen des Wortes "ist" rot und fett markiert haben. Das nutze ich z.B. um meine zu oft wiederkehrenden Ausdrücke zu erkennen, um sie im Anschluss zu variieren. XeTeX und LuaTeX-Lösungen sind auch willkommen. Wie schaffe ich, im Fließtext vorkommende Wörter automatisch hervorheben zu lassen? |
Wenn man XeTeX bzw. XeLaTeX einsetzt, gibt es eine sehr einfache Möglichkeit mit dem cleveren Open in writeLaTeX
\documentclass{article} \usepackage[ngerman]{babel} \usepackage{blindtext} \usepackage{xcolor} \usepackage{xltxtra} \usepackage{xesearch} \SearchList{eins}{\textbf{\textcolor{red}{#1}}}{ist} \SearchList{zwei}{\textbf{\textcolor{blue}{#1}}}{und} \begin{document} \blindtext \end{document} Das beantwortet 07 Mär '14, 21:02 Student Basiert ConTeXt (zumindest Mk IV) auf LuaTeX? Funktioniert da Übrigens:
(07 Mär '14, 21:45)
cgnieder
@Clemens Ich habe nur von ConTeXt-Support im
(07 Mär '14, 22:44)
Student
|
Mit LuaTeX gibt es ebenfalls Lösungen: Open in writeLaTeX
% arara: lualatex \documentclass{article} \usepackage[ngerman]{babel} \usepackage{fontspec,xcolor} \usepackage{luacode,luatexbase} \begin{luacode} local function emphistund ( line ) line = string.gsub(line, " ist " , " \\textbf{\\textcolor{red}{ist}} ") line = string.gsub(line, " Ist " , " \\textbf{\\textcolor{red}{Ist}} ") line = string.gsub(line, " und " , " \\textbf{\\textcolor{blue}{und}} ") return line end luatexbase.add_to_callback( "process_input_buffer", emphistund, "emph_ist_und") \end{luacode} \usepackage{blindtext} \begin{document} \blindtext \end{document} Nun bin ich ein völliger Lua-Anfänger (das war mein allererster direkter Kontakt damit), was bedeutet, das es mit Sicherheit noch einen effizienteren Einsatz gibt (@Mico?, @topskip?), aber es zeigt zumindest, dass das Prinzip funktioniert. beantwortet 14 Mär '14, 11:10 cgnieder |
Die Frage ist zum Archivieren gedacht, kein Support benötigt. Antworten sind jedoch sehr willkommen! Ich werde ein XeTeX-
xesearch
-Beispiel posten, was ich gefunden habe, zu Archivzwecken. Ich setze gern 300 Punkte aus für eine andere Lösung, z.B. mit LuaTeX oder pdfTeX.