diff options
author | Oleg Kandaurov <okandaurov@at-consulting.ru> | 2013-04-12 18:19:42 +0400 |
---|---|---|
committer | Oleg Kandaurov <okandaurov@at-consulting.ru> | 2013-04-12 18:19:42 +0400 |
commit | 07738ea86330b7b77127fc6f18474b3da2c6ecec (patch) | |
tree | 5df555498a6227ec751257720c27e8e06f48255d | |
parent | 85426a57a2561f675a6ad51754d6687c3ec571c2 (diff) | |
download | zsh-07738ea86330b7b77127fc6f18474b3da2c6ecec.tar.gz zsh-07738ea86330b7b77127fc6f18474b3da2c6ecec.tar.bz2 zsh-07738ea86330b7b77127fc6f18474b3da2c6ecec.zip |
Add colorize plugin
-rw-r--r-- | plugins/colorize/colorize.plugin.zsh | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/plugins/colorize/colorize.plugin.zsh b/plugins/colorize/colorize.plugin.zsh new file mode 100644 index 000000000..0696607d9 --- /dev/null +++ b/plugins/colorize/colorize.plugin.zsh @@ -0,0 +1,28 @@ +# Plugin for highligthing file content +# Plugin highlights file content based on the filename extension. +# If no highlighting method supported for given extension then it tries +# guess it by looking for file content. + +alias colorize='colorize_via_pygmentize' + +colorize_via_pygmentize() { + if [ ! -x $(which pygmentize) ]; then + echo package \'pygmentize\' is not installed! + exit -1 + fi + + if [ $# -eq 0 ]; then + pygmentize -g $@ + fi + + for FNAME in $@ + do + filename=$(basename "$FNAME") + lexer=`pygmentize -N \"$filename\"` + if [ "Z$lexer" != "Ztext" ]; then + pygmentize -l $lexer "$FNAME" + else + pygmentize -g "$FNAME" + fi + done +}
\ No newline at end of file |