summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--scripts/context/ruby/base/kpse.rb167
-rw-r--r--scripts/context/ruby/base/tex.rb53
-rw-r--r--scripts/context/ruby/ctxtools.rb2
-rw-r--r--scripts/context/ruby/newtexexec.rb5
-rw-r--r--tex/context/base/colo-ini.tex26
-rw-r--r--tex/context/base/context.tex2
-rw-r--r--tex/context/base/core-con.tex30
-rw-r--r--tex/context/base/core-fil.tex2
-rw-r--r--tex/context/base/core-fnt.tex34
-rw-r--r--tex/context/base/core-nav.tex2
-rw-r--r--tex/context/base/core-not.tex14
-rw-r--r--tex/context/base/core-pos.tex18
-rw-r--r--tex/context/base/core-ref.tex30
-rw-r--r--tex/context/base/core-rul.tex66
-rw-r--r--tex/context/base/core-spa.tex310
-rw-r--r--tex/context/base/core-ver.tex2
-rw-r--r--tex/context/base/enco-def.tex3
-rw-r--r--tex/context/base/enco-ini.tex19
-rw-r--r--tex/context/base/font-ini.tex49
-rw-r--r--tex/context/base/hand-ini.tex2
-rw-r--r--tex/context/base/lang-ini.tex8
-rw-r--r--tex/context/base/lang-lab.tex10
-rw-r--r--tex/context/base/lang-sla.tex88
-rw-r--r--tex/context/base/mult-con.tex5
-rw-r--r--tex/context/base/page-bck.tex2
-rw-r--r--tex/context/base/page-ini.tex18
-rw-r--r--tex/context/base/page-lay.tex14
-rw-r--r--tex/context/base/page-lin.tex102
-rw-r--r--tex/context/base/page-log.tex4
-rw-r--r--tex/context/base/page-mak.tex6
-rw-r--r--tex/context/base/page-mar.tex8
-rw-r--r--tex/context/base/page-txt.tex26
-rw-r--r--tex/context/base/regi-lat.tex22
-rw-r--r--tex/context/base/s-mod-00.tex10
-rw-r--r--tex/context/base/spec-fdf.tex2
-rw-r--r--tex/context/base/supp-fun.tex2
-rw-r--r--tex/context/base/supp-pdf.tex5
-rw-r--r--tex/context/base/supp-ran.tex16
-rw-r--r--tex/context/base/symb-ini.tex14
-rw-r--r--tex/context/base/syst-ext.tex2
-rw-r--r--tex/context/base/syst-prm.tex24
-rw-r--r--tex/context/base/verb-ini.tex6
-rw-r--r--tex/context/base/x-set-02.tex2
-rw-r--r--tex/context/base/xtag-ini.tex6
-rw-r--r--tex/context/interface/keys-cz.xml5
-rw-r--r--tex/context/interface/keys-de.xml5
-rw-r--r--tex/context/interface/keys-en.xml5
-rw-r--r--tex/context/interface/keys-it.xml5
-rw-r--r--tex/context/interface/keys-nl.xml5
-rw-r--r--tex/context/interface/keys-ro.xml5
50 files changed, 755 insertions, 513 deletions
diff --git a/scripts/context/ruby/base/kpse.rb b/scripts/context/ruby/base/kpse.rb
index a5e2ecac2..bfd2baa30 100644
--- a/scripts/context/ruby/base/kpse.rb
+++ b/scripts/context/ruby/base/kpse.rb
@@ -9,10 +9,14 @@
# www : www.pragma-ade.com
# rename this one to environment
+#
+# todo: web2c vs miktex module and include in kpse
require 'rbconfig'
# beware $engine is lowercase in kpse
+#
+# miktex has mem|fmt|base paths
module Kpse
@@ -28,21 +32,7 @@ module Kpse
@@crossover = true
@@mswindows = Config::CONFIG['host_os'] =~ /mswin/
- # check first in bin path
-
- ENV['PATH'].split(File::PATH_SEPARATOR).each do |path|
- @@distribution = 'miktex' if path =~ /miktex/o
- end
-
- # if @@crossover then
- # ENV.keys.each do |k|
- # case k
- # when /\_CTX\_KPSE\_V\_(.*?)\_/io then @@located[$1] = ENV[k].dup
- # when /\_CTX\_KPSE\_P\_(.*?)\_/io then @@paths [$1] = ENV[k].dup.split(';')
- # when /\_CTX\_KPSE\_S\_(.*?)\_/io then @@scripts[$1] = ENV[k].dup
- # end
- # end
- # end
+ @@distribution = 'miktex' if ENV['PATH'] =~ /miktex[\\\/]bin/o
if @@crossover then
ENV.keys.each do |k|
@@ -54,16 +44,24 @@ module Kpse
end
end
+ def Kpse.distribution
+ @@distribution
+ end
+
+ def Kpse.miktex?
+ @@distribution == 'miktex'
+ end
+
+ def Kpse.web2c?
+ @@distribution == 'web2c'
+ end
+
def Kpse.inspect
@@located.keys.sort.each do |k| puts("located : #{k} -> #{@@located[k]}\n") end
@@paths .keys.sort.each do |k| puts("paths : #{k} -> #{@@paths [k]}\n") end
@@scripts.keys.sort.each do |k| puts("scripts : #{k} -> #{@@scripts[k]}\n") end
end
- def Kpse.distribution
- @@distribution
- end
-
def Kpse.found(filename, progname=nil, format=nil)
begin
tag = Kpse.key(filename) # all
@@ -145,97 +143,78 @@ module Kpse
# todo: miktex
- unless @@paths.key?(engine) then
- # savedengine = ENV['engine']
- if ENV['TEXFORMATS'] && ! ENV['TEXFORMATS'].empty? then
- # make sure that we have a lowercase entry
- ENV['TEXFORMATS'] = ENV['TEXFORMATS'].sub(/\$engine/io,"\$engine")
- # well, we will append anyway, so we could also strip it
- # ENV['TEXFORMATS'] = ENV['TEXFORMATS'].sub(/\$engine/io,"")
- end
- # use modern method
- if enginepath then
- formatpath = run("--engine=#{engine} --show-path=fmt")
- else
- # ENV['engine'] = engine if engine
- formatpath = run("--show-path=fmt")
- end
- # use ancient method
- if formatpath.empty? then
+ if miktex? then
+ return '.'
+ else
+ unless @@paths.key?(engine) then
+ # savedengine = ENV['engine']
+ if ENV['TEXFORMATS'] && ! ENV['TEXFORMATS'].empty? then
+ # make sure that we have a lowercase entry
+ ENV['TEXFORMATS'] = ENV['TEXFORMATS'].sub(/\$engine/io,"\$engine")
+ # well, we will append anyway, so we could also strip it
+ # ENV['TEXFORMATS'] = ENV['TEXFORMATS'].sub(/\$engine/io,"")
+ end
+ # use modern method
if enginepath then
- if @@mswindows then
- formatpath = run("--engine=#{engine} --expand-path=\$TEXFORMATS")
- else
- formatpath = run("--engine=#{engine} --expand-path=\\\$TEXFORMATS")
- end
+ formatpath = run("--engine=#{engine} --show-path=fmt")
+ else
+ # ENV['engine'] = engine if engine
+ formatpath = run("--show-path=fmt")
end
- # either no enginepath or failed run
+ # use ancient method
if formatpath.empty? then
- if @@mswindows then
- formatpath = run("--expand-path=\$TEXFORMATS")
- else
- formatpath = run("--expand-path=\\\$TEXFORMATS")
+ if enginepath then
+ if @@mswindows then
+ formatpath = run("--engine=#{engine} --expand-path=\$TEXFORMATS")
+ else
+ formatpath = run("--engine=#{engine} --expand-path=\\\$TEXFORMATS")
+ end
+ end
+ # either no enginepath or failed run
+ if formatpath.empty? then
+ if @@mswindows then
+ formatpath = run("--expand-path=\$TEXFORMATS")
+ else
+ formatpath = run("--expand-path=\\\$TEXFORMATS")
+ end
end
end
- end
- # locate writable path
- if ! formatpath.empty? then
- formatpath.split(File::PATH_SEPARATOR).each do |fp|
- fp.gsub!(/\\/,'/')
- # remove funny patterns
- fp.sub!(/^!!/,'')
- fp.sub!(/\/+$/,'')
- fp.sub!(/unsetengine/,if enginepath then engine else '' end)
- if ! fp.empty? && (fp != '.') then
- # strip (possible engine) and test for writeability
- fpp = fp.sub(/#{engine}\/*$/,'')
- if FileTest.directory?(fpp) && FileTest.writable?(fpp) then
- # use this path
- formatpath = fp.dup
- break
+ # locate writable path
+ if ! formatpath.empty? then
+ formatpath.split(File::PATH_SEPARATOR).each do |fp|
+ fp.gsub!(/\\/,'/')
+ # remove funny patterns
+ fp.sub!(/^!!/,'')
+ fp.sub!(/\/+$/,'')
+ fp.sub!(/unsetengine/,if enginepath then engine else '' end)
+ if ! fp.empty? && (fp != '.') then
+ # strip (possible engine) and test for writeability
+ fpp = fp.sub(/#{engine}\/*$/,'')
+ if FileTest.directory?(fpp) && FileTest.writable?(fpp) then
+ # use this path
+ formatpath = fp.dup
+ break
+ end
end
end
end
+ # fall back to current path
+ formatpath = '.' if formatpath.empty? || ! FileTest.writable?(formatpath)
+ # append engine but prevent duplicates
+ formatpath = File.join(formatpath.sub(/\/*#{engine}\/*$/,''), engine) if enginepath
+ begin File.makedirs(formatpath) ; rescue ; end ;
+ setpath(engine,formatpath)
+ # ENV['engine'] = savedengine
end
- # fall back to current path
- formatpath = '.' if formatpath.empty? || ! FileTest.writable?(formatpath)
- # append engine but prevent duplicates
- formatpath = File.join(formatpath.sub(/\/*#{engine}\/*$/,''), engine) if enginepath
- begin File.makedirs(formatpath) ; rescue ; end ;
- setpath(engine,formatpath)
- # ENV['engine'] = savedengine
+ return @@paths[engine].first
end
- return @@paths[engine].first
end
def Kpse.update
- case @@distribution
- when 'miktex' then
- system('initexmf --update-fndb')
- else
- # always mktexlsr anyway
-
- end
+ system('initexmf -u') if Kpse.miktex?
system('mktexlsr')
end
- def Kpse.distribution
- ENV['PATH'].split(File::PATH_SEPARATOR).each do |path|
- if path =~ /miktex/ then
- return 'miktex'
- end
- end
- return 'web2c'
- end
-
- def Kpse.miktex?
- distribution == 'miktex'
- end
-
- def Kpse.web2c?
- distribution == 'web2c'
- end
-
# engine support is either broken of not implemented in some
# distributions, so we need to take care of it ourselves (without
# delays due to kpse calls); there can be many paths in the string
diff --git a/scripts/context/ruby/base/tex.rb b/scripts/context/ruby/base/tex.rb
index baa70d749..8ff7d682f 100644
--- a/scripts/context/ruby/base/tex.rb
+++ b/scripts/context/ruby/base/tex.rb
@@ -409,8 +409,20 @@ class TEX
end
end
- def iniflag() "--ini" end
- def tcxflag() "--translate-file=natural.tcx" end
+ def iniflag() # should go to kpse and kpse should become texenv
+ if Kpse.miktex? then
+ "-initialize"
+ else
+ "--ini"
+ end
+ end
+ def tcxflag(file="natural.tcx")
+ if Kpse.miktex? then
+ "-tcx=#{file}"
+ else
+ "--translate-file=#{file}"
+ end
+ end
def filestate(file)
File.mtime(file).strftime("%d/%m/%Y %H:%M:%S")
@@ -655,7 +667,7 @@ class TEX
]
def scantexpreamble(filename)
- if tex = File.open(filename) then
+ if FileTest.file?(filename) and tex = File.open(filename) then
while str = tex.gets.chomp do
if str =~ /^\%\s*(.*)/o then
vars = Hash.new
@@ -675,7 +687,7 @@ class TEX
end
def scantexcontent(filename)
- if tex = File.open(filename) then
+ if FileTest.file?(filename) and tex = File.open(filename) then
while str = tex.gets do
case str.chomp
when /^\%/o then
@@ -719,12 +731,12 @@ class TEX
fname = File.unsuffixed(filename)
rname = File.unsuffixed(resultname)
if ! rname.empty? && (rname != fname) then
- report("outputfile #{result}")
+ report("outputfile #{rname}")
['tuo','log','dvi','pdf'].each do |s|
File.silentrename(File.suffixed(fname,s),File.suffixed('texexec',s))
end
['tuo'].each do |s|
- File.silentrename(File.suffixed(rname,s),File.suffixed(fname,s)) if FileTest(suffixed(rname,s))
+ File.silentrename(File.suffixed(rname,s),File.suffixed(fname,s)) if FileTest.file?(File.suffixed(rname,s))
end
end
end
@@ -1048,16 +1060,20 @@ class TEX
return false
end
- def runtexutil(filename=[], options=['--ref','--ij','--high'])
- begin
- filename.each do |fname|
- logger = Logger.new('TeXUtil')
- if tu = TeXUtil::Converter.new(logger) and tu.loaded(fname) then
- tu.saved if tu.processed
+ def runtexutil(filename=[], options=['--ref','--ij','--high'], old=false)
+ filename.each do |fname|
+ if old then
+ Kpse.runscript('texutil',fname,options)
+ else
+ begin
+ logger = Logger.new('TeXUtil')
+ if tu = TeXUtil::Converter.new(logger) and tu.loaded(fname) then
+ tu.saved if tu.processed
+ end
+ rescue
+ Kpse.runscript('texutil',fname,options)
end
end
- rescue
- Kpse.runscript('texutil',filename,options)
end
end
@@ -1131,8 +1147,9 @@ class TEX
suffix = getvariable('suffix')
result = getvariable('result')
- runonce = getvariable('once')
- finalrun = getvariable('final') || (getvariable('arrange') && ! getvariable('noarrange'))
+ runonce = getvariable('once')
+ finalrun = getvariable('final') || (getvariable('arrange') && ! getvariable('noarrange'))
+ globalfile = getvariable('globalfile')
if getvariable('autopath') then
jobname = File.basename(jobname)
@@ -1167,9 +1184,9 @@ class TEX
jobsuffix = makestubfile(jobname,jobsuffix,forcexml) if dummyfile || forcexml
- if getvariable('globalfile') || FileTest.file?(File.suffixed(jobname,jobsuffix)) then
+ if globalfile || FileTest.file?(File.suffixed(jobname,jobsuffix)) then
- unless dummyfile # we don't need this for xml
+ if not dummyfile and not globalfile then
scantexpreamble(File.suffixed(jobname,jobsuffix))
scantexcontent(File.suffixed(jobname,jobsuffix)) if getvariable('texformats').standard?
end
diff --git a/scripts/context/ruby/ctxtools.rb b/scripts/context/ruby/ctxtools.rb
index c89b1a30b..d55f27065 100644
--- a/scripts/context/ruby/ctxtools.rb
+++ b/scripts/context/ruby/ctxtools.rb
@@ -457,7 +457,7 @@ class Commands
end
- def purgeall
+ def purgeallfiles
purgefiles(true) # for old times sake
end
diff --git a/scripts/context/ruby/newtexexec.rb b/scripts/context/ruby/newtexexec.rb
index 0d9602312..9d9c880bd 100644
--- a/scripts/context/ruby/newtexexec.rb
+++ b/scripts/context/ruby/newtexexec.rb
@@ -137,7 +137,7 @@ class Commands
files = @commandline.arguments.sort
if files.length > 0 then
if f = File.open(job.tempfilename('tex'),'w') then
- job.runtexutil(files,"--figures")
+ job.runtexutil(files,"--figures", true)
figures = @commandline.checkedoption('method', 'a').downcase
paperoffset = @commandline.checkedoption('paperoffset', '0pt')
backspace = @commandline.checkedoption('backspace', '1.5cm')
@@ -193,7 +193,8 @@ class Commands
fnames.each do |ffname|
if msuffixes.include?(File.splitname(ffname)[1]) && FileTest.file?(ffname) then
if mod = File.open(job.tempfilename('tex'),'w') then
- job.runtexutil(ffname,"--documents")
+ # will become a call to ctxtools
+ job.runtexutil(ffname,"--documents", true)
if ted = File.silentopen(File.suffixed(ffname,'ted')) then
firstline = ted.gets
if firstline =~ /interface=/o then
diff --git a/tex/context/base/colo-ini.tex b/tex/context/base/colo-ini.tex
index b9fa01cfb..9748afe02 100644
--- a/tex/context/base/colo-ini.tex
+++ b/tex/context/base/colo-ini.tex
@@ -196,7 +196,7 @@
%D We will enable users to specify colors in \cap{RGB} and
%D \cap{CMYK} color spaces or gray scales using
%D
-%D \showsetup{\y!definecolor}
+%D \showsetup{definecolor}
%D
%D For example:
%D
@@ -567,7 +567,7 @@
%D where \type{\f!colorprefix} is \unprotect {\tttf \f!colorprefix}.
%D Loading such a file is done by \protect
%D
-%D \showsetup{\y!setupcolor}
+%D \showsetup{setupcolor}
%D
%D Some default colors are specified in \type{colo-rgb.tex},
%D which is loaded into the format by:
@@ -1706,7 +1706,7 @@
%D The more save method, the one that saves the current color
%D state and returns to this state afterward, is activated by:
%D
-%D \showsetup{\y!startcolor}
+%D \showsetup{startcolor}
\def\startcolor
{\ifincolor
@@ -2015,8 +2015,8 @@
%D
%D This leaves the simple color command:
%D
-%D \showsetup{\y!color}
-%D \showsetup{\y!graycolor}
+%D \showsetup{color}
+%D \showsetup{graycolor}
%D
%D Which can be used straightforward: \color[green]{green as gras}.
%D We want color support to be similar to font support and
@@ -2203,7 +2203,7 @@
%D
%D It's formal definition is:
%D
-%D \showsetup{\y!definepalet}
+%D \showsetup{definepalet}
%D
%D Visualized, such a palet looks like:
%D
@@ -2261,7 +2261,7 @@
%D Colors are taken from the current palet, if defined.
%D Setting the current palet is done by:
%D
-%D \showsetup{\y!setuppalet}
+%D \showsetup{setuppalet}
\let\currentpalet\empty
@@ -2291,7 +2291,7 @@
%D
%D This commands is defined as:
%D
-%D \showsetup{\y!showpalet}
+%D \showsetup{showpalet}
\fetchruntimecommand \showpalet {\f!colorprefix\s!run}
@@ -2316,7 +2316,7 @@
%D
%D In such a color group colors are numbered from~$1$ to~$n$.
%D
-%D \showsetup{\y!definecolorgroup}
+%D \showsetup{definecolorgroup}
%D
%D This kind of specification is not only more compact than
%D defining each color separate, it also loads faster and takes
@@ -2369,7 +2369,7 @@
%D
%D which uses:
%D
-%D \showsetup{\y!showcolorgroup}
+%D \showsetup{showcolorgroup}
\fetchruntimecommand \showcolorgroup {\f!colorprefix\s!run}
@@ -2428,7 +2428,7 @@
%D
%D The formal definition is:
%D
-%D \showsetup{\y!comparepalet}
+%D \showsetup{comparepalet}
\fetchruntimecommand \comparepalet {\f!colorprefix\s!run}
@@ -2451,7 +2451,7 @@
%D
%D this commands are defined as:
%D
-%D \showsetup{\y!comparecolorgroup}
+%D \showsetup{comparecolorgroup}
\fetchruntimecommand \comparecolorgroup {\f!colorprefix\s!run}
@@ -2467,7 +2467,7 @@
%D
%D Where \type{name} for instance can be \type{rgb}.
%D
-%D \showsetup{\y!showcolor}
+%D \showsetup{showcolor}
\fetchruntimecommand \showcolor {\f!colorprefix\s!run}
diff --git a/tex/context/base/context.tex b/tex/context/base/context.tex
index 9d1771f4d..481fcffbe 100644
--- a/tex/context/base/context.tex
+++ b/tex/context/base/context.tex
@@ -31,7 +31,7 @@
%D 2004.8.30 the low level interface is english. Watch out and adapt
%D your styles an modules.
-\def\contextversion{2005.07.13}
+\def\contextversion{2005.07.20}
%D Welcome to the main module. When this module is ran through
%D \type{initex} or \type {tex -i} or \type {whatevertex} using
diff --git a/tex/context/base/core-con.tex b/tex/context/base/core-con.tex
index 97ff27801..364ed89f0 100644
--- a/tex/context/base/core-con.tex
+++ b/tex/context/base/core-con.tex
@@ -30,7 +30,7 @@
%D rid of unwanted braces. For the savety we also define a
%D non||sence uppercase alternative.
%D
-%D \showsetup{\y!numbers}
+%D \showsetup{numbers}
%D
%D \starttyping
%D \def\numbers#1{\number#1}
@@ -52,8 +52,8 @@
%D of course be programmed in \TEX\ itself, but I guess Knuth
%D found the programming trick worth presenting.
%D
-%D \showsetup{\y!romannumerals}
-%D \showsetup{\y!Romannumerals}
+%D \showsetup{romannumerals}
+%D \showsetup{Romannumerals}
%D
%D When upcasing the result, we just follow the text book rules
%D of expansion. Later on we'll see some more uppercase tricks.
@@ -105,8 +105,8 @@
%D
%D But we prefer a simpel \type{\case}.
%D
-%D \showsetup{\y!character}
-%D \showsetup{\y!Character}
+%D \showsetup{character}
+%D \showsetup{Character}
\def\unknowncharacter{-} % else in lists \relax
@@ -133,8 +133,8 @@
%D macros. This time we just count on: $\cdots$~x, y, z, aa,
%D ab, ac~$\cdots$.
%D
-%D \showsetup{\y!characters}
-%D \showsetup{\y!Characters}
+%D \showsetup{characters}
+%D \showsetup{Characters}
\beginTEX
@@ -316,8 +316,8 @@
%D We redefine the \TEX\ primitive \type{\month} as:
%D
-%D \showsetup{\y!month}
-%D \showsetup{\y!MONTH}
+%D \showsetup{month}
+%D \showsetup{MONTH}
\def\month
{\doconvertmonth}
@@ -419,8 +419,8 @@
%D The first one is sort of redundant. It takes the day
%D number argument.
%D
-%D \showsetup{\y!weekday}
-%D \showsetup{\y!WEEKDAY}
+%D \showsetup{weekday}
+%D \showsetup{WEEKDAY}
\def\weekday
{\doconvertday}
@@ -489,7 +489,7 @@
%D We use these conversion macros in the date formatting
%D macro:
%D
-%D \showsetup{\y!currentdate}
+%D \showsetup{currentdate}
%D
%D This macro takes care of proper spacing and delivers for
%D instance:
@@ -522,7 +522,7 @@
%D When no argument is passed, the current date is given as
%D specified per language (using \type{\installlanguage}).
%D
-%D \showsetup{\y!currentdate}
+%D \showsetup{currentdate}
%D
%D \startbuffer
%D \date
@@ -724,8 +724,8 @@
%D Conversion involves the macros that we implemented earlier
%D in this module.
%D
-%D \showsetup{\y!defineconversion}
-%D \showsetup{\y!convertnumber}
+%D \showsetup{defineconversion}
+%D \showsetup{convertnumber}
%D
%D We can feed this command with conversion macros as well as
%D a set of conversion symbols. Both need a bit different
diff --git a/tex/context/base/core-fil.tex b/tex/context/base/core-fil.tex
index f0fadc5a2..0663a6a8d 100644
--- a/tex/context/base/core-fil.tex
+++ b/tex/context/base/core-fil.tex
@@ -145,7 +145,7 @@
%D separate modules, e.g. typesetting of chemical structure
%D formulas. These modules are loaded by:
%D
-%D \showsetup{\y!usemodule}
+%D \showsetup{usemodule}
%D
%D More information on the specific modules can be found in
%D their dedicated manuals. We use \type {\next} so that we
diff --git a/tex/context/base/core-fnt.tex b/tex/context/base/core-fnt.tex
index 7d0fe57a5..99229b946 100644
--- a/tex/context/base/core-fnt.tex
+++ b/tex/context/base/core-fnt.tex
@@ -71,11 +71,11 @@
%D This at first sight unusual capitilization is completely
%D legal.
%D
-%D \showsetup{\y!smallcapped}
-%D \showsetup{\y!notsmallcapped}
-%D \showsetup{\y!CAPPED}
-%D \showsetup{\y!SmallCapped}
-%D \showsetup{\y!SmallCaps}
+%D \showsetup{smallcapped}
+%D \showsetup{notsmallcapped}
+%D \showsetup{CAPPED}
+%D \showsetup{SmallCapped}
+%D \showsetup{SmallCaps}
%D
%D The difference between pseudo and real caps is demonstrated
%D below:
@@ -216,10 +216,10 @@
%D \stoplines
%D \stopvoorbeeld
%D
-%D \showsetup{\y!Word}
-%D \showsetup{\y!Words}
-%D \showsetup{\y!WORD}
-%D \showsetup{\y!WORDS}
+%D \showsetup{Word}
+%D \showsetup{Words}
+%D \showsetup{WORD}
+%D \showsetup{WORDS}
\def\doWord#1%
{\bgroup
@@ -276,7 +276,7 @@
%D \getbuffer
%D \stopvoorbeeld
%D
-%D \showsetup{\y!stretched}
+%D \showsetup{stretched}
\def\stretched#1%
{\ifvmode\hbox to \hsize\else\ifinner\else\hbox\fi\fi
@@ -421,17 +421,17 @@
%D also supports nesting. The \type{$} keeps us in horizontal
%D mode and at the same time applies grouping.
%D
-%D \showsetup{\y!underbar}
-%D \showsetup{\y!underbars}
-%D \showsetup{\y!overbar}
-%D \showsetup{\y!overbars}
-%D \showsetup{\y!overstrike}
-%D \showsetup{\y!overstrikes}
+%D \showsetup{underbar}
+%D \showsetup{underbars}
+%D \showsetup{overbar}
+%D \showsetup{overbars}
+%D \showsetup{overstrike}
+%D \showsetup{overstrikes}
%D
%D Although underlining is ill advised, we permit some
%D alternatives, that can be set up by:
%D
-%D \showsetup{\y!setupunderbar}
+%D \showsetup{setupunderbar}
%D
%D The alternatives show up as
%D {\setupunderbar [alternativevariant=a]\underbar{alternative a}},
diff --git a/tex/context/base/core-nav.tex b/tex/context/base/core-nav.tex
index 3c47f885f..2f06b70a2 100644
--- a/tex/context/base/core-nav.tex
+++ b/tex/context/base/core-nav.tex
@@ -40,7 +40,7 @@
%D
%D The other settings are:
%D
-%D \showsetup{\y!setupinteraction}
+%D \showsetup{setupinteraction}
%D
%D In the special driver modules we introduced a switch that
%D forces page destinations (instead of named ones). We set
diff --git a/tex/context/base/core-not.tex b/tex/context/base/core-not.tex
index 5eaf7f7b9..eba5113da 100644
--- a/tex/context/base/core-not.tex
+++ b/tex/context/base/core-not.tex
@@ -47,7 +47,7 @@
%D We can influence footnote typesetting with the setup
%D command:
%D
-%D \showsetup{\y!setupfootnotes} % ! !
+%D \showsetup{setupfootnotes} % ! !
%D
%D It's sort of a custom to precede footnotes by a horizontal
%D rule and although fancy rules like
@@ -74,7 +74,7 @@
%D The next definitions indicate that we can frame the footnote
%D area. The footnotes themselves are treated as definitions.
%D
-%D \showsetup{\y!setupfootnotes}
+%D \showsetup{setupfootnotes}
\let\currentnote\v!footnote
@@ -429,7 +429,7 @@
%D A footnote can have a reference as optional argument and
%D therefore its formal specification looks like:
%D
-%D \showsetup{\y!footnote}
+%D \showsetup{footnote}
%D
%D This command has one optional command: the reference. By
%D saying \type{[-]} the number is omitted. The footnote
@@ -676,7 +676,7 @@
%D Refering to a note is accomplished by the rather short
%D command:
%D
-%D \showsetup{\y!note}
+%D \showsetup{note}
%D
%D This command is implemented rather straightforward as:
@@ -930,8 +930,8 @@
%D The next two macros can be used in for instance tables, as
%D we'll demonstrate later on.
%D
-%D \showsetup{\y!startlocalfootnotes}
-%D \showsetup{\y!placelocalfootnotes}
+%D \showsetup{startlocalfootnotes}
+%D \showsetup{placelocalfootnotes}
\def\defaultnotewidth{\makeupwidth}
@@ -1014,7 +1014,7 @@
%D user action is needed). Footnotes (endnotes) can be
%D placed by using
%D
-%D \showsetup{\y!placefootnotes}
+%D \showsetup{placefootnotes}
\def\placebottomnotes
{\processnotes\dodoplacenotes}
diff --git a/tex/context/base/core-pos.tex b/tex/context/base/core-pos.tex
index 0194f2a64..2b1bbb8e5 100644
--- a/tex/context/base/core-pos.tex
+++ b/tex/context/base/core-pos.tex
@@ -2711,3 +2711,21 @@
% \edef\righthdistance{\the\scratchdimen}}
\protect \endinput
+
+% todo 1: shift down option
+
+\startuseMPgraphic{mpos:par:columnset}
+ \iftracepositions show_multi_pars \else draw_multi_pars \fi ;
+ path p ; p := boundingbox currentpicture ;
+ currentpicture := currentpicture shifted (0,-StrutDepth/2) ;
+ setbounds currentpicture to p ;
+\stopuseMPgraphic
+
+\setupcolors[state=start]
+
+\definetextbackground[underline][location=text,alternative=1,background=,frame=off,distance=2pt]
+
+\definestartstop
+ [underline]
+ [before={\starttextbackground[underline]},
+ after=\stoptextbackground]
diff --git a/tex/context/base/core-ref.tex b/tex/context/base/core-ref.tex
index cab4ac342..fc5acc2f0 100644
--- a/tex/context/base/core-ref.tex
+++ b/tex/context/base/core-ref.tex
@@ -935,7 +935,7 @@
%D
%D Now is this is a handy feature or not?
%D
-%D \showsetup{\y!definereference}
+%D \showsetup{definereference}
%D
%D We can trace references by setting the next switch to
%D true.
@@ -2169,7 +2169,7 @@
\setglobalsystemreference \rt!exec \v!StopSound {stopsound}
\setglobalsystemreference \rt!exec \v!StopRendering {stoprendering}
\setglobalsystemreference \rt!exec \v!SubmitForm {submitform}
-\setglobalsystemreference \rt!exec \v!SwapViewer {swap}
+\setglobalsystemreference \rt!exec \v!ToggleViewer {toggle}
\setglobalsystemreference \rt!exec \v!ViewerHelp {help}
\setglobalsystemreference \rt!exec \v!HideField {hide}
\setglobalsystemreference \rt!exec \v!ShowField {show}
@@ -2214,7 +2214,7 @@
%D These settings are accomplished by:
%D
-%D \showsetup{\y!setupreferencing}
+%D \showsetup{setupreferencing}
%D
%D In interactive documents verbose references don't always
%D make sense (what is a page number in an unnumbered
@@ -2702,7 +2702,7 @@
%D previous macros are implemented using the goto
%D functionality.
%D
-%D \showsetup{\y!goto}
+%D \showsetup{goto}
%D
%D One important chaacteristic is that the first argument of
%D \type{\goto} (and therefore \type{\at} and \type{\in} is
@@ -2809,7 +2809,7 @@
%D are made, so in most cases such a document reference in an
%D indirect one.
%D
-%D \showsetup{\y!useexternaldocument}
+%D \showsetup{useexternaldocument}
%D
%D For example:
%D
@@ -2853,7 +2853,7 @@
%D The \URL\ alternative takes four arguments:
%D
-%D \showsetup{\y!useURL}
+%D \showsetup{useURL}
%D
%D like:
%D
@@ -2923,7 +2923,7 @@
%D
%D An \URL\ can be set up with
%D
-%D \showsetup{\y!setupurl}
+%D \showsetup{setupurl}
\def\setupurl
{\dodoubleargument\getparameters[\??ur]}
@@ -3014,7 +3014,7 @@
%D also specify a suitable name (the last argument). This name
%D can be called upon with:
%D
-%D \showsetup{\y!from}
+%D \showsetup{from}
%D
%D As can be expected, this macro used \type{\goto} to
%D perform its task.
@@ -3131,9 +3131,9 @@
%D very system dependant references are implemented by abusing
%D some of the previous macros.
%D
-%D \showsetup{\y!setupprograms}
-%D \showsetup{\y!defineprogram}
-%D \showsetup{\y!program}
+%D \showsetup{setupprograms}
+%D \showsetup{defineprogram}
+%D \showsetup{program}
%D
%D The latter gives access to the description of the program,
%D being the last argument to the definition command.
@@ -3213,7 +3213,7 @@
%D
%D Here location is a keyword like \type{nextpage}.
%D
-%D \showsetup{\y!gotopage}
+%D \showsetup{gotopage}
\def\dodefinepage[#1][#2]%
{\setvalue{\v!page:::#1}{#2}}
@@ -3386,7 +3386,7 @@
%D We can cross link documents by using:
%D
-%D \showsetup{\y!coupledocument}
+%D \showsetup{coupledocument}
%D
%D like:
%D
@@ -3467,11 +3467,11 @@
%D
%D This command is formally specified as:
%D
-%D \showsetup{\y!button}
+%D \showsetup{button}
%D
%D The characteristics can be set with:
%D
-%D \showsetup{\y!setupbuttons}
+%D \showsetup{setupbuttons}
\def\setupbuttons
{\dodoubleargument\getparameters[\??bt]}
diff --git a/tex/context/base/core-rul.tex b/tex/context/base/core-rul.tex
index 23ab32e7e..8ef18ab20 100644
--- a/tex/context/base/core-rul.tex
+++ b/tex/context/base/core-rul.tex
@@ -22,7 +22,7 @@
%D we introduce two macros that can be used to set some common
%D characteristics.
%D
-%D \showsetup{\y!setuplinewidth}
+%D \showsetup{setuplinewidth}
%D
%D The linewidth is available in \type{\linewidth}. The
%D preset value of .4pt equals the default hard coded \TEX\
@@ -138,7 +138,7 @@
%D The previous macro uses a predefined constant
%D \type{\@@rsfactor}. This factor can be set by:
%D
-%D \showsetup{\y!setupscreens}
+%D \showsetup{setupscreens}
\def\setupscreens
{\dodoubleargument\getparameters[\??rs]}
@@ -281,7 +281,7 @@
%D
%D The formal definition is:
%D
-%D \showsetup{\y!defineoverlay}
+%D \showsetup{defineoverlay}
%D
%D This macro's definition is a bit obscure, due the many
%D non||used arguments and the two step call that enable the
@@ -615,8 +615,8 @@
%D is quite versatile and, although some users will probably
%D seldom use it, one cannot overlook its features.
%D
-%D \showsetup{\y!setupframed}
-%D \showsetup{\y!framed}
+%D \showsetup{setupframed}
+%D \showsetup{framed}
%D
%D This general macro is a special version of an even more
%D general case, that can easily be linked into other macros
@@ -2016,7 +2016,7 @@
%D \type{\vrule}, but they save us some tokens. The
%D characteristics of these rule drawing command can be set by:
%D
-%D \showsetup{\y!setupblackrules}
+%D \showsetup{setupblackrules}
\def\setupblackrules
{\dodoubleargument\getparameters[\??bj]}
@@ -2029,7 +2029,7 @@
%D the width, height or depth to \type {max}, one gets the
%D natural dimensions.
%D
-%D \showsetup{\y!blackrule}
+%D \showsetup{blackrule}
\def\doblackrule[#1]%
{\hbox\bgroup
@@ -2055,7 +2055,7 @@
%D One can call for a sequence of black rules, if needed
%D equally spaced over the given width.
%D
-%D \showsetup{\y!blackrules}
+%D \showsetup{blackrules}
%D
%D The two alternative calls are therefore:
%D
@@ -2127,7 +2127,7 @@
%D The first method gobbles words and simply puts a bar in the
%D margin. This method is not entirely robust.
%D
-%D \showsetup{\y!marginrule}
+%D \showsetup{marginrule}
\definecomplexorsimple\marginrule
@@ -2152,7 +2152,7 @@
%D level, which is matched against the previous set one. The
%D level can be set up with
%D
-%D \showsetup{\y!setupmarginrules}
+%D \showsetup{setupmarginrules}
\def\setupmarginrules
{\dodoubleargument\getparameters[\??ka]}
@@ -2163,7 +2163,7 @@
%D The second method collects text and reformats it afterwards,
%D using the shapebox macros. We prevent local margin rules.
%D
-%D \showsetup{\y!startmarginrule}
+%D \showsetup{startmarginrule}
\definecomplexorsimple\startmarginrule
@@ -2233,8 +2233,8 @@
%D multiplied with the optional factor. The horizontal rule is
%D drawn on top of the baseline.
%D
-%D \showsetup{\y!vl}
-%D \showsetup{\y!hl}
+%D \showsetup{vl}
+%D \showsetup{hl}
\def\complexvl[#1]%
{\bgroup
@@ -2293,16 +2293,16 @@
%D
%D So we've got
%D
-%D \showsetup{\y!hairline}
-%D \showsetup{\y!thinrule}
+%D \showsetup{hairline}
+%D \showsetup{thinrule}
%D
%D Both can be set up with:
%D
-%D \showsetup{\y!setupthinrules}
+%D \showsetup{setupthinrules}
%D
%D We also have
%D
-%D \showsetup{\y!thinrules}
+%D \showsetup{thinrules}
%D
%D which looks like: \thinrules[n=2]
@@ -2550,16 +2550,16 @@
%D Here we can see that we have a predefined framed text class
%D as well as the tools for defining our own. So we have:
%D
-%D \showsetup{\y!setupframedtexts}
+%D \showsetup{setupframedtexts}
%D
%D as well as the definition command:
%D
-%D \showsetup{\y!defineframedtext}
+%D \showsetup{defineframedtext}
%D
%D that generates two commands:
%D
-%D \showsetup{\e!start<<\y!framedtext>>}
-%D \showsetup{<<\y!framedtext>>}
+%D \showsetup{\e!start<<framedtext>>}
+%D \showsetup{<<framedtext>>}
%D
%D The next definition shows the defaults.
@@ -2745,7 +2745,7 @@
%D
%D One can also define simple framed texts, using:
%D
-%D \showsetup{\y!defineframed}
+%D \showsetup{defineframed}
\def\defineframed
{\dodoubleempty\dodefineframed}
@@ -2799,9 +2799,9 @@
%D
%D The formal definition of these commands is:
%D
-%D \showsetup{\y!textrule}
-%D \showsetup{\y!starttextrule}
-%D \showsetup{\y!setuptextrules}
+%D \showsetup{textrule}
+%D \showsetup{starttextrule}
+%D \showsetup{setuptextrules}
%D
%D The implementation looks a bit complicated due to the
%D optional arguments.
@@ -2936,8 +2936,8 @@
%D one and an optional second argument and sets a paragraph with
%D empty visualized lines.
%D
-%D \showsetup{\y!fillinrules}
-%D \showsetup{\y!setupfillinrules}
+%D \showsetup{fillinrules}
+%D \showsetup{setupfillinrules}
\def\setupfillinrules
{\dodoubleargument\getparameters[\??il]}
@@ -2986,7 +2986,7 @@
%D mixed, one can typeset a paragraph by using the command
%D \type{\fillintext}.
%D
-%D \showsetup{\y!fillintext}
+%D \showsetup{fillintext}
\definecomplexorsimpleempty\fillintext
@@ -3018,8 +3018,8 @@
%D
%D The two commands that take care of this are:
%D
-%D \showsetup{\y!fillinline}
-%D \showsetup{\y!setupfillinlines}
+%D \showsetup{fillinline}
+%D \showsetup{setupfillinlines}
\def\setupfillinlines
{\dodoubleargument\getparameters[\??iv]}
@@ -3088,7 +3088,7 @@
%D Specifying the background is more or less the same as
%D specifying a framed box.
%D
-%D \showsetup{\y!setupbackground}
+%D \showsetup{setupbackground}
\presetlocalframed[\??ag]
@@ -3109,7 +3109,7 @@
%D straightforward. We need to handle some spacing as well as
%D the (often) a bit smaller horizontal size.
%D
-%D \showsetup{\y!startbackground}
+%D \showsetup{startbackground}
%D
%D Although we could have used a scratch one, we first
%D declare a boolean.
@@ -3196,7 +3196,7 @@
%D As a bonus we also have a short command, that is of not
%D much use, but kept there for historic reasons.
%D
-%D \showsetup{\y!background}
+%D \showsetup{background}
\def\dobackground
{\bgroup
diff --git a/tex/context/base/core-spa.tex b/tex/context/base/core-spa.tex
index c8e7bef69..e52735f80 100644
--- a/tex/context/base/core-spa.tex
+++ b/tex/context/base/core-spa.tex
@@ -99,7 +99,7 @@
%D There are two ways to influence the interline spacing. The
%D most general and often most consistent way is using
%D
-%D \showsetup{\y!setupinterlinespace}
+%D \showsetup{setupinterlinespace}
%D
%D For instance
%D
@@ -1081,74 +1081,237 @@
\defineblank [\v!height] [\strutheight]
\defineblank [\v!depth] [\strutdepth]
-\let\currentindentation=\empty
+% old implementation
+%
+% \let\currentindentation=\empty
+%
+% \newdimen\ctxparindent
+%
+% \newif\ifindentfirstparagraph % \indentfirstparagraphtrue
+%
+% \def\presetindentation
+% {\doifoutervmode{\ifindentfirstparagraph\else\noindentation\fi}}
+%
+% \definecomplexorsimple\setupindenting
+%
+% \def\complexsetupindenting[#1]%
+% {\processallactionsinset
+% [#1]
+% [ \v!first=>\indentfirstparagraphtrue,
+% \v!next=>\indentfirstparagraphfalse,
+% \s!default=>\simplesetupindenting,
+% \s!unknown=>\edef\currentindentation{\commalistelement}%
+% \simplesetupindenting]}
+%
+% \def\simplesetupindenting
+% {\assigndimension\currentindentation\ctxparindent{1em}{1.5em}{2em}%
+% \parindent\ctxparindent\relax}
+%
+% \def\indenting % watch out: \dodo and no \do
+% {\dosingleargument\dodoindenting}
+%
+% \def\dodoindenting[#1]% oeps, we needed a commalist handler here!
+% {\edef\currentindenting{#1}%
+% \processcommacommand[#1]\dododoindenting}
+%
+% \def\dododoindenting#1%
+% {\executeifdefined{\??in:#1}\donothing}
+%
+% \let\currentindenting\empty
+%
+% \def\defineindentingmethod[#1]#2%
+% {\setvalue{\??in:#1}{#2}}
+%
+% \defineindentingmethod [\v!no] {\parindent\ctxparindent\noindent}
+% \defineindentingmethod [\v!not] {\parindent\ctxparindent\noindent}
+%
+% \defineindentingmethod [\v!first] {\indentfirstparagraphtrue}
+% \defineindentingmethod [\v!next] {\indentfirstparagraphfalse}
+%
+% \defineindentingmethod [\v!yes] {\parindent\ctxparindent\relax} % no \indent !
+% \defineindentingmethod [\v!always] {\parindent\ctxparindent\relax} % no \indent !
+%
+% \defineindentingmethod [\v!never] {\parindent\zeropoint\relax} % no \indent !
+%
+% \def\noindenting{\indenting[\v!no,\v!next]} % was \nietinspringen
+% \def\doindenting{\indenting[\v!yes,\v!first]} % was \welinspringen
+%
+% \def\dochecknextindentation#1% internal one
+% {\checknextindentation[\getvalue{#1\c!indentnext}]}
+%
+% \def\checknextindentation[#1]%
+% {\processaction[#1][%\v!keep=>,
+% \v!yes=>\doindentation,
+% \v!no=>\noindentation,
+% \v!auto=>\autoindentation]}
+%
+% \def\doindentation% too simple
+% {\gdef\checkindentation{\global\indentationtrue}}
+%
+% \ifx\autoindentation\undefined
+% \let\autoindentation\relax
+% \fi
+%
+% \newif\ifindentation \indentationtrue % documenteren, naar buiten
+%
+% \let\checkindentation=\relax
+%
+% \def\donoindentation
+% {\ifdim\parindent=\zeropoint \else
+% \bgroup \setbox\scratchbox\lastbox \egroup
+% \fi}
+%
+% \def\noindentation % made global
+% {\ifinpagebody \else
+% \global\indentationfalse
+% \gdef\checkindentation
+% {\donoindentation
+% \gdef\checkindentation{\global\indentationtrue}}%
+% \fi}
+%
+% \def\nonoindentation % bv bij floats
+% {\ifinpagebody \else
+% \global\indentationtrue
+% \gdef\checkindentation{\global\indentationtrue}%
+% \fi}
+%
+% \def\indentation
+% {\ifvmode \ifdim\parindent=\zeropoint \else
+% % was : \hskip\parindent
+% % can be: \indent
+% % but we test:
+% \noindent\hskip\parindent
+% \fi \fi}
+
+\let\currentindentation\empty % amount
+\let\currentindenting \empty % method
\newdimen\ctxparindent
\newif\ifindentfirstparagraph % \indentfirstparagraphtrue
+\chardef\indentingtoggle\zerocount
+
+%D After a blank or comparable situation (left side floats) we
+%D need to check if the next paragraph has to be indented.
+
\def\presetindentation
{\doifoutervmode{\ifindentfirstparagraph\else\noindentation\fi}}
+%D This sets up the indentation method as well as the amounts.
+
\definecomplexorsimple\setupindenting
\def\complexsetupindenting[#1]%
- {\processallactionsinset
- [#1]
- [ \v!first=>\indentfirstparagraphtrue,
- \v!next=>\indentfirstparagraphfalse,
- \s!default=>\simplesetupindenting,
- \s!unknown=>\edef\currentindentation{\commalistelement}%
- \simplesetupindenting]}
-
-\def\simplesetupindenting
- {\assigndimension\currentindentation\ctxparindent{1em}{1.5em}{2em}%
- \parindent\ctxparindent\relax}
+ {\edef\currentindenting{#1}%
+ \indentfirstparagraphtrue
+ \parindent\ctxparindent
+ \chardef\indentingtoggle\zerocount
+ \processcommalist[#1]\docomplexsetupindenting
+ \toggleindentation}
-\def\indenting % watch out: \dodo and no \do
- {\dosingleargument\dodoindenting}
+\def\docomplexsetupindenting#1%
+ {\edef\!!stringa{#1}% catch #1=\somedimen
+ \convertcommand\!!stringa\to\!!stringa
+ \executeifdefined{\??in:\!!stringa}{\edef\currentindentation{#1}\simplesetupindenting}}
-\def\dodoindenting[#1]% oeps, we needed a commalist handler here!
- {\edef\currentindenting{#1}%
- \processcommacommand[#1]\dododoindenting}
+\def\simplesetupindenting % empty case
+ {\assigndimension\currentindentation\ctxparindent{1em}{1.5em}{2em}}
-\def\dododoindenting#1%
- {\executeifdefined{\??in:#1}\donothing}
+\def\indenting % kind of obsolete
+ {\dosingleargument\complexsetupindenting}
-\let\currentindenting\empty
+% use \noindentation to suppress next indentation
\def\defineindentingmethod[#1]#2%
{\setvalue{\??in:#1}{#2}}
-\defineindentingmethod [\v!no] {\parindent\ctxparindent\noindent}
-\defineindentingmethod [\v!not] {\parindent\ctxparindent\noindent}
+\defineindentingmethod [\v!no] {\parindent\zeropoint}% was: \ctxparindent\noindent}
+\defineindentingmethod [\v!not] {\parindent\zeropoint}% was: \ctxparindent\noindent}
\defineindentingmethod [\v!first] {\indentfirstparagraphtrue}
\defineindentingmethod [\v!next] {\indentfirstparagraphfalse}
-\defineindentingmethod [\v!yes] {\parindent\ctxparindent\relax} % no \indent !
-\defineindentingmethod [\v!always] {\parindent\ctxparindent\relax} % no \indent !
+\defineindentingmethod [\v!yes] {\parindent\ctxparindent\relax} % no \indent !
+\defineindentingmethod [\v!always] {\parindent\ctxparindent\relax} % no \indent !
-\defineindentingmethod [\v!never] {\parindent\zeropoint\relax} % no \indent !
+\defineindentingmethod [\v!never] {\parindent\zeropoint\relax} % no \indent !
-\def\noindenting{\indenting[\v!no,\v!next]} % was \nietinspringen
+\defineindentingmethod [\v!odd] {\chardef\indentingtoggle\plusone}
+\defineindentingmethod [\v!even] {\chardef\indentingtoggle\plustwo}
+
+\def\noindenting{\indenting[\v!no, \v!next ]} % was \nietinspringen
\def\doindenting{\indenting[\v!yes,\v!first]} % was \welinspringen
+%D This one sets up the local indentation behaviour (i.e. either or not
+%D a next paragraph will be indented).
+
\def\dochecknextindentation#1% internal one
{\checknextindentation[\getvalue{#1\c!indentnext}]}
\def\checknextindentation[#1]%
- {\processaction[#1][%\v!keep=>,
- \v!yes=>\doindentation,
- \v!no=>\noindentation,
- \v!auto=>\autoindentation]}
+ {\processaction
+ [#1]
+ [%\v!keep=>,
+ \v!yes=>\doindentation,
+ \v!no=>\noindentation,
+ \v!auto=>\autoindentation]}
-\def\doindentation% too simple
+%D Here come the handlers.
+
+\newif\ifindentation \indentationtrue % documenteren, naar buiten
+
+\let\checkindentation\relax
+
+\ifx\autoindentation\undefined \let\autoindentation\relax \fi % hook
+
+\def\doindentation
{\gdef\checkindentation{\global\indentationtrue}}
-\ifx\autoindentation\undefined
- \let\autoindentation\relax
-\fi
+\def\noindentation % made global
+ {\ifinpagebody \else
+ \global\indentationfalse
+ \gdef\checkindentation
+ {\donoindentation
+ \gdef\checkindentation{\global\indentationtrue}}%
+ \fi}
+
+\def\nonoindentation % bv bij floats
+ {\ifinpagebody \else
+ \global\indentationtrue
+ \gdef\checkindentation{\global\indentationtrue}%
+ \fi}
+
+\def\donoindentation
+ {\ifdim\parindent=\zeropoint \else
+ \bgroup \setbox\scratchbox\lastbox \egroup
+ \fi}
+
+\def\indentation
+ {\ifvmode \ifdim\parindent=\zeropoint \else
+ % was : \hskip\parindent
+ % can be: \indent
+ % but we test:
+ \noindent\hskip\parindent
+ \fi \fi}
+
+\def\toggleindentation
+ {\ifcase\indentingtoggle
+ % nothing
+ \or
+ \notoggleindentation
+ \or
+ \dotoggleindentation
+ \fi}
+
+\def\dokillindentation
+ {\gdef\checkindentation{\global\indentationfalse\donoindentation}}
+
+\def\dotoggleindentation
+ {\gdef\checkindentation{\global\indentationfalse\notoggleindentation\donoindentation}}
+
+\def\notoggleindentation
+ {\gdef\checkindentation{\global\indentationtrue\dotoggleindentation}}
% \frenchspacing leidt soms tot afbreken tussen -, vandaar
% de variant \newfrenchspacing.
@@ -2601,56 +2764,6 @@
\vskip\scratchskip
\fi}}
-% Idem:
-%
-% \springin
-
-%\def\noindentation% vervallen
-% {\EveryPar
-% {\ifdim\parindent=\zeropoint
-% \else
-% \bgroup
-% \setbox\scratchbox\lastbox
-% \egroup
-% \fi
-% \EveryPar{}}}
-
-\newif\ifindentation \indentationtrue % documenteren, naar buiten
-
-\let\checkindentation=\relax
-
-\def\donoindentation
- {\ifdim\parindent=\zeropoint \else
- \bgroup \setbox\scratchbox\lastbox \egroup
- \fi}
-
-\def\noindentation % made global
- {\ifinpagebody \else
- \global\indentationfalse
- \gdef\checkindentation
- {\donoindentation
- \gdef\checkindentation{\global\indentationtrue}}%
- \fi}
-
-\def\nonoindentation % bv bij floats
- {\ifinpagebody \else
- \global\indentationtrue
- \gdef\checkindentation{\global\indentationtrue}%
- \fi}
-
-\def\indentation
- {\ifvmode \ifdim\parindent=\zeropoint \else
- % was : \hskip\parindent
- % can be: \indent
- % but we test:
- \noindent\hskip\parindent
- \fi \fi}
-
-% vergeten
-
-%\def\forgeteverypar
-% {\everypar\emptytoks}
-
\def\forgeteverypar
{\everypar{\the\neverypar}}
@@ -2894,19 +3007,19 @@
{\leftskipadaption\zeropoint
\processaction[#1]
[\v!standard=>\leftskipadaption
- \ifdim\ctxparindent=\zeropoint\@@slleft\else\ctxparindent\fi,
- \v!yes=>\leftskipadaption
- \ifdim\ctxparindent=\zeropoint\@@slleft\else\ctxparindent\fi,
+ \ifdim\ctxparindent=\zeropoint\@@slleft\else\ctxparindent\fi,
+ \v!yes=>\leftskipadaption
+ \ifdim\ctxparindent=\zeropoint\@@slleft\else\ctxparindent\fi,
\v!no=>,
- \s!unknown=>\leftskipadaption#1]}
+ \s!unknown=>\leftskipadaption#1]}
\def\dosetrightskipadaption#1%
{\rightskipadaption\zeropoint
\processaction[#1]
[\v!standard=>\rightskipadaption\@@slright,
- \v!yes=>\rightskipadaption\@@slright,
+ \v!yes=>\rightskipadaption\@@slright,
\v!no=>,
- \s!unknown=>\rightskipadaption#1]}
+ \s!unknown=>\rightskipadaption#1]}
\endTEX
@@ -2914,19 +3027,14 @@
% installation
-\setvalue{@lsa@\v!standard}%
- {\ifdim\ctxparindent=\zeropoint\@@slleft\else\ctxparindent\fi}
-
-\setvalue{@lsa@\v!yes}%
- {\ifdim\ctxparindent=\zeropoint\@@slleft\else\ctxparindent\fi}
-
+\setvalue{@lsa@\v!standard}{\ifdim\ctxparindent=\zeropoint\@@slleft\else\ctxparindent\fi}
+\setvalue{@lsa@\v!yes }{\ifdim\ctxparindent=\zeropoint\@@slleft\else\ctxparindent\fi}
\letvalue{@lsa@\v!no }\zeropoint
-\letvalue{@lsa@\empty }\zeropoint
-
+\letvalue{@lsa@\empty }\zeropoint
\setvalue{@rsa@\v!standard}{\@@slright}
-\setvalue{@rsa@\v!yes }{\@@slright}
+\setvalue{@rsa@\v!yes }{\@@slright}
\letvalue{@rsa@\v!no }\zeropoint
-\letvalue{@rsa@\empty }\zeropoint
+\letvalue{@rsa@\empty }\zeropoint
% not safe for 2\parindent
%
diff --git a/tex/context/base/core-ver.tex b/tex/context/base/core-ver.tex
index f5395b13b..507480f1f 100644
--- a/tex/context/base/core-ver.tex
+++ b/tex/context/base/core-ver.tex
@@ -180,6 +180,8 @@
\def\verbatimfont{\getvalue{#1\c!style}\normalnoligatures\font}%
\setupverbatimcolor{#1}}
+\ifx\normalnoligatures\undefined \let\normalnoligatures\gobbleoneargument \fi
+
%D The verbatim commands have a rather long and turbulent
%D history. Most users of \CONTEXT\ probably will never use
%D some of the features, but I've kept in mind that when one is
diff --git a/tex/context/base/enco-def.tex b/tex/context/base/enco-def.tex
index 7077328bd..2cad5a89e 100644
--- a/tex/context/base/enco-def.tex
+++ b/tex/context/base/enco-def.tex
@@ -704,6 +704,9 @@
\def\oslash {\ostroke}
\def\Oslash {\Ostroke}
+\def\dcroat {\dstroke}
+\def\Dcroat {\Dstroke}
+
% for plain tex's sake
\def\S {\sectionmark }
diff --git a/tex/context/base/enco-ini.tex b/tex/context/base/enco-ini.tex
index 6b32bbf6c..1fe8a8503 100644
--- a/tex/context/base/enco-ini.tex
+++ b/tex/context/base/enco-ini.tex
@@ -187,8 +187,23 @@
% \let\enabledregime\characterregime
% \fi}
+% \def\enableregime[#1]%
+% {\edef\characterregime{@#1@}%
+% \ifx\enabledregime\characterregime \else
+% \the\executeifdefined{\@reg@\characterregime}\emptytoks
+% \fi}
+
+\def\defineregimesynonym
+ {\dodoubleargument\dodefineregimesynonym}
+
+\def\dodefineregimesynonym[#1][#2]%
+ {\setevalue{\@reg@::#1}{#2}}
+
+\def\trueregimename#1%
+ {\executeifdefined{\@reg@::#1}{#1}}
+
\def\enableregime[#1]%
- {\edef\characterregime{@#1@}%
+ {\edef\characterregime{@\trueregimename{#1}@}%
\ifx\enabledregime\characterregime \else
\the\executeifdefined{\@reg@\characterregime}\emptytoks
\fi}
@@ -356,7 +371,7 @@
%D Encodings things are defined in separate files and are
%D loaded only once, using:
%D
-%D \showsetup{\y!useencoding}
+%D \showsetup{useencoding}
\def\douseencoding#1%
{\doifundefined{\c!file\f!encodingprefix#1}%
diff --git a/tex/context/base/font-ini.tex b/tex/context/base/font-ini.tex
index 10a0cf6d3..4d1fc7fe6 100644
--- a/tex/context/base/font-ini.tex
+++ b/tex/context/base/font-ini.tex
@@ -2023,7 +2023,7 @@
%D The relationship between the several sizes of a font, is
%D defined by:
%D
-%D \showsetup{\y!definebodyfontenvironment}
+%D \showsetup{definebodyfontenvironment}
%D
%D Later on we will see how these parameters are used, so for
%D the moment we stick with an example:
@@ -2046,7 +2046,7 @@
%D
%D Afterwards, one can change values with
%D
-%D \showsetup{\y!setupbodyfontenvironment}
+%D \showsetup{setupbodyfontenvironment}
%D
%D Due to the fact that \type{\c!text} and \type{\s!text} can
%D have a similar meaning, and therefore can lead to an
@@ -2220,7 +2220,7 @@
%D \type{tfm}. Installing those file is often beyond the
%D scope of the user and up to the system administrator.
%D
-%D \showsetup{\y!definebodyfont}
+%D \showsetup{definebodyfont}
%D
%D This commands takes three arguments: a (series of) bodyfont
%D size(s), the style group to which the definitions belong,
@@ -3331,8 +3331,8 @@
%D
%D So we've got:
%D
-%D \showsetup{\y!setupbodyfont}
-%D \showsetup{\y!switchtobodyfont}
+%D \showsetup{setupbodyfont}
+%D \showsetup{switchtobodyfont}
%D
%D Both macros look alike. The second one also has to take
%D all kind of keywords into account.
@@ -4011,7 +4011,7 @@
%D One can call for a rather simple overview of a bodyfont and the
%D relations between its alternative fonts.
%D
-%D \showsetup{\y!showbodyfont}
+%D \showsetup{showbodyfont}
%D
%D The current bodyfont (here we omitted the argument) looks like:
%D
@@ -4053,7 +4053,7 @@
%D
%D This overview is generated using:
%D
-%D \showsetup{\y!showbodyfontenvironment}
+%D \showsetup{showbodyfontenvironment}
\fetchruntimecommand \showbodyfontenvironment {\f!fontprefix\s!run}
@@ -4640,16 +4640,41 @@
\def\fontvariant#1#2{\executeifdefined{\??fv#1#2}\empty}
-\def\variant[#1]%
- {\expanded{\definedfont
+% original:
+%
+% \def\variant[#1]%
+% {\expanded{\definedfont
+% [\truefontname{\fontstringA\fontstylesuffix\fontvariant\fontstringA{#1}}
+% at \currentfontscale\bodyfontsize]}}
+%
+% \beginXETEX \font
+%
+% \def\variant[#1]%
+% {\font\variantfont\truefontname{\fontstringA\fontstylesuffix\fontvariant\fontstringA{#1}}
+% at \currentfontscale\bodyfontsize
+% \variantfont}
+%
+% \endXETEX
+%
+% better
+
+\def\dosetscaledfont
+ {\checkrelativefontsize\fontstyle
+ \scaledfont\currentfontscale\bodyfontsize
+ \scaledfont\relativefontsize\scaledfont}
+
+\def\variant[#1]% slow
+ {\dosetscaledfont
+ \expanded{\definedfont
[\truefontname{\fontstringA\fontstylesuffix\fontvariant\fontstringA{#1}}
- at \currentfontscale\bodyfontsize]}}
+ at \scaledfont]}}
\beginXETEX \font
\def\variant[#1]%
- {\font\variantfont\truefontname{\fontstringA\fontstylesuffix\fontvariant\fontstringA{#1}}
- at \currentfontscale\bodyfontsize
+ {\dosetscaledfont
+ \font\variantfont\truefontname{\fontstringA\fontstylesuffix\fontvariant\fontstringA{#1}}
+ at \scaledfont
\variantfont}
\endXETEX
diff --git a/tex/context/base/hand-ini.tex b/tex/context/base/hand-ini.tex
index 9ccb4c8cc..1d5f2da4e 100644
--- a/tex/context/base/hand-ini.tex
+++ b/tex/context/base/hand-ini.tex
@@ -524,7 +524,7 @@
%D Handling definitions are collected in dedicated files and
%D loaded only once:
%D
-%D % \showsetup{\y!usehandling}
+%D % \showsetup{usehandling}
\def\dousehandling#1% is the same as encoding
{\doifundefined{\c!file\f!handlingprefix#1}%
diff --git a/tex/context/base/lang-ini.tex b/tex/context/base/lang-ini.tex
index ec4984baf..4615920a8 100644
--- a/tex/context/base/lang-ini.tex
+++ b/tex/context/base/lang-ini.tex
@@ -180,7 +180,7 @@
%D is prepared. The next macro takes care of this loading. A
%D language is specified with
%D
-%D \showsetup{\y!installlanguage}
+%D \showsetup{installlanguage}
%D
%D When \type {state} equals \type {start}, both patterns
%D and additional hyphenation specifications are loaded. These
@@ -370,7 +370,7 @@
%D
%D Quick and dirty, but useful:
%D
-%D \showsetup{\y!setuplanguage}
+%D \showsetup{setuplanguage}
% \def\setuplanguage
% {\dodoubleargument\dosetuplanguage}
@@ -465,8 +465,8 @@
%D is a valid operation, where the relation between number
%D and language depends on the order in installing languages.
%D
-%D \showsetup{\y!language}
-%D \showsetup{\y!mainlanguage}
+%D \showsetup{language}
+%D \showsetup{mainlanguage}
%D
%D Both commands take a predefined language identifier as
%D argument. We can use \type{\mainlanguage[identifier]} for
diff --git a/tex/context/base/lang-lab.tex b/tex/context/base/lang-lab.tex
index 0cf6c75ff..350ae2dfc 100644
--- a/tex/context/base/lang-lab.tex
+++ b/tex/context/base/lang-lab.tex
@@ -36,8 +36,8 @@
%D First we present some macros that deal with what we will
%D call head and label texts. Such texts are defines by:
%D
-%D \showsetup{\y!setupheadtext}
-%D \showsetup{\y!setuplabeltext}
+%D \showsetup{setupheadtext}
+%D \showsetup{setuplabeltext}
%D
%D In a few paragraphs we'll show quite a lot of examples
%D of its use.
@@ -88,8 +88,8 @@
%D
%D Once defined, head and label texts can be called upon using:
%D
-%D \showsetup{\y!headtext}
-%D \showsetup{\y!labeltext}
+%D \showsetup{headtext}
+%D \showsetup{labeltext}
%D
%D The latter one has an upcased alternative \type{\LABELTEXT}.
@@ -229,7 +229,7 @@
%D be typeset. Such macros can be made (more) language
%D independant by using:
%D
-%D \showsetup{\y!translate}
+%D \showsetup{translate}
%D
%D like for instance:
%D
diff --git a/tex/context/base/lang-sla.tex b/tex/context/base/lang-sla.tex
index 41a91763d..4d310e8ee 100644
--- a/tex/context/base/lang-sla.tex
+++ b/tex/context/base/lang-sla.tex
@@ -22,7 +22,7 @@
%D \starttabulate[|lB|l|]
%D \NC Czech \NC Tom Hidec, Petr Sojka \NC \NR
%D \NC Polish \NC Grzegorz Sapijaszko \NC \NR
-%D \NC Croatian \NC Zeljko Vrba \NC \NR
+%D \NC Croatian \NC \Zcaron eljko Vrba \NC \NR
%D \NC Slovenian \NC Mojca Miklavec \NC \NR
%D \stoptabulate
@@ -93,11 +93,11 @@
\installlanguage
[\s!sl]
- [\c!spacing=\v!packed, % ? copied from german - don't know what this means
- \c!leftsentence={\hbox{--~}}, % ?
- \c!rightsentence={\hbox{~--}}, % ?
- \c!leftsubsentence={--}, % ?
- \c!rightsubsentence={--}, % ?
+ [\c!spacing=\v!packed,
+ \c!leftsentence={\hbox{--~}},
+ \c!rightsentence={\hbox{~--}},
+ \c!leftsubsentence={--},
+ \c!rightsubsentence={--},
\c!leftquote=\lowerleftsingleninequote,
\c!rightquote=\upperrightsinglesixquote,
\c!leftquotation=\lowerleftdoubleninequote,
@@ -210,10 +210,10 @@
% labels
-\setupheadtext [\s!pl] [\v!content=Spis tre\'sci]
+\setupheadtext [\s!pl] [\v!content=Spis tre\sacute ci]
\setupheadtext [\s!cz] [\v!content=Obsah]
\setupheadtext [\s!sk] [\v!content=Obsah]
-\setupheadtext [\s!hr] [\v!content=Sadr\v{z}aj]
+\setupheadtext [\s!hr] [\v!content=Sadr\zcaron aj]
\setupheadtext [\s!sl] [\v!content=Vsebina]
\setupheadtext [\s!pl] [\v!tables=Tabele]
@@ -223,8 +223,8 @@
\setupheadtext [\s!sl] [\v!tables=Tabele]
\setupheadtext [\s!pl] [\v!figures=Ilustracje]
-\setupheadtext [\s!cz] [\v!figures=Obr\'azk\r{u}]
-\setupheadtext [\s!sk] [\v!figures=Obr\'azkov]
+\setupheadtext [\s!cz] [\v!figures=Obr\aacute zk\uring]
+\setupheadtext [\s!sk] [\v!figures=Obr\aacute zkov]
\setupheadtext [\s!hr] [\v!figures=Slike]
\setupheadtext [\s!sl] [\v!figures=Slike]
@@ -241,12 +241,12 @@
\setupheadtext [\s!sl] [\v!intermezzi=Intermezzi]
\setupheadtext [\s!pl] [\v!index=Indeks]
-\setupheadtext [\s!cz] [\v!index=Rejst\v{r}\'{\i}k]
+\setupheadtext [\s!cz] [\v!index=Rejst\rcaron\iacute k]
\setupheadtext [\s!sk] [\v!index=Zoznam]
\setupheadtext [\s!hr] [\v!index=Indeks]
\setupheadtext [\s!sl] [\v!index=Kazalo]
-\setupheadtext [\s!pl] [\v!abbreviations=Skr\'ocenie]
+\setupheadtext [\s!pl] [\v!abbreviations=Skr\oacute cenie]
\setupheadtext [\s!cz] [\v!abbreviations=...]
\setupheadtext [\s!sk] [\v!abbreviations=...]
\setupheadtext [\s!hr] [\v!abbreviations=Kratice]
@@ -266,12 +266,12 @@
\setuplabeltext [\s!pl] [\v!table=Tabela ]
\setuplabeltext [\s!cz] [\v!table=Tabulka ]
-\setuplabeltext [\s!sk] [\v!table=Tabu\v{l}ka ]
-\setuplabeltext [\s!hr] [\v!table=T\'abl\'azat ] % [\v!table=Tablica ]
+\setuplabeltext [\s!sk] [\v!table=Tabu\lcaron ka ]
+\setuplabeltext [\s!hr] [\v!table=T\aacute bl\aacute zat ] % [\v!table=Tablica ]
\setuplabeltext [\s!sl] [\v!table=Tabela ]
\setuplabeltext [\s!pl] [\v!figure=Ilustracja ]
-\setuplabeltext [\s!cz] [\v!figure=Obr\'azek ]
+\setuplabeltext [\s!cz] [\v!figure=Obr\aacute zek ]
\setuplabeltext [\s!sk] [\v!figure=... ]
\setuplabeltext [\s!hr] [\v!figure=Slika ]
\setuplabeltext [\s!sl] [\v!figure=Slika ]
@@ -292,13 +292,13 @@
\setuplabeltext [\s!cz] [\v!chapter=] % Kapitola
\setuplabeltext [\s!sk] [\v!chapter=] % Kapitola
\setuplabeltext [\s!hr] [\v!chapter=] % Rozdzia\l
-\setuplabeltext [\s!sl] [\v!chapter=]
+\setuplabeltext [\s!sl] [\v!chapter=] % Poglavje
\setuplabeltext [\s!pl] [\v!section=] % Podrozdzia\l
\setuplabeltext [\s!cz] [\v!section=]
\setuplabeltext [\s!sk] [\v!section=]
\setuplabeltext [\s!hr] [\v!section=] % Podrozdzia\l
-\setuplabeltext [\s!sl] [\v!section=] % Odstavek
+\setuplabeltext [\s!sl] [\v!section=]
\setuplabeltext [\s!pl] [\v!subsection=]
\setuplabeltext [\s!cz] [\v!subsection=]
@@ -324,9 +324,9 @@
\setuplabeltext [\s!hr] [\v!appendix=Dodatak ]
\setuplabeltext [\s!sl] [\v!appendix=Dodatek ]
-\setuplabeltext [\s!pl] [\v!part=Ust\k{e}p]
-\setuplabeltext [\s!cz] [\v!part=\v{C}\'ast]
-\setuplabeltext [\s!sk] [\v!part=\v{C}as\v{t}]
+\setuplabeltext [\s!pl] [\v!part=Ust\eogonek p]
+\setuplabeltext [\s!cz] [\v!part=\Ccaron \aacute st]
+\setuplabeltext [\s!sk] [\v!part=\Ccaron as\tcaron{}]
\setuplabeltext [\s!hr] [\v!part=Dio]
\setuplabeltext [\s!sl] [\v!part=Del ]
@@ -350,40 +350,40 @@
\setuplabeltext [\s!pl] [\v!june=czerwca]
\setuplabeltext [\s!pl] [\v!july=lipca]
\setuplabeltext [\s!pl] [\v!august=sierpnia]
-\setuplabeltext [\s!pl] [\v!september=wrze\'snia]
-\setuplabeltext [\s!pl] [\v!october=pa\'zdziernika]
+\setuplabeltext [\s!pl] [\v!september=wrze\sacute nia]
+\setuplabeltext [\s!pl] [\v!october=pa\zacute dziernika]
\setuplabeltext [\s!pl] [\v!november=listopada]
\setuplabeltext [\s!pl] [\v!december=grudnia]
\setuplabeltext [\s!cz] [\v!january=ledna]
-\setuplabeltext [\s!cz] [\v!february=\'unora]
-\setuplabeltext [\s!cz] [\v!march=b\v{r}ezna]
+\setuplabeltext [\s!cz] [\v!february=\uacute nora]
+\setuplabeltext [\s!cz] [\v!march=b\rcaron ezna]
\setuplabeltext [\s!cz] [\v!april=dubna]
-\setuplabeltext [\s!cz] [\v!may=kv\v{e}tna]
-\setuplabeltext [\s!cz] [\v!june=\v{c}ervna]
-\setuplabeltext [\s!cz] [\v!july=\v{c}ervence]
+\setuplabeltext [\s!cz] [\v!may=kv\ecaron tna]
+\setuplabeltext [\s!cz] [\v!june=\ccaron ervna]
+\setuplabeltext [\s!cz] [\v!july=\ccaron ervence]
\setuplabeltext [\s!cz] [\v!august=srpna]
-\setuplabeltext [\s!cz] [\v!september=z\'a\v{r}\'\i]
-\setuplabeltext [\s!cz] [\v!october=\v{r}\'{\i}jna]
+\setuplabeltext [\s!cz] [\v!september=z\aacute\rcaron\iacute{}]
+\setuplabeltext [\s!cz] [\v!october=\rcaron\iacute jna]
\setuplabeltext [\s!cz] [\v!november=listopadu]
\setuplabeltext [\s!cz] [\v!december=prosince]
-\setuplabeltext [\s!sk] [\v!january=janu\'ara]
-\setuplabeltext [\s!sk] [\v!february=febru\'ara]
+\setuplabeltext [\s!sk] [\v!january=janu\aacute ra]
+\setuplabeltext [\s!sk] [\v!february=febru\aacute ra]
\setuplabeltext [\s!sk] [\v!march=marca]
-\setuplabeltext [\s!sk] [\v!april=apr\'{\i}la]
-\setuplabeltext [\s!sk] [\v!may=m\'aja]
-\setuplabeltext [\s!sk] [\v!june=j\'una]
-\setuplabeltext [\s!sk] [\v!july=j\'ula]
+\setuplabeltext [\s!sk] [\v!april=apr\iacute la]
+\setuplabeltext [\s!sk] [\v!may=m\aacute ja]
+\setuplabeltext [\s!sk] [\v!june=j\uacute na]
+\setuplabeltext [\s!sk] [\v!july=j\uacute la]
\setuplabeltext [\s!sk] [\v!august=augusta]
\setuplabeltext [\s!sk] [\v!september=septembra]
-\setuplabeltext [\s!sk] [\v!october=okt\'obra]
+\setuplabeltext [\s!sk] [\v!october=okt\oacute bra]
\setuplabeltext [\s!sk] [\v!november=novembra]
\setuplabeltext [\s!sk] [\v!december=decembra]
-\setuplabeltext [\s!hr] [\v!january=sije\v{c}anj]
-\setuplabeltext [\s!hr] [\v!february=velja\v{c}a]
-\setuplabeltext [\s!hr] [\v!march=o\v{z}ujak]
+\setuplabeltext [\s!hr] [\v!january=sije\ccaron anj]
+\setuplabeltext [\s!hr] [\v!february=velja\ccaron a]
+\setuplabeltext [\s!hr] [\v!march=o\zcaron ujak]
\setuplabeltext [\s!hr] [\v!april=travanj]
\setuplabeltext [\s!hr] [\v!may=svibanj]
\setuplabeltext [\s!hr] [\v!june=lipanj]
@@ -408,18 +408,18 @@
\setuplabeltext [\s!sl] [\v!december=december]
\setuplabeltext [\s!pl] [\v!sunday=niedziela]
-\setuplabeltext [\s!pl] [\v!monday=poniedzia\l ek]
+\setuplabeltext [\s!pl] [\v!monday=poniedzia\lstroke ek]
\setuplabeltext [\s!pl] [\v!tuesday=wtorek]
-\setuplabeltext [\s!pl] [\v!wednesday=\'sroda]
+\setuplabeltext [\s!pl] [\v!wednesday=\sacute roda]
\setuplabeltext [\s!pl] [\v!thursday=czwartek]
-\setuplabeltext [\s!pl] [\v!friday=pi\k{a}tek]
+\setuplabeltext [\s!pl] [\v!friday=pi\aogonek tek]
\setuplabeltext [\s!pl] [\v!saturday=sobota]
\setuplabeltext [\s!hr] [\v!sunday=nedjelja]
\setuplabeltext [\s!hr] [\v!monday=ponedjeljak]
\setuplabeltext [\s!hr] [\v!tuesday=utorak]
\setuplabeltext [\s!hr] [\v!wednesday=srijeda]
-\setuplabeltext [\s!hr] [\v!thursday=\v{c}etvrtak]
+\setuplabeltext [\s!hr] [\v!thursday=\ccaron etvrtak]
\setuplabeltext [\s!hr] [\v!friday=petak]
\setuplabeltext [\s!hr] [\v!saturday=subota]
@@ -427,7 +427,7 @@
\setuplabeltext [\s!sl] [\v!monday=ponedeljek]
\setuplabeltext [\s!sl] [\v!tuesday=torek]
\setuplabeltext [\s!sl] [\v!wednesday=sreda]
-\setuplabeltext [\s!sl] [\v!thursday=\v{c}etrtek]
+\setuplabeltext [\s!sl] [\v!thursday=\ccaron etrtek]
\setuplabeltext [\s!sl] [\v!friday=petek]
\setuplabeltext [\s!sl] [\v!saturday=sobota]
diff --git a/tex/context/base/mult-con.tex b/tex/context/base/mult-con.tex
index a7f8d8865..8d308def6 100644
--- a/tex/context/base/mult-con.tex
+++ b/tex/context/base/mult-con.tex
@@ -1812,6 +1812,9 @@ textlayer: tekstlaag textlayer
smallbodyfont: kleinkorps smallbodyfont
smallbodyfont smallbodyfont
piccolofontdelcorpo smallbodyfont %%
+ toggle: toggle wissel
+ toggle toggle
+ toggle toggle
color: kleur color
farbe barevne
colore culoare
@@ -2734,7 +2737,7 @@ process: proces process
NextJump: VolgendeSprong NextJump
NaechsterSprung NasledujiciSkok
SaltoSuccessivo SaltUrmator
- SwapViewer: WisselViewer SwapViewer
+ ToggleViewer: WisselViewer ToggleViewer
WechseleViewer ZmenitProhlizec
ScambiaVisualizzatore SchimbaVizualizator
ExitViewer: VerlaatViewer ExitViewer
diff --git a/tex/context/base/page-bck.tex b/tex/context/base/page-bck.tex
index 165bbafaf..e95ab8bf6 100644
--- a/tex/context/base/page-bck.tex
+++ b/tex/context/base/page-bck.tex
@@ -380,7 +380,7 @@
%D \setupbackgrounds [top,...] [leftedge,...] [settings]
%D \stoptyping
%D
-%D \showsetup{\y!setupbackgrounds}
+%D \showsetup{setupbackgrounds}
%D
%D Because the number of arguments runs from one to three,
%D we need to check for it.
diff --git a/tex/context/base/page-ini.tex b/tex/context/base/page-ini.tex
index f309761fe..4035bb036 100644
--- a/tex/context/base/page-ini.tex
+++ b/tex/context/base/page-ini.tex
@@ -32,9 +32,9 @@
2: -- geladen
% 3: probeer LaTeX eens
4: commando -- is al gedefinieerd
- 5: macro's uit module -- geladen
- 6: geen macro's in module -- gevonden
- 7: macro's uit module -- reeds geladen
+ 5: module -- geladen
+ 6: geen module -- gevonden
+ 7: module -- reeds geladen
8: nieuwe versie hulpfile, tweede run nodig
9: -- niet gevonden/geplaatst
10: gebruik geen em in --
@@ -63,9 +63,9 @@
2: -- loaded
% 3: try LaTeX
4: command -- is already defined
- 5: macros of module -- loaded
- 6: no macros found in module --
- 7: macros of module -- already loaded
+ 5: module -- loaded
+ 6: module -- not found
+ 7: module -- already loaded
8: new version of utility file, second pass needed
9: -- not found/processed
10: don't use em in --
@@ -94,9 +94,9 @@
2: -- geladen
% 3: Versuche LaTeX
4: Befehl -- ist bereits definiert
- 5: Makros aus Modul -- geladen
- 6: Keine Makros in Modul -- gefunden
- 7: Makros aus Modul -- bereits geladen
+ 5: Modul -- geladen
+ 6: Modul -- gefunden
+ 7: Modul -- bereits geladen
8: Neue Version der Hilfsdatei, zweiter Durchlauf benoetigt
9: -- nicht gefunden/verarbeitet
10: Benutzte kein em in --
diff --git a/tex/context/base/page-lay.tex b/tex/context/base/page-lay.tex
index 0584bba74..5a5bafe24 100644
--- a/tex/context/base/page-lay.tex
+++ b/tex/context/base/page-lay.tex
@@ -258,7 +258,7 @@
%D either an assignment (for defaults) or an identifier, in
%D which case the second argument is an assignment.
%D
-%D \showsetup{\y!definepapersize}
+%D \showsetup{definepapersize}
\def\definepapersize
{\dodoubleempty\dodefinepapersize}
@@ -292,7 +292,7 @@
%D When setting up the papersize on which to typeset and
%D print, we can also determine some more characteristics.
%D
-%D \showsetup{\y!setuppapersize}
+%D \showsetup{setuppapersize}
%D
%D We keep track of these features with the following
%D variables.
@@ -1147,11 +1147,11 @@
%D
%D We predefine a couple of tracing macros.
%D
-%D \showsetup{\y!showprint}
-%D \showsetup{\y!showframe}
-%D \showsetup{\y!showlayout}
-%D \showsetup{\y!showsetups}
-%D %showsetup{\y!showmargins}
+%D \showsetup{showprint}
+%D \showsetup{showframe}
+%D \showsetup{showlayout}
+%D \showsetup{showsetups}
+%D %showsetup{showmargins}
\fetchruntimecommand \showprint {page-run}
\fetchruntimecommand \showframe {page-run}
diff --git a/tex/context/base/page-lin.tex b/tex/context/base/page-lin.tex
index a7e7baea0..789099d26 100644
--- a/tex/context/base/page-lin.tex
+++ b/tex/context/base/page-lin.tex
@@ -29,28 +29,67 @@
\def\setuplines
{\dodoubleargument\getparameters[\??rg]}
+% old
+%
+% \def\startlines
+% {\@@rgbefore
+% \whitespace
+% %\page[\v!preference]} gaat mis na koppen, nieuw: later \nobreak
+% \begingroup
+% \def \@@rgstepyes {\parindent\zeropoint}%
+% \def \@@rgstepno {\parindent\zeropoint}%
+% \edef\@@rgparindent{\the\parindent}%
+% \globallet\@@rglinesteptoggle\!!plusone
+% \processaction
+% [\@@rgindenting]
+% [ \v!yes=>\def\@@rgstepyes{\parindent\@@rgparindent}%
+% \def\@@rgstepno {\parindent\@@rgparindent},
+% \v!odd=>\def\@@rgstepyes{\parindent\zeropoint }%
+% \def\@@rgstepno {\parindent\@@rgparindent},
+% \v!even=>\def\@@rgstepno {\parindent\zeropoint }%
+% \def\@@rgstepyes{\parindent\@@rgparindent}]%
+% \typesettinglinestrue
+% \setupwhitespace[\v!none]%
+% \obeylines
+% \let\checkindentation\relax
+% \@@rgstepno
+% \ignorespaces
+% \gdef\afterfirstobeyedline % tzt two pass, net als opsomming
+% {\gdef\afterfirstobeyedline
+% {\nobreak
+% \global\let\afterfirstobeyedline\relax}}%
+% \def\obeyedline
+% {\par
+% \let\checkindentation\relax % else problems with odd/even
+% \afterfirstobeyedline
+% \ifdim\lastskip>\zeropoint
+% \globallet\@@rglinesteptoggle\!!zerocount
+% \else
+% \doglobal\increment\@@rglinesteptoggle
+% \fi
+% \ifodd\@@rglinesteptoggle\relax
+% \@@rgstepyes
+% \else
+% \@@rgstepno
+% \fi
+% \futurelet\next\dobetweenthelines}%
+% \activatespacehandler\@@rgspace
+% \GotoPar}
+%
+% \def\stoplines
+% {\endgroup
+% \@@rgafter}
+
\def\startlines
{\@@rgbefore
+ \pushmacro\checkindentation
\whitespace
%\page[\v!preference]} gaat mis na koppen, nieuw: later \nobreak
\begingroup
- \def \@@rgstepyes {\parindent\zeropoint}%
- \def \@@rgstepno {\parindent\zeropoint}%
- \edef\@@rgparindent{\the\parindent}%
- \globallet\@@rglinesteptoggle\!!plusone
- \processaction
- [\@@rgindenting]
- [ \v!yes=>\def\@@rgstepyes{\parindent\@@rgparindent}%
- \def\@@rgstepno {\parindent\@@rgparindent},
- \v!odd=>\def\@@rgstepyes{\parindent\zeropoint }%
- \def\@@rgstepno {\parindent\@@rgparindent},
- \v!even=>\def\@@rgstepno {\parindent\zeropoint }%
- \def\@@rgstepyes{\parindent\@@rgparindent}]%
+ \setupindenting[\@@rgindenting]%
\typesettinglinestrue
\setupwhitespace[\v!none]%
\obeylines
- \let\checkindentation\relax
- \@@rgstepno
\ignorespaces
\gdef\afterfirstobeyedline % tzt two pass, net als opsomming
{\gdef\afterfirstobeyedline
@@ -58,22 +97,16 @@
\global\let\afterfirstobeyedline\relax}}%
\def\obeyedline
{\par
- \let\checkindentation\relax % else problems with odd/even
\afterfirstobeyedline
- \ifdim\lastskip>\zeropoint
- \globallet\@@rglinesteptoggle\!!zerocount
- \else
- \doglobal\increment\@@rglinesteptoggle
- \fi
- \ifodd\@@rglinesteptoggle\relax
- \@@rgstepyes
- \else
- \@@rgstepno
- \fi
\futurelet\next\dobetweenthelines}%
\activatespacehandler\@@rgspace
\GotoPar}
+\def\stoplines
+ {\endgroup
+ \popmacro\checkindentation
+ \@@rgafter}
+
%D When spacing is active we need to handle commands in
%D a special way:
%D
@@ -88,6 +121,19 @@
%D Let's talk about this{\getvalue{ttsl}or}that.
%D \stoplines
%D \stoptyping
+%D
+%D One can indent in several ways:
+%D
+%D \starttyping
+%D \setupindenting[medium] \setuplines[indenting=odd] % no yes odd even
+%D
+%D \startlines
+%D first
+%D second
+%D third
+%D fourth
+%D \stoplines
+%D \stoptyping
% this is not the natural place
@@ -107,7 +153,7 @@
\installspacehandler \v!off
{\normalspaces
\let\obeyedspace\normalspace
- \let\ \normalspacetoken}
+ \let\ =\normalspace}
\def\activatespacehandler#1%
{\executeifdefined{\??sr#1}{\activatespacehandler\v!off}}
@@ -122,10 +168,6 @@
\def\dobetweenthelines
{\doifmeaningelse\next\obeyedline\@@rginbetween\donothing}
-\def\stoplines
- {\endgroup
- \@@rgafter}
-
% het gebruik van \setlocalreference scheelt een hash entry
\def\dodoshowlinenumber % for use elsewhere, to be extended
diff --git a/tex/context/base/page-log.tex b/tex/context/base/page-log.tex
index 65dcd7713..19411065e 100644
--- a/tex/context/base/page-log.tex
+++ b/tex/context/base/page-log.tex
@@ -211,8 +211,8 @@
%D macros for assigning logos to logo areas as well as
%D forcing placement.
%D
-%D \showsetup{\y!definelogo}
-%D \showsetup{\y!placelogos}
+%D \showsetup{definelogo}
+%D \showsetup{placelogos}
\let\definedlogos \empty
\let\requestedlogos\empty
diff --git a/tex/context/base/page-mak.tex b/tex/context/base/page-mak.tex
index fe3bfe40d..a6e5a66fd 100644
--- a/tex/context/base/page-mak.tex
+++ b/tex/context/base/page-mak.tex
@@ -30,9 +30,9 @@
%D
%D The associated commands are:
%D
-%D \showsetup{\y!definemakeup}
-%D \showsetup{\y!setupmakeup}
-%D \showsetup{\y!startmakeup}
+%D \showsetup{definemakeup}
+%D \showsetup{setupmakeup}
+%D \showsetup{startmakeup}
\def\definemakeup
{\dodoubleargument\dodefinemakeup}
diff --git a/tex/context/base/page-mar.tex b/tex/context/base/page-mar.tex
index 096ab8277..376a190ec 100644
--- a/tex/context/base/page-mar.tex
+++ b/tex/context/base/page-mar.tex
@@ -552,8 +552,16 @@
%D \dorecurse{10}{\margintext{test\\test\\test} \input thuan \endgraf}
%D \stoptyping
+% Test case:
+%
+% \setuppagenumbering[alternative=doublesided] \setupwhitespace[medium]
+%
+% \placefigure[right]{}{\externalfigure[dummy][width=2cm]}
+% \input tufte \inothermargin{test} \input tufte
+
\def\dodoinmargin[#1][#2][#3][#4][#5]#6%
{\bgroup
+ \forgetall % otherwise sidefloat problems, added 2005/07/20, maybe dangerous
\postponefootnotes % group is (somehow) needed
\doifinsetelse\v!low{#4}
{\chardef\margincontentdisplacement\plusone}
diff --git a/tex/context/base/page-txt.tex b/tex/context/base/page-txt.tex
index 2d71a3bf5..a36bf9256 100644
--- a/tex/context/base/page-txt.tex
+++ b/tex/context/base/page-txt.tex
@@ -58,11 +58,11 @@
%D than needed, which is a direct result of the fact that their
%D ancestors are quite old and upward compatibility is a must.
%D
-%D \showsetup{\y!setuptop}
-%D \showsetup{\y!setupheader}
-%D \showsetup{\y!setuptext}
-%D \showsetup{\y!setupfooter}
-%D \showsetup{\y!setupbottom}
+%D \showsetup{setuptop}
+%D \showsetup{setupheader}
+%D \showsetup{setuptext}
+%D \showsetup{setupfooter}
+%D \showsetup{setupbottom}
\def\setuplayouttext
{\dotripleempty\dosetuplayouttext}
@@ -89,8 +89,8 @@
%D Although not really needed, the following shortcuts
%D sometimes come in handy.
%D
-%D \showsetup{\y!noheaderandfooterlines}
-%D \showsetup{\y!notopandbottomlines}
+%D \showsetup{noheaderandfooterlines}
+%D \showsetup{notopandbottomlines}
\def\noheaderandfooterlines
{\setupheader[\c!state=\v!empty]%
@@ -110,11 +110,11 @@
%D When margin and edge texts as well as middle texts showed
%D up, the current odd|/|even scheme surfaced.
%D
-%D \showsetup{\y!setuptoptexts}
-%D \showsetup{\y!setupheadertexts}
-%D \showsetup{\y!setuptexttexts}
-%D \showsetup{\y!setupfootertexts}
-%D \showsetup{\y!setupbottomtexts}
+%D \showsetup{setuptoptexts}
+%D \showsetup{setupheadertexts}
+%D \showsetup{setuptexttexts}
+%D \showsetup{setupfootertexts}
+%D \showsetup{setupbottomtexts}
\def\setuptoptexts {\dosixtupleempty\dosetuptexts[\v!top]}
\def\setupheadertexts {\dosixtupleempty\dosetuptexts[\v!header]}
@@ -595,7 +595,7 @@
%D \type {unknown}. This one is used to take care of
%D symbolic texts handlers.
%D
-%D \showsetup{\y!definetext}
+%D \showsetup{definetext}
%D
%D The next example demonstrates how we can use this
%D mechanism to provide page (event) dependent text lines.
diff --git a/tex/context/base/regi-lat.tex b/tex/context/base/regi-lat.tex
index 9a561628a..e3f3aa15a 100644
--- a/tex/context/base/regi-lat.tex
+++ b/tex/context/base/regi-lat.tex
@@ -11,24 +11,24 @@
%C therefore copyrighted by \PRAGMA. See mreadme.pdf for
%C details.
-%D This file maps \ISO~latin~2 characters onto standard
-%D \ASCII\ characters. Some more definitions will be added.
+%D This file maps \ISO~latin~2 characters onto standard
+%D \ASCII\ characters. Some more definitions will be added.
\startregime[latin2]
\defineactivetoken æ {\cacute}
-\defineactivetoken Æ {\Cacute}
+\defineactivetoken Æ {\Cacute}
-\defineactivetoken è {\ccaron}
+\defineactivetoken è {\ccaron}
\defineactivetoken È {\Ccaron}
-\defineactivetoken ¹ {\scaron}
-\defineactivetoken © {\Scaron}
-\defineactivetoken ¾ {\zcaron}
-\defineactivetoken ® {\Zcaron}
+\defineactivetoken ¹ {\scaron}
+\defineactivetoken © {\Scaron}
+\defineactivetoken ¾ {\zcaron}
+\defineactivetoken ® {\Zcaron}
-\defineactivetoken ð {\pseudoencodeddj}
-\defineactivetoken Ð {\pseudoencodedDJ}
+\defineactivetoken ð {\dstroke}
+\defineactivetoken Ð {\Dstroke}
\stopregime
-\endinput
+\endinput
diff --git a/tex/context/base/s-mod-00.tex b/tex/context/base/s-mod-00.tex
index ce260236d..d585b04f9 100644
--- a/tex/context/base/s-mod-00.tex
+++ b/tex/context/base/s-mod-00.tex
@@ -491,9 +491,13 @@
\unprotect
-\def\showsetup
- {\doglobal\newcounter\CurrentArgument
- \setup}
+% \def\showsetup
+% {\doglobal\newcounter\CurrentArgument
+% \setup}
+
+\def\showsetup#1%
+ {{\def\y##1{\writestatus{setups}{warning: remove y! from #1}}%
+ \setup{#1}}}
\setupframedtexts
[setuptext]
diff --git a/tex/context/base/spec-fdf.tex b/tex/context/base/spec-fdf.tex
index 7b565af21..7bd1c3277 100644
--- a/tex/context/base/spec-fdf.tex
+++ b/tex/context/base/spec-fdf.tex
@@ -789,7 +789,7 @@
\def\PDFexecutesavenamed {/Named /N /SaveAs}
\def\PDFexecuteopennamed {/Named /N /Open}
\def\PDFexecutehelp {/Named /N /HelpUserGuide}
-\def\PDFexecuteswap {/Named /N /FullScreen}
+\def\PDFexecutetoggle {/Named /N /FullScreen}
\def\PDFexecutesearch {/Named /N /Find}
\def\PDFexecutesearchagain {/Named /N /FindAgain}
\def\PDFexecutegotopage {/Named /N /GoToPage}
diff --git a/tex/context/base/supp-fun.tex b/tex/context/base/supp-fun.tex
index 8d46a49f2..5f0700deb 100644
--- a/tex/context/base/supp-fun.tex
+++ b/tex/context/base/supp-fun.tex
@@ -700,7 +700,7 @@
\else
\exitloop
\fi}%
- \writestatus{\strippedcsname\FittingText}{height: \the\!!heighta}%
+ %\writestatus{\strippedcsname\FittingText}{height: \the\!!heighta}%
\unvbox\scratchbox
\egroup}
diff --git a/tex/context/base/supp-pdf.tex b/tex/context/base/supp-pdf.tex
index 0ccadb350..f2246a4b1 100644
--- a/tex/context/base/supp-pdf.tex
+++ b/tex/context/base/supp-pdf.tex
@@ -864,9 +864,6 @@
\dimen2=\MPyscale\dimen2
\xdef\MPheight{\the\dimen2}%
\chardef\currentMPboundingbox#1\relax
- \else
- \xdef\MPheight{\zeropoint}%
- \xdef\MPwidth {\zeropoint}%
\fi
\doresetMPstack
\let\handleMPsequence\dohandleMPsequence
@@ -2049,6 +2046,8 @@
{\bgroup
\ifx\pdfdecimaldigits\undefined\else \pdfdecimaldigits=5 \fi % new
\setbox\scratchbox\vbox\bgroup
+ \xdef\MPheight{\zeropoint}%
+ \xdef\MPwidth {\zeropoint}%
\forgetall
\offinterlineskip
\startMPresources
diff --git a/tex/context/base/supp-ran.tex b/tex/context/base/supp-ran.tex
index c21d677b8..1266c0e0f 100644
--- a/tex/context/base/supp-ran.tex
+++ b/tex/context/base/supp-ran.tex
@@ -89,7 +89,7 @@
\ifx\nextrandom\undefined \endinput \fi
-\ifx\ptexuniformdeviate\undefined
+\ifx\normaluniformdeviate\undefined
\let\verynormalnextrandom\nextrandom
@@ -112,25 +112,27 @@
% \def\normalnextrandom
% {\setrandomseed\randomi
- % \global\randomi\ptexuniformdeviate2147483647\relax}
+ % \global\randomi\normaluniformdeviate2147483647\relax}
% Taco suggested to use the following alternative because \type
- % {\ptexuniformdeviate} can return a zero (as expected) while
+ % {\normaluniformdeviate} can return a zero (as expected) while
% Donalds's alternative has a minimum of~1.
\beginTEX
\def\nextrandom
- {\ptexsetrandomseed\randomi
- \global\randomi\ptexuniformdeviate2147483646%
+ {\normalsetrandomseed\randomi
+ \global\randomi\normaluniformdeviate2147483646%
\global\advance\randomi\plusone}
\endTEX
\beginETEX \numexpr
\def\nextrandom
- {\ptexsetrandomseed\randomi
- \global\randomi\numexpr\ptexuniformdeviate2147483646+1\relax}
+ {\normalsetrandomseed\randomi
+ \global\randomi\numexpr\normaluniformdeviate2147483646+1\relax}
\endETEX
+ \let\normalnextrandom\nextrandom
+
\fi
\def\nextrandom
diff --git a/tex/context/base/symb-ini.tex b/tex/context/base/symb-ini.tex
index 4cbce60b9..496292c57 100644
--- a/tex/context/base/symb-ini.tex
+++ b/tex/context/base/symb-ini.tex
@@ -65,8 +65,8 @@
%D First we take care of symbols. These are for instance used
%D in enumerations and itemizations. We have:
%D
-%D \showsetup{\y!definesymbol}
-%D \showsetup{\y!symbol}
+%D \showsetup{definesymbol}
+%D \showsetup{symbol}
%D
%D Symbols are simply linked to a tag. Such tags can be numbers
%D or strings.
@@ -167,7 +167,7 @@
%D
%D To simplify defining figure symbols, we offer:
%D
-%D \showsetup{\y!definefiguresymbol}
+%D \showsetup{definefiguresymbol}
%D
%D By default, such symbols scale along the current bodyfont
%D size or running font size (which is better).
@@ -256,8 +256,8 @@
%D
%D Formally:
%D
-%D \showsetup{\y!setupsymbolset}
-%D \showsetup{\y!startsymbolset}
+%D \showsetup{setupsymbolset}
+%D \showsetup{startsymbolset}
\let\currentsymboldef\empty
@@ -281,14 +281,14 @@
%D \macros
%D {showsymbolset}
%D
-%D \showsetup{\y!showsymbolset}
+%D \showsetup{showsymbolset}
\fetchruntimecommand \showsymbolset {\f!symbolprefix\s!run}
%D \macros
%D {usesymbols}
%D
-%D \showsetup{\y!usesymbols}
+%D \showsetup{usesymbols}
\def\dousesymbols#1%
{\makeshortfilename[\f!symbolprefix#1]%
diff --git a/tex/context/base/syst-ext.tex b/tex/context/base/syst-ext.tex
index 50a8792e0..51376ce78 100644
--- a/tex/context/base/syst-ext.tex
+++ b/tex/context/base/syst-ext.tex
@@ -3955,7 +3955,7 @@
%D But, if you run a recent version of \TEX, we can use the new
%D primitive:
-\ifx\quitvmode\undefined \else \let\dontleavehmode\quitvmode \fi
+\ifx\normalquitvmode\undefined \else \let\dontleavehmode\normalquitvmode \fi
%D \macros
%D {uppercasestring,lowercasestring}
diff --git a/tex/context/base/syst-prm.tex b/tex/context/base/syst-prm.tex
index f282d0baa..4eda366e5 100644
--- a/tex/context/base/syst-prm.tex
+++ b/tex/context/base/syst-prm.tex
@@ -135,16 +135,18 @@
%D in mono spaced fonts). Alas, we need to do some testing in order
%S to get to the ptex'd one.
-\ifx\ptexnoligatures\undefined
- \ifx\noligatures\undefined
- \def\noligatures#1{}
- \else
- % let's assume that it takes a font tag as argument
- \fi
-\else
- \let\noligatures\ptexnoligatures
-\fi
-
-\let\normalnoligatures\noligatures
+\def\checkpdftexprimitive #1
+ {\expandafter\ifx\csname #1\endcsname\relax
+ \expandafter\ifx\csname pdf#1\endcsname\relax
+ \expandafter\ifx\csname ptex#1\endcsname\relax
+ \expandafter\let\csname normal#1\endcsname \undefined \else
+ \expandafter\let\csname normal#1\expandafter\endcsname\csname ptex#1\endcsname \fi \else
+ \expandafter\let\csname normal#1\expandafter\endcsname\csname pdf#1\endcsname \fi \else
+ \expandafter\let\csname normal#1\expandafter\endcsname\csname #1\endcsname \fi}
+
+\checkpdftexprimitive quitvmode
+\checkpdftexprimitive noligatures
+\checkpdftexprimitive setrandomseed
+\checkpdftexprimitive uniformdeviate
\protect \endinput
diff --git a/tex/context/base/verb-ini.tex b/tex/context/base/verb-ini.tex
index b07b73048..c38c3f6f4 100644
--- a/tex/context/base/verb-ini.tex
+++ b/tex/context/base/verb-ini.tex
@@ -97,7 +97,9 @@
%D complete font||style switch. There we could have stuck with
%D \type{\tttf}.
-\ifx \undefined \verbatimfont \def\verbatimfont {\tt\normalnoligatures\font} \fi
+\ifx\verbatimfont\undefined \def\verbatimfont{\tt\normalnoligatures\font} \fi
+
+\ifx\normalnoligatures\undefined \let\normalnoligatures\gobbleoneargument \fi
%D \macros
%D {obeyedspace, obeyedtab, obeyedline, obeyedpage}
@@ -124,7 +126,7 @@
%D of \type{\obeyedspace} to:
\def\controlspace{\hbox{\char32}}
-\let\normalspacetoken=\
+\def\normalspace { }
\def\normalspaces{\catcode`\ =\@@space}
\bgroup
diff --git a/tex/context/base/x-set-02.tex b/tex/context/base/x-set-02.tex
index 05f1616c6..0582aadc5 100644
--- a/tex/context/base/x-set-02.tex
+++ b/tex/context/base/x-set-02.tex
@@ -30,4 +30,6 @@
\input mult-con.tex
\input mult-com.tex
+% we need to replace the y! by just the name
+
\egroup \protect \endinput
diff --git a/tex/context/base/xtag-ini.tex b/tex/context/base/xtag-ini.tex
index 7ba173050..2bf010824 100644
--- a/tex/context/base/xtag-ini.tex
+++ b/tex/context/base/xtag-ini.tex
@@ -2511,7 +2511,11 @@
{{\enableXML\scantokens{#1}\unskip}}
\long\def\XMLstr#1% test, does not work
- {\begingroup\enableXML\scantokens{#1<endgroup/><gobblespacetokens/>}}
+ {\ifprocessingXML
+ \begingroup\enableXML\scantokens{#1<endgroup/><gobblespacetokens/>}%
+ \else
+ \begingroup\enableXML\scantokens{#1<endgroup/>\ignorespaces}%
+ \fi}
\def\XMLgetvariable#1#2% hooks into generic \getvariable and setvariables
{\expanded{\XMLstr{\getvariable{#1}{#2}}}}
diff --git a/tex/context/interface/keys-cz.xml b/tex/context/interface/keys-cz.xml
index 9f03c9c56..488319ef7 100644
--- a/tex/context/interface/keys-cz.xml
+++ b/tex/context/interface/keys-cz.xml
@@ -1,6 +1,6 @@
<?xml version="1.0"?>
-<cd:interface xmlns:cd="http://www.pragma-ade.com/commands" name="context" language="cz" version="2005.07.13">
+<cd:interface xmlns:cd="http://www.pragma-ade.com/commands" name="context" language="cz" version="2005.07.20">
<cd:variables>
<cd:variable name="one" value="jedna"/>
@@ -580,6 +580,7 @@
<cd:variable name="smallboldslanted" value="maletucnesklonene"/>
<cd:variable name="smallbolditalic" value="maletucnekurzivni"/>
<cd:variable name="smallbodyfont" value="smallbodyfont"/>
+ <cd:variable name="toggle" value="toggle"/>
<cd:variable name="color" value="barevne"/>
<cd:variable name="column" value="column"/>
<cd:variable name="columns" value="sloupce"/>
@@ -859,7 +860,7 @@
<cd:variable name="LastPage" value="PosledniStrana"/>
<cd:variable name="PreviousJump" value="PredchoziSkok"/>
<cd:variable name="NextJump" value="NasledujiciSkok"/>
- <cd:variable name="SwapViewer" value="ZmenitProhlizec"/>
+ <cd:variable name="ToggleViewer" value="ZmenitProhlizec"/>
<cd:variable name="ExitViewer" value="UkoncitProhlizec"/>
<cd:variable name="CloseDocument" value="ZavritDokument"/>
<cd:variable name="SaveDocument" value="UlozitDokument"/>
diff --git a/tex/context/interface/keys-de.xml b/tex/context/interface/keys-de.xml
index 2949a5429..ab1369627 100644
--- a/tex/context/interface/keys-de.xml
+++ b/tex/context/interface/keys-de.xml
@@ -1,6 +1,6 @@
<?xml version="1.0"?>
-<cd:interface xmlns:cd="http://www.pragma-ade.com/commands" name="context" language="de" version="2005.07.13">
+<cd:interface xmlns:cd="http://www.pragma-ade.com/commands" name="context" language="de" version="2005.07.20">
<cd:variables>
<cd:variable name="one" value="eins"/>
@@ -580,6 +580,7 @@
<cd:variable name="smallboldslanted" value="kleinfettgeneigt"/>
<cd:variable name="smallbolditalic" value="kleinfettitalic"/>
<cd:variable name="smallbodyfont" value="smallbodyfont"/>
+ <cd:variable name="toggle" value="toggle"/>
<cd:variable name="color" value="farbe"/>
<cd:variable name="column" value="column"/>
<cd:variable name="columns" value="spalten"/>
@@ -859,7 +860,7 @@
<cd:variable name="LastPage" value="LetzteSeite"/>
<cd:variable name="PreviousJump" value="VorigerSprung"/>
<cd:variable name="NextJump" value="NaechsterSprung"/>
- <cd:variable name="SwapViewer" value="WechseleViewer"/>
+ <cd:variable name="ToggleViewer" value="WechseleViewer"/>
<cd:variable name="ExitViewer" value="BeendeViewer"/>
<cd:variable name="CloseDocument" value="SchliesseDokument"/>
<cd:variable name="SaveDocument" value="SpeichereDokument"/>
diff --git a/tex/context/interface/keys-en.xml b/tex/context/interface/keys-en.xml
index 934a84212..1a5fe3084 100644
--- a/tex/context/interface/keys-en.xml
+++ b/tex/context/interface/keys-en.xml
@@ -1,6 +1,6 @@
<?xml version="1.0"?>
-<cd:interface xmlns:cd="http://www.pragma-ade.com/commands" name="context" language="en" version="2005.07.13">
+<cd:interface xmlns:cd="http://www.pragma-ade.com/commands" name="context" language="en" version="2005.07.20">
<cd:variables>
<cd:variable name="one" value="one"/>
@@ -580,6 +580,7 @@
<cd:variable name="smallboldslanted" value="smallboldslanted"/>
<cd:variable name="smallbolditalic" value="smallbolditalic"/>
<cd:variable name="smallbodyfont" value="smallbodyfont"/>
+ <cd:variable name="toggle" value="wissel"/>
<cd:variable name="color" value="color"/>
<cd:variable name="column" value="column"/>
<cd:variable name="columns" value="columns"/>
@@ -859,7 +860,7 @@
<cd:variable name="LastPage" value="LastPage"/>
<cd:variable name="PreviousJump" value="PreviousJump"/>
<cd:variable name="NextJump" value="NextJump"/>
- <cd:variable name="SwapViewer" value="SwapViewer"/>
+ <cd:variable name="ToggleViewer" value="ToggleViewer"/>
<cd:variable name="ExitViewer" value="ExitViewer"/>
<cd:variable name="CloseDocument" value="CloseDocument"/>
<cd:variable name="SaveDocument" value="SaveDocument"/>
diff --git a/tex/context/interface/keys-it.xml b/tex/context/interface/keys-it.xml
index 827cfa68d..ff789ac1d 100644
--- a/tex/context/interface/keys-it.xml
+++ b/tex/context/interface/keys-it.xml
@@ -1,6 +1,6 @@
<?xml version="1.0"?>
-<cd:interface xmlns:cd="http://www.pragma-ade.com/commands" name="context" language="it" version="2005.07.13">
+<cd:interface xmlns:cd="http://www.pragma-ade.com/commands" name="context" language="it" version="2005.07.20">
<cd:variables>
<cd:variable name="one" value="uno"/>
@@ -580,6 +580,7 @@
<cd:variable name="smallboldslanted" value="piccolograssettoinclinato"/>
<cd:variable name="smallbolditalic" value="piccolograssettocorsivo"/>
<cd:variable name="smallbodyfont" value="piccolofontdelcorpo"/>
+ <cd:variable name="toggle" value="toggle"/>
<cd:variable name="color" value="colore"/>
<cd:variable name="column" value="colonna"/>
<cd:variable name="columns" value="colonne"/>
@@ -859,7 +860,7 @@
<cd:variable name="LastPage" value="UltimaPagina"/>
<cd:variable name="PreviousJump" value="SaltoPrecedente"/>
<cd:variable name="NextJump" value="SaltoSuccessivo"/>
- <cd:variable name="SwapViewer" value="ScambiaVisualizzatore"/>
+ <cd:variable name="ToggleViewer" value="ScambiaVisualizzatore"/>
<cd:variable name="ExitViewer" value="EsciVisualizzatore"/>
<cd:variable name="CloseDocument" value="ChiudiDocumento"/>
<cd:variable name="SaveDocument" value="SalvaDocumento"/>
diff --git a/tex/context/interface/keys-nl.xml b/tex/context/interface/keys-nl.xml
index a99564f22..20033059a 100644
--- a/tex/context/interface/keys-nl.xml
+++ b/tex/context/interface/keys-nl.xml
@@ -1,6 +1,6 @@
<?xml version="1.0"?>
-<cd:interface xmlns:cd="http://www.pragma-ade.com/commands" name="context" language="nl" version="2005.07.13">
+<cd:interface xmlns:cd="http://www.pragma-ade.com/commands" name="context" language="nl" version="2005.07.20">
<cd:variables>
<cd:variable name="one" value="een"/>
@@ -580,6 +580,7 @@
<cd:variable name="smallboldslanted" value="kleinvetschuin"/>
<cd:variable name="smallbolditalic" value="kleinvetitalic"/>
<cd:variable name="smallbodyfont" value="kleinkorps"/>
+ <cd:variable name="toggle" value="toggle"/>
<cd:variable name="color" value="kleur"/>
<cd:variable name="column" value="kolom"/>
<cd:variable name="columns" value="kolommen"/>
@@ -859,7 +860,7 @@
<cd:variable name="LastPage" value="LaatstePagina"/>
<cd:variable name="PreviousJump" value="VorigeSprong"/>
<cd:variable name="NextJump" value="VolgendeSprong"/>
- <cd:variable name="SwapViewer" value="WisselViewer"/>
+ <cd:variable name="ToggleViewer" value="WisselViewer"/>
<cd:variable name="ExitViewer" value="VerlaatViewer"/>
<cd:variable name="CloseDocument" value="SluitDocument"/>
<cd:variable name="SaveDocument" value="BewaarDocument"/>
diff --git a/tex/context/interface/keys-ro.xml b/tex/context/interface/keys-ro.xml
index 9aa242014..12dac844e 100644
--- a/tex/context/interface/keys-ro.xml
+++ b/tex/context/interface/keys-ro.xml
@@ -1,6 +1,6 @@
<?xml version="1.0"?>
-<cd:interface xmlns:cd="http://www.pragma-ade.com/commands" name="context" language="ro" version="2005.07.13">
+<cd:interface xmlns:cd="http://www.pragma-ade.com/commands" name="context" language="ro" version="2005.07.20">
<cd:variables>
<cd:variable name="one" value="unu"/>
@@ -580,6 +580,7 @@
<cd:variable name="smallboldslanted" value="micaldininclinat"/>
<cd:variable name="smallbolditalic" value="micaldininclinat"/>
<cd:variable name="smallbodyfont" value="smallbodyfont"/>
+ <cd:variable name="toggle" value="toggle"/>
<cd:variable name="color" value="culoare"/>
<cd:variable name="column" value="coloana"/>
<cd:variable name="columns" value="coloane"/>
@@ -859,7 +860,7 @@
<cd:variable name="LastPage" value="UltimaPagina"/>
<cd:variable name="PreviousJump" value="SaltPrecedent"/>
<cd:variable name="NextJump" value="SaltUrmator"/>
- <cd:variable name="SwapViewer" value="SchimbaVizualizator"/>
+ <cd:variable name="ToggleViewer" value="SchimbaVizualizator"/>
<cd:variable name="ExitViewer" value="IesireVizualizator"/>
<cd:variable name="CloseDocument" value="InchideDocument"/>
<cd:variable name="SaveDocument" value="SalvareDocument"/>