summaryrefslogtreecommitdiff
path: root/tex
diff options
context:
space:
mode:
Diffstat (limited to 'tex')
-rw-r--r--tex/context/base/cont-new.mkii2
-rw-r--r--tex/context/base/cont-new.mkiv2
-rw-r--r--tex/context/base/context-version.pdfbin4138 -> 4141 bytes
-rw-r--r--tex/context/base/context-version.pngbin106297 -> 106426 bytes
-rw-r--r--tex/context/base/context.mkii2
-rw-r--r--tex/context/base/context.mkiv2
-rw-r--r--tex/context/base/mult-low.lua2
-rw-r--r--tex/context/base/pack-rul.mkiv4
-rw-r--r--tex/context/base/page-ini.mkiv6
-rw-r--r--tex/context/base/page-lin.mkiv110
-rw-r--r--tex/context/base/page-mul.mkiv4
-rw-r--r--tex/context/base/page-txt.mkvi2
-rw-r--r--tex/context/base/status-files.pdfbin24476 -> 24462 bytes
-rw-r--r--tex/context/base/status-lua.pdfbin179530 -> 179532 bytes
-rw-r--r--tex/context/base/syst-aux.mkiv29
-rw-r--r--tex/generic/context/luatex/luatex-fonts-merged.lua2
16 files changed, 112 insertions, 55 deletions
diff --git a/tex/context/base/cont-new.mkii b/tex/context/base/cont-new.mkii
index b6bed9fad..c4d52b313 100644
--- a/tex/context/base/cont-new.mkii
+++ b/tex/context/base/cont-new.mkii
@@ -11,7 +11,7 @@
%C therefore copyrighted by \PRAGMA. See mreadme.pdf for
%C details.
-\newcontextversion{2012.07.09 20:28}
+\newcontextversion{2012.07.09 22:35}
%D This file is loaded at runtime, thereby providing an
%D excellent place for hacks, patches, extensions and new
diff --git a/tex/context/base/cont-new.mkiv b/tex/context/base/cont-new.mkiv
index 95914c866..b07d17585 100644
--- a/tex/context/base/cont-new.mkiv
+++ b/tex/context/base/cont-new.mkiv
@@ -11,7 +11,7 @@
%C therefore copyrighted by \PRAGMA. See mreadme.pdf for
%C details.
-\newcontextversion{2012.07.09 20:28}
+\newcontextversion{2012.07.09 22:35}
%D This file is loaded at runtime, thereby providing an
%D excellent place for hacks, patches, extensions and new
diff --git a/tex/context/base/context-version.pdf b/tex/context/base/context-version.pdf
index c8c4aa513..eaef9c1e7 100644
--- a/tex/context/base/context-version.pdf
+++ b/tex/context/base/context-version.pdf
Binary files differ
diff --git a/tex/context/base/context-version.png b/tex/context/base/context-version.png
index a2ff996ee..164b0508b 100644
--- a/tex/context/base/context-version.png
+++ b/tex/context/base/context-version.png
Binary files differ
diff --git a/tex/context/base/context.mkii b/tex/context/base/context.mkii
index 0f9619140..af6e0d1df 100644
--- a/tex/context/base/context.mkii
+++ b/tex/context/base/context.mkii
@@ -20,7 +20,7 @@
%D your styles an modules.
\edef\contextformat {\jobname}
-\edef\contextversion{2012.07.09 20:28}
+\edef\contextversion{2012.07.09 22:35}
%D For those who want to use this:
diff --git a/tex/context/base/context.mkiv b/tex/context/base/context.mkiv
index 3157107ef..1bd5703f3 100644
--- a/tex/context/base/context.mkiv
+++ b/tex/context/base/context.mkiv
@@ -25,7 +25,7 @@
%D up and the dependencies are more consistent.
\edef\contextformat {\jobname}
-\edef\contextversion{2012.07.09 20:28}
+\edef\contextversion{2012.07.09 22:35}
%D For those who want to use this:
diff --git a/tex/context/base/mult-low.lua b/tex/context/base/mult-low.lua
index 571c4e48f..a32d4fe31 100644
--- a/tex/context/base/mult-low.lua
+++ b/tex/context/base/mult-low.lua
@@ -197,7 +197,7 @@ return {
"doifelsevalue", "doifvalue", "doifnotvalue",
"doifnothing", "doifsomething", "doifelsenothing", "doifsomethingelse",
"doifvaluenothing", "doifvaluesomething", "doifelsevaluenothing",
- "doifdimensionelse", "doifnumberelse",
+ "doifdimensionelse", "doifnumberelse", "doifnumber", "doifnotnumber",
"doifcommonelse", "doifcommon", "doifnotcommon",
"doifinstring", "doifnotinstring", "doifinstringelse",
"doifassignmentelse",
diff --git a/tex/context/base/pack-rul.mkiv b/tex/context/base/pack-rul.mkiv
index 330e153bc..c3ac12b1b 100644
--- a/tex/context/base/pack-rul.mkiv
+++ b/tex/context/base/pack-rul.mkiv
@@ -1382,8 +1382,8 @@
\else
\pack_framed_finish_c
\fi\fi\fi
- \ifconditional\boxcontentneedsprocessing
- \mkdoprocessboxcontents\b_framed_normal
+ \ifconditional\page_postprocessors_needed_box
+ \page_postprocessors_linenumbers_box\b_framed_normal
\fi
\else
\pack_framed_finish_c
diff --git a/tex/context/base/page-ini.mkiv b/tex/context/base/page-ini.mkiv
index d1b39399a..43967cb76 100644
--- a/tex/context/base/page-ini.mkiv
+++ b/tex/context/base/page-ini.mkiv
@@ -56,9 +56,9 @@
\newbox\pagebox
-\ifx\mkprocesscolumncontents\undefined\let\mkprocesscolumncontents\gobbleoneargument\fi
-\ifx\mkprocesspagecontents \undefined\let\mkprocesspagecontents \gobbleoneargument\fi
-\ifx\mkprocessboxcontents \undefined\let\mkprocessboxcontents \gobbleoneargument\fi
+\ifdefined\page_postprocessors_column \else \let\page_postprocessors_column\gobbleoneargument \fi
+\ifdefined\page_postprocessors_page \else \let\page_postprocessors_page \gobbleoneargument \fi
+\ifdefined\page_postprocessors_box \else \let\page_postprocessors_box \gobbleoneargument \fi
%D Floats.
diff --git a/tex/context/base/page-lin.mkiv b/tex/context/base/page-lin.mkiv
index a26fc2c74..d8aaa2e7e 100644
--- a/tex/context/base/page-lin.mkiv
+++ b/tex/context/base/page-lin.mkiv
@@ -58,22 +58,22 @@
\let\makelinenumber\gobblesevenarguments % used at lua end
-\newconditional\boxcontentneedsprocessing
+\newconditional\page_postprocessors_needed_box
-\def\mkdoprocesspagecontents #1{\page_lines_add_numbers_to_box{#1}\plusone \plusone \zerocount}
-\def\mkdoprocessboxcontents #1{\page_lines_add_numbers_to_box{#1}\plusone \plusone \zerocount}
-\def\mkdoprocessdeepboxcontents#1{\page_lines_add_numbers_to_box{#1}\plusone \plusone \plusone }
-\def\mkdoprocesscolumncontents #1{\page_lines_add_numbers_to_box{#1}\currentcolumn\nofcolumns\zerocount}
+\unexpanded\def\page_postprocessors_linenumbers_page #1{\page_lines_add_numbers_to_box{#1}\plusone \plusone \zerocount}
+\unexpanded\def\page_postprocessors_linenumbers_box #1{\page_lines_add_numbers_to_box{#1}\plusone \plusone \zerocount}
+\unexpanded\def\page_postprocessors_linenumbers_deepbox#1{\page_lines_add_numbers_to_box{#1}\plusone \plusone \plusone }
+\unexpanded\def\page_postprocessors_linenumbers_column #1{\page_lines_add_numbers_to_box{#1}\currentcolumn\nofcolumns\zerocount}
\def\page_lines_parameters_regular
- {continue = "\linenumberingparameter\c!continue",
+ {continue = "\ifnum\c_page_lines_mode=\zerocount\v!yes\else\v!no\fi",
start = \number\linenumberingparameter\c!start,
step = \number\linenumberingparameter\c!step,
method = "\linenumberingparameter\c!method",
tag = "\currentlinenumbering"}
\def\page_lines_parameters_update
- {continue = "\linenumberingparameter\c!continue"}
+ {continue = "\ifnum\c_page_lines_mode=\zerocount\v!yes\else\v!no\fi"}
\def\page_lines_start_define
{\setxvalue{\??linenumberinginstance\currentlinenumbering}{\ctxcommand{registerlinenumbering({\page_lines_parameters_regular})}}}
@@ -141,7 +141,7 @@
\c!location=\v!left,
\c!style=,
\c!color=,
- \c!width=2em,
+ \c!width=2\emwidth,
\c!left=,
\c!right=,
\c!command=,
@@ -179,38 +179,82 @@
\expandafter\let\csname\??linennumberingalternative\v!flushright\endcsname \plustwo
\expandafter\let\csname\??linennumberingalternative\v!auto \endcsname \plusfive
+% \startlinenumbering[<startvalue>|continue|settings|name]
+% \startlinenumbering[name][<startvalue>|continue|settings]
+
\unexpanded\def\startlinenumbering
{\dodoubleempty\page_lines_start}
-\def\page_lines_start[#1][#2]% todo: c!continue
+\def\page_lines_start % we stay downward compatible
{\begingroup
- \c_page_lines_mode\plusone
\ifsecondargument
- \edef\currentlinenumbering{#1}%
- \doifassignmentelse{#2}
- {\setupcurrentlinenumbering[#2]}
- {\doifnumberelse{#2}% downward compatible
- {\setcurrentlinenumberingparameter\c!start{#2}}%
- {\doif{#2}\v!continue
- {\letcurrentlinenumberingparameter\c!continue\v!yes
- \c_page_lines_mode\zerocount}}}%
+ \expandafter\page_lines_start_two
\else\iffirstargument
- \doifnumberelse{#1}% downward compatible
- {\let\currentlinenumbering\empty
- \setcurrentlinenumberingparameter\c!start{#1}}%
- {\doifelse{#1}\v!continue
- {\let\currentlinenumbering\empty
- \letcurrentlinenumberingparameter\c!continue\v!yes
- \c_page_lines_mode\zerocount}
- {\edef\currentlinenumbering{#1}}}%
- \fi\fi
- \doif{\linenumberingparameter\c!continue}\v!yes
- {\c_page_lines_mode\zerocount}%
- \numberinglinestrue
+ \doubleexpandafter\page_lines_start_one
+ \else
+ \doubleexpandafter\page_lines_start_zero
+ \fi\fi}
+
+\def\page_lines_start_zero[#1][#2]%
+ {\edef\m_argument{\linenumberingparameter\c!continue}%
+ \ifx\m_argument\v!continue
+ \c_page_lines_mode\zerocount
+ \else
+ \c_page_lines_mode\plusone
+ \fi
+ \page_lines_start_followup}
+
+\def\page_lines_start_one[#1][#2]% [continue|<number>|settings] % historic
+ {\edef\m_argument{#1}%
+ \ifx\m_argument\v!continue
+ \c_page_lines_mode\zerocount
+ \let\currentlinenumbering\empty
+ \else
+ \c_page_lines_mode\plusone
+ \ifx\m_argument\v!empty
+ \let\currentlinenumbering\empty
+ \else
+ \doifassignmentelse{#1}
+ {\let\currentlinenumbering\empty
+ \setupcurrentlinenumbering[#1]}
+ {\doifnumberelse\m_argument
+ {\let\currentlinenumbering\empty
+ \letlinenumberingparameter\c!start\m_argument}
+ {\let\currentlinenumbering\m_argument}}%
+ \fi
+ \edef\m_argument{\linenumberingparameter\c!continue}%
+ \ifx\m_argument\v!continue
+ \c_page_lines_mode\zerocount
+ \fi
+ \fi
+ \page_lines_start_followup}
+
+\def\page_lines_start_two[#1][#2]% [tag][continue|<number>|settings]
+ {\edef\currentlinenumbering{#1}%
+ \edef\m_argument{#2}%
+ \ifx\m_argument\v!continue
+ \c_page_lines_mode\zerocount
+ \else
+ \c_page_lines_mode\plusone
+ \ifx\m_argument\v!empty \else
+ \doifassignmentelse{#2}
+ {\setupcurrentlinenumbering[#2]}
+ {\doifnumber\m_argument
+ {\letlinenumberingparameter\c!start\m_argument}}%
+ \fi
+ \edef\m_argument{\linenumberingparameter\c!continue}%
+ \ifx\m_argument\v!continue
+ \c_page_lines_mode\zerocount
+ \fi
+ \fi
+ \page_lines_start_followup}
+
+\def\page_lines_start_followup
+ {\numberinglinestrue
\the\beforeeverylinenumbering
- \globallet\mkprocesspagecontents \mkdoprocesspagecontents
- \globallet\mkprocesscolumncontents\mkdoprocesscolumncontents
- \global\settrue\boxcontentneedsprocessing % see core-rul.mkiv
+ \globallet\page_postprocessors_page \page_postprocessors_linenumbers_page
+ \globallet\page_postprocessors_column\page_postprocessors_linenumbers_column
+ \global\settrue\page_postprocessors_needed_box % see core-rul.mkiv
\ifcase\c_page_lines_mode\relax
\page_lines_start_update % continue
\or
diff --git a/tex/context/base/page-mul.mkiv b/tex/context/base/page-mul.mkiv
index 2e661f3b7..300ab7720 100644
--- a/tex/context/base/page-mul.mkiv
+++ b/tex/context/base/page-mul.mkiv
@@ -463,13 +463,13 @@
\setfalse\someprecolumncontent % will be set elsewhere
\else
\settrue\someprecolumncontent
- \mkprocessboxcontents\precolumnbox
+ \page_postprocessors_box\precolumnbox
\fi
\forgetall
\setmulticolumnsout
\setmaxcolumndimensions
\dohandleallcolumns
- {\mkprocesscolumncontents\currentcolumnbox}%
+ {\page_postprocessors_column\currentcolumnbox}%
\dohandleallcolumns
{\page_marks_synchronize_column\plusone\nofcolumns\mofcolumns\currentcolumnbox}%
\postprocesscolumns
diff --git a/tex/context/base/page-txt.mkvi b/tex/context/base/page-txt.mkvi
index 504527a0f..c6ef366d3 100644
--- a/tex/context/base/page-txt.mkvi
+++ b/tex/context/base/page-txt.mkvi
@@ -847,7 +847,7 @@
\kern\dimexpr\leftmarginwidth+\leftmargindistance\relax
\fi
\endgroup
- \mkprocesspagecontents{#2}%
+ \page_postprocessors_page{#2}%
\settextpagecontent\b_page_layouts_element{#1}{#2}%
\page_backgrounds_add_to_text\b_page_layouts_element
\page_grids_add_to_box\b_page_layouts_element
diff --git a/tex/context/base/status-files.pdf b/tex/context/base/status-files.pdf
index 966f28c40..e734d8a6c 100644
--- a/tex/context/base/status-files.pdf
+++ b/tex/context/base/status-files.pdf
Binary files differ
diff --git a/tex/context/base/status-lua.pdf b/tex/context/base/status-lua.pdf
index 5c97ea52a..b27731a99 100644
--- a/tex/context/base/status-lua.pdf
+++ b/tex/context/base/status-lua.pdf
Binary files differ
diff --git a/tex/context/base/syst-aux.mkiv b/tex/context/base/syst-aux.mkiv
index 74dd076f7..0571fd00f 100644
--- a/tex/context/base/syst-aux.mkiv
+++ b/tex/context/base/syst-aux.mkiv
@@ -1321,20 +1321,19 @@
\fi}
%D \macros
-%D {doifnumberelse}
+%D {doifnumberelse,doifnumber,doifnotnumber}
%D
-%D The next macro executes a command depending of the outcome
-%D of a test on numerals. This is probably one of the fastest
-%D test possible, exept from a less robust 10||step
-%D \type{\if}||ladder or some tricky \type{\lcode} checking.
+%D The next macro executes a command depending of the outcome of a test on
+%D numerals. This is probably one of the fastest test possible, exept from
+%D a less robust 10||step \type {\if}||ladder or some tricky \type {\lcode}
+%D checking.
%D
%D \starttyping
%D \doifnumberelse {string} {then ...} {else ...}
%D \stoptyping
%D
-%D The macro accepts \type{123}, \type{abc}, \type{{}},
-%D \type{\getal} and \type{\the\count...}. This macro is a
-%D rather dirty one.
+%D The macro accepts \type {123}, \type {abc}, \type {{}}, \type {\getal} and
+%D \type {\the\count...}. This macro is a rather dirty one.
\def\doifnumberelse#1% does not accept counters (fully expandable)
{\ifcase0\ifcase1#1\or\or\or\or\or\or\or\or\or\else1\fi\space
@@ -1343,6 +1342,20 @@
\expandafter\firstoftwoarguments
\fi}
+\def\doifnumber#1%
+ {\ifcase0\ifcase1#1\or\or\or\or\or\or\or\or\or\else1\fi\space
+ \expandafter\firstofoneargument
+ \else
+ \expandafter\gobbleoneargument
+ \fi}
+
+\def\doifnotnumber#1%
+ {\ifcase0\ifcase1#1\or\or\or\or\or\or\or\or\or\else1\fi\space
+ \expandafter\gobbleoneargument
+ \else
+ \expandafter\firstofoneargument
+ \fi}
+
%D \macros
%D {makerawcommalist,
%D rawdoinsetelse,
diff --git a/tex/generic/context/luatex/luatex-fonts-merged.lua b/tex/generic/context/luatex/luatex-fonts-merged.lua
index 5d8f36906..046b1404b 100644
--- a/tex/generic/context/luatex/luatex-fonts-merged.lua
+++ b/tex/generic/context/luatex/luatex-fonts-merged.lua
@@ -1,6 +1,6 @@
-- merged file : luatex-fonts-merged.lua
-- parent file : luatex-fonts.lua
--- merge date : 07/09/12 20:28:02
+-- merge date : 07/09/12 22:35:28
do -- begin closure to overcome local limits and interference