ohmyzsh/plugins/colorize
2019-11-17 14:10:03 -05:00
..
colorize.plugin.zsh Update default color to 'emacs' which both chroma & pygmentize support 2019-11-17 14:10:03 -05:00
README.md Fix some comments and messages. Remove (probably) debug messages. Improve ZSH_COLORIZE_TOOL recognition. 2019-11-16 13:10:02 +01:00

colorize

With this plugin you can syntax-highlight file contents of over 300 supported languages and other text formats.

Colorize will highlight the content based on the filename extension. If it can't find a syntax-highlighting method for a given extension, it will try to find one by looking at the file contents. If no highlight method is found it will just cat the file normally, without syntax highlighting.

To use it, add colorize to the plugins array of your zshrc file:

plugins=(... colorize)

Configuration

Colorize tool

Colorize supports pygmentize and chroma as syntax highlighter. By default colorize uses pygmentize unless it's not installed and chroma is. This can be overridden by the ZSH_COLORIZE_TOOL environment variable:

ZSH_COLORIZE_TOOL=chroma

Styles

Pygments offers multiple styles. By default, the default style is used, but you can choose another theme by setting the ZSH_COLORIZE_STYLE environment variable:

ZSH_COLORIZE_STYLE="colorful"

Usage

  • ccat <file> [files]: colorize the contents of the file (or files, if more than one are provided). If no arguments are passed it will colorize the standard input or stdin.

  • cless <file> [files]: colorize the contents of the file (or files, if more than one are provided) and open less. If no arguments are passed it will colorize the standard input or stdin.

Note that cless will behave as less when provided more than one file: you have to navigate files with the commands :n for next and :p for previous. The downside is that less options are not supported. But you can circumvent this by either using the LESS environment variable, or by running ccat file1 file2|less --opts. In the latter form, the file contents will be concatenated and presented by less as a single file.

Requirements

You have to either install Pygments: pygments.org

Or install chroma: https://github.com/alecthomas/chroma