summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHans Hagen <pragma@wxs.nl>2020-06-20 14:42:31 +0200
committerContext Git Mirror Bot <phg@phi-gamma.net>2020-06-20 14:42:31 +0200
commit56c53b52bfa815946a62fdb28ee432b5d849b9c9 (patch)
treee0fb598f82bbd46c8e2e1391df00698dea75493f
parent63bb70d210dc6e8a17959c4e056fe41da3f1c398 (diff)
downloadcontext-56c53b52bfa815946a62fdb28ee432b5d849b9c9.tar.gz
2020-06-20 13:35:00
-rw-r--r--doc/context/documents/general/manuals/luametatex.pdfbin1232891 -> 1232904 bytes
-rw-r--r--scripts/context/lua/mtx-install.lua9
-rw-r--r--tex/context/base/mkii/cont-new.mkii2
-rw-r--r--tex/context/base/mkii/context.mkii2
-rw-r--r--tex/context/base/mkiv/anch-bck.mkvi10
-rw-r--r--tex/context/base/mkiv/attr-ini.mkiv27
-rw-r--r--tex/context/base/mkiv/back-exp.mkiv8
-rw-r--r--tex/context/base/mkiv/buff-ver.mkiv65
-rw-r--r--tex/context/base/mkiv/buff-ver.mkxl6
-rw-r--r--tex/context/base/mkiv/colo-ext.mkiv4
-rw-r--r--tex/context/base/mkiv/colo-ini.mkiv87
-rw-r--r--tex/context/base/mkiv/colo-ini.mkxl44
-rw-r--r--tex/context/base/mkiv/cont-new.mkiv2
-rw-r--r--tex/context/base/mkiv/context.mkiv2
-rw-r--r--tex/context/base/mkiv/context.mkxl2
-rw-r--r--tex/context/base/mkiv/core-con.lua92
-rw-r--r--tex/context/base/mkiv/core-con.mkiv9
-rw-r--r--tex/context/base/mkiv/font-gds.mkvi4
-rw-r--r--tex/context/base/mkiv/font-ini.mklx8
-rw-r--r--tex/context/base/mkiv/font-ini.mkvi8
-rw-r--r--tex/context/base/mkiv/font-mat.mklx4
-rw-r--r--tex/context/base/mkiv/font-mat.mkvi4
-rw-r--r--tex/context/base/mkiv/lang-rep.mkiv2
-rw-r--r--tex/context/base/mkiv/math-ali.mkiv2
-rw-r--r--tex/context/base/mkiv/math-fen.mkiv10
-rw-r--r--tex/context/base/mkiv/math-ini.mkiv44
-rw-r--r--tex/context/base/mkiv/math-ini.mkxl46
-rw-r--r--tex/context/base/mkiv/meta-ini.mkiv6
-rw-r--r--tex/context/base/mkiv/meta-ini.mkxl6
-rw-r--r--tex/context/base/mkiv/node-bck.mkiv16
-rw-r--r--tex/context/base/mkiv/node-fin.mkiv4
-rw-r--r--tex/context/base/mkiv/node-rul.mkiv12
-rw-r--r--tex/context/base/mkiv/page-lin.mkvi10
-rw-r--r--tex/context/base/mkiv/page-mix.mkiv2
-rw-r--r--tex/context/base/mkiv/scrn-but.mkvi2
-rw-r--r--tex/context/base/mkiv/scrn-fld.mkvi2
-rw-r--r--tex/context/base/mkiv/scrn-wid.mkvi4
-rw-r--r--tex/context/base/mkiv/spac-ali.mkiv30
-rw-r--r--tex/context/base/mkiv/spac-chr.mkiv2
-rw-r--r--tex/context/base/mkiv/spac-prf.mkvi2
-rw-r--r--tex/context/base/mkiv/spac-ver.mkiv54
-rw-r--r--tex/context/base/mkiv/spac-ver.mkxl56
-rw-r--r--tex/context/base/mkiv/status-files.pdfbin27770 -> 27756 bytes
-rw-r--r--tex/context/base/mkiv/status-lua.pdfbin253570 -> 253681 bytes
-rw-r--r--tex/context/base/mkiv/strc-con.mkvi6
-rw-r--r--tex/context/base/mkiv/strc-flt.mkvi2
-rw-r--r--tex/context/base/mkiv/strc-lst.mkvi4
-rw-r--r--tex/context/base/mkiv/strc-mat.mkiv2
-rw-r--r--tex/context/base/mkiv/strc-not.mkvi18
-rw-r--r--tex/context/base/mkiv/strc-ref.mkvi38
-rw-r--r--tex/context/base/mkiv/strc-reg.mkiv6
-rw-r--r--tex/context/base/mkiv/strc-ren.mkiv6
-rw-r--r--tex/context/base/mkiv/strc-tag.mkiv2
-rw-r--r--tex/context/base/mkiv/tabl-ntb.mkiv2
-rw-r--r--tex/context/base/mkiv/tabl-ntb.mkxl2
-rw-r--r--tex/context/base/mkiv/tabl-tbl.mkiv2
-rw-r--r--tex/context/base/mkiv/tabl-tbl.mkxl2
-rw-r--r--tex/context/base/mkiv/tabl-xtb.mkvi2
-rw-r--r--tex/context/base/mkiv/trac-vis.mkiv4
-rw-r--r--tex/context/base/mkiv/typo-brk.mkiv2
-rw-r--r--tex/context/base/mkiv/typo-cap.mkiv4
-rw-r--r--tex/context/base/mkiv/typo-cln.mkiv2
-rw-r--r--tex/context/base/mkiv/typo-dig.mkiv2
-rw-r--r--tex/context/base/mkiv/typo-dir.mkiv2
-rw-r--r--tex/context/base/mkiv/typo-drp.mkiv10
-rw-r--r--tex/context/base/mkiv/typo-fkr.mkiv2
-rw-r--r--tex/context/base/mkiv/typo-fln.mkiv8
-rw-r--r--tex/context/base/mkiv/typo-itc.mkvi4
-rw-r--r--tex/context/base/mkiv/typo-krn.mkiv2
-rw-r--r--tex/context/base/mkiv/typo-lig.mkiv2
-rw-r--r--tex/context/base/mkiv/typo-ovl.mkiv4
-rw-r--r--tex/context/base/mkiv/typo-pnc.mkiv2
-rw-r--r--tex/context/base/mkiv/typo-rep.mkiv2
-rw-r--r--tex/context/base/mkiv/typo-spa.mkiv2
-rw-r--r--tex/context/base/mkiv/typo-tal.mkiv4
-rw-r--r--tex/generic/context/luatex/luatex-fonts-merged.lua2
76 files changed, 434 insertions, 431 deletions
diff --git a/doc/context/documents/general/manuals/luametatex.pdf b/doc/context/documents/general/manuals/luametatex.pdf
index 34a3161aa..bd3333189 100644
--- a/doc/context/documents/general/manuals/luametatex.pdf
+++ b/doc/context/documents/general/manuals/luametatex.pdf
Binary files differ
diff --git a/scripts/context/lua/mtx-install.lua b/scripts/context/lua/mtx-install.lua
index b9b410353..67e087c06 100644
--- a/scripts/context/lua/mtx-install.lua
+++ b/scripts/context/lua/mtx-install.lua
@@ -498,16 +498,19 @@ function install.update()
local binpath = joinfile(targetroot,"tex",texmfplatform,"bin")
local luametatex = "luametatex"
+ local luatex = "luatex"
local mtxrun = "mtxrun"
local context = "context"
if ostype == "windows" then
luametatex = addsuffix(luametatex,"exe")
+ luatex = addsuffix(luatex,"exe")
mtxrun = addsuffix(mtxrun,"exe")
context = addsuffix(context,"exe")
end
local luametatexbin = joinfile(binpath,luametatex)
+ local luatexbin = joinfile(binpath,luatex)
local mtxrunbin = joinfile(binpath,mtxrun)
local contextbin = joinfile(binpath,context)
@@ -552,6 +555,11 @@ function install.update()
else
-- report("xbit bad : %s",luametatexbin)
end
+ if lfs.setexecutable(luatexbin) then
+ report("xbit set : %s",luatexbin)
+ else
+ -- report("xbit bad : %s",luatexbin)
+ end
if lfs.setexecutable(mtxrunbin) then
report("xbit set : %s",mtxrunbin)
else
@@ -570,7 +578,6 @@ function install.update()
end
run("%s --make en", contextbin)
-
-- in calling script: update mtxrun.exe and mtxrun.lua
report("")
diff --git a/tex/context/base/mkii/cont-new.mkii b/tex/context/base/mkii/cont-new.mkii
index 4bf551395..242fe472a 100644
--- a/tex/context/base/mkii/cont-new.mkii
+++ b/tex/context/base/mkii/cont-new.mkii
@@ -11,7 +11,7 @@
%C therefore copyrighted by \PRAGMA. See mreadme.pdf for
%C details.
-\newcontextversion{2020.06.19 11:04}
+\newcontextversion{2020.06.20 13:33}
%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/mkii/context.mkii b/tex/context/base/mkii/context.mkii
index 207c010fa..bbe1f8fca 100644
--- a/tex/context/base/mkii/context.mkii
+++ b/tex/context/base/mkii/context.mkii
@@ -20,7 +20,7 @@
%D your styles an modules.
\edef\contextformat {\jobname}
-\edef\contextversion{2020.06.19 11:04}
+\edef\contextversion{2020.06.20 13:33}
%D For those who want to use this:
diff --git a/tex/context/base/mkiv/anch-bck.mkvi b/tex/context/base/mkiv/anch-bck.mkvi
index 96dd0cdf5..32e45a642 100644
--- a/tex/context/base/mkiv/anch-bck.mkvi
+++ b/tex/context/base/mkiv/anch-bck.mkvi
@@ -265,9 +265,9 @@
% maybe we should have a resetter for such compensation struts
\def\anch_backgrounds_reset_attributes
- {\scratchcounter\attribute\snapmethodattribute
- \resetallattributes % \attribute\linenumberattribute \attributeunsetvalue
- \attribute\snapmethodattribute\scratchcounter}
+ {\scratchcounter\c_attr_snapmethod
+ \resetallattributes % \c_attr_linenumber\attributeunsetvalue
+ \c_attr_snapmethod\scratchcounter}
\def\anch_backgrounds_text_start_par % beware .. background shapes
{\endgraf % new
@@ -364,14 +364,14 @@
\def\anch_backgrounds_bpos
{\ifconditional\c_anch_backgrounds_pos_no_shape
- \attribute\textbackgroundattribute\attributeunsetvalue
+ \c_attr_textbackground\attributeunsetvalue
\bposkind\v_anch_backgrounds_text_current\plusthree
\else\ifnum\c_anch_backgrounds_pos_state=\plusone
\bposkind\v_anch_backgrounds_text_current\c_anch_backgrounds_pos_state
\clf_registerbackground{\v_anch_backgrounds_text_current}%
\else
\bposkind\v_anch_backgrounds_text_current\c_anch_backgrounds_pos_state
- \attribute\textbackgroundattribute\attributeunsetvalue
+ \c_attr_textbackground\attributeunsetvalue
\fi\fi}
% plugs into other code
diff --git a/tex/context/base/mkiv/attr-ini.mkiv b/tex/context/base/mkiv/attr-ini.mkiv
index 4002ac416..9eb1da69f 100644
--- a/tex/context/base/mkiv/attr-ini.mkiv
+++ b/tex/context/base/mkiv/attr-ini.mkiv
@@ -61,28 +61,31 @@
% here public means 'visible' so it's not to be confused with 'public' at the lua end
+% \let\attr_prefix\??attributecount
+\def\attr_prefix{c_attr_}
+
\def\attr_basics_define_indeed#1[#2][#3]%
- {\ifcsname\??attributecount#2\endcsname\else
+ {\ifcsname\attr_prefix#2\endcsname\else
\scratchcounter\clf_defineattribute{#2}{#1}\relax
%\writestatus\m!system{defining #1 attribute #2 with number \number\scratchcounter}%
- \global\expandafter\attributedef\csname\??attributecount#2\endcsname\scratchcounter
+ \global\expandafter\attributedef\csname\attr_prefix#2\endcsname\scratchcounter
\global\expandafter\newconstant \csname\??attributeid#2\endcsname
\global\csname\??attributeid#2\endcsname\scratchcounter
% some attributes are always global
\doifelseinset\s!global{#3}%
- {\xtoksapp\t_attr_list_global{\csname\??attributecount#2\endcsname\attributeunsetvalue}}%
- {\xtoksapp\t_attr_list_local {\csname\??attributecount#2\endcsname\attributeunsetvalue}}%
+ {\xtoksapp\t_attr_list_global{\csname\attr_prefix#2\endcsname\attributeunsetvalue}}%
+ {\xtoksapp\t_attr_list_local {\csname\attr_prefix#2\endcsname\attributeunsetvalue}}%
\doifinset\s!nomath{#3}%
- {\xtoksapp\t_attr_list_nomath{\csname\??attributecount#2\endcsname\attributeunsetvalue}}%
+ {\xtoksapp\t_attr_list_nomath{\csname\attr_prefix#2\endcsname\attributeunsetvalue}}%
\doifinset\s!public{#3}%
{\expandafter\glet\csname#2\s!attribute\expandafter\endcsname\csname\??attributeid#2\endcsname}%
\doifinset\s!pickup{#3}%
{\global\expandafter\newconstant\csname\??attributepickup#2\endcsname
\global\csname\??attributepickup#2\endcsname\attributeunsetvalue
- \xtoksapp\t_attr_list_pickup{\csname\??attributecount#2\endcsname\csname\??attributepickup#2\endcsname}%
+ \xtoksapp\t_attr_list_pickup{\csname\attr_prefix#2\endcsname\csname\??attributepickup#2\endcsname}%
\ifcsname#2\s!attribute\endcsname
\expandafter\xdef\csname\s!pickup#2\s!attribute\endcsname
- {\csname\??attributepickup#2\endcsname\csname\??attributecount#2\endcsname}%
+ {\csname\??attributepickup#2\endcsname\csname\attr_prefix#2\endcsname}%
\expandafter\xdef\csname\s!forget#2\s!attribute\endcsname
{\csname\??attributepickup#2\endcsname\attributeunsetvalue}%
\fi}%
@@ -92,10 +95,10 @@
{\the\t_attr_list_pickup\relax}
% \unexpanded\def\pickupattribute#1%
-% {\csname\??attributecount#1\endcsname\csname\??attributepickup#1\endcsname}
+% {\csname\attr_prefix#1\endcsname\csname\??attributepickup#1\endcsname}
% \unexpanded\def\pickupattributelater#1%
-% {\csname\??attributepickup#1\endcsname\csname\??attributecount#1\endcsname}
+% {\csname\??attributepickup#1\endcsname\csname\attr_prefix#1\endcsname}
% \unexpanded\def\newattribute#1%
% {\attr_basics_define_indeed\s!public[\csstring#1][]%
@@ -107,9 +110,9 @@
% expandable so we can \edef them for speed
-\def\dosetattribute#1#2{\csname\??attributecount#1\endcsname#2\relax}
-\def\doresetattribute#1{\csname\??attributecount#1\endcsname\attributeunsetvalue}
-\def\dogetattribute #1{\number\csname\??attributecount#1\endcsname}
+\def\dosetattribute#1#2{\csname\attr_prefix#1\endcsname#2\relax}
+\def\doresetattribute#1{\csname\attr_prefix#1\endcsname\attributeunsetvalue}
+\def\dogetattribute #1{\number\csname\attr_prefix#1\endcsname}
\def\dogetattributeid#1{\number\csname\??attributeid#1\endcsname}
\let\dompattribute\gobbletwoarguments
diff --git a/tex/context/base/mkiv/back-exp.mkiv b/tex/context/base/mkiv/back-exp.mkiv
index 3e8469b14..e44a23cb2 100644
--- a/tex/context/base/mkiv/back-exp.mkiv
+++ b/tex/context/base/mkiv/back-exp.mkiv
@@ -117,7 +117,7 @@
\clf_settagconstruct
{\currentstartstop}%
{\startstopparameter\c!style}%
- \attribute\colorattribute
+ \c_attr_color
\ifvmode\plusone\else\zerocount\fi
\relax
\fi}%
@@ -129,7 +129,7 @@
\clf_settaghighlight
{\currenthighlight}%
{\highlightparameter\c!style}
- \attribute\colorattribute
+ \c_attr_color
\ifvmode\plusone\else\zerocount\fi
\relax
\fi}%
@@ -159,9 +159,9 @@
\appendtoks
\unexpanded\def\dotagsetparcounter
- {\global\advance\tagparcounter\plusone\attribute\taggedparattribute\tagparcounter}%
+ {\global\advance\tagparcounter\plusone\c_attr_taggedpar\tagparcounter}%
\unexpanded\def\doresetparcounter
- {\attribute\taggedparattribute\attributeunsetvalue}%
+ {\c_attr_taggedpar\attributeunsetvalue}%
\to \everyenableelements
\appendtoks
diff --git a/tex/context/base/mkiv/buff-ver.mkiv b/tex/context/base/mkiv/buff-ver.mkiv
index 75ee992e4..24aaa57d3 100644
--- a/tex/context/base/mkiv/buff-ver.mkiv
+++ b/tex/context/base/mkiv/buff-ver.mkiv
@@ -24,7 +24,7 @@
\definesystemattribute[verbatimline][public]
\appendtoksonce
- \attribute\verbatimlineattribute\attributeunsetvalue
+ \c_attr_verbatimline\attributeunsetvalue
\to \everyforgetall
%D Initializations.
@@ -178,9 +178,9 @@
\setuevalue{\e!start\currenttyping}{\buff_verbatim_typing_start{\currenttyping}}%
\setuevalue{\e!stop \currenttyping}{\buff_verbatim_typing_stop {\currenttyping}}%
\ifx\currenttypingparent\empty
- \normalexpanded{\definelinenumbering[\currenttyping]}%
+ \normalexpanded{\definelinenumbering[\currenttyping]}%
\else
- \normalexpanded{\definelinenumbering[\currenttyping][\currenttypingparent]}%
+ \normalexpanded{\definelinenumbering[\currenttyping][\currenttypingparent]}%
\fi
\to \everydefinetyping
@@ -489,17 +489,6 @@
\buff_verbatim_setup_keep_together
\normalexpanded{\buff_verbatim_type_block{\e!start\currenttyping}{\e!stop\currenttyping}}}
-% \def\buff_verbatim_typing_start_yes[#1]%
-% {\typingparameter\c!before
-% \startpacked[\v!blank]%
-% \doifelseassignment{#1}
-% {\setupcurrenttyping[#1]}
-% {\doif\v!continue{#1}{\lettypingparameter\c!continue\v!yes}}%
-% \buff_verbatim_setup_line_numbering
-% \buff_verbatim_initialize_typing_one
-% \buff_verbatim_setup_keep_together
-% \normalexpanded{\buff_verbatim_type_block{\e!start\currenttyping}{\e!stop\currenttyping}}}
-
\def\buff_verbatim_typing_start_yes[#1]%
{\typingparameter\c!before
\startpacked[\v!blank]%
@@ -609,21 +598,6 @@
\setuevalue{\e!type\currenttyping\v!file}{\typefile[\currenttyping]}%
\to \everydefinetyping
-% \def\buff_verbatim_type_file[#1][#2]#3%
-% {\begingroup
-% \ifsecondargument
-% \setuptyping[#1][#2]%
-% \buff_verbatim_type_file_checked{#1}{#3}%
-% \else\iffirstargument
-% \doifelseassignment{#1}
-% {\setuptyping[\v!file][#1]%
-% \buff_verbatim_type_file_checked\v!file{#3}}
-% {\buff_verbatim_type_file_checked{#1}{#3}}%
-% \else
-% \buff_verbatim_type_file_checked\v!file{#3}%
-% \fi\fi
-% \endgroup}
-
\def\buff_verbatim_type_file[#1][#2]#3%
{\begingroup
\ifsecondargument
@@ -823,20 +797,6 @@
\setuevalue{\e!type\currenttyping\v!buffer}{\buff_verbatim_type_buffer_class{\currenttyping}}%
\to \everydefinetyping
-% \unexpanded\def\buff_verbatim_type_buffer[#1][#2]%
-% {\ifsecondargument
-% \setupcurrenttyping[#2]%
-% \processcommalist[#1]{\buff_verbatim_type_buffer_indeed\currenttyping}% [name] [settings]
-% \else\iffirstargument
-% \doifelseassignment{#1}
-% {\setupcurrenttyping[#1]%
-% \buff_verbatim_type_buffer_indeed\currenttyping\empty}% [settings]
-% {\processcommalist[#1]{\buff_verbatim_type_buffer_indeed\currenttyping}}% [name]
-% \else
-% \buff_verbatim_type_buffer_indeed\currenttyping\empty% []
-% \fi\fi
-% \endgroup}
-
\unexpanded\def\buff_verbatim_type_buffer[#1][#2]%
{\ifsecondargument
\setupcurrenttyping[#2]%
@@ -926,21 +886,6 @@
{\writestatus{nota bene}{\string\processbuffer\space is obsolete}%
\dodoubleempty\buff_verbatim_process}
-% \def\buff_verbatim_process[#1][#2]%
-% {\begingroup
-% \ifsecondargument
-% \setuptyping[\v!buffer][#2]%
-% \processcommalist[#1]{\buff_verbatim_process_indeed\v!buffer}% [name] [settings]
-% \else\iffirstargument
-% \doifelseassignment{#1}
-% {\setuptyping[\v!buffer][#1]%
-% \buff_verbatim_process_indeed\v!buffer\empty}% [settings]
-% {\processcommalist[#1]{\buff_verbatim_process_indeed\v!buffer}}% [name]
-% \else
-% \buff_verbatim_process_indeed\v!buffer\empty% []
-% \fi\fi
-% \endgroup}
-
\def\buff_verbatim_process[#1][#2]%
{\begingroup
\ifsecondargument
@@ -977,7 +922,7 @@
\unexpanded\def\buff_verbatim_begin_of_line
{\ifconditional\verbatimnumberinglines
\global\advance\nofverbatimlines\plusone
- \attribute\verbatimlineattribute\nofverbatimlines
+ \c_attr_verbatimline\nofverbatimlines
\fi
\noindent
\buff_verbatim_set_line_margin
@@ -991,7 +936,7 @@
\obeyedline % still needed?
\par
\ifconditional\verbatimnumberinglines
- \attribute\verbatimlineattribute\attributeunsetvalue
+ \c_attr_verbatimline\attributeunsetvalue
\fi}
\unexpanded\def\buff_verbatim_empty_line
diff --git a/tex/context/base/mkiv/buff-ver.mkxl b/tex/context/base/mkiv/buff-ver.mkxl
index 058681a85..5deaf576c 100644
--- a/tex/context/base/mkiv/buff-ver.mkxl
+++ b/tex/context/base/mkiv/buff-ver.mkxl
@@ -24,7 +24,7 @@
\definesystemattribute[verbatimline][public]
\appendtoksonce
- \attribute\verbatimlineattribute\attributeunsetvalue
+ \c_attr_verbatimline\attributeunsetvalue
\to \everyforgetall
%D Initializations.
@@ -908,7 +908,7 @@
\unexpanded\def\buff_verbatim_begin_of_line
{\ifconditional\verbatimnumberinglines
\global\advance\nofverbatimlines\plusone
- \attribute\verbatimlineattribute\nofverbatimlines
+ \c_attr_verbatimline\nofverbatimlines
\fi
\noindent
\buff_verbatim_set_line_margin
@@ -922,7 +922,7 @@
\obeyedline % still needed?
\par
\ifconditional\verbatimnumberinglines
- \attribute\verbatimlineattribute\attributeunsetvalue
+ \c_attr_verbatimline\attributeunsetvalue
\fi}
\unexpanded\def\buff_verbatim_empty_line
diff --git a/tex/context/base/mkiv/colo-ext.mkiv b/tex/context/base/mkiv/colo-ext.mkiv
index 98aaaa8aa..90ee11742 100644
--- a/tex/context/base/mkiv/colo-ext.mkiv
+++ b/tex/context/base/mkiv/colo-ext.mkiv
@@ -47,7 +47,7 @@
\installcorenamespace{colorintent}
\unexpanded\def\registercolorintent#1#2% \relax is needed !
- {\setevalue{\??colorintent#1}{\attribute\colorintentattribute\clf_registercolorintent{#2}\relax}}
+ {\setevalue{\??colorintent#1}{\c_attr_colorintent\clf_registercolorintent{#2}\relax}}
\unexpanded\def\colo_intents_set
{\clf_enablecolorintents
@@ -59,7 +59,7 @@
\installattributestack\colorintentattribute
-\setevalue{\??colorintent\v!none}{\attribute\colorintentattribute\attributeunsetvalue} % or reset? used at all?
+\setevalue{\??colorintent\v!none}{\c_attr_colorintent\attributeunsetvalue} % or reset? used at all?
\unexpanded\def\startcolorintent[#1]%
{\pushattribute\colorintentattribute
diff --git a/tex/context/base/mkiv/colo-ini.mkiv b/tex/context/base/mkiv/colo-ini.mkiv
index 71c823f8a..46931d886 100644
--- a/tex/context/base/mkiv/colo-ini.mkiv
+++ b/tex/context/base/mkiv/colo-ini.mkiv
@@ -144,7 +144,7 @@
\edef\currenttransparencyname{#1}%
% the \relax catches a non existent csname
\ifx\currenttransparencyname\v!reset
- \attribute\transparencyattribute\attributeunsetvalue
+ \c_attr_transparency\attributeunsetvalue
\else
\begincsname\??transparencysetter\currenttransparencyname\endcsname\relax
\fi
@@ -154,7 +154,7 @@
{\begingroup
\edef\currenttransparencyname{#1}%
\ifx\currenttransparencyname\v!reset
- \attribute\transparencyattribute\attributeunsetvalue
+ \c_attr_transparency\attributeunsetvalue
\else
\begincsname\??transparencysetter\currenttransparencyname\endcsname\relax
\fi}
@@ -257,7 +257,7 @@
{\begingroup
\colo_helpers_activate{#1}%
\normalexpanded{\endgroup\edef\noexpand#2%
- {\ifnum\attribute\colorattribute=\attributeunsetvalue\else\number\attribute\colorattribute\fi}}}
+ {\ifnum\c_attr_color=\attributeunsetvalue\else\number\c_attr_color\fi}}}
\let\grey\graycolor % these macros are only used in tracing
@@ -354,9 +354,9 @@
\unexpanded\def\pushcolor[#1]%
{\global\advance\c_colo_nesting\plusone
\expandafter\edef\csname\??colorstack\number\c_colo_nesting\endcsname
- {\attribute\colormodelattribute \the\attribute\colormodelattribute
- \attribute\colorattribute \the\attribute\colorattribute
- \attribute\transparencyattribute\the\attribute\transparencyattribute
+ {\c_attr_colormodel \the\c_attr_colormodel
+ \c_attr_color \the\c_attr_color
+ \c_attr_transparency\the\c_attr_transparency
\relax}% stack
\colo_helpers_activate{#1}}
@@ -370,12 +370,12 @@
\newcount\c_colo_saved_attribute_transparency
\unexpanded\def\savecolor
- {\c_colo_saved_attribute_color \attribute\colorattribute
- \c_colo_saved_attribute_transparency\attribute\transparencyattribute}
+ {\c_colo_saved_attribute_color \c_attr_color
+ \c_colo_saved_attribute_transparency\c_attr_transparency}
\unexpanded\def\restorecolor
- {\attribute\colorattribute \c_colo_saved_attribute_color
- \attribute\transparencyattribute\c_colo_saved_attribute_transparency}
+ {\c_attr_color \c_colo_saved_attribute_color
+ \c_attr_transparency\c_colo_saved_attribute_transparency}
%D In this documentation we will not go into too much details on palets. Curious
%D users can find more information on this topic in \from[use of color].
@@ -491,15 +491,6 @@
\expandafter\colo_palets_define_a
\fi}
-% \unexpanded\def\colo_palets_define_a[#1][#2][#3]%
-% {\colo_palet_prepare{#1}%
-% \doifelseassignment{#2}
-% {\setevalue{\??colorpaletspecification#1}{#2}%
-% \processcommalist[#2]{\colo_palets_define_one{#1}}}
-% {\ifcsname\??colorpaletspecification#2\endcsname
-% \normalexpanded{\colo_palets_define[#1][\lastnamedcs]}%
-% \fi}}
-
\unexpanded\def\colo_palets_define_a[#1][#2][#3]%
{\colo_palet_prepare{#1}%
\ifcondition\validassignment{#2}%
@@ -517,11 +508,6 @@
\colo_palet_extend{#2}%
\colo_palets_define_assign{#1}{#2}{#3}}
-% \def\colo_palets_define_one#1#2% get rid of { }
-% {\doifelseassignment{#2} % catch empty entries
-% {\colo_palets_define_two{#1}[#2]}
-% {\colo_palets_define_three{#1}{#2}}}
-
\def\colo_palets_define_one#1#2% get rid of { }
{\ifcondition\validassignment{#2}% catch empty entries
\colo_palets_define_two{#1}[#2]%
@@ -558,21 +544,6 @@
\unexpanded\def\setuppalet
{\dosingleempty\colo_palets_setup}
-% \def\colo_palets_setup[#1]%
-% {\edef\currentcolorpalet{#1}%
-% \ifx\currentcolorpalet\empty
-% % seems to be a reset
-% \let\currentcolorprefix\empty
-% \else\ifcsname\??paletlist\currentcolorpalet\endcsname
-% \edef\currentcolorprefix{#1:}%
-% \else
-% \colo_helpers_show_message\m!colors7\currentcolorpalet
-% \let\currentcolorpalet\empty
-% \let\currentcolorprefix\empty
-% \fi\fi
-% \the\everysetuppalet
-% \colo_helpers_initialize_maintextcolor}
-
% \newtoks\t_colo_prefix % used in mp interface
\def\colo_palets_setup[#1]%
@@ -859,15 +830,15 @@
\unexpanded\def\deactivatecolor % sort of public but a bad name
{\let\currentcolorname\s!black
- \attribute\colorattribute\attributeunsetvalue
- \attribute\transparencyattribute\attributeunsetvalue}
+ \c_attr_color \attributeunsetvalue
+ \c_attr_transparency\attributeunsetvalue}
% todo: check if color is overloading a non-color command
% \let\colo_basics_synchronize\gobbleoneargument % used in mp interface
% \let\colo_basics_inherit \gobbletwoarguments % used in mp interface
-\def\colo_basics_allocate#1% todo: use a chardef instead
+\def\colo_basics_allocate#1%
{\expandafter\newcount\csname\??colornumber#1\endcsname
\clf_synccolorcount{#1}\c_syst_last_allocated_count}
@@ -1208,18 +1179,6 @@
\fi
\to \everysetupcolors
-% \def\colo_palets_define_set#1#2#3%
-% {\doifelseassignment{#3}% \definepalet[test][xx={y=.4}]
-% {\colo_palets_define_assign}%
-% {\ifcsname\??colorsetter#3\endcsname
-% % \definepalet[test][xx=green]
-% \expandafter\colo_palets_define_inherit
-% \else
-% % not entered when making format
-% \expandafter\colo_palets_define_undefine
-% \fi}%
-% {#1}{#2}{#3}}
-
\def\colo_palets_define_set#1#2#3%
{\ifcondition\validassignment{#3}% \definepalet[test][xx={y=.4}]
\expandafter\colo_palets_define_assign
@@ -1252,8 +1211,8 @@
\colo_helpers_set_value{\??transparencysetter #1:#2}{\colo_helpers_inherited_direct_ts{\??colorpalet#1:#2}}%
\colo_helpers_set_value{\??transparencyattribute#1:#2}{\colo_helpers_inherited_direct_ta{\??colorpalet#1:#2}}}
-\setvalue{\??colorattribute currentcolor}{\the\attribute\colorattribute} % for mpcolor
-\setvalue{\??transparencyattribute currentcolor}{\the\attribute\transparencyattribute} % for mpcolor
+\setvalue{\??colorattribute currentcolor}{\the\c_attr_color} % for mpcolor
+\setvalue{\??transparencyattribute currentcolor}{\the\c_attr_transparency} % for mpcolor
%def\colo_helpers_inherited_current_ca#1{\csname\??colorattribute \ifcsname\??colorattribute \currentcolorprefix#1\endcsname\currentcolorprefix#1\else\ifcsname\??colorattribute #1\endcsname#1\fi\fi\endcsname}
%def\colo_helpers_inherited_current_cs#1{\csname\??colorsetter \ifcsname\??colorsetter \currentcolorprefix#1\endcsname\currentcolorprefix#1\else\ifcsname\??colorsetter #1\endcsname#1\fi\fi\endcsname}
@@ -1267,10 +1226,10 @@
%D Low level defs:
-\unexpanded\def\colordefalc#1#2{\setevalue{\??colorattribute #1}{#2}\setvalue {\??colorsetter #1}{\attribute\colorattribute #2 }}
-\unexpanded\def\colordefagc#1#2{\setxvalue{\??colorattribute #1}{#2}\setgvalue{\??colorsetter #1}{\attribute\colorattribute #2 }} % was not g
-\unexpanded\def\colordefalt#1#2{\setevalue{\??transparencyattribute#1}{#2}\setvalue {\??transparencysetter#1}{\attribute\transparencyattribute#2 }}
-\unexpanded\def\colordefagt#1#2{\setxvalue{\??transparencyattribute#1}{#2}\setgvalue{\??transparencysetter#1}{\attribute\transparencyattribute#2 }}
+\unexpanded\def\colordefalc#1#2{\setevalue{\??colorattribute #1}{#2}\setvalue {\??colorsetter #1}{\c_attr_color #2 }}
+\unexpanded\def\colordefagc#1#2{\setxvalue{\??colorattribute #1}{#2}\setgvalue{\??colorsetter #1}{\c_attr_color #2 }} % was not g
+\unexpanded\def\colordefalt#1#2{\setevalue{\??transparencyattribute#1}{#2}\setvalue {\??transparencysetter#1}{\c_attr_transparency#2 }}
+\unexpanded\def\colordefagt#1#2{\setxvalue{\??transparencyattribute#1}{#2}\setgvalue{\??transparencysetter#1}{\c_attr_transparency#2 }}
\unexpanded\def\colordefflc#1#2{\setvalue {\??colorattribute #1}{\colo_helpers_inherited_current_ca{#2}}\setvalue {\??colorsetter #1}{\colo_helpers_inherited_current_cs{#2}}}
\unexpanded\def\colordeffgc#1#2{\setgvalue{\??colorattribute #1}{\colo_helpers_inherited_current_ca{#2}}\setvalue {\??colorsetter #1}{\colo_helpers_inherited_current_cs{#2}}}
@@ -1308,13 +1267,13 @@
\def\MPcolor#1%
{\clf_mpcolor
- \attribute\colormodelattribute
+ \c_attr_colormodel
\colo_helpers_inherited_current_ca{#1} %
\colo_helpers_inherited_current_ta{#1} }
\def\MPcoloronly#1%
{\clf_mpcolor
- \attribute\colormodelattribute
+ \c_attr_colormodel
\colo_helpers_inherited_current_ca{#1} %
\zerocount}
@@ -1326,11 +1285,11 @@
\def\MPoptions#1%
{\clf_mpoptions
- \attribute\colormodelattribute
+ \c_attr_colormodel
\colo_helpers_inherited_current_ca{#1} %
\colo_helpers_inherited_current_ta{#1} }
-\def\thecolormodelattribute {\the\attribute\colormodelattribute}
+\def\thecolormodelattribute {\the\c_attr_colormodel}
%def\thecolorattribute #1{\number\csname\??colorattribute \ifcsname\??colorattribute \currentcolorprefix#1\endcsname\currentcolorprefix#1\else\ifcsname\??colorattribute #1\endcsname#1\fi\fi\endcsname}
%def\thetransparencyattribute#1{\number\csname\??transparencyattribute\ifcsname\??transparencyattribute\currentcolorprefix#1\endcsname\currentcolorprefix#1\else\ifcsname\??transparencyattribute#1\endcsname#1\fi\fi\endcsname}
diff --git a/tex/context/base/mkiv/colo-ini.mkxl b/tex/context/base/mkiv/colo-ini.mkxl
index d2c3e610d..63d29d0a6 100644
--- a/tex/context/base/mkiv/colo-ini.mkxl
+++ b/tex/context/base/mkiv/colo-ini.mkxl
@@ -144,7 +144,7 @@
\edef\currenttransparencyname{#1}%
% the \relax catches a non existent csname
\ifx\currenttransparencyname\v!reset
- \attribute\transparencyattribute\attributeunsetvalue
+ \c_attr_transparency\attributeunsetvalue
\else
\begincsname\??transparencysetter\currenttransparencyname\endcsname\relax
\fi
@@ -154,7 +154,7 @@
{\begingroup
\edef\currenttransparencyname{#1}%
\ifx\currenttransparencyname\v!reset
- \attribute\transparencyattribute\attributeunsetvalue
+ \c_attr_transparency\attributeunsetvalue
\else
\begincsname\??transparencysetter\currenttransparencyname\endcsname\relax
\fi}
@@ -257,7 +257,7 @@
{\begingroup
\colo_helpers_activate{#1}%
\normalexpanded{\endgroup\edef\noexpand#2%
- {\ifnum\attribute\colorattribute=\attributeunsetvalue\else\number\attribute\colorattribute\fi}}}
+ {\ifnum\c_attr_color=\attributeunsetvalue\else\number\c_attr_color\fi}}}
\let\grey\graycolor % these macros are only used in tracing
@@ -354,9 +354,9 @@
\unexpanded\def\pushcolor[#1]%
{\global\advance\c_colo_nesting\plusone
\expandafter\edef\csname\??colorstack\number\c_colo_nesting\endcsname
- {\attribute\colormodelattribute \the\attribute\colormodelattribute
- \attribute\colorattribute \the\attribute\colorattribute
- \attribute\transparencyattribute\the\attribute\transparencyattribute
+ {\c_attr_colormodel \the\c_attr_colormodel
+ \c_attr_color \the\c_attr_color
+ \c_attr_transparency\the\c_attr_transparency
\relax}% stack
\colo_helpers_activate{#1}}
@@ -370,12 +370,12 @@
\newcount\c_colo_saved_attribute_transparency
\unexpanded\def\savecolor
- {\c_colo_saved_attribute_color \attribute\colorattribute
- \c_colo_saved_attribute_transparency\attribute\transparencyattribute}
+ {\c_colo_saved_attribute_color \c_attr_color
+ \c_colo_saved_attribute_transparency\c_attr_transparency}
\unexpanded\def\restorecolor
- {\attribute\colorattribute \c_colo_saved_attribute_color
- \attribute\transparencyattribute\c_colo_saved_attribute_transparency}
+ {\c_attr_color \c_colo_saved_attribute_color
+ \c_attr_transparency\c_colo_saved_attribute_transparency}
%D In this documentation we will not go into too much details on palets. Curious
%D users can find more information on this topic in \from[use of color].
@@ -815,8 +815,8 @@
\unexpanded\def\deactivatecolor % sort of public but a bad name
{\let\currentcolorname\s!black
- \attribute\colorattribute\attributeunsetvalue
- \attribute\transparencyattribute\attributeunsetvalue}
+ \c_attr_color \attributeunsetvalue
+ \c_attr_transparency\attributeunsetvalue}
% todo: check if color is overloading a non-color command
@@ -1196,8 +1196,8 @@
\colo_helpers_set_value{\??transparencysetter #1:#2}{\colo_helpers_inherited_direct_ts{\??colorpalet#1:#2}}%
\colo_helpers_set_value{\??transparencyattribute#1:#2}{\colo_helpers_inherited_direct_ta{\??colorpalet#1:#2}}}
-\setvalue{\??colorattribute currentcolor}{\the\attribute\colorattribute} % for mpcolor
-\setvalue{\??transparencyattribute currentcolor}{\the\attribute\transparencyattribute} % for mpcolor
+\setvalue{\??colorattribute currentcolor}{\the\c_attr_color} % for mpcolor
+\setvalue{\??transparencyattribute currentcolor}{\the\c_attr_transparency} % for mpcolor
%def\colo_helpers_inherited_current_ca#1{\csname\??colorattribute \ifcsname\??colorattribute \currentcolorprefix#1\endcsname\currentcolorprefix#1\else\ifcsname\??colorattribute #1\endcsname#1\fi\fi\endcsname}
%def\colo_helpers_inherited_current_cs#1{\csname\??colorsetter \ifcsname\??colorsetter \currentcolorprefix#1\endcsname\currentcolorprefix#1\else\ifcsname\??colorsetter #1\endcsname#1\fi\fi\endcsname}
@@ -1211,10 +1211,10 @@
%D Low level defs:
-\unexpanded\def\colordefalc#1#2{\setevalue{\??colorattribute #1}{#2}\setvalue {\??colorsetter #1}{\attribute\colorattribute #2 }}
-\unexpanded\def\colordefagc#1#2{\setxvalue{\??colorattribute #1}{#2}\setgvalue{\??colorsetter #1}{\attribute\colorattribute #2 }} % was not g
-\unexpanded\def\colordefalt#1#2{\setevalue{\??transparencyattribute#1}{#2}\setvalue {\??transparencysetter#1}{\attribute\transparencyattribute#2 }}
-\unexpanded\def\colordefagt#1#2{\setxvalue{\??transparencyattribute#1}{#2}\setgvalue{\??transparencysetter#1}{\attribute\transparencyattribute#2 }}
+\unexpanded\def\colordefalc#1#2{\setevalue{\??colorattribute #1}{#2}\setvalue {\??colorsetter #1}{\c_attr_color #2 }}
+\unexpanded\def\colordefagc#1#2{\setxvalue{\??colorattribute #1}{#2}\setgvalue{\??colorsetter #1}{\c_attr_color #2 }} % was not g
+\unexpanded\def\colordefalt#1#2{\setevalue{\??transparencyattribute#1}{#2}\setvalue {\??transparencysetter#1}{\c_attr_transparency#2 }}
+\unexpanded\def\colordefagt#1#2{\setxvalue{\??transparencyattribute#1}{#2}\setgvalue{\??transparencysetter#1}{\c_attr_transparency#2 }}
\unexpanded\def\colordefflc#1#2{\setvalue {\??colorattribute #1}{\colo_helpers_inherited_current_ca{#2}}\setvalue {\??colorsetter #1}{\colo_helpers_inherited_current_cs{#2}}}
\unexpanded\def\colordeffgc#1#2{\setgvalue{\??colorattribute #1}{\colo_helpers_inherited_current_ca{#2}}\setvalue {\??colorsetter #1}{\colo_helpers_inherited_current_cs{#2}}}
@@ -1252,13 +1252,13 @@
\def\MPcolor#1%
{\clf_mpcolor
- \attribute\colormodelattribute
+ \c_attr_colormodel
\colo_helpers_inherited_current_ca{#1} %
\colo_helpers_inherited_current_ta{#1} }
\def\MPcoloronly#1%
{\clf_mpcolor
- \attribute\colormodelattribute
+ \c_attr_colormodel
\colo_helpers_inherited_current_ca{#1} %
\zerocount}
@@ -1270,11 +1270,11 @@
\def\MPoptions#1%
{\clf_mpoptions
- \attribute\colormodelattribute
+ \c_attr_colormodel
\colo_helpers_inherited_current_ca{#1} %
\colo_helpers_inherited_current_ta{#1} }
-\def\thecolormodelattribute {\the\attribute\colormodelattribute}
+\def\thecolormodelattribute {\the\c_attr_colormodel}
%def\thecolorattribute #1{\number\csname\??colorattribute \ifcsname\??colorattribute \currentcolorprefix#1\endcsname\currentcolorprefix#1\else\ifcsname\??colorattribute #1\endcsname#1\fi\fi\endcsname}
%def\thetransparencyattribute#1{\number\csname\??transparencyattribute\ifcsname\??transparencyattribute\currentcolorprefix#1\endcsname\currentcolorprefix#1\else\ifcsname\??transparencyattribute#1\endcsname#1\fi\fi\endcsname}
diff --git a/tex/context/base/mkiv/cont-new.mkiv b/tex/context/base/mkiv/cont-new.mkiv
index 761c6b20d..bdee367d1 100644
--- a/tex/context/base/mkiv/cont-new.mkiv
+++ b/tex/context/base/mkiv/cont-new.mkiv
@@ -13,7 +13,7 @@
% \normalend % uncomment this to get the real base runtime
-\newcontextversion{2020.06.19 11:04}
+\newcontextversion{2020.06.20 13:33}
%D This file is loaded at runtime, thereby providing an excellent place for hacks,
%D patches, extensions and new features. There can be local overloads in cont-loc
diff --git a/tex/context/base/mkiv/context.mkiv b/tex/context/base/mkiv/context.mkiv
index 5bed82008..f5d02a708 100644
--- a/tex/context/base/mkiv/context.mkiv
+++ b/tex/context/base/mkiv/context.mkiv
@@ -45,7 +45,7 @@
%D {YYYY.MM.DD HH:MM} format.
\edef\contextformat {\jobname}
-\edef\contextversion{2020.06.19 11:04}
+\edef\contextversion{2020.06.20 13:33}
\edef\contextkind {beta}
%D Kind of special:
diff --git a/tex/context/base/mkiv/context.mkxl b/tex/context/base/mkiv/context.mkxl
index db5e170f0..e69d387f2 100644
--- a/tex/context/base/mkiv/context.mkxl
+++ b/tex/context/base/mkiv/context.mkxl
@@ -29,7 +29,7 @@
%D {YYYY.MM.DD HH:MM} format.
\edef\contextformat {\jobname}
-\edef\contextversion{2020.06.19 11:04}
+\edef\contextversion{2020.06.20 13:33}
\edef\contextkind {beta}
%D Kind of special:
diff --git a/tex/context/base/mkiv/core-con.lua b/tex/context/base/mkiv/core-con.lua
index 2c0146405..880813f33 100644
--- a/tex/context/base/mkiv/core-con.lua
+++ b/tex/context/base/mkiv/core-con.lua
@@ -16,7 +16,9 @@ slower but look nicer this way.</p>
<p>Some code may move to a module in the language namespace.</p>
--ldx]]--
-local floor, osdate, ostime, concat = math.floor, os.date, os.time, table.concat
+local floor = math.floor
+local osdate, ostime = os.date, os.time
+local concat, insert, reverse = table.concat, table.insert, table.reverse
local lower, upper, rep, match, gsub = string.lower, string.upper, string.rep, string.match, string.gsub
local utfchar, utfbyte = utf.char, utf.byte
local tonumber, tostring, type, rawset = tonumber, tostring, type, rawset
@@ -445,6 +447,94 @@ implement {
arguments = { "integer", true }
}
+-- -- - hebrew and jiddish -- -- --
+
+local trace_hebrew trackers.register("converters.hebrew", function(v)
+ trace_hebrew = v
+end)
+
+local list = {
+ { 400, "ת" }, { 300, "ש" }, { 200, "ר" }, { 100, "ק" },
+ { 90, "צ" }, { 80, "פ" }, { 70, "ע" }, { 60, "ס "}, { 50, "נ" }, { 40, "מ" }, { 30, "ל" }, { 20, "כ" }, { 10, "י" },
+ { 9, "ט" }, { 8, "ח" }, { 7, "ז", }, { 6, "ו", }, { 5, "ה" }, { 4, "ד" }, { 3, "ג" }, { 2, "ב" }, { 1, "א" },
+}
+
+local special = {
+ [15] = "ט״ו", -- exception: avoid mixup with God יה
+ [16] = "ט״ז", -- exception: avoid mixup with God יו
+}
+
+local function tohebrew(n,gershayim,geresh)
+ local split = { }
+ local size = 0
+ while n > 1000 do
+ size = size + 1
+ split[size] = n % 1000
+ n = floor(n/1000)
+ end
+ size = size + 1
+ split[size] = n
+ for i=1,size do
+ local t = { }
+ local n = 0
+ local s = split[i]
+ while s > 0 do
+ for i=1,#list do
+ ::again::
+ local li = list[i]
+ local l1 = li[1]
+ local s1 = special[l1]
+ if s1 then
+ s = s - l1
+ n = n + 1
+ t[n] = s1
+ goto again
+ elseif s >= l1 then
+ s = s - l1
+ n = n + 1
+ t[n] = li[2]
+ goto again
+ end
+ end
+ end
+ ::done::
+ split[i] = t
+ end
+ if gershayim then
+ for i=1,size do
+ local si = split[i]
+ local ni = #si
+ if ni >= 2 then
+ local s = "״"
+ insert(split[i],ni,trace_hebrew and ("{\\red "..s.."}") or s)
+ end
+ end
+ end
+ if geresh then
+ for i=2,#split do
+ local s = rep("׳",i-1)
+ insert(split[i],trace_hebrew and ("{\\blue "..s.."}") or s)
+ end
+ end
+ for i=1,size do
+ split[i] = concat(split[i])
+ end
+ return concat(reverse(split))
+end
+
+converters.tohebrew = tohebrew
+converters.hebrewnumerals = converters.tohebrew
+
+-- converters['alphabetic:hb'] = converters.hebrewnumerals
+
+interfaces.implement {
+ name = "hebrewnumerals",
+ actions = { tohebrew, context },
+ arguments = { "integer", true, true }
+}
+
+-- -- --
+
local vector = {
normal = {
[0] = "〇",
diff --git a/tex/context/base/mkiv/core-con.mkiv b/tex/context/base/mkiv/core-con.mkiv
index 7402d3932..acf5cd5a3 100644
--- a/tex/context/base/mkiv/core-con.mkiv
+++ b/tex/context/base/mkiv/core-con.mkiv
@@ -76,6 +76,9 @@
\def\abjadnodotnumerals#1{\clf_abjadnodotnumerals\numexpr#1\relax}
\def\abjadnaivenumerals#1{\clf_alphabetic \numexpr#1\relax{arabic}} % okay?
+\def\hebrewnumerals #1{\clf_hebrewnumerals\numexpr#1\relax}
+\let\yiddishnumerals \hebrewnumerals
+
\def\languagecharacters#1{\clf_alphabetic\numexpr#1\relax{\currentlanguage}} % new
\def\languageCharacters#1{\clf_Alphabetic\numexpr#1\relax{\currentlanguage}} % new
@@ -709,6 +712,12 @@
\defineconversion [abjadnodotnumerals] [\abjadnodotnumerals]
\defineconversion [abjadnaivenumerals] [\abjadnaivenumerals]
+\defineconversion [hebrewnumerals] [\hebrewnumerals]
+\defineconversion [yiddishnumerals] [\yiddishnumerals]
+
+% users can do: \defineconversion [he] [\hebrewnumerals]
+% users can do: \defineconversion [yi] [\hebrewnumerals]
+
\defineconversion [thainumerals] [\thainumerals]
\defineconversion [devanagarinumerals] [\devanagarinumerals]
\defineconversion [gurmurkhinumerals] [\gurmurkhinumerals]
diff --git a/tex/context/base/mkiv/font-gds.mkvi b/tex/context/base/mkiv/font-gds.mkvi
index 05cf08790..0dc0f7508 100644
--- a/tex/context/base/mkiv/font-gds.mkvi
+++ b/tex/context/base/mkiv/font-gds.mkvi
@@ -50,11 +50,11 @@
\unexpanded\def\setfontcolorscheme % will move to the lua end
{\clf_enablefontcolorschemes
- \unexpanded\xdef\setfontcolorscheme[##1]{\attribute\colorschemeattribute##1\relax}%
+ \unexpanded\xdef\setfontcolorscheme[##1]{\c_attr_colorscheme##1\relax}%
\setfontcolorscheme}
\unexpanded\def\resetfontcolorscheme
- {\attribute\colorschemeattribute\attributeunsetvalue}
+ {\c_attr_colorscheme\attributeunsetvalue}
\protect \endinput
diff --git a/tex/context/base/mkiv/font-ini.mklx b/tex/context/base/mkiv/font-ini.mklx
index db031ba42..f386d45d1 100644
--- a/tex/context/base/mkiv/font-ini.mklx
+++ b/tex/context/base/mkiv/font-ini.mklx
@@ -2499,10 +2499,10 @@
\unexpanded\def\saverunningstyleandcolor
{\unexpanded\edef\restorerunningstyleandcolor
- {\setfontid \number\fontid\font
- \attribute\colormodelattribute \the\attribute\colormodelattribute
- \attribute\colorattribute \the\attribute\colorattribute
- \attribute\transparencyattribute\the\attribute\transparencyattribute
+ {\setfontid \number\fontid\font
+ \c_attr_colormodel \the\c_attr_colormodel
+ \c_attr_color \the\c_attr_color
+ \c_attr_transparency\the\c_attr_transparency
\relax}}
\let\restorerunningstyleandcolor\relax
diff --git a/tex/context/base/mkiv/font-ini.mkvi b/tex/context/base/mkiv/font-ini.mkvi
index 99e7117a3..271a81c2a 100644
--- a/tex/context/base/mkiv/font-ini.mkvi
+++ b/tex/context/base/mkiv/font-ini.mkvi
@@ -2712,10 +2712,10 @@
\unexpanded\def\saverunningstyleandcolor
{\unexpanded\edef\restorerunningstyleandcolor
- {\setfontid \number\fontid\font
- \attribute\colormodelattribute \the\attribute\colormodelattribute
- \attribute\colorattribute \the\attribute\colorattribute
- \attribute\transparencyattribute\the\attribute\transparencyattribute
+ {\setfontid \number\fontid\font
+ \c_attr_colormodel \the\c_attr_colormodel
+ \c_attr_color \the\c_attr_color
+ \c_attr_transparency\the\c_attr_transparency
\relax}}
\let\restorerunningstyleandcolor\relax
diff --git a/tex/context/base/mkiv/font-mat.mklx b/tex/context/base/mkiv/font-mat.mklx
index da576bf9a..c37b36ed6 100644
--- a/tex/context/base/mkiv/font-mat.mklx
+++ b/tex/context/base/mkiv/font-mat.mklx
@@ -344,7 +344,7 @@
\to \everymathematics
\unexpanded\def\font_helpers_synchronize_math_family_mr
- {\attribute\mathfamilyattribute\ifconditional\c_font_bidirectional_mathstrategy
+ {\c_attr_mathfamily\ifconditional\c_font_bidirectional_mathstrategy
\ifconditional\c_math_right_to_left
\plustwo
\else
@@ -355,7 +355,7 @@
\fi}
\unexpanded\def\font_helpers_synchronize_math_family_mb
- {\attribute\mathfamilyattribute\ifconditional\c_font_bidirectional_mathstrategy
+ {\c_attr_mathfamily\ifconditional\c_font_bidirectional_mathstrategy
\ifconditional\c_math_right_to_left
\ifconditional\c_font_pseudo_bold_math_state\pluseight\else\plusfive\fi
\else
diff --git a/tex/context/base/mkiv/font-mat.mkvi b/tex/context/base/mkiv/font-mat.mkvi
index 64810d327..594475808 100644
--- a/tex/context/base/mkiv/font-mat.mkvi
+++ b/tex/context/base/mkiv/font-mat.mkvi
@@ -344,7 +344,7 @@
\to \everymathematics
\unexpanded\def\font_helpers_synchronize_math_family_mr
- {\attribute\mathfamilyattribute\ifconditional\c_font_bidirectional_mathstrategy
+ {\c_attr_mathfamily\ifconditional\c_font_bidirectional_mathstrategy
\ifconditional\c_math_right_to_left
\plustwo
\else
@@ -355,7 +355,7 @@
\fi}
\unexpanded\def\font_helpers_synchronize_math_family_mb
- {\attribute\mathfamilyattribute\ifconditional\c_font_bidirectional_mathstrategy
+ {\c_attr_mathfamily\ifconditional\c_font_bidirectional_mathstrategy
\ifconditional\c_math_right_to_left
\ifconditional\c_font_pseudo_bold_math_state\pluseight\else\plusfive\fi
\else
diff --git a/tex/context/base/mkiv/lang-rep.mkiv b/tex/context/base/mkiv/lang-rep.mkiv
index 7864b029a..a3aaec8e9 100644
--- a/tex/context/base/mkiv/lang-rep.mkiv
+++ b/tex/context/base/mkiv/lang-rep.mkiv
@@ -54,7 +54,7 @@
{\clf_setreplacements{#1}}
\unexpanded\def\resetreplacements
- {\attribute\replacementsattribute\attributeunsetvalue}
+ {\c_attr_replacements\attributeunsetvalue}
\unexpanded\def\replaceword
{\dotripleempty\languages_replacements_replace}
diff --git a/tex/context/base/mkiv/math-ali.mkiv b/tex/context/base/mkiv/math-ali.mkiv
index 7f210bb41..c501ea767 100644
--- a/tex/context/base/mkiv/math-ali.mkiv
+++ b/tex/context/base/mkiv/math-ali.mkiv
@@ -1908,7 +1908,7 @@
\begingroup
\beforedisplayspace
% subset of \everydisplay:
- \attribute \mathmodeattribute \plusone
+ \c_attr_mathmode\plusone
\settrue \indisplaymath
% end of subset
\informulatrue}
diff --git a/tex/context/base/mkiv/math-fen.mkiv b/tex/context/base/mkiv/math-fen.mkiv
index cf95e6a8e..246ff989d 100644
--- a/tex/context/base/mkiv/math-fen.mkiv
+++ b/tex/context/base/mkiv/math-fen.mkiv
@@ -93,7 +93,7 @@
\setvalue{\??mathfencesize Bigg}{4}
\def\math_fenced_force_size#1#2%
- {\attribute\mathsizeattribute\numexpr
+ {\c_attr_mathsize\numexpr
#1*\plushundred
+\ifcsname\??mathfencesize#2\endcsname\lastnamedcs\else#2\fi
\relax}
@@ -835,10 +835,10 @@
\let\math_fences_normal_middle\middle
\let\math_fences_normal_both \leftorright
-\unexpanded\def\math_fences_auto_left #1{\attribute\mathautofenceattribute\plusone #1\attribute\mathautofenceattribute\attributeunsetvalue}
-\unexpanded\def\math_fences_auto_right #1{\attribute\mathautofenceattribute\plustwo #1\attribute\mathautofenceattribute\attributeunsetvalue}
-\unexpanded\def\math_fences_auto_middle#1{\attribute\mathautofenceattribute\plusthree#1\attribute\mathautofenceattribute\attributeunsetvalue}
-\unexpanded\def\math_fences_auto_both #1{\attribute\mathautofenceattribute\plusfour #1\attribute\mathautofenceattribute\attributeunsetvalue}
+\unexpanded\def\math_fences_auto_left #1{\c_attr_mathautofence\plusone #1\c_attr_mathautofence\attributeunsetvalue}
+\unexpanded\def\math_fences_auto_right #1{\c_attr_mathautofence\plustwo #1\c_attr_mathautofence\attributeunsetvalue}
+\unexpanded\def\math_fences_auto_middle#1{\c_attr_mathautofence\plusthree#1\c_attr_mathautofence\attributeunsetvalue}
+\unexpanded\def\math_fences_auto_both #1{\c_attr_mathautofence\plusfour #1\c_attr_mathautofence\attributeunsetvalue}
\let\autofenceopen \math_fences_auto_left % for testing
\let\autofenceclose \math_fences_auto_right % for testing
diff --git a/tex/context/base/mkiv/math-ini.mkiv b/tex/context/base/mkiv/math-ini.mkiv
index 918238fd2..d0e18ff4b 100644
--- a/tex/context/base/mkiv/math-ini.mkiv
+++ b/tex/context/base/mkiv/math-ini.mkiv
@@ -134,12 +134,12 @@
\fi
\appendtoks
- \attribute\mathmodeattribute\plusone
+ \c_attr_mathmode\plusone
\to \everydisplay
\appendtoks
- \attribute\mathmodeattribute\plusone
- \attribute\displaymathattribute\plusone
+ \c_attr_mathmode \plusone
+ \c_attr_displaymath\plusone
\to \everybeforedisplayformula
\setnewconstant\defaultmathfamily \zerocount % 255
@@ -596,7 +596,7 @@
\appendtoks
\ifcase\c_math_renderings_attribute\else
- \attribute\mathrenderingattribute\c_math_renderings_attribute
+ \c_attr_mathrendering\c_math_renderings_attribute
\fi
\to \everymathematics
@@ -867,10 +867,10 @@
\let\math_tags_mfunctiontxt\gobbletwoarguments
\let\math_tags_mfunctionlab\gobbletwoarguments
-\unexpanded\def\math_tags_mo_indeed#1{\begingroup \attribute\mathcategoryattribute\plusone #1\endgroup}
-\unexpanded\def\math_tags_mi_indeed#1{\begingroup \attribute\mathcategoryattribute\plustwo #1\endgroup}
-\unexpanded\def\math_tags_mn_indeed#1{\begingroup\mathupright\attribute\mathcategoryattribute\plusthree\math_set_o_both#1\endgroup}
-\unexpanded\def\math_tags_ms_indeed#1{\begingroup\mathupright\attribute\mathcategoryattribute\plusfour \math_set_p_both#1\endgroup} % todo: mathoptext
+\unexpanded\def\math_tags_mo_indeed#1{\begingroup \c_attr_mathcategory\plusone #1\endgroup}
+\unexpanded\def\math_tags_mi_indeed#1{\begingroup \c_attr_mathcategory\plustwo #1\endgroup}
+\unexpanded\def\math_tags_mn_indeed#1{\begingroup\mathupright\c_attr_mathcategory\plusthree\math_set_o_both#1\endgroup}
+\unexpanded\def\math_tags_ms_indeed#1{\begingroup\mathupright\c_attr_mathcategory\plusfour \math_set_p_both#1\endgroup} % todo: mathoptext
\newconditional\c_apply_function
@@ -1390,7 +1390,7 @@
\to \everysetupmathematics
\appendtoks
- \attribute\mathbidiattribute\ifconditional\c_math_right_to_left\c_math_bidi\else\attributeunsetvalue\fi
+ \c_attr_mathbidi\ifconditional\c_math_right_to_left\c_math_bidi\else\attributeunsetvalue\fi
\to \everyswitchmathematics
%D Delayed: greek.
@@ -1445,15 +1445,15 @@
% only used local
-\unexpanded\def\mathgreekupright{\attribute\mathgreekattribute"222\relax}
-\unexpanded\def\mathgreekitalic {\attribute\mathgreekattribute"333\relax}
-\unexpanded\def\mathgreekdefault{\attribute\mathgreekattribute"000\relax}
+\unexpanded\def\mathgreekupright{\c_attr_mathgreek"222\relax}
+\unexpanded\def\mathgreekitalic {\c_attr_mathgreek"333\relax}
+\unexpanded\def\mathgreekdefault{\c_attr_mathgreek"000\relax}
\let\mathgreeknormal\mathgreekupright
\let\mathgreeknone \mathgreekdefault
\appendtoks
- \attribute\mathgreekattribute\c_math_greek_attribute
+ \c_attr_mathgreek\c_math_greek_attribute
\to \everymathematics
\setupmathematics
@@ -1488,7 +1488,7 @@
\appendtoks
\math_collapsing_initialize
- \attribute\mathcollapsingattribute\c_math_collapsing_attribute
+ \c_attr_mathcollapsing\c_math_collapsing_attribute
\to \everymathematics
\setupmathematics
@@ -1526,7 +1526,7 @@
\appendtoks
\math_italics_initialize
- \attribute\mathitalicsattribute\c_math_italics_attribute
+ \c_attr_mathitalics\c_math_italics_attribute
\to \everymathematics
% \setupmathematics % done later
@@ -1563,7 +1563,7 @@
\appendtoks
\math_kernpairs_initialize
- \attribute\mathkernpairsattribute\c_math_kernpairs_attribute
+ \c_attr_mathkernpairs\c_math_kernpairs_attribute
\to \everymathematics
\setupmathematics
@@ -1611,13 +1611,13 @@
% \mathcode\c_math_period\c_math_special
% \let,\math_punctuation_comma
% \let.\math_punctuation_period
-% \attribute\mathpunctuationattribute\plustwo}
+% \c_attr_mathpunctuation\plustwo}
%
% \unexpanded\gdef\math_punctuation_initialize_yes
-% {\attribute\mathpunctuationattribute\plustwo}
+% {\c_attr_mathpunctuation\plustwo}
%
% \unexpanded\gdef\math_punctuation_initialize_nop
-% {\attribute\mathpunctuationattribute\plusone}
+% {\c_attr_mathpunctuation\plusone}
%
% \egroup
%
@@ -2828,7 +2828,7 @@
\to \everyswitchmathematics % only in mathematics
\appendtoks
- \attribute\mathdomainattribute\c_math_domain_attribute
+ \c_attr_mathdomain\c_math_domain_attribute
\to \everymathematics
\setupmathematics
@@ -2902,11 +2902,11 @@
%D Experiment
\unexpanded\def\math_scripts_stack
- {\attribute\mathunstackattribute\attributeunsetvalue}
+ {\c_attr_mathunstack\attributeunsetvalue}
\unexpanded\def\math_scripts_unstack
{\clf_enablescriptunstacking
- \attribute\mathunstackattribute\plusone}
+ \c_attr_mathunstack\plusone}
\appendtoks
\let\stackscripts \math_scripts_stack
diff --git a/tex/context/base/mkiv/math-ini.mkxl b/tex/context/base/mkiv/math-ini.mkxl
index 910337e22..c2a92fe5d 100644
--- a/tex/context/base/mkiv/math-ini.mkxl
+++ b/tex/context/base/mkiv/math-ini.mkxl
@@ -134,12 +134,12 @@
\fi
\appendtoks
- \attribute\mathmodeattribute\plusone
+ \c_attr_mathmode\plusone
\to \everydisplay
\appendtoks
- \attribute\mathmodeattribute\plusone
- \attribute\displaymathattribute\plusone
+ \c_attr_mathmode \plusone
+ \c_attr_displaymath\plusone
\to \everybeforedisplayformula
\setnewconstant\defaultmathfamily \zerocount % 255
@@ -594,7 +594,7 @@
\appendtoks
\ifcase\c_math_renderings_attribute\else
- \attribute\mathrenderingattribute\c_math_renderings_attribute
+ \c_attr_mathrendering\c_math_renderings_attribute
\fi
\to \everymathematics
@@ -865,10 +865,10 @@
\let\math_tags_mfunctiontxt\gobbletwoarguments
\let\math_tags_mfunctionlab\gobbletwoarguments
-\unexpanded\def\math_tags_mo_indeed#1{\begingroup \attribute\mathcategoryattribute\plusone #1\endgroup}
-\unexpanded\def\math_tags_mi_indeed#1{\begingroup \attribute\mathcategoryattribute\plustwo #1\endgroup}
-\unexpanded\def\math_tags_mn_indeed#1{\begingroup\mathupright\attribute\mathcategoryattribute\plusthree\math_set_o_both#1\endgroup}
-\unexpanded\def\math_tags_ms_indeed#1{\begingroup\mathupright\attribute\mathcategoryattribute\plusfour \math_set_p_both#1\endgroup} % todo: mathoptext
+\unexpanded\def\math_tags_mo_indeed#1{\begingroup \c_attr_mathcategory\plusone #1\endgroup}
+\unexpanded\def\math_tags_mi_indeed#1{\begingroup \c_attr_mathcategory\plustwo #1\endgroup}
+\unexpanded\def\math_tags_mn_indeed#1{\begingroup\mathupright\c_attr_mathcategory\plusthree\math_set_o_both#1\endgroup}
+\unexpanded\def\math_tags_ms_indeed#1{\begingroup\mathupright\c_attr_mathcategory\plusfour \math_set_p_both#1\endgroup} % todo: mathoptext
\newconditional\c_apply_function
@@ -1388,7 +1388,7 @@
\to \everysetupmathematics
\appendtoks
- \attribute\mathbidiattribute\ifconditional\c_math_right_to_left\c_math_bidi\else\attributeunsetvalue\fi
+ \c_attr_mathbidi\ifconditional\c_math_right_to_left\c_math_bidi\else\attributeunsetvalue\fi
\to \everyswitchmathematics
%D Delayed: greek.
@@ -1443,15 +1443,15 @@
% only used local
-\unexpanded\def\mathgreekupright{\attribute\mathgreekattribute"222\relax}
-\unexpanded\def\mathgreekitalic {\attribute\mathgreekattribute"333\relax}
-\unexpanded\def\mathgreekdefault{\attribute\mathgreekattribute"000\relax}
+\unexpanded\def\mathgreekupright{\c_attr_mathgreek"222\relax}
+\unexpanded\def\mathgreekitalic {\c_attr_mathgreek"333\relax}
+\unexpanded\def\mathgreekdefault{\c_attr_mathgreek"000\relax}
\let\mathgreeknormal\mathgreekupright
\let\mathgreeknone \mathgreekdefault
\appendtoks
- \attribute\mathgreekattribute\c_math_greek_attribute
+ \c_attr_mathgreek\c_math_greek_attribute
\to \everymathematics
\setupmathematics
@@ -1486,7 +1486,7 @@
\appendtoks
\math_collapsing_initialize
- \attribute\mathcollapsingattribute\c_math_collapsing_attribute
+ \c_attr_mathcollapsing\c_math_collapsing_attribute
\to \everymathematics
\setupmathematics
@@ -1524,7 +1524,7 @@
\appendtoks
\math_italics_initialize
- \attribute\mathitalicsattribute\c_math_italics_attribute
+ \c_attr_mathitalics\c_math_italics_attribute
\to \everymathematics
% \setupmathematics % done later
@@ -1561,7 +1561,7 @@
\appendtoks
\math_kernpairs_initialize
- \attribute\mathkernpairsattribute\c_math_kernpairs_attribute
+ \c_attr_mathkernpairs\c_math_kernpairs_attribute
\to \everymathematics
\setupmathematics
@@ -1609,13 +1609,13 @@
% \mathcode\c_math_period\c_math_special
% \let,\math_punctuation_comma
% \let.\math_punctuation_period
-% \attribute\mathpunctuationattribute\plustwo}
+% \c_attr_mathpunctuation\plustwo}
%
% \unexpanded\gdef\math_punctuation_initialize_yes
-% {\attribute\mathpunctuationattribute\plustwo}
+% {\c_attr_mathpunctuation\plustwo}
%
% \unexpanded\gdef\math_punctuation_initialize_nop
-% {\attribute\mathpunctuationattribute\plusone}
+% {\c_attr_mathpunctuation\plusone}
%
% \egroup
%
@@ -1762,7 +1762,7 @@
\setupmathematics
[\v!autopunctuation=\v!no] % no | yes | all | comma | yes,semicolon | all,semicolon
-%D The consequences of settign this are as follows:
+%D The consequences of setting this are as follows:
%D
%D \def\TestA#1#2#3%
%D {\ifnum#1=0 \type{#2}\else\setupmathematics[autopunctuation={#2}]$#3$\fi}
@@ -2790,7 +2790,7 @@
\to \everyswitchmathematics % only in mathematics
\appendtoks
- \attribute\mathdomainattribute\c_math_domain_attribute
+ \c_attr_mathdomain\c_math_domain_attribute
\to \everymathematics
\setupmathematics
@@ -2864,11 +2864,11 @@
%D Experiment
\unexpanded\def\math_scripts_stack
- {\attribute\mathunstackattribute\attributeunsetvalue}
+ {\c_attr_mathunstack\attributeunsetvalue}
\unexpanded\def\math_scripts_unstack
{\clf_enablescriptunstacking
- \attribute\mathunstackattribute\plusone}
+ \c_attr_mathunstack\plusone}
\appendtoks
\let\stackscripts \math_scripts_stack
diff --git a/tex/context/base/mkiv/meta-ini.mkiv b/tex/context/base/mkiv/meta-ini.mkiv
index ac920450e..6ba0abfa6 100644
--- a/tex/context/base/mkiv/meta-ini.mkiv
+++ b/tex/context/base/mkiv/meta-ini.mkiv
@@ -1110,7 +1110,7 @@
% \newcount\c_overlay_linetransparency
% \appendtoks
-% \c_overlay_colormodel \attribute\colormodelattribute
+% \c_overlay_colormodel \c_attr_colormodel
% \c_overlay_color \colo_helpers_inherited_current_ca\overlaycolor
% \c_overlay_transparency \colo_helpers_inherited_current_ta\overlaycolor
% \c_overlay_linecolor \colo_helpers_inherited_current_ca\overlaylinecolor
@@ -1368,8 +1368,8 @@
\appendtoks
\clf_mpsetoutercolor
\MPcolormethod\space
- \attribute\colormodelattribute\space
- \attribute\colorattribute\space
+ \c_attr_colormodel\space
+ \c_attr_color\space
\dogetattribute{transparency}\relax
\to \everyMPgraphic
diff --git a/tex/context/base/mkiv/meta-ini.mkxl b/tex/context/base/mkiv/meta-ini.mkxl
index 563af2c6d..dbb7aeb57 100644
--- a/tex/context/base/mkiv/meta-ini.mkxl
+++ b/tex/context/base/mkiv/meta-ini.mkxl
@@ -1083,7 +1083,7 @@
% \newcount\c_overlay_linetransparency
% \appendtoks
-% \c_overlay_colormodel \attribute\colormodelattribute
+% \c_overlay_colormodel \c_attr_colormodel
% \c_overlay_color \colo_helpers_inherited_current_ca\overlaycolor
% \c_overlay_transparency \colo_helpers_inherited_current_ta\overlaycolor
% \c_overlay_linecolor \colo_helpers_inherited_current_ca\overlaylinecolor
@@ -1342,8 +1342,8 @@
\appendtoks
\clf_mpsetoutercolor
\MPcolormethod\space
- \attribute\colormodelattribute\space
- \attribute\colorattribute\space
+ \c_attr_colormodel\space
+ \c_attr_color\space
\dogetattribute{transparency}\relax
\to \everyMPgraphic
diff --git a/tex/context/base/mkiv/node-bck.mkiv b/tex/context/base/mkiv/node-bck.mkiv
index b09327443..0e7bbb853 100644
--- a/tex/context/base/mkiv/node-bck.mkiv
+++ b/tex/context/base/mkiv/node-bck.mkiv
@@ -34,12 +34,12 @@
\fi\fi}
\def\node_backgrounds_thecolorattr#1%
- {attr \colormodelattribute \attribute\colormodelattribute
+ {attr \colormodelattribute \c_attr_colormodel
attr \colorattribute \lastnamedcs
attr \transparencyattribute \thetransparencyattribute{#1} } % can be optimized
\def\thecolorattr#1%
- {attr \colormodelattribute \attribute\colormodelattribute
+ {attr \colormodelattribute \c_attr_colormodel
attr \colorattribute \csname\??colorattribute#1\endcsname
attr \transparencyattribute \thetransparencyattribute{#1} } % can be optimized
@@ -52,19 +52,19 @@
\def\thebackgroundcolorattr#1%
{attr \backgroundattribute \plusone
- attr \colormodelattribute \attribute\colormodelattribute
+ attr \colormodelattribute \c_attr_colormodel
attr \colorattribute \csname\??colorattribute#1\endcsname
attr \transparencyattribute \thetransparencyattribute{#1} } % can be optimized
\def\node_backgrounds_thebackgroundcolorattr#1%
{attr \backgroundattribute \plusone
- attr \colormodelattribute \attribute\colormodelattribute
+ attr \colormodelattribute \c_attr_colormodel
attr \colorattribute \lastnamedcs
attr \transparencyattribute \thetransparencyattribute{#1} } % can be optimized
\def\thealignbackgroundcolorattr#1%
{attr \alignbackgroundattribute \plusone
- attr \colormodelattribute \attribute\colormodelattribute
+ attr \colormodelattribute \c_attr_colormodel
attr \colorattribute \csname\??colorattribute#1\endcsname
attr \transparencyattribute \thetransparencyattribute{#1} } % can be optimized
@@ -81,9 +81,9 @@
% \dousecolorparameter{#2}%
% \normalexpanded{\endgroup#1
% attr \backgroundattribute \plusone
-% attr \colormodelattribute \the\attribute\colormodelattribute
-% attr \colorattribute \the\attribute\colorattribute
-% attr \transparencyattribute \the\attribute\transparencyattribute}}
+% attr \colormodelattribute \the\c_attr_colormodel
+% attr \colorattribute \the\c_attr_color
+% attr \transparencyattribute \the\c_attr_transparency}}
%
% more efficient:
diff --git a/tex/context/base/mkiv/node-fin.mkiv b/tex/context/base/mkiv/node-fin.mkiv
index 086b19ae5..81a8fec51 100644
--- a/tex/context/base/mkiv/node-fin.mkiv
+++ b/tex/context/base/mkiv/node-fin.mkiv
@@ -36,8 +36,8 @@
\newcount\c_syst_attr_trigger
-\edef\startinheritattributes{\attribute\triggerattribute\plusone}
-\edef\stopinheritattributes {\attribute\triggerattribute\attributeunsetvalue}
+\edef\startinheritattributes{\c_attr_trigger\plusone}
+\edef\stopinheritattributes {\c_attr_trigger\attributeunsetvalue}
\def\syst_attr_trigger_copy_yes{\afterassignment\syst_attr_trigger_copy_indeed\c_syst_attr_trigger}
\def\syst_attr_trigger_dump_yes{\afterassignment\syst_attr_trigger_dump_indeed\c_syst_attr_trigger}
diff --git a/tex/context/base/mkiv/node-rul.mkiv b/tex/context/base/mkiv/node-rul.mkiv
index 7f2093bf2..02e610de3 100644
--- a/tex/context/base/mkiv/node-rul.mkiv
+++ b/tex/context/base/mkiv/node-rul.mkiv
@@ -162,14 +162,14 @@
\expandafter\let\expandafter\c_node_rules_index\csname\??barindex#1\endcsname
\advance\c_node_rules_index\plusone
\clf_enablerules % will be relaxed
- \attribute\ruledattribute\numexpr
+ \c_attr_ruled\numexpr
\plusthousand*\c_node_rules_index
% optimizing this one needs testing
+\csname\??barattribute#1\ifcsname\??bar#1:\number\c_node_rules_index\s!parent\endcsname:\number\c_node_rules_index\fi\endcsname
\relax}
\unexpanded\def\resetbar
- {\attribute\ruledattribute\attributeunsetvalue}
+ {\c_attr_ruled\attributeunsetvalue}
\unexpanded\def\nobar
{\groupedcommand
@@ -198,7 +198,7 @@
\unexpanded\def\pushbar[#1]%
{\global\advance\c_node_rules_nesting\plusone
- \expandafter\edef\csname\??barstack\number\c_node_rules_nesting\endcsname{\attribute\ruledattribute\the\attribute\ruledattribute}%
+ \expandafter\edef\csname\??barstack\number\c_node_rules_nesting\endcsname{\c_attr_ruled\the\c_attr_ruled}%
\node_rules_set{#1}}
\unexpanded\def\popbar
@@ -405,7 +405,7 @@
\expandafter\let\expandafter\c_node_shifts_index\csname\??shiftindex#1\endcsname
\advance\c_node_shifts_index\plusone
\clf_enableshifts % will be relaxed
- \attribute\shiftedattribute\numexpr
+ \c_attr_shifted\numexpr
\plusthousand*\c_node_shifts_index
+\csname\??shiftattribute#1\ifcsname\??shift#1:\number\c_node_shifts_index\s!parent\endcsname:\number\c_node_shifts_index\fi\endcsname
\relax
@@ -525,7 +525,7 @@
\expandafter\let\expandafter\c_node_linefiller_index\csname\??linefillerindex#1\endcsname
\advance\c_node_linefiller_index\plusone
\clf_enablelinefillers
- \attribute\linefillerattribute\numexpr
+ \c_attr_linefiller\numexpr
\plusthousand*\c_node_linefiller_index
+\csname\??linefillerattribute#1\ifcsname\??linefiller#1:\number\c_node_linefiller_index\s!parent\endcsname:\number\c_node_linefiller_index\fi\endcsname
\relax}
@@ -601,7 +601,7 @@
\node_linefiller_set{#3}% already sets the attribute
#1%
attr \backgroundattribute \plusone
- % attr \linefillerattribute \the\attribute\linefillerattribute
+ % attr \linefillerattribute \the\c_attr_linefiller
{\box\nextbox}%
\egroup}%
#2}
diff --git a/tex/context/base/mkiv/page-lin.mkvi b/tex/context/base/mkiv/page-lin.mkvi
index 4debcb68f..ba3acef78 100644
--- a/tex/context/base/mkiv/page-lin.mkvi
+++ b/tex/context/base/mkiv/page-lin.mkvi
@@ -46,11 +46,11 @@
\definesystemattribute[linereference][public]
\appendtoksonce
- \attribute\linenumberattribute\attributeunsetvalue
+ \c_attr_linenumber\attributeunsetvalue
\to \everyforgetall
\appendtoks
- \attribute\linenumberattribute \attributeunsetvalue
+ \c_attr_linenumber\attributeunsetvalue
\to \everyinsidefloat
\newcount \linenumber % not used
@@ -130,7 +130,7 @@
\unexpanded\def\page_lines_some_reference#1#2#3%
{\dontleavehmode\begingroup
\global\advance\c_page_lines_reference\plusone
- \attribute\linereferenceattribute\c_page_lines_reference
+ \c_attr_linereference\c_page_lines_reference
#3% todo: #3{#1} as there is no need to pass #1 as part of #3
% for the moment we use a simple system i.e. no prefixes etc .. todo: store as number
\c_strc_references_bind_state\zerocount % we don't want the prewordbreak and manage it here
@@ -315,11 +315,11 @@
\or
\page_lines_start_define % only when assignment
\fi
- \attribute\linenumberattribute\csname\??linenumberinginstance\currentlinenumbering\endcsname\relax}
+ \c_attr_linenumber\csname\??linenumberinginstance\currentlinenumbering\endcsname\relax}
\unexpanded\def\stoplinenumbering
{\ifconditional\c_pages_lines_nesting=\plusone
- \attribute\linenumberattribute\attributeunsetvalue
+ \c_attr_linenumber\attributeunsetvalue
\the\aftereverylinenumbering
\ifconditional\c_page_lines_auto_narrow\par\fi
\fi
diff --git a/tex/context/base/mkiv/page-mix.mkiv b/tex/context/base/mkiv/page-mix.mkiv
index f54b8ec71..b491a57a1 100644
--- a/tex/context/base/mkiv/page-mix.mkiv
+++ b/tex/context/base/mkiv/page-mix.mkiv
@@ -1029,7 +1029,7 @@
\begingroup
\scratchdimen\dimexpr#1\lineheight\ifsecondargument+#2\fi\relax
\ifdim\scratchdimen>\zeropoint
- \attribute\checkedbreakattribute\number\scratchdimen
+ \c_attr_checkedbreak\number\scratchdimen % why \number
\penalty\c_page_mix_break_forced\relax
\fi
\endgroup}
diff --git a/tex/context/base/mkiv/scrn-but.mkvi b/tex/context/base/mkiv/scrn-but.mkvi
index 0c9b4cfb5..977b02acd 100644
--- a/tex/context/base/mkiv/scrn-but.mkvi
+++ b/tex/context/base/mkiv/scrn-but.mkvi
@@ -155,7 +155,7 @@
\def\scrn_button_make#currentparameter#inheritedframed#letparameter#setparameter#text#action%
{\begingroup
- \attribute\referenceattribute\attributeunsetvalue
+ \c_attr_reference\attributeunsetvalue
\global\setfalse\c_scrn_button_skipped
\chardef\locationboxpagestate\csname\??buttonlocation#currentparameter\c!samepage\endcsname % ?? bt: todo
\doifelsereferencefound{#action}\scrn_button_make_yes\scrn_button_make_nop
diff --git a/tex/context/base/mkiv/scrn-fld.mkvi b/tex/context/base/mkiv/scrn-fld.mkvi
index 7710a32dc..ecd38606d 100644
--- a/tex/context/base/mkiv/scrn-fld.mkvi
+++ b/tex/context/base/mkiv/scrn-fld.mkvi
@@ -235,7 +235,7 @@
fontsize {\fontbody}%
fontsymbol {\fieldbodyparameter\c!symbol}%
color {\fieldbodyparameter\c!color}%
- colorvalue \attribute\colorattribute
+ colorvalue \c_attr_color
\ifx\currentfieldbackgroundcolor\empty \else
backgroundcolor {\currentfieldbackgroundcolor}%
backgroundcolorvalue \numexpr\currentfieldbackgroundcolorvalue\relax
diff --git a/tex/context/base/mkiv/scrn-wid.mkvi b/tex/context/base/mkiv/scrn-wid.mkvi
index 6808bd0b3..ea77a7da3 100644
--- a/tex/context/base/mkiv/scrn-wid.mkvi
+++ b/tex/context/base/mkiv/scrn-wid.mkvi
@@ -202,7 +202,7 @@
height \dimexpr\currentattachmentheight\relax
depth \dimexpr\currentattachmentdepth \relax
color {\attachmentparameter\c!color}%
- colormodel \attribute\colormodelattribute
+ colormodel \c_attr_colormodel
colorvalue \numexpr\thecolorattribute{\attachmentparameter\c!color}\relax % or are these chardefs
transparencyvalue \numexpr\thetransparencyattribute{\attachmentparameter\c!color}\relax % or are these chardefs
symbol {\currentattachmentsymbol}%
@@ -501,7 +501,7 @@
depth \dimexpr\currentcommentdepth\relax
nx {\commentparameter\c!nx}%
ny {\commentparameter\c!ny}%
- colormodel \attribute\colormodelattribute
+ colormodel \c_attr_colormodel
colorvalue \numexpr\thecolorattribute{\commentparameter\c!color}\relax
transparencyvalue \numexpr\thetransparencyattribute{\commentparameter\c!color}\relax
option {\commentparameter\c!option}% % todo
diff --git a/tex/context/base/mkiv/spac-ali.mkiv b/tex/context/base/mkiv/spac-ali.mkiv
index 8451e2494..51fc906ba 100644
--- a/tex/context/base/mkiv/spac-ali.mkiv
+++ b/tex/context/base/mkiv/spac-ali.mkiv
@@ -33,11 +33,11 @@
\definesystemattribute[alignstate][public] % will make a single attributes for several states
\appendtoks
- \attribute\realignattribute \attributeunsetvalue
- \attribute\alignstateattribute\attributeunsetvalue
+ \c_attr_realign \attributeunsetvalue
+ \c_attr_alignstate\attributeunsetvalue
\to \everyforgetall
-\unexpanded\def\resetrealignsignal{\attribute\realignattribute\attributeunsetvalue}
+\unexpanded\def\resetrealignsignal{\c_attr_realign\attributeunsetvalue}
\unexpanded\def\signalinnerrealign{\clf_setrealign\plustwo}
\unexpanded\def\signalouterrealign{\clf_setrealign\plusone}
@@ -293,7 +293,7 @@
\unexpanded\def\spac_align_set_horizontal_none % should also relax \updateraggedskips
{\raggedstatus\zerocount
- \attribute\alignstateattribute\attributeunsetvalue
+ \c_attr_alignstate\attributeunsetvalue
\leftskip \plusone\leftskip
\rightskip \plusone\rightskip
\spaceskip \zeropoint
@@ -305,7 +305,7 @@
\unexpanded\def\spac_align_set_horizontal_left
{\setraggedness\spac_align_set_raggedness_left
\raggedstatus\plusone
- \attribute\alignstateattribute\plusone
+ \c_attr_alignstate\plusone
\leftskip \plusone\leftskip \s!plus\spac_align_set_raggedness_left
\rightskip \plusone\rightskip\s!plus\zeropoint
\spaceskip \v_spac_align_space_amount
@@ -317,7 +317,7 @@
\unexpanded\def\spac_align_set_horizontal_center
{\setraggedness\spac_align_set_raggedness_middle
\raggedstatus\plustwo
- \attribute\alignstateattribute\plustwo
+ \c_attr_alignstate\plustwo
\leftskip \plusone\leftskip \s!plus\spac_align_set_raggedness_middle
\rightskip \plusone\rightskip\s!plus\spac_align_set_raggedness_middle
\spaceskip \v_spac_align_space_amount
@@ -329,7 +329,7 @@
\unexpanded\def\spac_align_set_horizontal_right
{\setraggedness\spac_align_set_raggedness_right
\raggedstatus\plusthree
- \attribute\alignstateattribute\plusthree
+ \c_attr_alignstate\plusthree
\leftskip \plusone\leftskip \s!plus\zeropoint
\rightskip \plusone\rightskip\s!plus\spac_align_set_raggedness_right
\spaceskip \v_spac_align_space_amount
@@ -340,7 +340,7 @@
\unexpanded\def\spac_align_set_horizontal_very_left
{\raggedstatus\plusone
- \attribute\alignstateattribute\plusone
+ \c_attr_alignstate\plusone
\leftskip \plusone\leftskip \s!plus\v_spac_align_fill_amount
\rightskip \plusone\rightskip\s!plus\zeropoint
\spaceskip \v_spac_align_space_amount
@@ -351,7 +351,7 @@
\unexpanded\def\spac_align_set_horizontal_very_center
{\raggedstatus\plustwo
- \attribute\alignstateattribute\plustwo
+ \c_attr_alignstate\plustwo
\leftskip \plusone\leftskip \s!plus\v_spac_align_fill_amount
\rightskip \plusone\rightskip\s!plus\v_spac_align_fill_amount
\spaceskip \v_spac_align_space_amount
@@ -362,7 +362,7 @@
\unexpanded\def\spac_align_set_horizontal_very_right
{\raggedstatus\plusthree
- \attribute\alignstateattribute\plusthree
+ \c_attr_alignstate\plusthree
\leftskip \plusone\leftskip \s!plus\zeropoint
\rightskip \plusone\rightskip\s!plus\v_spac_align_fill_amount
\spaceskip \v_spac_align_space_amount
@@ -374,7 +374,7 @@
\unexpanded\def\spac_align_set_horizontal_wide_center
{\setraggedness\spac_align_set_raggedness_middle
\raggedstatus\plustwo
- \attribute\alignstateattribute\plustwo
+ \c_attr_alignstate\plustwo
\leftskip \plusone\leftskip \s!plus\v_spac_align_fill_amount_half
\rightskip \plusone\rightskip\s!plus\v_spac_align_fill_amount_half
\spaceskip \v_spac_align_space_amount
@@ -385,7 +385,7 @@
\unexpanded\def\spac_align_set_horizontal_centered_last_line
{\raggedstatus\zerocount
- \attribute\alignstateattribute\attributeunsetvalue
+ \c_attr_alignstate\attributeunsetvalue
\leftskip \plusone\leftskip \s!plus\v_spac_align_fill_amount\relax
\rightskip \plusone\rightskip\s!plus\v_spac_align_fill_amount_negative\relax
\spaceskip \zeropoint\relax
@@ -396,7 +396,7 @@
\unexpanded\def\spac_align_set_horizontal_flushedright_last_line
{\raggedstatus\zerocount
- \attribute\alignstateattribute\attributeunsetvalue
+ \c_attr_alignstate\attributeunsetvalue
\leftskip \plusone\leftskip \s!plus\v_spac_align_fill_amount\relax
\rightskip \plusone\rightskip\s!plus\v_spac_align_fill_amount_negative\relax
\spaceskip \zeropoint\relax
@@ -410,7 +410,7 @@
\unexpanded\def\spac_align_set_horizontal_right_tt % a plain command
{\tttf % brrr
\raggedstatus\plusthree
- \attribute\alignstateattribute\plusthree
+ \c_attr_alignstate\plusthree
\leftskip \plusone\leftskip \s!plus\zeropoint\relax
\rightskip \plusone\rightskip\s!plus\spac_align_set_raggedness_right\relax
\spaceskip \zeropoint\relax
@@ -882,7 +882,7 @@
\xspaceskip #5\relax
\parfillskip \zeropoint\s!plus#6\relax
\parindent #7\relax
- \attribute\alignstateattribute\ifcase\raggedstatus\attributeunsetvalue\else\raggedstatus\fi}
+ \c_attr_alignstate\ifcase\raggedstatus\attributeunsetvalue\else\raggedstatus\fi}
% older (context) names:
diff --git a/tex/context/base/mkiv/spac-chr.mkiv b/tex/context/base/mkiv/spac-chr.mkiv
index 23f4ac8dd..43a725ae6 100644
--- a/tex/context/base/mkiv/spac-chr.mkiv
+++ b/tex/context/base/mkiv/spac-chr.mkiv
@@ -29,7 +29,7 @@
%D them in a string. So this needs thinking. Not that we can compare the
%D nobreakspace now anyway.
-% \unexpanded\def\specialspacecharacter#1{\begingroup\attribute\charactersattribute#1\ \endgroup}
+% \unexpanded\def\specialspacecharacter#1{\begingroup\c_attr_characters#1\ \endgroup}
%
% \unexpanded\edef\nobreakspace {\specialspacecharacter{"00A0}} % 1 = left
% \unexpanded\edef\ideographicspace {\specialspacecharacter{"2000}}
diff --git a/tex/context/base/mkiv/spac-prf.mkvi b/tex/context/base/mkiv/spac-prf.mkvi
index 9a00da395..ac0a2f4e1 100644
--- a/tex/context/base/mkiv/spac-prf.mkvi
+++ b/tex/context/base/mkiv/spac-prf.mkvi
@@ -70,7 +70,7 @@
\relax}
\unexpanded\def\resetprofile
- {\attribute\profilemethodattribute\attributeunsetvalue}
+ {\c_attr_profilemethod\attributeunsetvalue}
\unexpanded\def\useprofileparameter#getparameter%
{\edef\m_spac_profile_asked{#getparameter\c!profile}%
diff --git a/tex/context/base/mkiv/spac-ver.mkiv b/tex/context/base/mkiv/spac-ver.mkiv
index e75ea4e1b..6b1abe436 100644
--- a/tex/context/base/mkiv/spac-ver.mkiv
+++ b/tex/context/base/mkiv/spac-ver.mkiv
@@ -1500,14 +1500,14 @@
\newdimen \globalbodyfontstrutheight
\newdimen \globalbodyfontstrutdepth
-\def\snappedvboxattribute{\ifgridsnapping attr \snapvboxattribute \attribute\snapmethodattribute\fi}
-\def\setlocalgridsnapping{\ifgridsnapping \attribute \snapvboxattribute \attribute\snapmethodattribute\fi}
+\def\snappedvboxattribute{\ifgridsnapping attr\snapvboxattribute\c_attr_snapmethod\fi}
+\def\setlocalgridsnapping{\ifgridsnapping \c_attr_snapvbox \c_attr_snapmethod\fi}
\def\spac_grids_set_local_snapping#1%
{\ifgridsnapping
\doifsomething{#1}%
{\spac_grids_snap_value_set{#1}%
- \attribute \snapvboxattribute \attribute\snapmethodattribute}%
+ \c_attr_snapvbox\c_attr_snapmethod}%
\fi}
% \unexpanded\def\installsnapvalues#1#2% todo: a proper define
@@ -1515,7 +1515,7 @@
% \ifcsname\??gridsnapperattributes\currentsnapper\endcsname \else
% \setevalue{\??gridsnapperattributes\currentsnapper}{\clf_definesnapmethod{#1}{#2}}%
% \fi
-% \setevalue{\??gridsnappers#1}{\attribute\snapmethodattribute\csname\??gridsnapperattributes\currentsnapper\endcsname\space}}
+% \setevalue{\??gridsnappers#1}{\c_attr_snapmethod\csname\??gridsnapperattributes\currentsnapper\endcsname\space}}
\def\spac_grids_expand_snapper#1%
{\edef\m_spac_snapper
@@ -1534,7 +1534,7 @@
\scratchcounter\clf_definesnapmethod{#1}{\m_spac_snapper}%
\setevalue{\??gridsnapperattributes\currentsnapper}{\the\scratchcounter}%
\fi
- \setevalue{\??gridsnappers#1}{\attribute\snapmethodattribute\the\scratchcounter\relax}%
+ \setevalue{\??gridsnappers#1}{\c_attr_snapmethod\the\scratchcounter\relax}%
\letvalue{\??gridsnappersets#1}\m_spac_snapper}
\def\theexpandedsnapperset#1{\begincsname\??gridsnappersets#1\endcsname} % only for manuals
@@ -1542,10 +1542,10 @@
\unexpanded\def\usegridparameter#1% no checking here
{\edef\m_spac_grid_asked{#1\c!grid}%
\ifx\m_spac_grid_asked\empty
- \attribute \snapvboxattribute\attributeunsetvalue
+ \c_attr_snapvbox\attributeunsetvalue
\else
\spac_grids_snap_value_set\m_spac_grid_asked
- \attribute \snapvboxattribute\attribute\snapmethodattribute
+ \c_attr_snapvbox\c_attr_snapmethod
\fi}
\unexpanded\def\definegridsnapping
@@ -1556,7 +1556,7 @@
\edef\spac_grids_snap_value_reset
{%\gridsnappingfalse
- \attribute\snapmethodattribute\attributeunsetvalue}
+ \c_attr_snapmethod\attributeunsetvalue}
\def\spac_grids_snap_value_set#1%
{%\gridsnappingtrue
@@ -1605,9 +1605,9 @@
%D We're not downward compatible with \MKII ! Not yet in interface file:
-\definegridsnapping[\v!normal] [\v!maxheight,\v!maxdepth,\v!strut]
-\definegridsnapping[\v!standard] [\v!maxheight,\v!maxdepth,\v!strut]
-\definegridsnapping[\v!yes] [\v!maxheight,\v!maxdepth,\v!strut]
+\definegridsnapping[\v!normal] [\v!maxheight,\v!maxdepth,\v!strut]
+\definegridsnapping[\v!standard] [\v!maxheight,\v!maxdepth,\v!strut]
+\definegridsnapping[\v!yes] [\v!maxheight,\v!maxdepth,\v!strut]
\definegridsnapping[\v!strict] [\v!maxdepth:0.8,\v!maxheight:0.8,\v!strut]
\definegridsnapping[\v!tolerant] [\v!maxdepth:1.2,\v!maxheight:1.2,\v!strut]
@@ -1717,7 +1717,7 @@
\clf_vspacingcollapse\nextbox\relax % isn't that already done?
\fi
\doifelsenothing{#1}{\spac_grids_snap_value_set\v!normal}{\spac_grids_snap_value_set{#1}}%
- \clf_vspacingsnap\nextbox\attribute\snapmethodattribute\relax
+ \clf_vspacingsnap\nextbox\c_attr_snapmethod\relax
\ifvbox\nextbox\vbox\else\hbox\fi attr \snapmethodattribute \zerocount {\box\nextbox}% no pack (?), we snap
\egroup}
@@ -1948,7 +1948,7 @@
\clf_vspacingsetamount{#1}}
\def\spac_vspacing_no_topskip % use grouped
- {\attribute\skipcategoryattribute\plusten}
+ {\c_attr_skipcategory\plusten}
% \installcorenamespace{vspacingamountnormal}
% \installcorenamespace{vspacingamountgrid}
@@ -1979,9 +1979,9 @@
\appendtoks
\s_spac_vspacing_temp\zeropoint
- \attribute\skipcategoryattribute\plusone
- \attribute\skippenaltyattribute \attributeunsetvalue
- \attribute\skiporderattribute \attributeunsetvalue
+ \c_attr_skipcategory\plusone
+ \c_attr_skippenalty \attributeunsetvalue
+ \c_attr_skiporder \attributeunsetvalue
\ifgridsnapping
\settrue\c_space_vspacing_fixed
\else
@@ -2003,10 +2003,10 @@
\unexpanded\def\setblankcategory#1%
{\settrue\c_space_vspacing_done
- \attribute\skipcategoryattribute#1\relax}
+ \c_attr_skipcategory#1\relax}
\unexpanded\def\setblankorder#1%
- {\attribute\skiporderattribute#1\relax}
+ {\c_attr_skiporder#1\relax}
\unexpanded\def\fixedblankskip
{\settrue\c_space_vspacing_fixed}
@@ -2021,8 +2021,8 @@
\unexpanded\def\setblankpenalty#1%
{\flushblankhandling
\settrue\c_space_vspacing_done
- \attribute\skipcategoryattribute \plusthree
- \attribute\skippenaltyattribute #1\relax
+ \c_attr_skipcategory\plusthree
+ \c_attr_skippenalty #1\relax
\flushblankhandling}
\unexpanded\def\startblankhandling % move this to \vspacing
@@ -2181,17 +2181,17 @@
\unexpanded\def\directvpenalty#1%
{\begingroup
- \attribute\skipcategoryattribute \plusthree
- \attribute\skippenaltyattribute #1\relax
- \attribute\skiporderattribute \attributeunsetvalue
+ \c_attr_skipcategory\plusthree
+ \c_attr_skippenalty #1\relax
+ \c_attr_skiporder \attributeunsetvalue
\vskip\zeropoint
\endgroup}
\unexpanded\def\directvskip#1%
{\begingroup
- \attribute\skipcategoryattribute \plusone
- \attribute\skippenaltyattribute \attributeunsetvalue
- \attribute\skiporderattribute \attributeunsetvalue
+ \c_attr_skipcategory\plusone
+ \c_attr_skippenalty \attributeunsetvalue
+ \c_attr_skiporder \attributeunsetvalue
\vskip#1\relax
\endgroup}
@@ -2343,7 +2343,7 @@
\unexpanded\def\inhibitblank
{\ifvmode
\begingroup
- \attribute\skipcategoryattribute\plusfive
+ \c_attr_skipcategory\plusfive
\vskip\zeropoint
\endgroup
\fi}
diff --git a/tex/context/base/mkiv/spac-ver.mkxl b/tex/context/base/mkiv/spac-ver.mkxl
index 5b18ea7d3..b69c1d33c 100644
--- a/tex/context/base/mkiv/spac-ver.mkxl
+++ b/tex/context/base/mkiv/spac-ver.mkxl
@@ -64,14 +64,6 @@
\def\skipfactor {.75}
\def\skipgluefactor{.25}
-% \def\normalskipamount
-% {\openlineheight
-% \ifgridsnapping \else \ifblankflexible
-% \s!plus \skipgluefactor\openlineheight
-% \s!minus\skipgluefactor\openlineheight
-% \fi \fi
-% \relax}
-
\def\normalskipamount
{\openlineheight
\ifgridsnapping \orelse \ifblankflexible
@@ -793,8 +785,6 @@
\else
\edef\spacingfactor{#1}%
\fi
- % \edef\systemtopskipfactor {\withoutpt\the\dimexpr#1\dimexpr\topskipfactor \points}%
- % \edef\systemmaxdepthfactor{\withoutpt\the\dimexpr#1\dimexpr\maxdepthfactor\points}%
\edef\systemtopskipfactor {\thewithoutunit\dimexpr#1\dimexpr\topskipfactor \points}%
\edef\systemmaxdepthfactor{\thewithoutunit\dimexpr#1\dimexpr\maxdepthfactor\points}%
\setnormalbaselines
@@ -1514,14 +1504,14 @@
\newdimen \globalbodyfontstrutheight
\newdimen \globalbodyfontstrutdepth
-\def\snappedvboxattribute{\ifgridsnapping attr \snapvboxattribute \attribute\snapmethodattribute\fi}
-\def\setlocalgridsnapping{\ifgridsnapping \attribute \snapvboxattribute \attribute\snapmethodattribute\fi}
+\def\snappedvboxattribute{\ifgridsnapping attr\snapvboxattribute\c_attr_snapmethod\fi}
+\def\setlocalgridsnapping{\ifgridsnapping \c_attr_snapvbox \c_attr_snapmethod\fi}
\def\spac_grids_set_local_snapping#1%
{\ifgridsnapping
\doifsomething{#1}%
{\spac_grids_snap_value_set{#1}%
- \attribute \snapvboxattribute \attribute\snapmethodattribute}%
+ \c_attr_snapvbox\c_attr_snapmethod}%
\fi}
\def\spac_grids_expand_snapper#1%
@@ -1541,7 +1531,7 @@
\scratchcounter\clf_definesnapmethod{#1}{\m_spac_snapper}%
\setevalue{\??gridsnapperattributes\currentsnapper}{\the\scratchcounter}%
\fi
- \setevalue{\??gridsnappers#1}{\attribute\snapmethodattribute\the\scratchcounter\relax}%
+ \setevalue{\??gridsnappers#1}{\c_attr_snapmethod\the\scratchcounter\relax}%
\letvalue{\??gridsnappersets#1}\m_spac_snapper}
\def\theexpandedsnapperset#1{\begincsname\??gridsnappersets#1\endcsname} % only for manuals
@@ -1549,10 +1539,10 @@
\unexpanded\def\usegridparameter#1% no checking here
{\edef\m_spac_grid_asked{#1\c!grid}%
\ifempty\m_spac_grid_asked
- \attribute \snapvboxattribute\attributeunsetvalue
+ \c_attr_snapvbox\attributeunsetvalue
\else
\spac_grids_snap_value_set\m_spac_grid_asked
- \attribute \snapvboxattribute\attribute\snapmethodattribute
+ \c_attr_snapvbox\c_attr_snapmethod
\fi}
\unexpanded\def\definegridsnapping
@@ -1563,7 +1553,7 @@
\edef\spac_grids_snap_value_reset
{%\gridsnappingfalse
- \attribute\snapmethodattribute\attributeunsetvalue}
+ \c_attr_snapmethod\attributeunsetvalue}
\def\spac_grids_snap_value_set#1%
{%\gridsnappingtrue
@@ -1724,7 +1714,7 @@
\clf_vspacingcollapse\nextbox\relax % isn't that already done?
\fi
\doifelsenothing{#1}{\spac_grids_snap_value_set\v!normal}{\spac_grids_snap_value_set{#1}}%
- \clf_vspacingsnap\nextbox\attribute\snapmethodattribute\relax
+ \clf_vspacingsnap\nextbox\c_attr_snapmethod\relax
\ifvbox\nextbox\vbox\else\hbox\fi attr \snapmethodattribute \zerocount {\box\nextbox}% no pack (?), we snap
\egroup}
@@ -1953,7 +1943,7 @@
\clf_vspacingsetamount{#1}}
\def\spac_vspacing_no_topskip % use grouped
- {\attribute\skipcategoryattribute\plusten}
+ {\c_attr_skipcategory\plusten}
% \installcorenamespace{vspacingamountnormal}
% \installcorenamespace{vspacingamountgrid}
@@ -1984,9 +1974,9 @@
\appendtoks
\s_spac_vspacing_temp\zeropoint
- \attribute\skipcategoryattribute\plusone
- \attribute\skippenaltyattribute \attributeunsetvalue
- \attribute\skiporderattribute \attributeunsetvalue
+ \c_attr_skipcategory\plusone
+ \c_attr_skippenalty \attributeunsetvalue
+ \c_attr_skiporder \attributeunsetvalue
\ifgridsnapping
\settrue\c_space_vspacing_fixed
\else
@@ -2008,10 +1998,10 @@
\unexpanded\def\setblankcategory#1%
{\settrue\c_space_vspacing_done
- \attribute\skipcategoryattribute#1\relax}
+ \c_attr_skipcategory#1\relax}
\unexpanded\def\setblankorder#1%
- {\attribute\skiporderattribute#1\relax}
+ {\c_attr_skiporder#1\relax}
\unexpanded\def\fixedblankskip
{\settrue\c_space_vspacing_fixed}
@@ -2026,8 +2016,8 @@
\unexpanded\def\setblankpenalty#1%
{\flushblankhandling
\settrue\c_space_vspacing_done
- \attribute\skipcategoryattribute \plusthree
- \attribute\skippenaltyattribute #1\relax
+ \c_attr_skipcategory\plusthree
+ \c_attr_skippenalty #1\relax
\flushblankhandling}
\unexpanded\def\startblankhandling % move this to \vspacing
@@ -2175,17 +2165,17 @@
\unexpanded\def\directvpenalty#1%
{\begingroup
- \attribute\skipcategoryattribute \plusthree
- \attribute\skippenaltyattribute #1\relax
- \attribute\skiporderattribute \attributeunsetvalue
+ \c_attr_skipcategory\plusthree
+ \c_attr_skippenalty #1\relax
+ \c_attr_skiporder \attributeunsetvalue
\vskip\zeropoint
\endgroup}
\unexpanded\def\directvskip#1%
{\begingroup
- \attribute\skipcategoryattribute \plusone
- \attribute\skippenaltyattribute \attributeunsetvalue
- \attribute\skiporderattribute \attributeunsetvalue
+ \c_attr_skipcategory\plusone
+ \c_attr_skippenalty \attributeunsetvalue
+ \c_attr_skiporder \attributeunsetvalue
\vskip#1\relax
\endgroup}
@@ -2337,7 +2327,7 @@
\unexpanded\def\inhibitblank
{\ifvmode
\begingroup
- \attribute\skipcategoryattribute\plusfive
+ \c_attr_skipcategory\plusfive
\vskip\zeropoint
\endgroup
\fi}
diff --git a/tex/context/base/mkiv/status-files.pdf b/tex/context/base/mkiv/status-files.pdf
index c104e942f..374d3b695 100644
--- a/tex/context/base/mkiv/status-files.pdf
+++ b/tex/context/base/mkiv/status-files.pdf
Binary files differ
diff --git a/tex/context/base/mkiv/status-lua.pdf b/tex/context/base/mkiv/status-lua.pdf
index e0e2be91e..a39f37412 100644
--- a/tex/context/base/mkiv/status-lua.pdf
+++ b/tex/context/base/mkiv/status-lua.pdf
Binary files differ
diff --git a/tex/context/base/mkiv/strc-con.mkvi b/tex/context/base/mkiv/strc-con.mkvi
index 8c75eb6df..26a3bba35 100644
--- a/tex/context/base/mkiv/strc-con.mkvi
+++ b/tex/context/base/mkiv/strc-con.mkvi
@@ -226,7 +226,7 @@
{\begingroup
\iftrialtypesetting \else
\currentconstructionsynchronize
- \attribute\destinationattribute\currentconstructionattribute\relax
+ \c_attr_destination\currentconstructionattribute\relax
\fi
#1%
\endgroup}
@@ -235,7 +235,7 @@
{\begingroup
\iftrialtypesetting \else
\currentconstructionsynchronize
- \attribute\destinationattribute\currentconstructionattribute\relax
+ \c_attr_destination\currentconstructionattribute\relax
\fi
\currentconstructiontext
\endgroup}
@@ -244,7 +244,7 @@
{\iftrialtypesetting \else
\begingroup
\currentconstructionsynchronize % reinstated
- \attribute\destinationattribute\currentconstructionattribute\relax % todo, whole text
+ \c_attr_destination\currentconstructionattribute\relax % todo, whole text
\signalcharacter
\endgroup
\fi#1}
diff --git a/tex/context/base/mkiv/strc-flt.mkvi b/tex/context/base/mkiv/strc-flt.mkvi
index d6a6723d7..3d0218d50 100644
--- a/tex/context/base/mkiv/strc-flt.mkvi
+++ b/tex/context/base/mkiv/strc-flt.mkvi
@@ -397,7 +397,7 @@
\glet\currentfloatsynchronize\m_strc_counters_last_registered_synchronize
%
% \iflocation
- % \attribute\destinationattribute\currentfloatattribute\relax
+ % \c_attr_destination\currentfloatattribute\relax
% \fi
\currentfloatsynchronize
\strc_floats_make_complete_caption
diff --git a/tex/context/base/mkiv/strc-lst.mkvi b/tex/context/base/mkiv/strc-lst.mkvi
index a8783610c..18b4d4662 100644
--- a/tex/context/base/mkiv/strc-lst.mkvi
+++ b/tex/context/base/mkiv/strc-lst.mkvi
@@ -1544,14 +1544,14 @@
\def\strc_lists_set_reference_attribute_indeed#element%
{\ifx#element\p_interaction_forward
- \attribute\referenceattribute\a_strc_lists_reference
+ \c_attr_reference\a_strc_lists_reference
\fi}
\def\strc_lists_get_destination_attribute_indeed
{attr \destinationattribute\number\a_strc_lists_destination}
\def\strc_lists_set_destination_attribute_indeed
- {\attribute\destinationattribute\a_strc_lists_destination}
+ {\c_attr_destination\a_strc_lists_destination}
\unexpanded\def\strc_lists_set_style_color_normal#style#color#element%
{\useliststyleandcolor#style#color}
diff --git a/tex/context/base/mkiv/strc-mat.mkiv b/tex/context/base/mkiv/strc-mat.mkiv
index 0b80a26cd..2c8ed8ddf 100644
--- a/tex/context/base/mkiv/strc-mat.mkiv
+++ b/tex/context/base/mkiv/strc-mat.mkiv
@@ -315,7 +315,7 @@
\def\theformuladestinationattribute#1%
{\iflocation\ifx#1\relax\else\ifx#1\empty\else
- \attribute\destinationattribute#1%
+ \c_attr_destination#1%
\glet#1\relax
\fi\fi\fi}
diff --git a/tex/context/base/mkiv/strc-not.mkvi b/tex/context/base/mkiv/strc-not.mkvi
index 0ea6e88ea..b83add08f 100644
--- a/tex/context/base/mkiv/strc-not.mkvi
+++ b/tex/context/base/mkiv/strc-not.mkvi
@@ -437,7 +437,7 @@
{\iftrialtypesetting \else
\begingroup
\currentconstructionsynchronize
- \attribute\destinationattribute\currentconstructionattribute\relax % todo, whole text
+ \c_attr_destination\currentconstructionattribute\relax % todo, whole text
\signalcharacter
\endgroup
\fi#following}
@@ -582,20 +582,20 @@
% \def\strc_references_prepare_display_references_yes_number
% {\let\strc_notes_set_reference_attribute_text\donothing
% \strc_references_get_simple_reference{symb:\currentnote:\currentnotenumber}% reference
-% \edef\strc_notes_set_reference_attribute_number{\attribute\referenceattribute\currentreferenceattribute}%
+% \edef\strc_notes_set_reference_attribute_number{\c_attr_reference\currentreferenceattribute}%
% \let\strc_notes_set_style_color_display\strc_notes_set_style_color_display_yes}
% \def\strc_references_prepare_display_references_yes_text
% {\strc_references_get_simple_reference{symb:\currentnote:\currentnotenumber}% reference
-% \edef\strc_notes_set_reference_attribute_text{\attribute\referenceattribute\currentreferenceattribute}%
+% \edef\strc_notes_set_reference_attribute_text{\c_attr_reference\currentreferenceattribute}%
% \let\strc_notes_set_reference_attribute_number\donothing
% \let\strc_notes_set_style_color_display\strc_notes_set_style_color_display_yes}
% \def\strc_references_prepare_display_references_yes_all
% {\strc_references_get_simple_reference{symb:\currentnote:\currentnotenumber}% reference
-% \edef\strc_notes_set_reference_attribute_text{\attribute\referenceattribute\currentreferenceattribute}%
+% \edef\strc_notes_set_reference_attribute_text{\c_attr_reference\currentreferenceattribute}%
% \strc_references_get_simple_reference{symb:\currentnote:\currentnotenumber}% reference
-% \edef\strc_notes_set_reference_attribute_number{\attribute\referenceattribute\currentreferenceattribute}%
+% \edef\strc_notes_set_reference_attribute_number{\c_attr_reference\currentreferenceattribute}%
% \let\strc_notes_set_style_color_display\strc_notes_set_style_color_display_yes}
\def\strc_references_prepare_display_references_yes_number
@@ -605,7 +605,7 @@
\else
\let\strc_notes_set_reference_attribute_text\donothing
\strc_references_get_simple_reference{*\currentnoteinternal}% reference
- \edef\strc_notes_set_reference_attribute_number{\attribute\referenceattribute\currentreferenceattribute}%
+ \edef\strc_notes_set_reference_attribute_number{\c_attr_reference\currentreferenceattribute}%
\let\strc_notes_set_style_color_display\strc_notes_set_style_color_display_yes
\fi}
@@ -615,7 +615,7 @@
\strc_references_prepare_display_references_nop
\else
\strc_references_get_simple_reference{*\currentnoteinternal}% reference
- \edef\strc_notes_set_reference_attribute_text{\attribute\referenceattribute\currentreferenceattribute}%
+ \edef\strc_notes_set_reference_attribute_text{\c_attr_reference\currentreferenceattribute}%
\let\strc_notes_set_reference_attribute_number\donothing
\let\strc_notes_set_style_color_display\strc_notes_set_style_color_display_yes
\fi}
@@ -626,9 +626,9 @@
\strc_references_prepare_display_references_nop
\else
\strc_references_get_simple_reference{*\currentnoteinternal}% reference
- \edef\strc_notes_set_reference_attribute_text{\attribute\referenceattribute\currentreferenceattribute}%
+ \edef\strc_notes_set_reference_attribute_text{\c_attr_reference\currentreferenceattribute}%
\strc_references_get_simple_reference{*\currentnoteinternal}% reference
- \edef\strc_notes_set_reference_attribute_number{\attribute\referenceattribute\currentreferenceattribute}%
+ \edef\strc_notes_set_reference_attribute_number{\c_attr_reference\currentreferenceattribute}%
\let\strc_notes_set_style_color_display\strc_notes_set_style_color_display_yes
\fi}
diff --git a/tex/context/base/mkiv/strc-ref.mkvi b/tex/context/base/mkiv/strc-ref.mkvi
index 42327686b..d68ecb805 100644
--- a/tex/context/base/mkiv/strc-ref.mkvi
+++ b/tex/context/base/mkiv/strc-ref.mkvi
@@ -167,7 +167,7 @@
\def\strc_references_placeholder
{\ifx\dotaggedplaceholder\empty\else
- \attribute\destinationattribute\lastdestinationattribute
+ \c_attr_destination\lastdestinationattribute
\dotaggedplaceholder
\fi}
@@ -373,7 +373,7 @@
\unexpanded\def\vboxreference[#1]{\boxreference[#1]\vbox}
% \ifx\currentdestinationattribute\empty
-% \begingroup\attribute\destinationattribute\currentdestinationattribute\emptyhbox\endgroup % todo
+% \begingroup\c_attr_destination\currentdestinationattribute\emptyhbox\endgroup % todo
% \fi
\def\defaultreferencepage#text{[[[#text]]]}
@@ -1475,12 +1475,12 @@
\newbox\referencebox
\def\revivesavedreferenceattribute % sometimes handy as no test etc needed
- {\attribute\referenceattribute\lastsavedreferenceattribute}
+ {\c_attr_reference\lastsavedreferenceattribute}
\def\strc_references_direct_goto#content[#label]% no test for valid references
{\dontleavehmode
\begingroup
- \attribute\referenceattribute\attributeunsetvalue
+ \c_attr_reference\attributeunsetvalue
\global\lastsavedreferenceattribute\attributeunsetvalue
\iflocation
\clf_injectreference
@@ -1495,7 +1495,7 @@
\setlocationattributes
\setstrut % can be option
\global\lastsavedreferenceattribute\lastreferenceattribute
- \attribute\referenceattribute\lastreferenceattribute
+ \c_attr_reference\lastreferenceattribute
\dostarttagged\t!link\empty % not here
#content%
\dostoptagged
@@ -1508,7 +1508,7 @@
{\dontleavehmode
\begingroup
\global\lastsavedreferenceattribute\attributeunsetvalue
- \attribute\referenceattribute\attributeunsetvalue
+ \c_attr_reference\attributeunsetvalue
\iflocation
\clf_injectreference
{\referenceprefix}%
@@ -1520,7 +1520,7 @@
}%
\relax
\setlocationattributes
- \attribute\referenceattribute\lastreferenceattribute
+ \c_attr_reference\lastreferenceattribute
\global\lastsavedreferenceattribute\lastreferenceattribute
\dostarttagged\t!link\empty
#content%
@@ -1535,7 +1535,7 @@
\begingroup
%\setbox\referencebox\hbox\bgroup % experiment, might change again to non \par support
\global\lastsavedreferenceattribute\attributeunsetvalue
- \attribute\referenceattribute\attributeunsetvalue
+ \c_attr_reference\attributeunsetvalue
\iflocation
\clf_doifelsereference{\referenceprefix}{#label}{\extrareferencearguments}%
{\expandtexincurrentreference
@@ -1546,7 +1546,7 @@
\setlocationattributes
\setstrut % can be option
\global\lastsavedreferenceattribute\lastreferenceattribute
- \attribute\referenceattribute\lastreferenceattribute
+ \c_attr_reference\lastreferenceattribute
\dostarttagged\t!link\empty
#content%
\dostoptagged}%
@@ -1561,12 +1561,12 @@
{\dontleavehmode
\begingroup
\global\lastsavedreferenceattribute\attributeunsetvalue
- \attribute\referenceattribute\attributeunsetvalue
+ \c_attr_reference\attributeunsetvalue
\iflocation
\setstrut % can be option
\strc_references_get_simple_reference{#internal}%
\global\lastsavedreferenceattribute\currentreferenceattribute
- \attribute\referenceattribute\currentreferenceattribute
+ \c_attr_reference\currentreferenceattribute
\setlocationattributes
\dostarttagged\t!link\empty
#content%
@@ -1602,7 +1602,7 @@
\setlocationattributes
\setstrut % can be option
\global\lastsavedreferenceattribute\lastreferenceattribute
- \attribute\referenceattribute\lastreferenceattribute
+ \c_attr_reference\lastreferenceattribute
\dostarttagged\t!link\empty
\let\stopgoto\strc_references_stop_goto_yes}
@@ -1614,7 +1614,7 @@
{\dontleavehmode
\begingroup
\global\lastsavedreferenceattribute\attributeunsetvalue
- \attribute\referenceattribute\attributeunsetvalue
+ \c_attr_reference\attributeunsetvalue
\iflocation
\clf_doifelsereference{\referenceprefix}{#label}{\extrareferencearguments}%
{\expandtexincurrentreference
@@ -1624,7 +1624,7 @@
\relax
\setlocationattributes
\global\lastsavedreferenceattribute\lastreferenceattribute
- \attribute\referenceattribute\lastreferenceattribute
+ \c_attr_reference\lastreferenceattribute
\dostarttagged\t!link\empty
#content%
\dostoptagged}%
@@ -1638,7 +1638,7 @@
{\dontleavehmode
\begingroup
\global\lastsavedreferenceattribute\attributeunsetvalue
- \attribute\referenceattribute\attributeunsetvalue
+ \c_attr_reference\attributeunsetvalue
\iflocation
\clf_injectreference
{\referenceprefix}%
@@ -1659,7 +1659,7 @@
{\dontleavehmode
\begingroup
\global\lastsavedreferenceattribute\attributeunsetvalue
- \attribute\referenceattribute\attributeunsetvalue
+ \c_attr_reference\attributeunsetvalue
\iflocation
\clf_injectreference
{\referenceprefix}%
@@ -1680,7 +1680,7 @@
{\dontleavehmode
\begingroup
\global\lastsavedreferenceattribute\attributeunsetvalue
- \attribute\referenceattribute\attributeunsetvalue
+ \c_attr_reference\attributeunsetvalue
\iflocation
\clf_injectreference
{\referenceprefix}%
@@ -1700,7 +1700,7 @@
{\dontleavehmode
\begingroup
\global\lastsavedreferenceattribute\attributeunsetvalue
- \attribute\referenceattribute\attributeunsetvalue
+ \c_attr_reference\attributeunsetvalue
\iflocation
\clf_doifelsereference{\referenceprefix}{#label}{\extrareferencearguments}%
{\expandtexincurrentreference
@@ -1723,7 +1723,7 @@
\wd\scratchbox#width%
\ht\scratchbox#height%
\global\lastsavedreferenceattribute\attributeunsetvalue
- \attribute\referenceattribute\attributeunsetvalue
+ \c_attr_reference\attributeunsetvalue
\clf_doifelsereference{\referenceprefix}{#label}{\extrareferencearguments}%
{\clf_injectcurrentreference
\global\lastsavedreferenceattribute\lastreferenceattribute
diff --git a/tex/context/base/mkiv/strc-reg.mkiv b/tex/context/base/mkiv/strc-reg.mkiv
index e955c700b..e2fede024 100644
--- a/tex/context/base/mkiv/strc-reg.mkiv
+++ b/tex/context/base/mkiv/strc-reg.mkiv
@@ -311,7 +311,7 @@
% needs thinking ... bla\index{bla}. will break before the . but adding a
% penalty is also no solution
\dostarttagged\t!registerlocation\currentregister
- \attribute\destinationattribute\lastdestinationattribute \signalcharacter % no \strut as it will be removed during cleanup
+ \c_attr_destination\lastdestinationattribute \signalcharacter % no \strut as it will be removed during cleanup
\dotagregisterlocation
\dostoptagged
\endgroup}
@@ -344,7 +344,7 @@
\xdef\currentregistersynchronize{\clf_deferredenhanceregister{\currentregister}\number\currentregisternumber}%
\currentregistersynchronize % here?
\dostarttagged\t!registerlocation\currentregister
- \attribute\destinationattribute\lastdestinationattribute \signalcharacter % no \strut as it will be removed during cleanup
+ \c_attr_destination\lastdestinationattribute \signalcharacter % no \strut as it will be removed during cleanup
\dotagregisterlocation
\dostoptagged
\endgroup}
@@ -564,7 +564,7 @@
view {\interactionparameter\c!focus}%
\relax % this will change
\dostarttagged\t!registerlocation\currentregister
- \attribute\destinationattribute\lastdestinationattribute \signalcharacter % no \strut as it will be removed during cleanup
+ \c_attr_destination\lastdestinationattribute \signalcharacter % no \strut as it will be removed during cleanup
\dotagregisterlocation
\dostoptagged
\endgroup}
diff --git a/tex/context/base/mkiv/strc-ren.mkiv b/tex/context/base/mkiv/strc-ren.mkiv
index 59f3a9256..2b344bbfb 100644
--- a/tex/context/base/mkiv/strc-ren.mkiv
+++ b/tex/context/base/mkiv/strc-ren.mkiv
@@ -90,9 +90,9 @@
\def\setinlineheadreferenceattributes
{\ifconditional\headisdisplay \else \iflocation
- \attribute\destinationattribute\currentstructureattribute
- \attribute\referenceattribute \currentstructurereferenceattribute
- % \attribute\internalattribute \locationcount
+ \c_attr_destination\currentstructureattribute
+ \c_attr_reference \currentstructurereferenceattribute
+ % \c_attr_internal \locationcount
\fi \fi}
\def\docheckheadreference
diff --git a/tex/context/base/mkiv/strc-tag.mkiv b/tex/context/base/mkiv/strc-tag.mkiv
index ab532f0ef..19d670215 100644
--- a/tex/context/base/mkiv/strc-tag.mkiv
+++ b/tex/context/base/mkiv/strc-tag.mkiv
@@ -415,7 +415,7 @@
\to \everysetuptagging
\unexpanded\def\forgettagging
- {\attribute\taggedattribute\attributeunsetvalue}
+ {\c_attr_tagged\attributeunsetvalue}
\setuptagging
[\c!state=\v!stop,
diff --git a/tex/context/base/mkiv/tabl-ntb.mkiv b/tex/context/base/mkiv/tabl-ntb.mkiv
index 836ba5129..45f746f3a 100644
--- a/tex/context/base/mkiv/tabl-ntb.mkiv
+++ b/tex/context/base/mkiv/tabl-ntb.mkiv
@@ -1511,7 +1511,7 @@
\advance\scratchcounter\plusone}%
\fi
% cell
- \setbox\scratchbox\hbox attr \taggedattribute \attribute\taggedattribute \bgroup
+ \setbox\scratchbox\hbox attr \taggedattribute \c_attr_tagged \bgroup
\dotagTABLEsignal % maybe we need to add some packaging in this case
\tabl_ntb_get_txt{#1}{#2}%
\egroup
diff --git a/tex/context/base/mkiv/tabl-ntb.mkxl b/tex/context/base/mkiv/tabl-ntb.mkxl
index cc2df4c69..ada655fa9 100644
--- a/tex/context/base/mkiv/tabl-ntb.mkxl
+++ b/tex/context/base/mkiv/tabl-ntb.mkxl
@@ -1501,7 +1501,7 @@
\advance\scratchcounter\plusone}%
\fi
% cell
- \setbox\scratchbox\hbox attr \taggedattribute \attribute\taggedattribute \bgroup
+ \setbox\scratchbox\hbox attr \taggedattribute \c_attr_tagged \bgroup
\dotagTABLEsignal % maybe we need to add some packaging in this case
\tabl_ntb_get_txt{#1}{#2}%
\egroup
diff --git a/tex/context/base/mkiv/tabl-tbl.mkiv b/tex/context/base/mkiv/tabl-tbl.mkiv
index 434b26095..9fea15e83 100644
--- a/tex/context/base/mkiv/tabl-tbl.mkiv
+++ b/tex/context/base/mkiv/tabl-tbl.mkiv
@@ -2112,7 +2112,7 @@
\stoptabulatenoalign}
\def\spac_vspacing_no_topskip % use grouped
- {\attribute\skipcategoryattribute\plusten}
+ {\c_attr_skipcategory\plusten}
\unexpanded\def\tabl_tabulate_ML_second_indeed
{\tabl_tabulate_break_no
diff --git a/tex/context/base/mkiv/tabl-tbl.mkxl b/tex/context/base/mkiv/tabl-tbl.mkxl
index cacaa52bf..8e4e45b9c 100644
--- a/tex/context/base/mkiv/tabl-tbl.mkxl
+++ b/tex/context/base/mkiv/tabl-tbl.mkxl
@@ -2114,7 +2114,7 @@
\stoptabulatenoalign}
\def\spac_vspacing_no_topskip % use grouped
- {\attribute\skipcategoryattribute\plusten}
+ {\c_attr_skipcategory\plusten}
\unexpanded\def\tabl_tabulate_ML_second_indeed
{\tabl_tabulate_break_no
diff --git a/tex/context/base/mkiv/tabl-xtb.mkvi b/tex/context/base/mkiv/tabl-xtb.mkvi
index e82795892..c5042a405 100644
--- a/tex/context/base/mkiv/tabl-xtb.mkvi
+++ b/tex/context/base/mkiv/tabl-xtb.mkvi
@@ -67,7 +67,7 @@
%
% cells: option=fixed : nils autostretch (not yet complete)
-% \setbox\scratchbox\hbox attr \taggedattribute \attribute\taggedattribute {...}
+% \setbox\scratchbox\hbox attr \taggedattribute \c_attr_tagged {...}
%
% \let\tsplitbeforeresult\donothing
% \let\tsplitafterresult \donothing
diff --git a/tex/context/base/mkiv/trac-vis.mkiv b/tex/context/base/mkiv/trac-vis.mkiv
index 14270214f..b261747c1 100644
--- a/tex/context/base/mkiv/trac-vis.mkiv
+++ b/tex/context/base/mkiv/trac-vis.mkiv
@@ -44,7 +44,7 @@
% no, but can become an option:
%
% \appendtoks
-% \attribute\visualattribute\attributeunsetvalue
+% \c_attr_visual\attributeunsetvalue
% \to \everybeforepagebody
%D We only provide box visualizers as they can come in handy for testing
@@ -162,7 +162,7 @@
\endgroup}
\unexpanded\def\resetvisualizers
- {\attribute\visualattribute\attributeunsetvalue}
+ {\c_attr_visual\attributeunsetvalue}
%D New (these might also be a visualizers):
diff --git a/tex/context/base/mkiv/typo-brk.mkiv b/tex/context/base/mkiv/typo-brk.mkiv
index 6071221dd..23ab414fe 100644
--- a/tex/context/base/mkiv/typo-brk.mkiv
+++ b/tex/context/base/mkiv/typo-brk.mkiv
@@ -64,7 +64,7 @@
\unexpanded\def\resetbreakpoints
{\exhyphenchar\hyphenasciicode % 2020.03.05
- \attribute\breakpointattribute\attributeunsetvalue}
+ \c_attr_breakpoint\attributeunsetvalue}
\definebreakpoints[compound]
diff --git a/tex/context/base/mkiv/typo-cap.mkiv b/tex/context/base/mkiv/typo-cap.mkiv
index 20e2eb7a9..8f7b6ae2c 100644
--- a/tex/context/base/mkiv/typo-cap.mkiv
+++ b/tex/context/base/mkiv/typo-cap.mkiv
@@ -298,9 +298,9 @@
%
% \definestartstop[randomized][\c!before=\dosetattribute{case}{8},\c!after=]
-% \unexpanded\def\randomizetext{\groupedcommand{\attribute\caseattribute\pluseight}{}}
+% \unexpanded\def\randomizetext{\groupedcommand{\c_attr_case\pluseight}{}}
-\unexpanded\def\randomizetext{\triggergroupedcommand{\attribute\caseattribute\pluseight}}
+\unexpanded\def\randomizetext{\triggergroupedcommand{\c_attr_case\pluseight}}
\definestartstop[randomized][\c!before=\dosetattribute{case}{8},\c!after=]
diff --git a/tex/context/base/mkiv/typo-cln.mkiv b/tex/context/base/mkiv/typo-cln.mkiv
index efc278cfa..bdda19424 100644
--- a/tex/context/base/mkiv/typo-cln.mkiv
+++ b/tex/context/base/mkiv/typo-cln.mkiv
@@ -27,7 +27,7 @@
{\clf_setcharactercleaning{#1}} % also accepts "reset"
% \appendtoks
-% \attribute\cleanerattribute\attributeunsetvalue
+% \c_attr_cleaner\attributeunsetvalue
% \to \everyforgetall
\protect \endinput
diff --git a/tex/context/base/mkiv/typo-dig.mkiv b/tex/context/base/mkiv/typo-dig.mkiv
index 0f957fbc1..26e35c199 100644
--- a/tex/context/base/mkiv/typo-dig.mkiv
+++ b/tex/context/base/mkiv/typo-dig.mkiv
@@ -42,7 +42,7 @@
{\clf_setdigitsmanipulation{#1}}
\unexpanded\def\resetdigitsmanipulation
- {\attribute\digitsattribute\attributeunsetvalue}
+ {\c_attr_digits\attributeunsetvalue}
\appendtoks
\resetdigitsmanipulation
diff --git a/tex/context/base/mkiv/typo-dir.mkiv b/tex/context/base/mkiv/typo-dir.mkiv
index 7449a7053..d9fb3b050 100644
--- a/tex/context/base/mkiv/typo-dir.mkiv
+++ b/tex/context/base/mkiv/typo-dir.mkiv
@@ -45,7 +45,7 @@
% is in fact:
\unexpanded\def\resetdirection
- {\attribute\directionsattribute\attributeunsetvalue}
+ {\c_attr_directions\attributeunsetvalue}
\newconstant\directionsbidimode % this one might become pivate
diff --git a/tex/context/base/mkiv/typo-drp.mkiv b/tex/context/base/mkiv/typo-drp.mkiv
index 25b006b2f..6ed7e8bfe 100644
--- a/tex/context/base/mkiv/typo-drp.mkiv
+++ b/tex/context/base/mkiv/typo-drp.mkiv
@@ -22,7 +22,7 @@
\definesystemattribute[initial][public]
\appendtoks
- \attribute\initialattribute\attributeunsetvalue
+ \c_attr_initial\attributeunsetvalue
\to \everyforgetall
%D For the moment here: dropped caps redone. In addition to the
@@ -105,13 +105,13 @@
distance \dimexpr\initialparameter\c!distance\relax
hoffset \dimexpr\initialparameter\c!hoffset\relax
voffset \scratchvoffset
- ma \attribute\colormodelattribute
- ca \attribute\colorattribute
- ta \attribute\transparencyattribute
+ ma \c_attr_colormodel
+ ca \c_attr_color
+ ta \c_attr_transparency
font \fontid\font
dynamic \font_dynamic_value % it's a bit over the top to support this here
\relax
- \attribute\initialattribute\plusone
+ \c_attr_initial\plusone
\initialparameter\c!text
\endgroup
\glet\typo_initial_handle\relax}
diff --git a/tex/context/base/mkiv/typo-fkr.mkiv b/tex/context/base/mkiv/typo-fkr.mkiv
index 7444db511..ec1b2907f 100644
--- a/tex/context/base/mkiv/typo-fkr.mkiv
+++ b/tex/context/base/mkiv/typo-fkr.mkiv
@@ -29,7 +29,7 @@
{\clf_setextrafontkerns{#1}}
\unexpanded\def\resetextrafontkerns
- {\attribute\extrafontkernattribute\attributeunsetvalue}
+ {\c_attr_extrafontkern\attributeunsetvalue}
\appendtoks
\resetextrafontkerns
diff --git a/tex/context/base/mkiv/typo-fln.mkiv b/tex/context/base/mkiv/typo-fln.mkiv
index 6cca39f91..64ec092d6 100644
--- a/tex/context/base/mkiv/typo-fln.mkiv
+++ b/tex/context/base/mkiv/typo-fln.mkiv
@@ -55,7 +55,7 @@
\definesystemattribute[firstline][public]
\appendtoks
- \attribute\firstlineattribute\attributeunsetvalue
+ \c_attr_firstline\attributeunsetvalue
\to \everyforgetall
\installcorenamespace {firstline}
@@ -81,9 +81,9 @@
\usefirstlinestyleandcolor\c!style\c!color
\clf_setfirstline
alternative {\firstlineparameter\c!alternative}%
- ma \attribute\colormodelattribute
- ca \attribute\colorattribute
- ta \attribute\transparencyattribute
+ ma \c_attr_colormodel
+ ca \c_attr_color
+ ta \c_attr_transparency
n \numexpr\firstlineparameter\c!n\relax
font \fontid\font
dynamic \font_dynamic_value
diff --git a/tex/context/base/mkiv/typo-itc.mkvi b/tex/context/base/mkiv/typo-itc.mkvi
index 5aeb67239..312a2efb4 100644
--- a/tex/context/base/mkiv/typo-itc.mkvi
+++ b/tex/context/base/mkiv/typo-itc.mkvi
@@ -35,7 +35,7 @@
\fi
\unexpanded\def\italiccorrection
- {\ifnum\attribute\italicsattribute<\plusone\normalitaliccorrection\fi}
+ {\ifnum\c_attr_italics<\plusone\normalitaliccorrection\fi}
\let\/\italiccorrection
@@ -57,7 +57,7 @@
{\clf_setupitaliccorrection{#settings}}
\appendtoks
- \attribute\italicsattribute\attributeunsetvalue
+ \c_attr_italics\attributeunsetvalue
\to \everymathematics
\protect \endinput
diff --git a/tex/context/base/mkiv/typo-krn.mkiv b/tex/context/base/mkiv/typo-krn.mkiv
index fedbce4d1..80c71932f 100644
--- a/tex/context/base/mkiv/typo-krn.mkiv
+++ b/tex/context/base/mkiv/typo-krn.mkiv
@@ -41,7 +41,7 @@
\clf_setcharacterkerning{\characterkerningparameter\c!factor}}
\unexpanded\def\resetcharacterkerning % fast one
- {\attribute\kernattribute\attributeunsetvalue}
+ {\c_attr_kern\attributeunsetvalue}
\appendtoks
\resetcharacterkerning
diff --git a/tex/context/base/mkiv/typo-lig.mkiv b/tex/context/base/mkiv/typo-lig.mkiv
index 6171441d6..ea1b27b73 100644
--- a/tex/context/base/mkiv/typo-lig.mkiv
+++ b/tex/context/base/mkiv/typo-lig.mkiv
@@ -24,7 +24,7 @@
\unexpanded\def\noligature#1%
{\dontleavehmode
\begingroup
- \attribute\noligatureattribute\plusone
+ \c_attr_noligature\plusone
#1%
\endgroup}
diff --git a/tex/context/base/mkiv/typo-ovl.mkiv b/tex/context/base/mkiv/typo-ovl.mkiv
index 025ae8a8f..767ba3569 100644
--- a/tex/context/base/mkiv/typo-ovl.mkiv
+++ b/tex/context/base/mkiv/typo-ovl.mkiv
@@ -55,7 +55,7 @@
{\ifcsname\??overloads#1\endcsname\else
\typo_overloads_define{#1}%
\fi
- \attribute\overloadsattribute\csname\??overloads#1\endcsname}
+ \c_attr_overloads\csname\??overloads#1\endcsname}
\unexpanded\def\registeroverloads[#1]%
{\ifcsname\??overloads#1\endcsname\else
@@ -63,7 +63,7 @@
\fi}
\unexpanded\def\resetoverloads
- {\overloadsattribute\attributeunsetvalue}
+ {\c_attr_overloads\attributeunsetvalue}
%D We hook this into the replacement module, probably the only place where it makes
%D sense. Here is an adapted version of an example:
diff --git a/tex/context/base/mkiv/typo-pnc.mkiv b/tex/context/base/mkiv/typo-pnc.mkiv
index 39d0c85f4..f2c588912 100644
--- a/tex/context/base/mkiv/typo-pnc.mkiv
+++ b/tex/context/base/mkiv/typo-pnc.mkiv
@@ -39,7 +39,7 @@
{\clf_setperiodkerning{\periodkerningparameter\c!factor}}
\unexpanded\def\resetperiodkerning % fast one
- {\attribute\periodkernattribute\attributeunsetvalue}
+ {\c_attr_periodkern\attributeunsetvalue}
\appendtoks
\resetperiodkerning
diff --git a/tex/context/base/mkiv/typo-rep.mkiv b/tex/context/base/mkiv/typo-rep.mkiv
index df8408999..71ab9ffa9 100644
--- a/tex/context/base/mkiv/typo-rep.mkiv
+++ b/tex/context/base/mkiv/typo-rep.mkiv
@@ -41,7 +41,7 @@
{\clf_setcharacterstripping{#1}}
\unexpanded\def\resetcharacterstripping
- {\attribute\strippingattribute\attributeunsetvalue}
+ {\c_attr_stripping\attributeunsetvalue}
% maybe .. this might disappear, but is handy for testing
diff --git a/tex/context/base/mkiv/typo-spa.mkiv b/tex/context/base/mkiv/typo-spa.mkiv
index fc73ef021..682830150 100644
--- a/tex/context/base/mkiv/typo-spa.mkiv
+++ b/tex/context/base/mkiv/typo-spa.mkiv
@@ -58,7 +58,7 @@
{\clf_setcharacterspacing{#1}}
\unexpanded\def\resetcharacterspacing % fast one
- {\attribute\spacingattribute\attributeunsetvalue}
+ {\c_attr_spacing\attributeunsetvalue}
\appendtoks
\resetcharacterspacing
diff --git a/tex/context/base/mkiv/typo-tal.mkiv b/tex/context/base/mkiv/typo-tal.mkiv
index 33e071e75..36e78aee0 100644
--- a/tex/context/base/mkiv/typo-tal.mkiv
+++ b/tex/context/base/mkiv/typo-tal.mkiv
@@ -56,10 +56,10 @@
% D
% D \typebuffer \blank \getbuffer \blank
-\unexpanded\def\signalcharacteralign #1#2{\attribute\characteralignattribute\numexpr#1*\maxcardminusone+#2\relax} % 0xFFFF
+\unexpanded\def\signalcharacteralign #1#2{\c_attr_characteralign\numexpr#1*\maxcardminusone+#2\relax} % 0xFFFF
\unexpanded\def\setcharacteralign #1#2{\clf_setcharacteralign#1{#2}}
\unexpanded\def\resetcharacteralign {\clf_resetcharacteralign}
-\unexpanded\def\nocharacteralign {\attribute\characteralignattribute\attributeunsetvalue}
+\unexpanded\def\nocharacteralign {\c_attr_characteralign\attributeunsetvalue}
\unexpanded\def\setcharacteraligndetail#1#2#3#4{\clf_setcharacteraligndetail#1{#2}#3#4\relax}
%D Mostly downward compatible:
diff --git a/tex/generic/context/luatex/luatex-fonts-merged.lua b/tex/generic/context/luatex/luatex-fonts-merged.lua
index 6c990f409..68b47494a 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 : c:/data/develop/context/sources/luatex-fonts-merged.lua
-- parent file : c:/data/develop/context/sources/luatex-fonts.lua
--- merge date : 2020-06-19 11:04
+-- merge date : 2020-06-20 13:33
do -- begin closure to overcome local limits and interference