If I add a plumber rule for javac output:

type is text
data matches '\[ERROR\] ([.a-zA-Z¡-�0-9_/\-]+\.java):\[([0-9]+),[0-9]+\] .*'
arg isfile $1
data set $file
attr add addr=$2
plumb to edit
plumb client $editor

I can sweep a line (short of its trailing newline):

[ERROR] /Users/jimr/proj/github/src/github.com/.../Cpio.java:[151,31]
';' expected

in acme using button 3 and open up Cpio.java:151.  Is there any way
for me to just button 3 click within the text of the filename to get
the same behavior?

Also I had hoped I could do something like

attr add addr=$2'-+#'$3

(assuming I captured the 2nd number in the data matches line), but it
turns out Java is producing a 'column number', which means a tab is +8
column positions.  My only thought upon discovering that was that I'd
have to write some custom program to pick out the $1:$2 and evaluate
it to determine what the actual character count was.  Anyone have a
better suggestion?  The sam(1) addressing appeared to, very sensibly
imo, limit itself to talking about lines, character counts, and
regular expressions...

Jim

Reply via email to