acme-sac on windows is my development environment too. b2 on 'win os cmd' gives a cmd.exe window. i prefer sh(1), so i use just 'win' and access the windows files from /n/C. i have shell functions defined in $home/lib/functions to invoke specific windows commands.
for example: fn ant { {os -T ant.bat $* | dcr} $* |[2] dcr >[1=2] } and the following rule in $home/lib/plumbing to enable b3 on windows file names output by ant. # Microsoft Windows file names, possibly tagged by line number, go to acme kind is text data matches '(^[a-zA-Z]):([.a-zA-Z0-9_/\-\\]+[a-zA-Z0-9_/\-\\])(:(((#?[0-9]+)|(/[A-Za-z0-9_\^]+/?)|[.$])([,;+\-]((#?[0-9]+)|(/[A-Za-z0-9_\^]+/?)|[.$]))*))?' plumb alwaysstart acme plumb start /dis/sh.dis -c 'plumb -d edit -a action showfile -a addr $4 /n/^`{echo $1 | tr A-Z a-z}^`{echo $2 | tr ''\\ '' /␣}' arvindh