summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/doc/luatex/luaintro/04-04-6.lualtx
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/doc/luatex/luaintro/04-04-6.lualtx')
-rw-r--r--Master/texmf-dist/doc/luatex/luaintro/04-04-6.lualtx55
1 files changed, 55 insertions, 0 deletions
diff --git a/Master/texmf-dist/doc/luatex/luaintro/04-04-6.lualtx b/Master/texmf-dist/doc/luatex/luaintro/04-04-6.lualtx
new file mode 100644
index 00000000000..c59857c21a2
--- /dev/null
+++ b/Master/texmf-dist/doc/luatex/luaintro/04-04-6.lualtx
@@ -0,0 +1,55 @@
+%%
+%% Ein Beispiel der DANTE-Edition
+%%
+%% 1. Auflage
+%%
+%% Beispiel 04-04-6 auf Seite 91.
+%%
+%% Copyright (C) 2013 Herbert Voss
+%%
+%% It may be distributed and/or modified under the conditions
+%% of the LaTeX Project Public License, either version 1.3
+%% of this license or (at your option) any later version.
+%%
+%% See http://www.latex-project.org/lppl.txt for details.
+%%
+%%
+%% ====
+% Show page(s) 1
+%%
+%%
+\documentclass[]{exaarticle}
+\pagestyle{empty}
+\setlength\textwidth{352.81416pt}
+\setlength\parindent{0pt}
+\usepackage[ngerman]{babel}
+%StartShownPreambleCommands
+\usepackage{luacode}
+\begin{luacode*}
+function markNode(color)
+ local w=node.new("whatsit","pdf_literal")
+ w.data=string.format("q "..color.."RG 2 w 0 -0.1 m 0 10 l S Q")
+ return w
+end
+function markList(List)
+ for n in node.traverse(List) do
+ if n.id==1 then markList(List.head)
+ elseif n.id==0 then -- Zeilenanfang gefunden
+ n.head=node.insert_before(
+ n.head, n.head, markNode("1 0 0"))
+ end
+ end
+ return true
+end
+\end{luacode*}
+%StopShownPreambleCommands
+\begin{document}
+\parbox{5cm}{%
+\directlua{luatexbase.add_to_callback("post_linebreak_filter",markList,"markList")}%
+Jetzt soll \hbox{hier ein} langer Text angegeben werden, dessen Knotenliste wir
+betrachten.\par
+Rot: Zeilenanfang\par
+Grun: Wortende\par
+Blau: Absatzende}
+\directlua{luatexbase.remove_from_callback("post_linebreak_filter","markList")}
+\end{document}