From 4bcfa86615a3095169831cf25639faa89b34468f Mon Sep 17 00:00:00 2001 From: Hans Hagen Date: Fri, 14 Jul 2006 12:08:00 +0200 Subject: stable 2006.07.14 12:08 --- scripts/context/ruby/wwwwatch.rb | 47 ++++++++++++++++++++++++++------------- tex/context/base/cont-new.tex | 2 +- tex/context/base/context.tex | 2 +- tex/context/bib/t-bib.tex | 29 ++++++++++++++++++------ tex/context/interface/keys-cz.xml | 2 +- tex/context/interface/keys-de.xml | 2 +- tex/context/interface/keys-en.xml | 2 +- tex/context/interface/keys-fr.xml | 2 +- tex/context/interface/keys-it.xml | 2 +- tex/context/interface/keys-nl.xml | 2 +- tex/context/interface/keys-ro.xml | 2 +- tpm/t-bib.tpm | 8 +++---- 12 files changed, 67 insertions(+), 35 deletions(-) diff --git a/scripts/context/ruby/wwwwatch.rb b/scripts/context/ruby/wwwwatch.rb index e5f0c0654..e6cb7a050 100644 --- a/scripts/context/ruby/wwwwatch.rb +++ b/scripts/context/ruby/wwwwatch.rb @@ -29,7 +29,7 @@ class Watch < Monitor @@session_begin = 'begin exa session' @@session_end = 'end exa session' - attr_accessor :root_path, :work_path, :delay, :max_threads, :max_age, :verbose + attr_accessor :root_path, :work_path, :cache_path, :delay, :max_threads, :max_age, :verbose def initialize(logger) # we need to register all @vars here becase of the monitor @threads = Hash.new @@ -45,6 +45,7 @@ class Watch < Monitor @max_age = @@process_timeout @logger = logger @verbose = false + @create = false [:INT, :TERM, :EXIT].each do |signal| trap(signal) do kill @@ -74,18 +75,25 @@ class Watch < Monitor @files = Array.new @stats = Hash.new @skips = Hash.new - @root_path = File.expand_path(File.join(File.dirname($0),'.')) if @root_path.empty? + @root_path = File.expand_path(File.join(File.dirname(Dir.pwd),'.')) if @root_path.empty? @work_path = File.expand_path(File.join(@root_path,'work','watch')) if @work_path.empty? - @cache_path = File.expand_path(File.join(@root_path,'work','cache')) if @work_path.empty? - begin File.makedirs(@work_path) ; rescue ; end - begin File.makedirs(@cache_path) ; rescue ; end + # @cache_path = File.expand_path(File.join(@root_path,'work','cache')) if @cache_path.empty? + @cache_path = File.expand_path(File.join(File.dirname(@work_path),'cache')) if @cache_path.empty? + if @create then + begin File.makedirs(@work_path) ; rescue ; end + begin File.makedirs(@cache_path) ; rescue ; end + end unless File.writable?(@work_path) then @work_path = File.expand_path(File.join(Dir.tmpdir,'work','watch')) - begin File.makedirs(@work_path) ; rescue ; end + if @create then + begin File.makedirs(@work_path) ; rescue ; end + end end unless File.writable?(@cache_path) then @cache_path = File.expand_path(File.join(Dir.tmpdir,'work','cache')) - begin File.makedirs(@cache_path) ; rescue ; end + if @create then + begin File.makedirs(@cache_path) ; rescue ; end + end end unless File.writable?(@work_path) then puts "no valid work path: #{@work_path}" ; exit @@ -422,7 +430,11 @@ class Commands include CommandBase def watch - if watch = setup then watch.cycle end + if watch = setup then + watch.cycle + else + report("provide valid work path") + end end def main watch @@ -432,9 +444,11 @@ class Commands def setup watch = Watch.new(logger) - watch.root_path = @commandline.option('root') - watch.work_path = @commandline.option('work') - watch.verbose = @commandline.option('verbose') + watch.root_path = @commandline.option('root') + watch.work_path = @commandline.option('work') + watch.cache_path = @commandline.option('cache') + watch.create = @commandline.option('create') + watch.verbose = @commandline.option('verbose') begin watch.max_threads = @commandline.option('threads').to_i rescue @@ -449,11 +463,14 @@ end logger = Logger.new(banner.shift) commandline = CommandLine.new -commandline.registervalue('root' , '') -commandline.registervalue('work' , '') -commandline.registervalue('threads' , '5') +commandline.registervalue('root', '') +commandline.registervalue('work', '') +commandline.registervalue('cache', '') +commandline.registervalue('threads', '5') + +commandline.registerflag('create') -commandline.registeraction('watch', '[--work=path] [--root=path]') +commandline.registeraction('watch', '[--work=path] [--root=path] [--create]') commandline.registerflag('verbose') commandline.registeraction('help') diff --git a/tex/context/base/cont-new.tex b/tex/context/base/cont-new.tex index c41d99953..95251fcc8 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.07.13 22:26} +\newcontextversion{2006.07.14 12:08} %D This file is loaded at runtime, thereby providing an %D excellent place for hacks, patches, extensions and new diff --git a/tex/context/base/context.tex b/tex/context/base/context.tex index 2780c21b8..c7730f4f0 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.07.13 22:26} +\def\contextversion{2006.07.14 12:08} %D For those who want to use this: diff --git a/tex/context/bib/t-bib.tex b/tex/context/bib/t-bib.tex index 719991255..f75faa629 100644 --- a/tex/context/bib/t-bib.tex +++ b/tex/context/bib/t-bib.tex @@ -1,6 +1,6 @@ %D \module %D [ file=t-bib, -%D version=2006.07.12, +%D version=2006.07.14, %D title=\CONTEXT\ Publication Module, %D subtitle=Publications, %D author=Taco Hoekwater, @@ -76,6 +76,7 @@ %D \item reset font styles within \type{\cite}, so that font switches %D in \type{left} stay in effect (12/7/2006) %D \item guard added against loading bbl files multiple times (13/7/2006) +%D \item fix \type{\cite[num]} with compression is on. (14/7/2006) %D \stopitemize %D %D \subject{WISHLIST} @@ -1584,10 +1585,22 @@ %D so that the macro \type{\expandrefs} is needed. \def\expandrefs#1% - {\doifreferencefoundelse{#1} - {\@EA\doglobal\@EA\addtocommalist\@EA{\reftypet}\therefs } - {\showmessage\m!bib{5}{#1 unknown}% - \doglobal\addtocommalist{0}\therefs}} + {\bgroup + \preparebibrefprefix + \preparebibreflist{#1}% + \global\bibreffoundfalse + \def\setuplink##1% + {\ifbibreffound\else + \doifreferencefoundelse + {##1} + {\global\bibreffoundtrue + \@EA\doglobal\@EA\addtocommalist\@EA{\reftypet}\therefs }% + {}\fi}% + \processcommacommand[\bibreflist]\setuplink + \ifbibreffound \else \showmessage\m!bib{5}{#1 unknown}% + \doglobal\addtocommalist{0}\therefs\fi + \egroup } + %D But at least the actual sorting code is simple (note that sorting %D a list with exactly one entry fails to return anything, which @@ -1613,7 +1626,8 @@ \bibalternative\v!right} \def\dosimplebibnumref #1% - {\refsep\ifbibinteractionelse{\inbiblink[#1]}{{\referencingfalse\in[#1]}}} + {\refsep\ifbibinteractionelse + {\inbiblink[#1]}{{\referencingfalse\inbiblink[#1]}}} \def\verysimplebibnumref#1{\doverysimplebibnumref#1} @@ -1638,7 +1652,8 @@ {\getvalue{pbda-#1}% \bibalternative\c!inbetween \bibalternative\v!left - \ifbibinteractionelse{\inbiblink[#1]}{{\referencingfalse\in[#1]}}% + \ifbibinteractionelse{\inbiblink[#1]} + {{\referencingfalse\inbiblink[#1]}}% \bibalternative\v!right} {\unknownreference{#1}}} diff --git a/tex/context/interface/keys-cz.xml b/tex/context/interface/keys-cz.xml index 5f31bdce3..b8e5b5fd7 100644 --- a/tex/context/interface/keys-cz.xml +++ b/tex/context/interface/keys-cz.xml @@ -1,6 +1,6 @@ - + diff --git a/tex/context/interface/keys-de.xml b/tex/context/interface/keys-de.xml index 0c2b50ec2..840cbf373 100644 --- a/tex/context/interface/keys-de.xml +++ b/tex/context/interface/keys-de.xml @@ -1,6 +1,6 @@ - + diff --git a/tex/context/interface/keys-en.xml b/tex/context/interface/keys-en.xml index 155e84be6..a4f663241 100644 --- a/tex/context/interface/keys-en.xml +++ b/tex/context/interface/keys-en.xml @@ -1,6 +1,6 @@ - + diff --git a/tex/context/interface/keys-fr.xml b/tex/context/interface/keys-fr.xml index 5c590c261..e1a243823 100644 --- a/tex/context/interface/keys-fr.xml +++ b/tex/context/interface/keys-fr.xml @@ -1,6 +1,6 @@ - + diff --git a/tex/context/interface/keys-it.xml b/tex/context/interface/keys-it.xml index 0c1c4c367..96f8d16fc 100644 --- a/tex/context/interface/keys-it.xml +++ b/tex/context/interface/keys-it.xml @@ -1,6 +1,6 @@ - + diff --git a/tex/context/interface/keys-nl.xml b/tex/context/interface/keys-nl.xml index 9a119e474..cc9adb7a6 100644 --- a/tex/context/interface/keys-nl.xml +++ b/tex/context/interface/keys-nl.xml @@ -1,6 +1,6 @@ - + diff --git a/tex/context/interface/keys-ro.xml b/tex/context/interface/keys-ro.xml index 98f5bc8ac..1a8ba6b50 100644 --- a/tex/context/interface/keys-ro.xml +++ b/tex/context/interface/keys-ro.xml @@ -1,6 +1,6 @@ - + diff --git a/tpm/t-bib.tpm b/tpm/t-bib.tpm index f40a3ad82..a9e56bf04 100644 --- a/tpm/t-bib.tpm +++ b/tpm/t-bib.tpm @@ -3,17 +3,17 @@ t-bib Package - 2006/07/13 12:00:00 - 2006.07.13 + 2006/07/14 10:00:00 + 2006.07.14 taco ConTeXt Bibliographies A bibliographic subsystem for ConTeXt Taco Hoekwater - 540927 + 541359 - + tex/context/bib/bibl-ams.tex tex/context/bib/bibl-apa-de.tex tex/context/bib/bibl-apa-fr.tex -- cgit v1.2.3