Gcc

From Attie's Wiki
(Difference between revisions)
Jump to: navigation, search
m
m (Highlight the output of gcc)
Line 5: Line 5:
 
<source lang="bash">
 
<source lang="bash">
 
make 2>&1 | sed -re 's/^([^:]+:[0-9]+:[0-9]+: warning: .+)$/\x1B[93m&\x1B[m/g' -e 's/^([^:]+:[0-9]+:[0-9]+: error: .+)$/\x1B[91m&\x1B[m/g'
 
make 2>&1 | sed -re 's/^([^:]+:[0-9]+:[0-9]+: warning: .+)$/\x1B[93m&\x1B[m/g' -e 's/^([^:]+:[0-9]+:[0-9]+: error: .+)$/\x1B[91m&\x1B[m/g'
 +
</source>
 +
 +
Or try this one, to dim everything that isn't interesting:
 +
<source lang="bash">
 +
make "$@" 2>&1 | sed -re 's/^[^:]+:[0-9]+:[0-9]+: warning: .+$/\x1B[93m&\x1B[m/g' -e 's/^[^:]+:[0-9]+:[0-9]+: error: .+$/\x1B[91m&\x1B[m/g' -e 's/^[^:]+: In function \x27[^\x27]+\x27:$/\x1B[97m&\x1B[m/g' -e 's/^[^\x1B].+$/\x1B[90m&\x1B[m/'
 
</source>
 
</source>
  
Line 11: Line 16:
 
<source lang="bash">
 
<source lang="bash">
 
#!/bin/bash
 
#!/bin/bash
make "$@" 2>&1 | sed -re 's/^([^:]+:[0-9]+:[0-9]+: warning: .+)$/\x1B[93m&\x1B[m/g' -e 's/^([^:]+:[0-9]+:[0-9]+: error: .+)$/\x1B[91m&\x1B[m/g'
+
make "$@" 2>&1 | sed -re 's/^[^:]+:[0-9]+:[0-9]+: warning: .+$/\x1B[93m&\x1B[m/g' -e 's/^[^:]+:[0-9]+:[0-9]+: error: .+$/\x1B[91m&\x1B[m/g' -e 's/^[^:]+: In function \x27[^\x27]+\x27:$/\x1B[97m&\x1B[m/g' -e 's/^[^\x1B].+$/\x1B[90m&\x1B[m/'
 
exit $?
 
exit $?
 
</source>
 
</source>

Revision as of 12:26, 9 April 2014

Highlight the output of gcc

  • warnings will be highlighted yellow
  • errors will be highlighted red
make 2>&1 | sed -re 's/^([^:]+:[0-9]+:[0-9]+: warning: .+)$/\x1B[93m&\x1B[m/g' -e 's/^([^:]+:[0-9]+:[0-9]+: error: .+)$/\x1B[91m&\x1B[m/g'

Or try this one, to dim everything that isn't interesting:

make "$@" 2>&1 | sed -re 's/^[^:]+:[0-9]+:[0-9]+: warning: .+$/\x1B[93m&\x1B[m/g' -e 's/^[^:]+:[0-9]+:[0-9]+: error: .+$/\x1B[91m&\x1B[m/g' -e 's/^[^:]+: In function \x27[^\x27]+\x27:$/\x1B[97m&\x1B[m/g' -e 's/^[^\x1B].+$/\x1B[90m&\x1B[m/'

script form

Or, put this in your path, called mk or something:

#!/bin/bash
make "$@" 2>&1 | sed -re 's/^[^:]+:[0-9]+:[0-9]+: warning: .+$/\x1B[93m&\x1B[m/g' -e 's/^[^:]+:[0-9]+:[0-9]+: error: .+$/\x1B[91m&\x1B[m/g' -e 's/^[^:]+: In function \x27[^\x27]+\x27:$/\x1B[97m&\x1B[m/g' -e 's/^[^\x1B].+$/\x1B[90m&\x1B[m/'
exit $?
Personal tools
Namespaces

Variants
Actions
Navigation
Toolbox