I'm sorry for the complete lack of updates lately. Things have been
quite busy here ...
There is a new release of Acme SAC for OS X available at
http://acme-sac.googlecode.com/files/AcmeSAC-0.27.dmg
There are no shiny, new features this release, but I squished a couple
of annoying bugs that I felt warranted a release.
Upgrade if you hate it when the carriage return character gets
converted to a newline ;-)
--underspecified
Is there a way to get Acme SAC to start with particular file/directory
open? The windows executable doesn't seem to accept a file argument.
Paul
Thanks,
Paul
For binding Z:/, just before the acme command add either
bind '#UZ:/' /n/z
or
trfs '#UZ:/' /n/z
depending on whether the file system contains spaces in the file names.
Or when acme is open run
Local bind '#UZ:/' /n/z
You could make acme.exe take file arguments by editing /lib/sh/profile
and having the arguments passed onto $home/lib/profile. But this isn't
such a good solution if you're trying associate files with Acme on
windows, since you'll get a new Acme for each file.
What you need is something like sam's B command for windows. This
solution was given to me by Arvindh. Unfortunately, it doesn't launch
acme if it's not already running.
Run this in a command tool:
> assoc .txt=AcmeFile
> assoc .b=AcmeFile
> assoc .m=AcmeFile
# and any other files types you want associated with acme
> ftype AcmeFile=C:\acme-sac\acme.exe -r C:\acme-sac sh.dis /Brc %1%
In acme create file /Brc as
mount -ac {mntgen} /n
ndb/cs
mount -A 'tcp!localhost!styx' /n/localhost
bind /n/localhost/chan /chan
plumb $1
shutdown -h
and $home/lib/profile contains
listen -Av 'tcp!*!styx' {export /&}
and your $home/lib/plumbing contains rules for windows file names
# Microsoft Windows file names, assumes C:/ mounted as /n/C, etc.
kind is text
data matches '(^[a-zA-Z]):(.*)'
plumb alwaysstart acme
plumb start /dis/sh.dis -c 'plumb -d edit /n/^ $1 ^`{echo $2 | tr ''\\ '' /␣}'
After all that you can use windows explorer to browse and double click
on files to open them in Acme.
-Caerwyn
that's useful information, thanks. i didn't know about those tools.
> What you need is something like sam's B command for windows. This
> solution was given to me by Arvindh. Unfortunately, it doesn't launch
> acme if it's not already running.
presumably it would be straightforward to do that, by running
the normal init script if the mount fails, as long as you've
made some provision for passing through command line arguments
to acme. actually, there's probably a race there when you're
opening several files at once, so you'd have to be slightly cleverer
than that (maybe get the new acme to try to listen on localhost!styx,
mount it if it can't, and start the gui if it can).
rog.