On 6/27/06, David Arnold <[EMAIL PROTECTED]> wrote:
> OK,
>
> I've updated to the latest context via Gerben's i-installer on my mac
> osx 10.4.6.
>
> I have no idea what texmfstart is nor do I understand its purpose.
>
> I imagine the first thing I have to do is configure, because it is
> certainly not found on my system.
>
> tmp $ which texmfstart
> tmp $ texmfstart
> -bash: texmfstart: command not found
>
>
> Here is my path:
>
> tmp $ echo $PATH
> /sw/bin:/sw/sbin:/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/
> local/teTeX/bin/powerpc-apple-darwin-current:/opt/local/bin:/usr/
> local/mysql/bin:/usr/X11R6/bin
>
> For example:
>
> tmp $ texexec --version
>
> TeXExec 5.4.3 - ConTeXt / PRAGMA ADE 1997-2005
>
>                 texexec : TeXExec 5.4.3 - ConTeXt / PRAGMA ADE 1997-2005
>                 texutil : TeXUtil 9.0.1 - ConTeXt / PRAGMA ADE 1992-2006
>                     tex : pdfeTeX, 3.141592-1.30.4-2.2 (Web2C 7.5.5)
>                 context : ver: 2006.06.23 20:39
>                 cont-en : ver: 2006.06.23 20:39  fmt: 2006.6.27  mes:
> english
>                 cont-nl : ver: 2006.06.23 20:39  fmt: 2006.6.27  mes:
> dutch
>
>          total run time : 3 seconds
>
>                 warning : use 'texmfstart texexec' instead
>
>
> tmp $ which texexec
> /usr/local/teTeX/bin/powerpc-apple-darwin-current/texexec
>
> Which appears to be some sort of shell script.

Yes, it is a wrapper that uses kpsewhch to search for <what>.pl and
then fires up perl with the full path to the script.  The same trick
works for ruby (.rb) and java (.jar).  I've made 3 scripts, called
runtexmfXX, where XX={pl,rb,jar}:

  ----------------- runtexmfrb ----------------
#! /bin/sh
# runtexmfrb -- run ruby scripts with "ruby <path>texmfstart.rb .."
# Author: George N. White III <[EMAIL PROTECTED]>
# Date: 2006-06-25
# to use: link (ln -s) to the names of ConTeXt scripts in your tex bin
# directory.
# cd <...>/bin/<arch>
# for f in texmfstart texexec pstopdf textools texutil ctxtools
pdftools rlxtools texsync ; do ln -s runtexmfrb $f ; done
#
# requires:
# ruby, sed, kpsewhich

what=`echo $0 | sed '[EMAIL PROTECTED]/@@'`

p=`kpsewhich -format=texmfscripts texmfstart.rb`
{ test -n "$p" && test -f "$p"; } \
   || { echo "\`texmfstart.rb' not found."; exit 1; }

# for texmfstart just
case $what in
texmfstart)
exec ruby "$p" ${1+"$@"}
  ;;
*)
q=`kpsewhich -format=texmfscripts $what.rb`
{ test -n "$q" && test -f "$q"; } \
   || { echo "\`$what.rb' not found."; exit 1; }
exec ruby "$p" "$what.rb" ${1+"$@"}
 ;;
esac
   ----------------- end runtexmfrb ----------

   ----------------- runtexmfjar ----------------
#!/bin/sh
# runtexmfjar -- run texmf Java app
# Author: George N. White III <[EMAIL PROTECTED]>
# Date: 2006-06-25
# to use: link to the names of the apps:
# e.g., "ln -s runtexmfjar JabRef"

java=/usr/java/jre1.5.0/bin/java
what=`echo $0 | sed '[EMAIL PROTECTED]/@@'`

p=`kpsewhich -format=texmfscripts $what.jar`
{ test -n "$p" && test -f "$p"; } \
  || { echo "\`$what.jar' not found."; exit 1; }
exec "$java" -jar "$p" ${1+"$@"}
   ----------------- end runtexmfjar ----------

   ----------------- runtexmfpl ----------------
#!/bin/sh
# runtexmfpl -- run texmf perl script
# to use: link to the names of the apps:
# e.g., "ln -s runtexmfpl epstopdf"

what=`echo $0 | sed '[EMAIL PROTECTED]/@@'`

p=`kpsewhich -format=texmfscripts $what.pl`
{ test -n "$p" && test -f "$p"; } \
  || { echo "\`$what.pl' not found."; exit 1; }
exec perl "$p" ${1+"$@"}
   ----------------- end runtexmfpl ----------


> [...]

> Ruby is installed:
>
> tmp $ which ruby
> /usr/bin/ruby
> tmp $ ruby --version
> ruby 1.8.2 (2004-12-25) [powerpc-darwin8.0]
>
> And here is the location of texmfstart:
>
> /usr/local/teTeX/share/texmf.local/scripts/context/ruby/texmfstart.rb
> /usr/local/teTeX/share/texmf.local/scripts/context/stubs/lib/texmfstart
> /usr/local/teTeX/share/texmf.local/scripts/context/stubs/lib/
> texmfstart/base
> /usr/local/teTeX/share/texmf.local/scripts/context/stubs/lib/
> texmfstart/base/kpse
>
>
> Now for questions:
>
> 1. How do I configure my system to use texmstart?

in the "bin" directory with texexec, rename texexec to texexec.orig, create the
2 or 3 scripts you want to use, do "chmod +x runtexmf*", and decide
which names are perl (.pl) and which are ruby (.rb).  Create symbolic
links:  "ln -s runtexmfrb texmfstart", etc. for the ruby scripts.  You
can also do this for other perl scripts such as epstopdf, but be
careful, as the bin directory may contain newer versions than the
texmf trees.

> 2. What are some of the usual uses I should be employing of
> texmfstart? How will it improve performance? How will it simplify my
> work? Etc? I.e what are the advantages?

Performance for scripts like this is not much af an issue these days
-- if you want performance, buy better hardware.  What is an issue is
the ability of the developers to find and fix bugs.  Perl is old and
tricky.  There are lots of old buggy perl versions installed.
Hopefully ruby will turn out to be more robust (lessons learned,
etc.).

The advantages to us are that you will use it and report bugs before we do.

The advantages to you are that Hans is replacing perl scripts with
ruby scripts, so if you need a new feature it is more likely to appear
as ruby than as perl code.

-- 
George N. White III <[EMAIL PROTECTED]>
Head of St. Margarets Bay, Nova Scotia
_______________________________________________
ntg-context mailing list
ntg-context@ntg.nl
http://www.ntg.nl/mailman/listinfo/ntg-context

Reply via email to