> however I don't fully understand the line move part of the sed script, > can you explain what the results of the sed script would be on the > previous javac error for example?
Oh, maybe you wanted me to explain the sed script itself? /\^$/s/\t/\ /g;/:[0-9]\+:/{h;d};/^[ \t]*\^/G; is the same as: # convert tabs to spaces on the pointer line. /\^$/ s/\t/\ /g; # looks for lines containing :(digits): and save it. /:[0-9]\+:/ { h; d }; # prints that held line after the pointer line. /^[ \t]*\^/ G; At least, that's the way I /think/ it was supposed to work... now I'm wondering why I didn't use the same matching expression and combine lines 1 and 3... hmm... -Mike