kitty/kittens/diff
Kovid Goyal 2a9dc23c61
...
2018-05-20 12:44:16 +05:30
..
__init__.py Start work on the diff kitten 2018-04-17 17:43:56 +05:30
collect.py diff kitten: Do not specify the default foreground color in formatting codes. 2018-05-20 08:51:41 +05:30
config.py diff kitten: Do not specify the default foreground color in formatting codes. 2018-05-20 08:51:41 +05:30
diff.conf diff: Make the diff implementation configurable 2018-05-08 23:32:21 +05:30
highlight.py Better error message when pygments style is not found 2018-05-08 23:13:50 +05:30
main.py Nicer window title for the diff kitten 2018-05-20 12:26:14 +05:30
patch.py diff kitten: Do not specify the default foreground color in formatting codes. 2018-05-20 08:51:41 +05:30
README.asciidoc ... 2018-05-20 12:44:16 +05:30
render.py Avoid needing to resend images on every draw_screen() 2018-05-10 15:58:52 +05:30
speedup.c diff kitten has working syntax highlighting 2018-05-08 14:48:01 +05:30

= kitty-diff - A side-by-side diff tool with syntax highlighting and images
:toc:
:toc-placement!:


== Major Features

* Displays diffs side-by-side in the kitty terminal.

* Does syntax highlighting of displayed diffs

* Displays images as well as text diffs, even over SSH

* Does recursive directory diffing


image::../../screenshots/diff.png?raw=true[Screenshot, showing a sample diff]

toc::[]


== Installation

Simply install link:https://github.com/kovidgoyal/kitty[kitty].
You also need to have either the git program or the diff program installed.


== Usage

In the kitty terminal, run:

....
kitty +kitten diff file1 file2
....

to see the diff between file1 and file2.

Create an alias in `~/.bashrc` or similar to shorten the command.

You can also pass directories instead of files to see the recursive diff of the
directory contents.


== Keyboard controls

|===
|Action |Shortcut

|Quit             | `q, Ctrl+c`
|Scroll line up   | `k, up`
|Scroll line down | `j, down`
|Scroll page up   | `PgUp`
|Scroll page down | `PgDn`
|Scroll to top    | `Home`
|Scroll to bottom | `End`
|Scroll to next change | `n`
|Scroll to previous change | `p`

|Increase lines of context | `+`
|Decrease lines of context | `-`
|All lines of context      | `a`
|Restore context to default| `=`

|===

[options="header"]