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.zsh21
1 files changed, 10 insertions, 11 deletions
diff --git a/plugins/colorize/colorize.plugin.zsh b/plugins/colorize/colorize.plugin.zsh
index e2af6d25e..8eede9a94 100644
--- a/plugins/colorize/colorize.plugin.zsh
+++ b/plugins/colorize/colorize.plugin.zsh
@@ -1,9 +1,4 @@
-# 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.
-
-#easier alias to use plugin
+# easier alias to use the plugin
alias ccat='colorize_via_pygmentize'
colorize_via_pygmentize() {
@@ -12,16 +7,20 @@ colorize_via_pygmentize() {
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