summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/csplain
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2014-08-03 18:16:29 +0000
committerKarl Berry <karl@freefriends.org>2014-08-03 18:16:29 +0000
commitfa08289d204e8dde53c5b71063e2e2b610490aac (patch)
tree2992d2656991cc1ca0d975ed9fc6accd9532a847 /Master/texmf-dist/tex/csplain
parent2ad4fa86a0cbc3b72484cbb2db1e95859e77268b (diff)
csplain
git-svn-id: svn://tug.org/texlive/trunk@34820 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/csplain')
-rw-r--r--Master/texmf-dist/tex/csplain/base/csenc-u.tex4
-rw-r--r--Master/texmf-dist/tex/csplain/base/csfontsm.tex6
-rw-r--r--Master/texmf-dist/tex/csplain/base/csplain.ini10
-rw-r--r--Master/texmf-dist/tex/csplain/base/il2code.tex5
-rw-r--r--Master/texmf-dist/tex/csplain/base/t1code.tex4
-rw-r--r--Master/texmf-dist/tex/csplain/base/t1enc-u.tex6
-rw-r--r--Master/texmf-dist/tex/csplain/fonts/ams-math.tex3
-rw-r--r--Master/texmf-dist/tex/csplain/fonts/chelvet.tex3
-rw-r--r--Master/texmf-dist/tex/csplain/fonts/cs-adventor.tex6
-rw-r--r--Master/texmf-dist/tex/csplain/fonts/cs-antt.tex3
-rw-r--r--Master/texmf-dist/tex/csplain/fonts/cs-bera.tex7
-rw-r--r--Master/texmf-dist/tex/csplain/fonts/cs-bonum.tex6
-rw-r--r--Master/texmf-dist/tex/csplain/fonts/cs-cursor.tex6
-rw-r--r--Master/texmf-dist/tex/csplain/fonts/cs-heros.tex18
-rw-r--r--Master/texmf-dist/tex/csplain/fonts/cs-pagella.tex6
-rw-r--r--Master/texmf-dist/tex/csplain/fonts/cs-polta.tex5
-rw-r--r--Master/texmf-dist/tex/csplain/fonts/cs-schola.tex6
-rw-r--r--Master/texmf-dist/tex/csplain/fonts/cs-termes.tex6
-rw-r--r--Master/texmf-dist/tex/csplain/fonts/cyrchars.tex4
-rw-r--r--Master/texmf-dist/tex/csplain/fonts/tx-math.tex6
-rw-r--r--Master/texmf-dist/tex/csplain/opmac/opmac.tex110
21 files changed, 162 insertions, 68 deletions
diff --git a/Master/texmf-dist/tex/csplain/base/csenc-u.tex b/Master/texmf-dist/tex/csplain/base/csenc-u.tex
index 0a6794d0091..4234dea9303 100644
--- a/Master/texmf-dist/tex/csplain/base/csenc-u.tex
+++ b/Master/texmf-dist/tex/csplain/base/csenc-u.tex
@@ -94,6 +94,10 @@
\mubyte \frqq ^^c2^^bb\endmubyte % french right (czech left) double quillquote
\mubyte \promile ^^e2^^80^^b0\endmubyte % per mille sign
+\mubyte \erqq ^^e2^^80^^9d\endmubyte % English right double quote
+\mubyte \elq ^^e2^^80^^98\endmubyte % English left single quote
+\mubyte \erq ^^e2^^80^^99\endmubyte % English right single quote
+
% everyjob message:
\ifx\baseutfencoding\undefined \else \expandafter\endinput\fi
diff --git a/Master/texmf-dist/tex/csplain/base/csfontsm.tex b/Master/texmf-dist/tex/csplain/base/csfontsm.tex
index 840912f1903..a0acaaac1c9 100644
--- a/Master/texmf-dist/tex/csplain/base/csfontsm.tex
+++ b/Master/texmf-dist/tex/csplain/base/csfontsm.tex
@@ -46,8 +46,10 @@
\def\regfont#1{\expandafter\def\expandafter\resizeall\expandafter{%
\resizeall \resizefont#1}}
-\def\resizeall{}
-\regfont\tenrm \regfont\tenit \regfont\tenbf \regfont\tenbi \regfont\tentt
+\def\regfontdefault{\def\resizeall{}%
+ \regfont\tenrm \regfont\tenit \regfont\tenbf \regfont\tenbi \regfont\tentt
+}
+\regfontdefault
\def\sizespec{} % by default: fonts are loaded in their implicit sizes
diff --git a/Master/texmf-dist/tex/csplain/base/csplain.ini b/Master/texmf-dist/tex/csplain/base/csplain.ini
index c5f8d7f5759..3a05564668f 100644
--- a/Master/texmf-dist/tex/csplain/base/csplain.ini
+++ b/Master/texmf-dist/tex/csplain/base/csplain.ini
@@ -7,7 +7,7 @@
\input hyphen.lan % czech / slovak hyphenation pattern (may be others too)
\input plaina4 % \hsize and \vsize for A4
\everyjob=\expandafter{\the\everyjob
- \message{The format: csplain <Nov. 2013>.}
+ \message{The format: csplain <Jul. 2014>.}
\message{The cs-fonts are preloaded and A4 size implicitly defined.}}
\ifx\xprncode\undefined \else %% The encTeX is detected
\count255=128 % All codes > 128 are printable:
@@ -198,14 +198,18 @@ file extcode.tex renamed to il2code.tex (suggested by Jan Kasprzak)
* luafonts.tex: new code for version 0.76 of LuaTeX
* The files luaplain.ini and xeplain.ini added.
- Jul 2014: [format wasn't modified]
+ Jun 2014: [format wasn't modified]
* cyrchars.tex added
+** 13 ** <Jul 2014>
+* English quotes added: csenc-u.tex, il2code.etx, t1code.tex, t1enc-u.tex
+* csfontsm.tex: \regfontdefault introduced
+
COPYRIGHT
=========
-This macro package (csplain.ini, il2code.tex, csfonts.tex, csfontm.tex,
+This macro package (csplain.ini, il2code.tex, csfonts.tex, csfontsm.tex,
hyphen.lan, plaina4.tex) is free software; you can use it without any
restriction. You can redistribute it under the following condition:
diff --git a/Master/texmf-dist/tex/csplain/base/il2code.tex b/Master/texmf-dist/tex/csplain/base/il2code.tex
index 9a655d1d6ee..280f1e74e50 100644
--- a/Master/texmf-dist/tex/csplain/base/il2code.tex
+++ b/Master/texmf-dist/tex/csplain/base/il2code.tex
@@ -158,5 +158,10 @@
\afterassignment\clqq\let\next=}
\def\closequotes{\unskip\crqq\relax}
+\chardef \elqq 92 % English quotes
+\chardef \erqq 34
+\chardef \elq 96
+\chardef \erq 39
+
\endinput
diff --git a/Master/texmf-dist/tex/csplain/base/t1code.tex b/Master/texmf-dist/tex/csplain/base/t1code.tex
index 896c5a4d8fc..54730e7fd79 100644
--- a/Master/texmf-dist/tex/csplain/base/t1code.tex
+++ b/Master/texmf-dist/tex/csplain/base/t1code.tex
@@ -294,6 +294,10 @@
\chardef \crq 60
\chardef \elqq 16
\chardef \erqq 17
+\chardef \elq 96
+\chardef \erq 39
+\chardef \exclamdown 189
+\chardef \questiondown 190
\chardef \sterling 191
\let\pound=\sterling
diff --git a/Master/texmf-dist/tex/csplain/base/t1enc-u.tex b/Master/texmf-dist/tex/csplain/base/t1enc-u.tex
index a827ab3b83f..def1d2f6a2a 100644
--- a/Master/texmf-dist/tex/csplain/base/t1enc-u.tex
+++ b/Master/texmf-dist/tex/csplain/base/t1enc-u.tex
@@ -108,6 +108,12 @@
\mubyte \frqq ^^c2^^bb\endmubyte % french right (czech left) double quillquote
\mubyte \promile ^^e2^^80^^b0\endmubyte % per mille sign
+\mubyte \erqq ^^e2^^80^^9d\endmubyte % English right double quote
+\mubyte \elq ^^e2^^80^^98\endmubyte % English left single quote
+\mubyte \erq ^^e2^^80^^99\endmubyte % English right single quote
+
+% user can write \input utf8lat1 to access all T1 codes
+
\ifx\baseutfencoding\undefined \else \expandafter\endinput\fi
% if the csplain is used, we cannot process this part of the file. May be
diff --git a/Master/texmf-dist/tex/csplain/fonts/ams-math.tex b/Master/texmf-dist/tex/csplain/fonts/ams-math.tex
index 35c94875fc0..4f9c9de10b7 100644
--- a/Master/texmf-dist/tex/csplain/fonts/ams-math.tex
+++ b/Master/texmf-dist/tex/csplain/fonts/ams-math.tex
@@ -484,7 +484,7 @@
\ifx\TeX\relax \noexpand\not \else % \let\TeX=\relax in \output routine
\ifx #1<\nless \else
\ifx #1>\ngtr \else
- \bgroup\escapechar=-1\xdef\tmpn{\string#1}\egroup
+ \begingroup\escapechar=-1\xdef\tmpn{\string#1}\endgroup
\expandafter\ifx \csname not\tmpn\endcsname \relax
\expandafter\ifx \csname n\tmpn\endcsname \relax
\mathrel{\mathord{\notchar}\mathord{#1}}%
@@ -507,3 +507,4 @@ Sep. 2013: \letfont plus \corrmsizes used in \setmathfamily
\ptmunit depends on \ptunit now
\setmathfamily <num><space><font-selector> ... (<space> added)
Nov. 2013 Test of \normalmathloading introduced
+Jul. 2014 \bgroup -> \begingroup in \not macro
diff --git a/Master/texmf-dist/tex/csplain/fonts/chelvet.tex b/Master/texmf-dist/tex/csplain/fonts/chelvet.tex
index 4afba8cc891..3209362ced3 100644
--- a/Master/texmf-dist/tex/csplain/fonts/chelvet.tex
+++ b/Master/texmf-dist/tex/csplain/fonts/chelvet.tex
@@ -35,7 +35,8 @@
\font\tenbin=phvbon8z
\fi
-\ifx\regfont\undefined \else
+\ifx\regfontdefault\undefined \else
+ \regfontdefault
\regfont\tenrmn \regfont\tenitn
\regfont\tenbfn \regfont\tenbin
\fi
diff --git a/Master/texmf-dist/tex/csplain/fonts/cs-adventor.tex b/Master/texmf-dist/tex/csplain/fonts/cs-adventor.tex
index edb304d3496..75c3e994890 100644
--- a/Master/texmf-dist/tex/csplain/fonts/cs-adventor.tex
+++ b/Master/texmf-dist/tex/csplain/fonts/cs-adventor.tex
@@ -24,6 +24,12 @@
\tenrm
+\ifx\regfontdefault\undefined \else
+ \regfontdefault
+ \regfont\tenrmc \regfont\tenitc
+ \regfont\tenbfc \regfont\tenbic
+\fi
+
\def\caps#1{{\escapechar=-1 \expandafter}%
\expandafter\csname\expandafter\tenonlytext\string#1c\endcsname}
\def\tenonlytext{ten}
diff --git a/Master/texmf-dist/tex/csplain/fonts/cs-antt.tex b/Master/texmf-dist/tex/csplain/fonts/cs-antt.tex
index 2937157bf1a..927ec4a8cf8 100644
--- a/Master/texmf-dist/tex/csplain/fonts/cs-antt.tex
+++ b/Master/texmf-dist/tex/csplain/fonts/cs-antt.tex
@@ -38,7 +38,8 @@
\expandafter\csname\expandafter\tenonlytext\string#1c\endcsname}
\def\tenonlytext{ten}
-\ifx\regfont\undefined \else
+\ifx\regfontdefault\undefined \else
+ \regfontdefault
\regfont\tenlr \regfont\tenli
\regfont\tenmr \regfont\tenmi
\regfont\tenrmc \regfont\tenitc
diff --git a/Master/texmf-dist/tex/csplain/fonts/cs-bera.tex b/Master/texmf-dist/tex/csplain/fonts/cs-bera.tex
index a0a6dd7b045..c48d240a6e2 100644
--- a/Master/texmf-dist/tex/csplain/fonts/cs-bera.tex
+++ b/Master/texmf-dist/tex/csplain/fonts/cs-bera.tex
@@ -28,12 +28,11 @@
\font\tenttit=fvsro\tmp \def\ttit{\tenttit}
\font\tenttbi=fvsbo\tmp \def\ttbi{\tenttbi}
-\ifx\regfont\undefined \else
- \regfont\tenrm \regfont\tenit
- \regfont\tenbf \regfont\tenbi
+\ifx\regfontdefault\undefined \else
+ \regfontdefault
\regfont\tenrms \regfont\tenits
\regfont\tenbfs \regfont\tenbis
- \regfont\tentt \regfont\tenttit
+ \regfont\tenttit
\regfont\tenttbf \regfont\tenttbi
\fi
diff --git a/Master/texmf-dist/tex/csplain/fonts/cs-bonum.tex b/Master/texmf-dist/tex/csplain/fonts/cs-bonum.tex
index 53dd6a465c1..60528cfd5b1 100644
--- a/Master/texmf-dist/tex/csplain/fonts/cs-bonum.tex
+++ b/Master/texmf-dist/tex/csplain/fonts/cs-bonum.tex
@@ -24,6 +24,12 @@
\tenrm
+\ifx\regfontdefault\undefined \else
+ \regfontdefault
+ \regfont\tenrmc \regfont\tenitc
+ \regfont\tenbfc \regfont\tenbic
+\fi
+
\def\caps#1{{\escapechar=-1 \expandafter}%
\expandafter\csname\expandafter\tenonlytext\string#1c\endcsname}
\def\tenonlytext{ten}
diff --git a/Master/texmf-dist/tex/csplain/fonts/cs-cursor.tex b/Master/texmf-dist/tex/csplain/fonts/cs-cursor.tex
index 7f9a070b2d3..3639bd50ca6 100644
--- a/Master/texmf-dist/tex/csplain/fonts/cs-cursor.tex
+++ b/Master/texmf-dist/tex/csplain/fonts/cs-cursor.tex
@@ -19,6 +19,12 @@
\tenrm
+\ifx\regfontdefault\undefined \else
+ \regfontdefault
+ \regfont\tenrmc \regfont\tenitc
+ \regfont\tenbfc \regfont\tenbic
+\fi
+
\def\caps#1{{\escapechar=-1 \expandafter}%
\expandafter\csname\expandafter\tenonlytext\string#1c\endcsname}
\def\tenonlytext{ten}
diff --git a/Master/texmf-dist/tex/csplain/fonts/cs-heros.tex b/Master/texmf-dist/tex/csplain/fonts/cs-heros.tex
index e1016cb3274..92d9b08a7eb 100644
--- a/Master/texmf-dist/tex/csplain/fonts/cs-heros.tex
+++ b/Master/texmf-dist/tex/csplain/fonts/cs-heros.tex
@@ -25,10 +25,6 @@
\font\tenitc=\tmp-qhvri-sc \sizespec
\font\tenbic=\tmp-qhvbi-sc \sizespec
-\fi
-
-\tenrm
-
\font\tenrmn=\tmp-qhvcr \sizespec
\font\tenbfn=\tmp-qhvcb \sizespec
\font\tenitn=\tmp-qhvcri \sizespec
@@ -39,6 +35,20 @@
\font\tenitnc=\tmp-qhvcri-sc \sizespec
\font\tenbinc=\tmp-qhvcbi-sc \sizespec
+\fi
+
+\tenrm
+
+\ifx\regfontdefault\undefined \else
+ \regfontdefault
+ \regfont\tenrmc \regfont\tenitc
+ \regfont\tenbfc \regfont\tenbic
+ \regfont\tenrmn \regfont\tenitn
+ \regfont\tenbfn \regfont\tenbin
+ \regfont\tenrmnc \regfont\tenitnc
+ \regfont\tenbfnc \regfont\tenbinc
+\fi
+
\def\caps#1{{\escapechar=-1 \expandafter}%
\expandafter\csname\expandafter\tenonlytext\string#1c\endcsname}
\def\tenonlytext{ten}
diff --git a/Master/texmf-dist/tex/csplain/fonts/cs-pagella.tex b/Master/texmf-dist/tex/csplain/fonts/cs-pagella.tex
index 08f0b7f0f17..4e9d119b544 100644
--- a/Master/texmf-dist/tex/csplain/fonts/cs-pagella.tex
+++ b/Master/texmf-dist/tex/csplain/fonts/cs-pagella.tex
@@ -24,6 +24,12 @@
\tenrm
+\ifx\regfontdefault\undefined \else
+ \regfontdefault
+ \regfont\tenrmc \regfont\tenitc
+ \regfont\tenbfc \regfont\tenbic
+\fi
+
\def\caps#1{{\escapechar=-1 \expandafter}%
\expandafter\csname\expandafter\tenonlytext\string#1c\endcsname}
\def\tenonlytext{ten}
diff --git a/Master/texmf-dist/tex/csplain/fonts/cs-polta.tex b/Master/texmf-dist/tex/csplain/fonts/cs-polta.tex
index d125965fdc1..9e1a92953e5 100644
--- a/Master/texmf-dist/tex/csplain/fonts/cs-polta.tex
+++ b/Master/texmf-dist/tex/csplain/fonts/cs-polta.tex
@@ -42,9 +42,8 @@
\expandafter\csname\expandafter\tenonlytext\string#1c\endcsname}
\def\tenonlytext{ten}
-\ifx\regfont\undefined \else
- \regfont\tenrm \regfont\tenit
- \regfont\tenbf \regfont\tenbi
+\ifx\regfontdefault\undefined \else
+ \regfontdefault
\regfont\tenlr \regfont\tenli
\regfont\tenmr \regfont\tenmi
\regfont\tenrmc \regfont\tenitc
diff --git a/Master/texmf-dist/tex/csplain/fonts/cs-schola.tex b/Master/texmf-dist/tex/csplain/fonts/cs-schola.tex
index 86fd033cf8f..fb685604a5e 100644
--- a/Master/texmf-dist/tex/csplain/fonts/cs-schola.tex
+++ b/Master/texmf-dist/tex/csplain/fonts/cs-schola.tex
@@ -24,6 +24,12 @@
\tenrm
+\ifx\regfontdefault\undefined \else
+ \regfontdefault
+ \regfont\tenrmc \regfont\tenitc
+ \regfont\tenbfc \regfont\tenbic
+\fi
+
\def\caps#1{{\escapechar=-1 \expandafter}%
\expandafter\csname\expandafter\tenonlytext\string#1c\endcsname}
\def\tenonlytext{ten}
diff --git a/Master/texmf-dist/tex/csplain/fonts/cs-termes.tex b/Master/texmf-dist/tex/csplain/fonts/cs-termes.tex
index 356eb5ed0e6..b6225925eb4 100644
--- a/Master/texmf-dist/tex/csplain/fonts/cs-termes.tex
+++ b/Master/texmf-dist/tex/csplain/fonts/cs-termes.tex
@@ -24,6 +24,12 @@
\tenrm
+\ifx\regfontdefault\undefined \else
+ \regfontdefault
+ \regfont\tenrmc \regfont\tenitc
+ \regfont\tenbfc \regfont\tenbic
+\fi
+
\def\caps#1{{\escapechar=-1 \expandafter}%
\expandafter\csname\expandafter\tenonlytext\string#1c\endcsname}
\def\tenonlytext{ten}
diff --git a/Master/texmf-dist/tex/csplain/fonts/cyrchars.tex b/Master/texmf-dist/tex/csplain/fonts/cyrchars.tex
index 329a55e30ce..a49ba1fb9d2 100644
--- a/Master/texmf-dist/tex/csplain/fonts/cyrchars.tex
+++ b/Master/texmf-dist/tex/csplain/fonts/cyrchars.tex
@@ -377,7 +377,7 @@ the \language register appropriately.
That is all.
-If you needs more: use Unicoded TeX engine (XeTeX, LuaTeX) plus appropriate
-Unicode font and doesn't use this macro file!
+If you need more: use Unicoded TeX engine (XeTeX, LuaTeX) plus appropriate
+Unicode font and don't use this macro file!
------------------------------------------------------------- \ No newline at end of file
diff --git a/Master/texmf-dist/tex/csplain/fonts/tx-math.tex b/Master/texmf-dist/tex/csplain/fonts/tx-math.tex
index a88f171aeb2..4f3a121788f 100644
--- a/Master/texmf-dist/tex/csplain/fonts/tx-math.tex
+++ b/Master/texmf-dist/tex/csplain/fonts/tx-math.tex
@@ -131,6 +131,8 @@
\skewchar\scriptscriptfont1=127
\skewchar\textfont2=48 \skewchar\scriptfont2=48
\skewchar\scriptscriptfont2=48
+ \fontdimen8\scriptfont3 = \fontdimen8\textfont3
+ \fontdimen8\scriptscriptfont3 = \fontdimen8\textfont3
}
\def\setmathsizes[#1/#2/#3]{%
\def\sizemtext{#1\ptmunit}\def\sizemscript{#2\ptmunit}%
@@ -699,7 +701,7 @@
\ifx #1=\ne \else
\ifx #1<\nless \else
\ifx #1>\ngtr \else
- \bgroup\escapechar=-1\xdef\tmpn{\string#1}\egroup
+ \begingroup\escapechar=-1\xdef\tmpn{\string#1}\endgroup
\expandafter\ifx \csname not\tmpn\endcsname \relax
\expandafter\ifx \csname n\tmpn\endcsname \relax
\mathrel{\mathord{\notchar}\mathord{#1}}%
@@ -722,3 +724,5 @@ Sep. 2013: \letfont plus \corrmsizes used in \setmathfamily
\ptmunit depends on \ptunit now
\setmathfamily <num><space><font-selector> ... (<space> added)
Nov. 2013: Test of \normalmathloading introduced
+Jul. 2014: \bgroup -> \beingroup in \not macro
+ \fontdimen8 (fraction rule thikness) set the same for (s)script
diff --git a/Master/texmf-dist/tex/csplain/opmac/opmac.tex b/Master/texmf-dist/tex/csplain/opmac/opmac.tex
index c40f07fcbb1..9fcab18f3e0 100644
--- a/Master/texmf-dist/tex/csplain/opmac/opmac.tex
+++ b/Master/texmf-dist/tex/csplain/opmac/opmac.tex
@@ -5,7 +5,7 @@
%% The history of versions is at the end of this file, after \endpinput
\ifx\OPmacversion\undefined \else \endinput \fi
-\def\OPmacversion{Jun 2014}
+\def\OPmacversion{Jul. 2014}
\immediate\write16{This is OPmac (Olsak's Plain macros), version <\OPmacversion>}
%%%%%%%%%%%%%% Basic macros, sec. 3.1 in opmac-d.pdf
@@ -28,7 +28,7 @@
\def\sdef#1{\expandafter\def\csname#1\endcsname}
\def\sxdef#1{\expandafter\xdef\csname#1\endcsname}
-\def\adef#1{\catcode`#1=13 \bgroup \lccode`\~=`#1\lowercase{\egroup\def~}}
+\def\adef#1{\catcode`#1=13 \begingroup \lccode`\~=`#1\lowercase{\endgroup\def~}}
\def\isdefined #1#2{\expandafter\ifx \csname#1\endcsname \relax
\csname iffalse\expandafter\endcsname
@@ -120,7 +120,7 @@
%%%%%%%%%%%%%% Sizes of fonts and \baselineskip, sec. 3.4 in opmac-d.pdf
\ifx\regfont\undefined
- \ifx\uselanguage\undefined % if this is eplain, the following warning is suppressed
+ \ifx\uselanguage\undefined % if this is etex.src, the following warning is suppressed
\opwarning{csplain version <Nov. 2012> or later is recommended}
\fi
% macros from csplain, file csfontsm.tex:
@@ -239,7 +239,7 @@
\sdef{lan:5}{cs} \sdef{lan:15}{cs} \sdef{lan:115}{cs}
\sdef{lan:6}{sk} \sdef{lan:16}{sk} \sdef{lan:116}{sk}
-\ifx\uselanguage\undefined \else \message{OPmac: eplain detected}
+\ifx\uselanguage\undefined \else \message{OPmac: etex.src macros detected}
\bgroup
\uselanguage{czech} \sxdef{lan:\the\language}{cs}
\uselanguage{slovak} \sxdef{lan:\the\language}{sk}
@@ -488,31 +488,39 @@
\def\iid #1 {\leavevmode\iindex{#1}#1\futurelet\tmp\iiD}
\def\iiD{\ifx\tmp,\else\ifx\tmp.\else\space\fi\fi}
-\def\Xindex#1#2{\bgroup \def~{ }%
- \isdefined{,#1}\iftrue
- \expandafter\firstdata \csname,#1\endcsname \XindexA
- \ifnum#2=\tmpa % \ii on the same page
- \else
- \tmpnum=#2 \advance\tmpnum by-1
- \expandafter\seconddata \csname,#1\endcsname \XindexB
- \if\tmpb+% state: the pagelist ends by a pagenumber
- \ifnum\tmpnum=\tmpa % the consecutive page
- \sxdef{,#1}{{#2/-}{\tmp\iiendash}}
- \else % the pages drop
- \sxdef{,#1}{{#2/+}{\tmp, #2}}
- \fi
- \else % state: the pagelist ends by --
- \ifnum\tmpnum=\tmpa % the consecutive page
- \sxdef{,#1}{{#2/-}{\tmp}}
- \else % the pages drop
- \sxdef{,#1}{{#2/+}{\tmp\tmpa, #2}}
- \fi
- \fi
- \fi
- \else % first occurrence of the index item #1
- \sxdef{,#1}{{#2/+}{#2}}
- \global \expandafter\addto \expandafter\iilist \csname,#1\endcsname
- \fi
+\def\Xindex{\Xindexg,}
+\def\Xindexg#1#2#3{\bgroup \def~{ }% #1=prefix, #2=index-item, #3=pageno
+ \isdefined{#1#2}\iftrue
+ \ifx^#3^\else
+ \expandafter\firstdata \csname#1#2\endcsname \XindexA
+ \ifnum#3=\tmpa % \ii on the same page
+ \else
+ \tmpnum=#3 \advance\tmpnum by\pgfolioB-1
+ \expandafter\seconddata \csname#1#2\endcsname \XindexB
+ \ifx\tmp\empty
+ \sxdef{#1#2}{{#3/+}{\pgfolioA{#3}}} % previous item: empty page
+ \else
+ \if\tmpb+% state: the pagelist ends by a pagenumber
+ \ifnum\tmpnum=\tmpa % the consecutive page
+ \sxdef{#1#2}{{#3/-}{\tmp\iiendash}}
+ \else % the pages drop
+ \sxdef{#1#2}{{#3/+}{\tmp, \pgfolioA{#3}}}
+ \fi
+ \else % state: the pagelist ends by --
+ \ifnum\tmpnum=\tmpa % the consecutive page
+ \sxdef{#1#2}{{#3/-}{\tmp}}
+ \else % the pages drop
+ \sxdef{#1#2}{{#3/+}{\tmp\pgfolioA{\tmpa}, \pgfolioA{#3}}}
+ \fi\fi\fi\fi\fi
+ \else % first occurrence of the index item #2
+ \ifx^#3^\sxdef{#1#2}{{0/+}{}}\else \sxdef{#1#2}{{#3/+}{\pgfolioA{#3}}}\fi
+ \ifx,#1
+ \global \expandafter\addto \expandafter\iilist \csname#1#2\endcsname
+ \else
+ \isdefined{iilist:#1}\iftrue
+ \global\expandafter\addto \csname iilist:#1\expandafter\endcsname \csname#1#2\endcsname
+ \else \sxdef{iilist:#1}{\expandafter\noexpand \csname#1#2\endcsname}
+ \fi\fi\fi
\egroup
}
\def\iilist{} \def\iiendash{--}
@@ -525,6 +533,9 @@
\def\XindexA#1/#2&{\def\tmpa{#1}\let\tmpb=#2}
\def\XindexB#1&{\def\tmp{#1}}
+\def\pgfolioA#1{\ifnum#1<0 \romannumeral-\fi#1}
+\def\pgfolioB{\ifnum\tmpnum<0-\fi}
+
\def\makeindex{\par
\ifx\iilist\empty \opwarning{index data-buffer is empty. TeX me again}
\else
@@ -537,7 +548,7 @@
\xdef##1{{\tmpb}{\tmp}}
\else
\preparesorting##1% converted item by sorting data in \tmpb
- \xdef##1{{\tmpb}{\tmp\tmpa}}
+ \xdef##1{{\tmpb}{\tmp\pgfolioA{\tmpa}}}
\fi
\expandafter\act\fi}
\expandafter \act \iilist \relax
@@ -546,7 +557,7 @@
\iiparparams
\gdef\act##1{\ifx##1\relax \else \prepii##1%
\seconddata##1\printiipages \expandafter\act \fi}
- \expandafter \act \iilist \relax
+ \expandafter \act \iilist \relax
\orippx \global\let\act=\undefined \global\let\orippx=\undefined
\fi
}
@@ -860,10 +871,10 @@
\def\restorecolor{{\def\tmp##1##2##3##4\end{\xdef\savedcolors{##4}%
\def\tmpa{##2}\def\tmpb{##3}\writecolortrue
- \ifx\tmpa\empty\else \ifx\tmpa\currcolork\else \pdfliteral{##2 k}\xdef\currcolork{##2}%
- \ifnum##1=1 \writecolor k\fi\fi\fi
- \ifx\tmpb\empty\else \ifx\tmpb\currcolorK\else \pdfliteral{##3 K}\xdef\currcolorK{##3}%
- \ifnum##1=1 \writecolor K\fi\fi\fi}%
+ \ifx\tmpa\currcolork\else \pdfliteral{##2 k}\xdef\currcolork{##2}%
+ \ifnum##1=1 \writecolor k\fi\fi
+ \ifx\tmpb\currcolorK\else \pdfliteral{##3 K}\xdef\currcolorK{##3}%
+ \ifnum##1=1 \writecolor K\fi\fi}%
\expandafter\tmp\savedcolors\end}}
\addprotect\setcmykcolor \addprotect\localcolor \addprotect\longlocalcolor
@@ -895,7 +906,7 @@
\def\preboxcclv{\csname pgc:\the\pageno\endcsname}
\def\postboxcclv{{%
\def\setpgcolor##1##2{\expandafter\xdef\csname currcolor##1\endcsname{##2}}%
- \ifnum\pageno<\lastpage
+ \ifnum\pageno \ifnum\lastpage<0 >\else<\fi \lastpage % simply: \ifnum\pageno < \lastpage
\globaldefs=-1 \advancepageno \globaldefs=0 \csname pgc:\the\pageno\endcsname
\else \xdef\currcolork{\pdflastcolork}\xdef\currcolorK{\pdflastcolorK}\fi
\let\longlocalcolor=\relax \let\localcolor=\relax \Black \linecolor\Black
@@ -943,7 +954,7 @@
{\def~{\nobreak\space}\urlcolor#3}\pdfendlink}%
}
\def\toclink#1{\toclinkA{#1}}
-\def\pglink#1{#1}
+\def\pglink#1{\pgfolioA{#1}\relax}
\def\citelink#1#2{#2}
\def\reflink[#1]#2{#2}
\def\ulink[#1]#2{{#2}}
@@ -952,7 +963,7 @@
\def\hyperlinks#1#2{%
\let\dest=\destactive \let\link=\linkactive
\def\toclink##1{\link[toc:##1]{\localcolor#1}{\toclinkA{##1}}}%
- \def\pglink##1{\link[pg:##1]{\localcolor#1}{##1}}%
+ \def\pglink##1{\link[pg:##1]{\localcolor#1}{\pgfolioA{##1}}}%
\def\citelink##1##2{\link[cite:##1]{\localcolor#1}{##2}}%
\def\reflink[##1]##2{\link[ref:##1]{\localcolor#1}{##2}}%
\def\ulink[##1]##2{\urllink[url:##1]{##2}}%
@@ -992,12 +1003,13 @@
\def\urlslashslash{/\urlskip/}
\addprotect\url
-\def\replacestrings#1#2{%
- \def\tmp##1#1##2\relax{\if$##2$\addto\tmpb{##1}\else\addto\tmpb{##1#2}\tmp##2\relax\fi}%
- \expandafter\def\expandafter\tmpb\expandafter{\expandafter}%
- \expandafter\tmp\tmpb\/#1\relax
- \def\tmp##1\/{\def\tmpb{##1}}\expandafter\tmp\tmpb
+\bgroup \catcode`!=3 \catcode`?=3
+\gdef\replacestrings#1#2{%
+ \long\def\tmp##1#1##2!{\ifx!##2!\addto\tmpb{##1}\else\addto\tmpb{##1#2}\tmp##2!\fi}%
+ \expandafter\def\expandafter\tmpb\expandafter{\expandafter}\expandafter\tmp\tmpb?#1!%
+ \def\tmp##1?{\def\tmpb{##1}}\expandafter\tmp\tmpb
}
+\egroup
%%%%%%%%%%%%%% Outlines -- sec. 3.17 in opmac-d.pdf
@@ -1350,7 +1362,7 @@
}
\def\mnoteC{\writecolorfalse \let\longlocalcolor=\localcolor
\edef\mnoteD{\xdef\noexpand\currcolork{\currcolork}\xdef\noexpand\currcolorK{\currcolorK}}%
- \def\currcolork{}\def\currcolorK{}%
+ \long\edef\currcolork{\currcolork}\long\edef\currcolorK{\currcolorK}%
}
\def\Xmnote{\advance\mnotenum by1
\sxdef{mn:\the\mnotenum}{\ifodd\lastpage \right \else \left \fi}}
@@ -1581,7 +1593,7 @@
\ifr@ggedbottom \kern-\dimen@ \vfil \fi
}}
-\footline={\hss\tenrm\thefontsize[10]\the\pageno\hss}
+\footline={\hss\tenrm\thefontsize[10]\folio\hss}
%%%%%%%%%%%%%% margins -- sec. 3.25 in opmac-d.pdf
@@ -1730,6 +1742,12 @@ May 2014c \maybebreak introduced
May 2014d \seccfont bug fixed
\tabstrut inserted to each column in the \table
Jun 2014 \opwarning about missing .bbl file rewritten.
-
+ more robust \replacestrings
+Jun. 2014a \mnoteC: default base mnote color set as current
+Jun. 2014b \footline: \the\pageno replaced by \folio
+ ? instead \/ in \replacestrings
+Jun. 2014c \pgfolioA, \pgfolioB introduced
+ \Xindexg introduced
+Jul. 2014 \bgroup -> \begingroup in \adef
%%%%%%%%%%%%%% End of opmac.tex