The Kitchen Sink Pager is a pager that does more, but its primary feature is adding per file syntax highlighting to git diffs.
pip install KitchenSink
# use it for paging. sometimes, it can even figure out # the filetype and add syntax highlighting. (press 's') cat some_file.py | kk # Use it as a quick file jumper for grep results. # Press 'lf' to quickly view a file in the current buffer grep * -Rn my_string | kk # Use it as a git log viewer. # press 'lo' to [l]ist all git [o]bjects # press 'lf' to [list] [f]iles in the buffer git log | kk # it does git diff highlighting, too # press 's' to toggle highlighting git log --color -n1 -p | kk # if there are numbers in the buffer, # the kitchen sink math them with 'm' cat lots_of_numbers.txt | kk
KitchenSink syntax highlighting
KitchenSink syntax highlighting vs. the traditional git diff highlighting
if the syntax coloring style isn't your style or isn't showing up well, you can use any of pygments other available styles by setting KK_STYLE environment variable.
# listing the styles
python -c "import pygments.styles; print pygments.styles.STYLE_MAP.keys()"
# changing the style to vim. put this in .bashrc if you always want it
export KK_STYLE=vim
why not? operating on pipe output is one of the slower parts of my workflow. this is an attempt to make it more bearable.