summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--scripts/context/ruby/base/ctx.rb23
-rw-r--r--scripts/context/ruby/base/tex.rb119
-rw-r--r--scripts/context/ruby/base/texutil.rb36
-rw-r--r--scripts/context/ruby/base/tool.rb2
-rw-r--r--scripts/context/ruby/ctxtools.rb17
-rw-r--r--scripts/context/ruby/rlxtools.rb4
-rw-r--r--scripts/context/ruby/texexec.rb8
-rw-r--r--scripts/context/ruby/texmfstart.rb39
-rw-r--r--tex/context/base/cont-new.tex57
-rw-r--r--tex/context/base/context.tex2
-rw-r--r--tex/context/base/x-res-08.tex4
-rw-r--r--tex/context/interface/keys-cz.xml2
-rw-r--r--tex/context/interface/keys-de.xml2
-rw-r--r--tex/context/interface/keys-en.xml2
-rw-r--r--tex/context/interface/keys-fr.xml4
-rw-r--r--tex/context/interface/keys-it.xml2
-rw-r--r--tex/context/interface/keys-nl.xml2
-rw-r--r--tex/context/interface/keys-ro.xml2
18 files changed, 184 insertions, 143 deletions
diff --git a/scripts/context/ruby/base/ctx.rb b/scripts/context/ruby/base/ctx.rb
index e39751fb6..0baf5a88b 100644
--- a/scripts/context/ruby/base/ctx.rb
+++ b/scripts/context/ruby/base/ctx.rb
@@ -59,7 +59,6 @@ class CtxRunner
end
# name can be kpse:res-make.ctx
-
if not FileTest.file?(@ctxname) then
fullname, done = '', false
if @ctxname =~ /^kpse:/ then
@@ -142,7 +141,6 @@ class CtxRunner
begin
suffix = REXML::XPath.match(@xmldata.root,"/ctx:job/ctx:preprocess/@suffix").to_s
rescue
- puts $!
suffix = @@suffix
else
if suffix && suffix.empty? then suffix = @@suffix end
@@ -151,10 +149,23 @@ class CtxRunner
REXML::XPath.each(files,"ctx:file") do |pattern|
preprocessor = pattern.attributes['processor']
if preprocessor and not preprocessor.empty? then
+ begin
+ variables['old'] = @jobname
+ variables['new'] = ""
+ REXML::XPath.each(pattern,"ctx:value") do |value|
+ if name = value.attributes['name'] then
+ substititute(value,variables[name.to_s])
+ end
+ end
+ rescue
+ report('unable to resolve file pattern')
+ return
+ end
pattern = justtext(pattern)
Dir.glob(pattern).each do |oldfile|
newfile = "#{oldfile}.#{suffix}"
if File.needsupdate(oldfile,newfile) then
+ report("#{oldfile} needs preprocessing")
begin
File.delete(newfile)
rescue
@@ -222,7 +233,8 @@ class CtxRunner
log << "<?xml version='1.0' standalone='yes'?>\n\n"
log << "<ctx:preplist>\n"
@prepfiles.keys.sort.each do |prep|
- log << "\t<ctx:prepfile done='#{yes_or_no(@prepfiles[prep])}'>#{File.basename(prep)}</ctx:prepfile>\n"
+ # log << "\t<ctx:prepfile done='#{yes_or_no(@prepfiles[prep])}'>#{File.basename(prep)}</ctx:prepfile>\n"
+ log << "\t<ctx:prepfile done='#{yes_or_no(@prepfiles[prep])}'>#{prep}</ctx:prepfile>\n"
end
log << "</ctx:preplist>\n"
log.close
@@ -338,7 +350,10 @@ class CtxRunner
when 'suffix' then if str =~ /^.*\.(.*?)$/o then $1 else '' end
when 'nosuffix' then if str =~ /^(.*)\..*?$/o then $1 else str end
when 'nopath' then if str =~ /^.*[\\\/](.*?)$/o then $1 else str end
- else str
+ when 'full' then str
+ when 'complete' then str
+ when 'expand' then File.expand_path(str).gsub(/\\/,"/")
+ else str
end
end
diff --git a/scripts/context/ruby/base/tex.rb b/scripts/context/ruby/base/tex.rb
index 16544c420..c09327725 100644
--- a/scripts/context/ruby/base/tex.rb
+++ b/scripts/context/ruby/base/tex.rb
@@ -839,36 +839,10 @@ class TEX
end
end
- def makestubfile(rawname,forcexml=false)
- if tmp = openedfile(File.suffixed(rawname,'run')) then
+ def makestubfile(rawname,rawbase,forcexml=false)
+ if tmp = openedfile(File.suffixed(rawbase,'run')) then
tmp << "\\starttext\n"
if forcexml then
- # if FileTest.file?(rawname) && (xml = File.open(rawname)) then
- # xml.each do |line|
- # case line
- # when /<\?context\-directive\s+(\S+)\s+(\S+)\s+(\S+)\s*(.*?)\s*\?>/o then
- # category, key, value, rest = $1, $2, $3, $4
- # case category
- # when 'job' then
- # case key
- # when 'control' then
- # setvariable(value,if rest.empty? then true else rest end)
- # when 'mode', 'modes' then
- # tmp << "\\enablemode[#{value}]\n"
- # when 'stylefile', 'environment' then
- # tmp << "\\environment #{value}\n"
- # when 'module' then
- # tmp << "\\usemodule[#{value}]\n"
- # when 'interface' then
- # contextinterface = value
- # end
- # end
- # when /<[a-z]+/io then # beware of order, first pi test
- # break
- # end
- # end
- # xml.close
- # end
tmp << checkxmlfile(rawname)
tmp << "\\processXMLfilegrouped{#{rawname}}\n"
else
@@ -1370,11 +1344,11 @@ class TEX
takeprecautions
report("using search method '#{Kpse.searchmethod}'") if getvariable('verbose')
- rawname = getvariable('filename')
- jobname = getvariable('filename')
- suffix = getvariable('suffix')
- result = getvariable('result')
-
+ rawname = getvariable('filename')
+ jobname = getvariable('filename')
+ suffix = getvariable('suffix')
+ result = getvariable('result')
+ forcexml = getvariable('forcexml')
runonce = getvariable('once')
finalrun = getvariable('final') || (getvariable('arrange') && ! getvariable('noarrange'))
globalfile = getvariable('globalfile')
@@ -1400,7 +1374,9 @@ class TEX
PDFview.closeall if getvariable('autopdf')
- forcexml = jobsuffix.match(/^(xml|fo|fox|rlg|exa)$/io) # nil or match
+ if jobsuffix =~ /^(htm|html|xhtml|xml|fo|fox|rlg|exa)$/io then
+ forcexml = true
+ end
dummyfile = false
@@ -1417,24 +1393,31 @@ class TEX
rawname = jobname + '.' + jobsuffix
+ rawpath = File.dirname(rawname)
+ rawbase = File.basename(rawname)
+
unless FileTest.file?(rawname) then
inppath.split(',').each do |ip|
break if dummyfile = FileTest.file?(File.join(ip,rawname))
end
end
- jobsuffix = makestubfile(rawname,forcexml) if dummyfile || forcexml
+ jobsuffix = makestubfile(rawname,rawbase,forcexml) if dummyfile || forcexml
# preprocess files
unless getvariable('noctx') then
ctx = CtxRunner.new(rawname,@logger)
if getvariable('ctxfile').empty? then
- ctx.manipulate(File.suffixed(rawname,'ctx'),'jobname.ctx')
+ if rawname == rawbase then
+ ctx.manipulate(File.suffixed(rawname,'ctx'),'jobname.ctx')
+ else
+ ctx.manipulate(File.suffixed(rawname,'ctx'),File.join(rawpath,'jobname.ctx'))
+ end
else
ctx.manipulate(File.suffixed(getvariable('ctxfile'),'ctx'))
end
- ctx.savelog(File.suffixed(rawname,'ctl'))
+ ctx.savelog(File.suffixed(rawbase,'ctl'))
envs = ctx.environments
mods = ctx.modules
@@ -1465,7 +1448,7 @@ class TEX
end
result = File.suffixed(rawname,suffix) unless suffix.empty?
- pushresult(rawname,result)
+ pushresult(rawbase,result)
method = validtexmethod(validtexformat(getvariable('texformats')))
@@ -1475,16 +1458,16 @@ class TEX
when 'context' then
if getvariable('simplerun') || runonce then
- makeoptionfile(rawname,jobname,orisuffix,true,true,3,1) unless getvariable('nooptionfile')
- ok = runtex(rawname)
+ makeoptionfile(rawbase,jobname,orisuffix,true,true,3,1) unless getvariable('nooptionfile')
+ ok = runtex(if dummyfile || forcexml then rawbase else rawname end)
if ok then
- ok = runtexutil(rawname) if getvariable('texutil') || getvariable('forcetexutil')
- runbackend(rawname)
- popresult(rawname,result)
+ ok = runtexutil(rawbase) if getvariable('texutil') || getvariable('forcetexutil')
+ runbackend(rawbase)
+ popresult(rawbase,result)
end
if getvariable('keep') then
- ['top','log'].each do |suffix|
- File.silentrename(File.suffixed(rawname,suffix),File.suffixed(rawname,suffix+'.keep'))
+ ['top','log','run'].each do |suffix|
+ File.silentrename(File.suffixed(rawbase,suffix),File.suffixed(rawbase,suffix+'.keep'))
end
end
else
@@ -1492,11 +1475,11 @@ class TEX
texruns, nofruns = 0, getvariable('runs').to_i
state = FileState.new
['tub','tuo'].each do |s|
- state.register(File.suffixed(rawname,s))
+ state.register(File.suffixed(rawbase,s))
end
if getvariable('automprun') then # check this
['mprun','mpgraph'].each do |s|
- state.register(File.suffixed(rawname,s,'mp'),'randomseed')
+ state.register(File.suffixed(rawbase,s,'mp'),'randomseed')
end
end
while ! stoprunning && (texruns < nofruns) && ok do
@@ -1504,48 +1487,48 @@ class TEX
report("TeX run #{texruns}")
unless getvariable('nooptionfile') then
if texruns == nofruns then
- makeoptionfile(rawname,jobname,orisuffix,false,false,4,texruns) # last
+ makeoptionfile(rawbase,jobname,orisuffix,false,false,4,texruns) # last
elsif texruns == 1 then
- makeoptionfile(rawname,jobname,orisuffix,false,false,1,texruns) # first
+ makeoptionfile(rawbase,jobname,orisuffix,false,false,1,texruns) # first
else
- makeoptionfile(rawname,jobname,orisuffix,false,false,2,texruns) # unknown
+ makeoptionfile(rawbase,jobname,orisuffix,false,false,2,texruns) # unknown
end
end
- ok = runtex(File.suffixed(rawname,jobsuffix))
+ ok = runtex(File.suffixed(if dummyfile || forcexml then rawbase else rawname end,jobsuffix))
if ok && (nofruns > 1) then
unless getvariable('nompmode') then
- mprundone = runtexmpjob(rawname, "mpgraph")
- mprundone = runtexmpjob(rawname, "mprun")
+ mprundone = runtexmpjob(rawbase, "mpgraph")
+ mprundone = runtexmpjob(rawbase, "mprun")
end
- ok = runtexutil(rawname)
+ ok = runtexutil(rawbase)
state.update
stoprunning = state.stable?
end
end
- ok = runtexutil(rawname) if (nofruns == 1) && getvariable('texutil')
+ ok = runtexutil(rawbase) if (nofruns == 1) && getvariable('texutil')
if ok && finalrun && (nofruns > 1) then
- makeoptionfile(rawname,jobname,orisuffix,true,finalrun,4,texruns) unless getvariable('nooptionfile')
+ makeoptionfile(rawbase,jobname,orisuffix,true,finalrun,4,texruns) unless getvariable('nooptionfile')
report("final TeX run #{texruns}")
- ok = runtex(File.suffixed(rawname,jobsuffix))
+ ok = runtex(File.suffixed(if dummyfile || forcexml then rawbase else rawname end,jobsuffix))
end
if getvariable('keep') then
- ['top','log'].each do |suffix|
- File.silentrename(File.suffixed(rawname,suffix),File.suffixed(rawname,suffix+'.keep'))
+ ['top','log','run'].each do |suffix|
+ File.silentrename(File.suffixed(rawbase,suffix),File.suffixed(rawbase,suffix+'.keep'))
end
else
- File.silentrename(File.suffixed(rawname,'top'),File.suffixed(rawname,'tmp'))
+ File.silentrename(File.suffixed(rawbase,'top'),File.suffixed(rawbase,'tmp'))
end
# ['tmp','top','log'].each do |s| # previous tuo file / runtime option file / log file
- # File.silentdelete(File.suffixed(rawname,s))
+ # File.silentdelete(File.suffixed(rawbase,s))
# end
if ok then
- runbackend(rawname)
- popresult(rawname,result)
+ runbackend(rawbase)
+ popresult(rawbase,result)
end
end
- Kpse.runscript('ctxtools',rawname,'--purge') if getvariable('purge')
- Kpse.runscript('ctxtools',rawname,'--purgeall') if getvariable('purgeall')
+ Kpse.runscript('ctxtools',rawbase,'--purge') if getvariable('purge')
+ Kpse.runscript('ctxtools',rawbase,'--purgeall') if getvariable('purgeall')
when 'latex' then
@@ -1557,16 +1540,16 @@ class TEX
end
- if (dummyfile or forcexml) and FileTest.file?(rawname) then
+ if (dummyfile or forcexml) and FileTest.file?(rawbase) then
begin
- File.delete(File.suffixed(rawname,'run'))
+ File.delete(File.suffixed(rawbase,'run'))
rescue
report("unable to delete stub file")
end
end
if ok and getvariable('autopdf') then
- PDFview.open(File.suffixed(if result.empty? then rawname else result end,'pdf'))
+ PDFview.open(File.suffixed(if result.empty? then rawbase else result end,'pdf'))
end
else
diff --git a/scripts/context/ruby/base/texutil.rb b/scripts/context/ruby/base/texutil.rb
index 7b3e957e3..3d25c3e97 100644
--- a/scripts/context/ruby/base/texutil.rb
+++ b/scripts/context/ruby/base/texutil.rb
@@ -943,26 +943,30 @@ end
def loaded(filename)
begin
tuifile = File.suffixed(filename,'tui')
- report("parsing file #{tuifile}")
- if f = open(tuifile) then
- f.each do |line|
- case line.chomp
- when /^f (.*)$/o then @plugins.reader('MyFiles', $1.splitdata)
- when /^c (.*)$/o then @plugins.reader('MyCommands', [$1])
- when /^e (.*)$/o then @plugins.reader('MyExtras', $1.splitdata)
- when /^s (.*)$/o then @plugins.reader('MySynonyms', $1.splitdata)
- when /^r (.*)$/o then @plugins.reader('MyRegisters',$1.splitdata)
- when /^p (.*)$/o then @plugins.reader('MyPlugins', $1.splitdata)
- when /^x (.*)$/o then @plugins.reader('MyKeys', $1.splitdata)
- when /^r (.*)$/o then # nothing, not handled here
- else
- # report("unknown entry #{line[0,1]} in line #{line.chomp}")
+ if FileTest.file?(tuifile) then
+ report("parsing file #{tuifile}")
+ if f = open(tuifile) then
+ f.each do |line|
+ case line.chomp
+ when /^f (.*)$/o then @plugins.reader('MyFiles', $1.splitdata)
+ when /^c (.*)$/o then @plugins.reader('MyCommands', [$1])
+ when /^e (.*)$/o then @plugins.reader('MyExtras', $1.splitdata)
+ when /^s (.*)$/o then @plugins.reader('MySynonyms', $1.splitdata)
+ when /^r (.*)$/o then @plugins.reader('MyRegisters',$1.splitdata)
+ when /^p (.*)$/o then @plugins.reader('MyPlugins', $1.splitdata)
+ when /^x (.*)$/o then @plugins.reader('MyKeys', $1.splitdata)
+ when /^r (.*)$/o then # nothing, not handled here
+ else
+ # report("unknown entry #{line[0,1]} in line #{line.chomp}")
+ end
end
+ f.close
end
- f.close
+ else
+ report("unable to locate #{tuifile}")
end
rescue
- report("fatal error in parsing #{filename}")
+ report("fatal error in parsing #{tuifile}")
@filename = 'texutil'
else
@filename = filename
diff --git a/scripts/context/ruby/base/tool.rb b/scripts/context/ruby/base/tool.rb
index 7f40e773d..9f120ca11 100644
--- a/scripts/context/ruby/base/tool.rb
+++ b/scripts/context/ruby/base/tool.rb
@@ -132,7 +132,7 @@ module Tool
return old unless test(?f,old)
new = old.downcase
- new.gsub!(/[^A-Za-z0-9\-\.\\\/]/o) do # funny chars
+ new.gsub!(/[^A-Za-z0-9\_\-\.\\\/]/o) do # funny chars
'-'
end
if old =~ /[a-zA-Z]\:/o
diff --git a/scripts/context/ruby/ctxtools.rb b/scripts/context/ruby/ctxtools.rb
index 5686468f1..b1e880682 100644
--- a/scripts/context/ruby/ctxtools.rb
+++ b/scripts/context/ruby/ctxtools.rb
@@ -685,20 +685,25 @@ class Commands
else
if skiplevel == 0 then
inlocaldocument = indocument
+ inlocaldocument = false # else first line skipped when not empty
someline = str
if indocument then
ted.puts("\\stopdocumentation\n")
indocument = false
end
- if someline.empty? && indefinition then
- ted.puts("\\stopdefinition\n")
- indefinition = false
- elsif indefinition then
- ted.puts("#{someline}\n")
+ if indefinition then
+ if someline.empty? then
+ ted.puts("\\stopdefinition\n")
+ indefinition = false
+ else
+ ted.puts("#{someline}\n")
+ end
elsif ! someline.empty? then
ted.puts("\n\\startdefinition\n")
indefinition = true
- unless inlocaldocument then
+ if inlocaldocument then
+ # nothing
+ else
nofdefinitions += 1
ted.puts("#{someline}\n")
end
diff --git a/scripts/context/ruby/rlxtools.rb b/scripts/context/ruby/rlxtools.rb
index a7af5b691..1225dedb3 100644
--- a/scripts/context/ruby/rlxtools.rb
+++ b/scripts/context/ruby/rlxtools.rb
@@ -110,7 +110,7 @@ class Commands
REXML::XPath.each(localsteps,tag) do |extras|
REXML::XPath.each(extras,"rl:value") do |value|
if name = value.attributes['name'] then
- substititute(value,variables[name.to_s])
+ substititute(value,variables[name.to_s] || '')
end
end
end
@@ -202,7 +202,7 @@ class Commands
return str.strip
end
- def substititute(value,str)
+ def substititute(value,str='')
if str then
begin
if value.attributes.key?('method') then
diff --git a/scripts/context/ruby/texexec.rb b/scripts/context/ruby/texexec.rb
index 3dab3e9ce..a7b870376 100644
--- a/scripts/context/ruby/texexec.rb
+++ b/scripts/context/ruby/texexec.rb
@@ -512,10 +512,10 @@ class Commands
job.setvariable('backend','xdv')
else
case job.getvariable('texengine')
- when 'pdfetex' then job.setvariable('backend','pdftex')
- when 'luatex' then job.setvariable('backend','pdftex')
- when 'xetex' then job.setvariable('backend','xetex')
- when 'aleph' then job.setvariable('backend','dvipdfmx')
+ when 'pdfetex' then job.setvariable('backend','pdftex')
+ when 'luatex' then job.setvariable('backend','pdftex')
+ when 'xetex' then job.setvariable('backend','xetex')
+ when 'aleph' then job.setvariable('backend','dvipdfmx')
else
job.setvariable('backend','standard')
end
diff --git a/scripts/context/ruby/texmfstart.rb b/scripts/context/ruby/texmfstart.rb
index 66bab6261..22c9e36d1 100644
--- a/scripts/context/ruby/texmfstart.rb
+++ b/scripts/context/ruby/texmfstart.rb
@@ -1708,6 +1708,10 @@ def launch(filename)
end
end
+# env|environment
+# rel|relative
+# loc|locate|kpse|path|file
+
def expanded(arg) # no "other text files", too restricted
arg.gsub(/(env|environment)\:([a-zA-Z\-\_\.0-9]+)/o) do
method, original, resolved = $1, $2, ''
@@ -1718,7 +1722,20 @@ def expanded(arg) # no "other text files", too restricted
report("environment variable #{original} cannot be resolved") unless $report
original
end
- end . gsub(/(kpse|loc|file|path)\:([a-zA-Z\-\_\.0-9]+)/o) do # was: \S
+ end . gsub(/(rel|relative)\:([a-zA-Z\-\_\.0-9]+)/o) do
+ method, original, resolved = $1, $2, ''
+ ['.','..','../..'].each do |r|
+ if FileTest.file?(File.join(r,original)) then
+ resolved = File.join(r,original)
+ break
+ end
+ end
+ if resolved.empty? then
+ original
+ else
+ resolved
+ end
+ end . gsub(/(kpse|loc|locate|file|path)\:([a-zA-Z\-\_\.0-9]+)/o) do
method, original, resolved = $1, $2, ''
if $program && ! $program.empty? then
# pstrings = ["-progname=#{$program}"]
@@ -1816,8 +1833,11 @@ def runoneof(application,fullname,browserpermitted)
else
report("starting #{$filename}") unless $report
output("\n") if $report && $verbose
- applications = $applications[application]
- if applications.class == Array then
+ applications = $applications[application.downcase]
+ if ! applications then
+ output("problems with determining application type")
+ return true
+ elsif applications.class == Array then
if $report then
output([fullname,expanded($arguments)].join(' '))
return true
@@ -1858,7 +1878,7 @@ def usage
print("\n")
print("usage : texmfstart [switches] filename [optional arguments]\n")
print("\n")
- print("switches : --verbose --report --browser --direct --execute --locate --iftouched\n")
+ print("switches : --verbose --report --browser --direct --execute --locate --iftouched --ifchanged\n")
print(" --program --file --page --arguments --batch --edit --report --clear\n")
print(" --make --lmake --wmake --path --stubpath --indirect --before --after\n")
print(" --tree --autotree --environment --showenv\n")
@@ -1871,11 +1891,14 @@ def usage
print(" texmfstart --page=2 --file=showcase.pdf\n")
print(" texmfstart --program=yourtex yourscript.rb arg-1 arg-2\n")
print(" texmfstart --direct xsltproc kpse:somefile.xsl somefile.xml\n")
+ print(" texmfstart --direct ruby rel:wn-cleanup-1.rb oldfile.xml newfile.xml\n")
print(" texmfstart bin:xsltproc env:somepreset path:somefile.xsl somefile.xml\n")
print(" texmfstart --iftouched=normal,lowres downsample.rb normal lowres\n")
- print(" texmfstart texmfstart bin:scite kpse:texmf.cnf\n")
+ print(" texmfstart --ifchanged=somefile.dat --direct processit somefile.dat\n")
+ print(" texmfstart bin:scite kpse:texmf.cnf\n")
print(" texmfstart --exec bin:scite *.tex\n")
print(" texmfstart --edit texmf.cnf\n")
+ print(" texmfstart --edit kpse:texmf.cnf\n")
print(" texmfstart --serve\n")
print("\n")
print(" texmfstart --stubpath=/usr/local/bin [--make --remove] --verbose all\n")
@@ -2114,15 +2137,15 @@ def run(fullname)
elsif FileTest.file?(fullname) then
begin
case fullname
- when /\.(#{$scriptlist})$/ then
+ when /\.(#{$scriptlist})$/i then
return runoneof($1,fullname,false)
- when /\.(#{$documentlist})$/ then
+ when /\.(#{$documentlist})$/i then
return runoneof($1,fullname,true)
else
return runoneof('unknown',fullname,false)
end
rescue
- report("starting '#{$filename}' in program space '#{$program}' fails")
+ report("starting '#{$filename}' in program space '#{$program}' fails (#{$!})")
end
else
report("the file '#{$filename}' in program space '#{$program}' is not accessible")
diff --git a/tex/context/base/cont-new.tex b/tex/context/base/cont-new.tex
index 93b9257d4..69ebcd593 100644
--- a/tex/context/base/cont-new.tex
+++ b/tex/context/base/cont-new.tex
@@ -11,7 +11,7 @@
%C therefore copyrighted by \PRAGMA. See mreadme.pdf for
%C details.
-\newcontextversion{2006.06.07 23:34}
+\newcontextversion{2006.06.09 13:05}
%D This file is loaded at runtime, thereby providing an
%D excellent place for hacks, patches, extensions and new
@@ -97,26 +97,28 @@
\def\getRLIfiguredimensions#1%
{\let\rliwidth \!!zeropoint
\let\rliheight\!!zeropoint
- \doiffileelse\@@effilenametype
- {\doiffileelse{\@@effilenametype.rli}
- {}
- {% let's try runtime running first
- \writestatus\m!figures{using rlxtools to determine size of \@@effilenametype}%
- \executesystemcommand{texmfstart rlxtools --identify \@@effilenametype}}%
- \doiffileelse{\@@effilenametype.rli}
- {}
- {% we assume that runtime running failed
- \installprogram{texmfstart rlxtools --identify \@@effilenametype}}%
- \startnointerference
- \startXMLmapping[rli]%
- \startXMLignore
- \processXMLfile{\@@effilenametype.rli}%
- \edef\rliwidth {\XMLflush{rl:width}}%
- \edef\rliheight{\XMLflush{rl:height}}%
- \stopXMLignore
- \stopXMLmapping
- \stopnointerference}
- {}}
+ \doifelsenothing\@@efconversion
+ {\doiffileelse\@@effilenametype
+ {\doiffileelse{\@@effilenametype.rli}
+ {}
+ {% let's try runtime running first
+ \writestatus\m!figures{using rlxtools to determine size of \@@effilenametype}%
+ \executesystemcommand{texmfstart rlxtools --identify \@@effilenametype}}%
+ \doiffileelse{\@@effilenametype.rli}
+ {}
+ {% we assume that runtime running failed
+ \installprogram{texmfstart rlxtools --identify \@@effilenametype}}%
+ \startnointerference
+ \startXMLmapping[rli]%
+ \startXMLignore
+ \processXMLfile{\@@effilenametype.rli}%
+ \edef\rliwidth {\XMLflush{rl:width}}%
+ \edef\rliheight{\XMLflush{rl:height}}%
+ \stopXMLignore
+ \stopXMLmapping
+ \stopnointerference}
+ {}}
+ {}} % no rli when rlx conversion is in place
\def\getfiguredimensionsC
{\ifcase\figurestatus\ifcase\figurefilemode\else
@@ -244,9 +246,11 @@
\def\docheckprepfile
{\ifcase\preprocessmethod
+ \iftracefiles\writestatus\m!systems{preprocessing - not needed}\fi
% no preprocessing
\or
% only check for existence
+ \iftracefiles\writestatus\m!systems{preprocessing - check exitence of \readfilename\preprocesssuffix}\fi
\doiffileexistselse{\readfilename\preprocesssuffix}
{\chardef\preprocessstate\plusone}
\donothing
@@ -256,14 +260,21 @@
\splitfilename\readfilename
\ifx\splitofftype\empty
% saveguard and speed up
+ \iftracefiles\writestatus\m!systems{preprocessing - no suffix}\fi
\egroup
\else
- \doifdefinedelse{fp..\splitoffname.\splitofftype}
+ \iftracefiles\writestatus\m!systems{preprocessing - check presence of \readfilename\preprocesssuffix}\fi
+ \doifdefinedelse{fp..\readfilename}
{\egroup
\doiffileexistselse{\readfilename\preprocesssuffix}
{\chardef\preprocessstate\plusone}
{\chardef\preprocessstate\plustwo}}%
- {\egroup}%
+ {\doifdefinedelse{fp..\splitoffname.\splitofftype}
+ {\egroup
+ \doiffileexistselse{\readfilename\preprocesssuffix}
+ {\chardef\preprocessstate\plusone}
+ {\chardef\preprocessstate\plustwo}}%
+ {\egroup}}%
\fi
\fi}
diff --git a/tex/context/base/context.tex b/tex/context/base/context.tex
index e9cd937bd..8deeb434c 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{2006.06.07 23:34}
+\def\contextversion{2006.06.09 13:05}
%D For those who want to use this:
diff --git a/tex/context/base/x-res-08.tex b/tex/context/base/x-res-08.tex
index 5dfa6b6fa..e73885166 100644
--- a/tex/context/base/x-res-08.tex
+++ b/tex/context/base/x-res-08.tex
@@ -82,8 +82,8 @@
\fi
\writtenXMLelementcs{\XMLrlprefix comment}\currentresourcecomment
\ifconditional\externalfigureflush
- \writtenXMLelementcs{\XMLrlprefix width}\figurewidth
- \writtenXMLelementcs{\XMLrlprefix height}\figureheight
+ \writtenXMLelementcs{\XMLrlprefix width}\figurewidth
+ \writtenXMLelementcs{\XMLrlprefix height}\figureheight
\fi}}}
\def\XMLfeedbackexternalfigure
diff --git a/tex/context/interface/keys-cz.xml b/tex/context/interface/keys-cz.xml
index ce759a8dc..a4b077bae 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="2006.05.28 13:28">
+<cd:interface xmlns:cd="http://www.pragma-ade.com/commands" name="context" language="cz" version="2006.06.09 13:05">
<cd:variables>
<cd:variable name="one" value="jedna"/>
diff --git a/tex/context/interface/keys-de.xml b/tex/context/interface/keys-de.xml
index 3dccf33f0..8e9d30ff2 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="2006.05.28 13:28">
+<cd:interface xmlns:cd="http://www.pragma-ade.com/commands" name="context" language="de" version="2006.06.09 13:05">
<cd:variables>
<cd:variable name="one" value="eins"/>
diff --git a/tex/context/interface/keys-en.xml b/tex/context/interface/keys-en.xml
index cbc0a9929..0fe262c0e 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="2006.05.28 13:28">
+<cd:interface xmlns:cd="http://www.pragma-ade.com/commands" name="context" language="en" version="2006.06.09 13:05">
<cd:variables>
<cd:variable name="one" value="one"/>
diff --git a/tex/context/interface/keys-fr.xml b/tex/context/interface/keys-fr.xml
index 92acb8763..f8156e14e 100644
--- a/tex/context/interface/keys-fr.xml
+++ b/tex/context/interface/keys-fr.xml
@@ -1,6 +1,6 @@
<?xml version="1.0"?>
-<cd:interface xmlns:cd="http://www.pragma-ade.com/commands" name="context" language="fr" version="2006.05.28 13:28">
+<cd:interface xmlns:cd="http://www.pragma-ade.com/commands" name="context" language="fr" version="2006.06.09 13:05">
<cd:variables>
<cd:variable name="one" value="un"/>
@@ -732,7 +732,7 @@
<cd:variable name="week" value="semaine"/>
<cd:variable name="weekday" value="joursemaine"/>
<cd:variable name="WEEKDAY" value="JOURSEMAINE"/>
- <cd:variable name="random" value="aléatoire"/>
+ <cd:variable name="random" value="aleatoire"/>
<cd:variable name="white" value="blanc"/>
<cd:variable name="very" value="tres"/>
<cd:variable name="verytolerant" value="trestolerant"/>
diff --git a/tex/context/interface/keys-it.xml b/tex/context/interface/keys-it.xml
index 15c189e85..6e281b78a 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="2006.05.28 13:28">
+<cd:interface xmlns:cd="http://www.pragma-ade.com/commands" name="context" language="it" version="2006.06.09 13:05">
<cd:variables>
<cd:variable name="one" value="uno"/>
diff --git a/tex/context/interface/keys-nl.xml b/tex/context/interface/keys-nl.xml
index 746d7473e..f780a39d2 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="2006.05.28 13:28">
+<cd:interface xmlns:cd="http://www.pragma-ade.com/commands" name="context" language="nl" version="2006.06.09 13:05">
<cd:variables>
<cd:variable name="one" value="een"/>
diff --git a/tex/context/interface/keys-ro.xml b/tex/context/interface/keys-ro.xml
index 142b422e5..a1d740f38 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="2006.05.28 13:28">
+<cd:interface xmlns:cd="http://www.pragma-ade.com/commands" name="context" language="ro" version="2006.06.09 13:05">
<cd:variables>
<cd:variable name="one" value="unu"/>