1*071d4279SBram Moolenaar#!/usr/bin/nawk -f 2*071d4279SBram Moolenaar# 3*071d4279SBram Moolenaar# Change "nawk" to "awk" or "gawk" if you get errors. 4*071d4279SBram Moolenaar# 5*071d4279SBram Moolenaar# Make Vim Errors 6*071d4279SBram Moolenaar# Processes errors from cc for use by Vim's quick fix tools 7*071d4279SBram Moolenaar# specifically it translates the ---------^ notation to a 8*071d4279SBram Moolenaar# column number 9*071d4279SBram Moolenaar# 10*071d4279SBram MoolenaarBEGIN { FS="[:,]" } 11*071d4279SBram Moolenaar 12*071d4279SBram Moolenaar/^cfe/ { file=$3 13*071d4279SBram Moolenaar msg=$5 14*071d4279SBram Moolenaar split($4,s," ") 15*071d4279SBram Moolenaar line=s[2] 16*071d4279SBram Moolenaar} 17*071d4279SBram Moolenaar 18*071d4279SBram Moolenaar# You may have to substitute a tab character for the \t here: 19*071d4279SBram Moolenaar/^[\t-]*\^/ { 20*071d4279SBram Moolenaar p=match($0, ".*\\^" ) 21*071d4279SBram Moolenaar col=RLENGTH-2 22*071d4279SBram Moolenaar printf("%s, line %d, col %d : %s\n", file,line,col,msg) 23*071d4279SBram Moolenaar} 24