summaryrefslogtreecommitdiff
path: root/plugins/colorize/colorize.plugin.zsh
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/colorize/colorize.plugin.zsh')
-rw-r--r--plugins/colorize/colorize.plugin.zsh28
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