summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/xelatex/xevlna/xevlna.sty
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2013-04-23 22:21:58 +0000
committerKarl Berry <karl@freefriends.org>2013-04-23 22:21:58 +0000
commitf6cdffa509c8082653ba4c7946ae899e368a0333 (patch)
tree7069aa41c41996ed224958e160d7a7173987b933 /Master/texmf-dist/tex/xelatex/xevlna/xevlna.sty
parent0defc2903c966fb2c2f9d92b4ad7ada87faa5196 (diff)
xevlna (21apr13)
git-svn-id: svn://tug.org/texlive/trunk@30086 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/xelatex/xevlna/xevlna.sty')
-rw-r--r--Master/texmf-dist/tex/xelatex/xevlna/xevlna.sty47
1 files changed, 47 insertions, 0 deletions
diff --git a/Master/texmf-dist/tex/xelatex/xevlna/xevlna.sty b/Master/texmf-dist/tex/xelatex/xevlna/xevlna.sty
new file mode 100644
index 00000000000..7bbeff0f2b4
--- /dev/null
+++ b/Master/texmf-dist/tex/xelatex/xevlna/xevlna.sty
@@ -0,0 +1,47 @@
+\expandafter\ifx\csname ProvidesPackage\endcsname\relax % No identification in plain XeTeX
+\else % Identification for XeLaTeX
+\ProvidesPackage{xevlna}[2013/04/20 vlna for both XeLaTeX and plain XeTeX]
+\PackageInfo{xevlna}{$Id: xevlna.sty 473 2013-04-20 19:50:52Z zw $\@gobble}
+\fi
+
+\XeTeXinterchartokenstate 1
+\newXeTeXintercharclass\CSopenpunctuation
+\newXeTeXintercharclass\CSnonsyllabicpreposition
+\XeTeXcharclass`\(\CSopenpunctuation
+\XeTeXcharclass`\[\CSopenpunctuation
+\XeTeXcharclass`\„\CSopenpunctuation
+\XeTeXcharclass`\»\CSopenpunctuation
+\XeTeXcharclass`\K\CSnonsyllabicpreposition
+\XeTeXcharclass`\k\CSnonsyllabicpreposition
+\XeTeXcharclass`\S\CSnonsyllabicpreposition
+\XeTeXcharclass`\s\CSnonsyllabicpreposition
+\XeTeXcharclass`\V\CSnonsyllabicpreposition
+\XeTeXcharclass`\v\CSnonsyllabicpreposition
+\XeTeXcharclass`\Z\CSnonsyllabicpreposition
+\XeTeXcharclass`\z\CSnonsyllabicpreposition
+\XeTeXcharclass`\O\CSnonsyllabicpreposition
+\XeTeXcharclass`\o\CSnonsyllabicpreposition
+\XeTeXcharclass`\U\CSnonsyllabicpreposition
+\XeTeXcharclass`\u\CSnonsyllabicpreposition
+\XeTeXcharclass`\A\CSnonsyllabicpreposition
+\XeTeXcharclass`\a\CSnonsyllabicpreposition
+\XeTeXcharclass`\I\CSnonsyllabicpreposition
+\XeTeXcharclass`\i\CSnonsyllabicpreposition
+\XeTeXinterchartoks 255 \CSnonsyllabicpreposition {\CSinterchartoks}
+\XeTeXinterchartoks \CSopenpunctuation \CSnonsyllabicpreposition {\CSinterchartoks}
+\def\CSnointerchartoks{\let\CSinterchartoks\PreCSpreposition}
+\def\PreCSpreposition{\def\next{}%
+ \ifnum\catcode`\ =10 % nothing will be done in verbatim
+ \ifmmode % nothing in math
+ \else
+ \let\CSinterchartoks\CSnointerchartoks
+ \let\next\ExamineCSpreposition
+ \fi \fi
+ \next}
+\def\ExamineCSpreposition #1{#1\futurelet\next\ProcessCSpreposition}
+\def\ProcessCSpreposition{\ifx\next\xevlnaXeTeXspace\nobreak\fi}
+\futurelet\xevlnaXeTeXspace{ }\CSnointerchartoks
+
+% Enabling and disabling
+\def\xevlnaDisable{\def\CSinterchartoks{}}
+\let\xevlnaEnable\CSnointerchartoks