Syntax highlighting
As we will (hopefully) over time be posting many code snippets, I’ve been looking at some syntax highlighting plugins to make any such code more readable. This is a brief demo of what I’ve come up with so far, first using a bash script I use to update backup routines on remote hosts and kickoff incremental backups;
[bash]
#!/bin/bash
interval=0
for i in `cat ~/etc/host_list`
do
echo “Updating: $i ($interval)”
scp ~/etc/backup.excludes root@$i:/etc
scp ~/bin/incremental.sh root@$i:/usr/local/bin
ssh root@$i “echo ‘nice -n19 /usr/local/bin/incremental.sh’|at now + $interval minute”
interval=`expr $interval + 10`
echo “”
done
[/bash]
Next a bit of python I use to roll-out an updated / global ‘hosts’ file to a bunch of remote hosts, I guess this could be done in bash but for some reason I did it in Python ..
[python]
#!/usr/bin/python
import sys
import subprocess as sub
configuration = “etc/host_table”
with open(configuration) as io:
for line in iter(io):
line = line.strip()
if line[0]==’#’: continue
host,ip = line.split()
cmd = “scp etc/hosts root@%s:/etc/hosts” % host
print “Updating: %s (%s)” % (host,cmd)
pipe = sub.Popen(cmd,bufsize=8192,stdout=sub.PIPE,shell=True)
result = pipe.communicate()
print “Done..”
if not result[1]: continue
if len(result[0]) or len(result[1]):
print “Result:”
print result[0]
print “Advisory:”
print result[1]
[/python]
Ok, well that all looks pretty cool, so to add syntax highlighting to a post, simply enclose your code snipped in ‘[‘<language> ‘]’ tags, and inside the brackets there are a number of parameters you can add as follows;
- font_size=”(size as %)”
- light (to lighten the display)
- toolbar=fase (to hide the toolbar)
- gutter=false (to hide the line numbers)
- highlight_lines=”<line>,<line>…” (to highlight specific lines)
- num=”start” (line number to start numbering from)
Language support seems extensive, so just make a guess and it should work.