History Diff’er (xonsh.diff_history)

Tools for diff’ing two xonsh history files in a meaningful fashion.

class xonsh.diff_history.HistoryDiffer(afile, bfile, reopen=False, verbose=False)[source]

This class helps diff two xonsh history files.

afilefile handle or str

The first file to diff

bfilefile handle or str

The second file to diff

reopenbool, optional

Whether or not to reopen the file handles each time. The default here is opposite from the LazyJSON default because we know that we will be doing a lot of reading so it is best to keep the handles open.

verbosebool, optional

Whether to print a verbose amount of information.


Computes the difference of the commands themselves.


Computes the difference between the environments.


Formats the difference between the two history files.


Computes a header string difference.

xonsh.diff_history.bold_str_diff(a, b, sm=None)[source]
xonsh.diff_history.highlighted_ndiff(a, b)[source]

Returns a highlighted string, with bold characters where different.