diff options
Diffstat (limited to 'plugins/colorize/colorize.plugin.zsh')
-rw-r--r-- | plugins/colorize/colorize.plugin.zsh | 28 |
1 files changed, 14 insertions, 14 deletions
diff --git a/plugins/colorize/colorize.plugin.zsh b/plugins/colorize/colorize.plugin.zsh index 11b58e69d..8eede9a94 100644 --- a/plugins/colorize/colorize.plugin.zsh +++ b/plugins/colorize/colorize.plugin.zsh @@ -1,26 +1,26 @@ -# Plugin for highlighting 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' +# easier alias to use the plugin +alias ccat='colorize_via_pygmentize' colorize_via_pygmentize() { - if [ ! -x "$(which pygmentize)" ]; then - echo "package \'pygmentize\' is not installed!" - return -1 + if ! (( $+commands[pygmentize] )); then + echo "package 'Pygments' is not installed!" + return 1 fi + # pygmentize stdin if no arguments passed if [ $# -eq 0 ]; then - pygmentize -g $@ + pygmentize -g + return $? fi + # guess lexer from file extension, or + # guess it from file contents if unsuccessful + local FNAME lexer for FNAME in $@ do - filename=$(basename "$FNAME") - lexer=`pygmentize -N \"$filename\"` - if [ "Z$lexer" != "Ztext" ]; then - pygmentize -l $lexer "$FNAME" + lexer=$(pygmentize -N "$FNAME") + if [[ $lexer != text ]]; then + pygmentize -l "$lexer" "$FNAME" else pygmentize -g "$FNAME" fi |