Mercurial > diff-colorize
comparison diff-colorize.py @ 8:4bb2557d24cd
Now that these can come from the environment, they are variables. Lowercasing their names for this reason.
author | Peter Hosey |
---|---|
date | Mon, 11 Aug 2008 00:21:13 -0700 |
parents | c6337f653d9b |
children | cce6b860a98d |
comparison
equal
deleted
inserted
replaced
7:c6337f653d9b | 8:4bb2557d24cd |
---|---|
2 | 2 |
3 import sys | 3 import sys |
4 import os | 4 import os |
5 import fileinput | 5 import fileinput |
6 | 6 |
7 INDEX_COLOR = int(os.environ.get('DIFF_INDEX_COLOR', 32)) | 7 index_color = int(os.environ.get('DIFF_INDEX_COLOR', 32)) |
8 OLD_MODE_COLOR = int(os.environ.get('DIFF_OLD_MODE_COLOR', 124)) | 8 old_mode_color = int(os.environ.get('DIFF_OLD_MODE_COLOR', 124)) |
9 NEW_MODE_COLOR = int(os.environ.get('DIFF_NEW_MODE_COLOR', 28)) | 9 new_mode_color = int(os.environ.get('DIFF_NEW_MODE_COLOR', 28)) |
10 REMOVED_COLOR = int(os.environ.get('DIFF_REMOVED_COLOR', 203)) | 10 removed_color = int(os.environ.get('DIFF_REMOVED_COLOR', 203)) |
11 ADDED_COLOR = int(os.environ.get('DIFF_ADDED_COLOR', 2)) | 11 added_color = int(os.environ.get('DIFF_ADDED_COLOR', 2)) |
12 HUNK_START_COLOR = int(os.environ.get('DIFF_HUNK_START_COLOR', 32)) | 12 hunk_start_color = int(os.environ.get('DIFF_HUNK_START_COLOR', 32)) |
13 | 13 |
14 RESET_FORMAT = '\033[0m' | 14 RESET_FORMAT = '\033[0m' |
15 COLOR_FORMAT = '\033[38;5;%um' | 15 COLOR_FORMAT = '\033[38;5;%um' |
16 BEGIN_REVERSE_FORMAT = '\033[7m' | 16 BEGIN_REVERSE_FORMAT = '\033[7m' |
17 END_REVERSE_FORMAT = '\033[27m' | 17 END_REVERSE_FORMAT = '\033[27m' |
52 | 52 |
53 # Each value includes not only the terminal-config characters, but also the key, somewhere within it (possibly between two terminal-config strings). | 53 # Each value includes not only the terminal-config characters, but also the key, somewhere within it (possibly between two terminal-config strings). |
54 # Theoretically, you could replace the key with some other string or leave it out entirely, if you wanted to, but I wouldn't recommend it. | 54 # Theoretically, you could replace the key with some other string or leave it out entirely, if you wanted to, but I wouldn't recommend it. |
55 prefixes = OrderedDict() | 55 prefixes = OrderedDict() |
56 prefixes['---'] = ( | 56 prefixes['---'] = ( |
57 COLOR_FORMAT % (REMOVED_COLOR,) | 57 COLOR_FORMAT % (removed_color,) |
58 + BEGIN_REVERSE_FORMAT | 58 + BEGIN_REVERSE_FORMAT |
59 + '---' | 59 + '---' |
60 + END_REVERSE_FORMAT | 60 + END_REVERSE_FORMAT |
61 ) | 61 ) |
62 prefixes['+++'] = ( | 62 prefixes['+++'] = ( |
63 COLOR_FORMAT % (ADDED_COLOR,) | 63 COLOR_FORMAT % (added_color,) |
64 + BEGIN_REVERSE_FORMAT | 64 + BEGIN_REVERSE_FORMAT |
65 + '+++' | 65 + '+++' |
66 + END_REVERSE_FORMAT | 66 + END_REVERSE_FORMAT |
67 ) | 67 ) |
68 prefixes['-'] = ( | 68 prefixes['-'] = ( |
69 COLOR_FORMAT % (REMOVED_COLOR,) | 69 COLOR_FORMAT % (removed_color,) |
70 + BEGIN_REVERSE_FORMAT | 70 + BEGIN_REVERSE_FORMAT |
71 + '-' | 71 + '-' |
72 + END_REVERSE_FORMAT | 72 + END_REVERSE_FORMAT |
73 ) | 73 ) |
74 prefixes['+'] = ( | 74 prefixes['+'] = ( |
75 COLOR_FORMAT % (ADDED_COLOR,) | 75 COLOR_FORMAT % (added_color,) |
76 + BEGIN_REVERSE_FORMAT | 76 + BEGIN_REVERSE_FORMAT |
77 + '+' | 77 + '+' |
78 + END_REVERSE_FORMAT | 78 + END_REVERSE_FORMAT |
79 ) | 79 ) |
80 prefixes['old mode'] = ( # Git-style diffs only | 80 prefixes['old mode'] = ( # Git-style diffs only |
81 COLOR_FORMAT % (OLD_MODE_COLOR,) | 81 COLOR_FORMAT % (old_mode_color,) |
82 + BEGIN_REVERSE_FORMAT | 82 + BEGIN_REVERSE_FORMAT |
83 + 'old mode' | 83 + 'old mode' |
84 + END_REVERSE_FORMAT | 84 + END_REVERSE_FORMAT |
85 ) | 85 ) |
86 prefixes['new mode'] = ( # Git-style diffs only | 86 prefixes['new mode'] = ( # Git-style diffs only |
87 COLOR_FORMAT % (NEW_MODE_COLOR,) | 87 COLOR_FORMAT % (new_mode_color,) |
88 + BEGIN_REVERSE_FORMAT | 88 + BEGIN_REVERSE_FORMAT |
89 + 'new mode' | 89 + 'new mode' |
90 + END_REVERSE_FORMAT | 90 + END_REVERSE_FORMAT |
91 ) | 91 ) |
92 prefixes['Index: '] = COLOR_FORMAT % (INDEX_COLOR,) + 'Index: ' | 92 prefixes['Index: '] = COLOR_FORMAT % (index_color,) + 'Index: ' |
93 prefixes['diff --git '] = COLOR_FORMAT % (INDEX_COLOR,) + 'diff --git ' | 93 prefixes['diff --git '] = COLOR_FORMAT % (index_color,) + 'diff --git ' |
94 prefixes['@@'] = ( | 94 prefixes['@@'] = ( |
95 COLOR_FORMAT % (HUNK_START_COLOR,) | 95 COLOR_FORMAT % (hunk_start_color,) |
96 + BEGIN_REVERSE_FORMAT | 96 + BEGIN_REVERSE_FORMAT |
97 + '@@' | 97 + '@@' |
98 ) | 98 ) |
99 | 99 |
100 for line in fileinput.input(): | 100 for line in fileinput.input(): |