annotate tests/test-diff-color.t @ 39110:f0c2653ca706

merge: add tests for commit with no content change It isn't easy to say when to reuse the p1 manifest. Basically, that's only when wctx.files() is empty, but we need to know that wctx.files() is not the same as repo['.'].files() after the commit. This patch adds several examples of commits with empty ctx/wctx.files(). I don't think this is exhaustive, but it contains at least one failure mode in which a converted repo result in a different hash. I also note that the manifest revlog does NOT follow the DAG shape of the changelog since p1 manifest is reused if wctx.files() is empty even at merge. I don't know whether it is intentional or not, but it's the behavior since 2011, 301725c3df9a "localrepo: reuse parent manifest in commitctx if no files have changed."
author Yuya Nishihara <yuya@tcha.org>
date Sun, 12 Aug 2018 18:44:42 +0900
parents ddc1da134772
children c8e371ee65a4
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
12415
1ff3fc4b6a66 tests: unify test-diff-color
Matt Mackall <mpm@selenic.com>
parents: 9711
diff changeset
1 Setup
7458
03dd55115985 color: Add tests for colorized diff and status output.
Augie Fackler <durin42@gmail.com>
parents:
diff changeset
2
23172
e955549cd045 tests: write hgrc of more than two lines by using shell heredoc
Yuya Nishihara <yuya@tcha.org>
parents: 22589
diff changeset
3 $ cat <<EOF >> $HGRCPATH
31110
7fec37746417 color: add a 'ui.color' option to control color behavior
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 27411
diff changeset
4 > [ui]
32103
9a98023ac8db color: special case 'always' in 'ui.color'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 32102
diff changeset
5 > color = yes
32102
9a85ea1daf49 color: turn 'ui.color' into a boolean (auto or off)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 31110
diff changeset
6 > formatted = always
32122
1add41fc3c62 test-diff-color: disable pager for expected output on Windows (issue5555)
Matt Harbison <matt_harbison@yahoo.com>
parents: 32103
diff changeset
7 > paginate = never
23172
e955549cd045 tests: write hgrc of more than two lines by using shell heredoc
Yuya Nishihara <yuya@tcha.org>
parents: 22589
diff changeset
8 > [color]
e955549cd045 tests: write hgrc of more than two lines by using shell heredoc
Yuya Nishihara <yuya@tcha.org>
parents: 22589
diff changeset
9 > mode = ansi
e955549cd045 tests: write hgrc of more than two lines by using shell heredoc
Yuya Nishihara <yuya@tcha.org>
parents: 22589
diff changeset
10 > EOF
12415
1ff3fc4b6a66 tests: unify test-diff-color
Matt Mackall <mpm@selenic.com>
parents: 9711
diff changeset
11 $ hg init repo
1ff3fc4b6a66 tests: unify test-diff-color
Matt Mackall <mpm@selenic.com>
parents: 9711
diff changeset
12 $ cd repo
1ff3fc4b6a66 tests: unify test-diff-color
Matt Mackall <mpm@selenic.com>
parents: 9711
diff changeset
13 $ cat > a <<EOF
1ff3fc4b6a66 tests: unify test-diff-color
Matt Mackall <mpm@selenic.com>
parents: 9711
diff changeset
14 > c
1ff3fc4b6a66 tests: unify test-diff-color
Matt Mackall <mpm@selenic.com>
parents: 9711
diff changeset
15 > c
1ff3fc4b6a66 tests: unify test-diff-color
Matt Mackall <mpm@selenic.com>
parents: 9711
diff changeset
16 > a
1ff3fc4b6a66 tests: unify test-diff-color
Matt Mackall <mpm@selenic.com>
parents: 9711
diff changeset
17 > a
1ff3fc4b6a66 tests: unify test-diff-color
Matt Mackall <mpm@selenic.com>
parents: 9711
diff changeset
18 > b
1ff3fc4b6a66 tests: unify test-diff-color
Matt Mackall <mpm@selenic.com>
parents: 9711
diff changeset
19 > a
1ff3fc4b6a66 tests: unify test-diff-color
Matt Mackall <mpm@selenic.com>
parents: 9711
diff changeset
20 > a
1ff3fc4b6a66 tests: unify test-diff-color
Matt Mackall <mpm@selenic.com>
parents: 9711
diff changeset
21 > c
1ff3fc4b6a66 tests: unify test-diff-color
Matt Mackall <mpm@selenic.com>
parents: 9711
diff changeset
22 > c
1ff3fc4b6a66 tests: unify test-diff-color
Matt Mackall <mpm@selenic.com>
parents: 9711
diff changeset
23 > EOF
1ff3fc4b6a66 tests: unify test-diff-color
Matt Mackall <mpm@selenic.com>
parents: 9711
diff changeset
24 $ hg ci -Am adda
39091
ddc1da134772 addremove: add associated color for the new labels
Boris Feld <boris.feld@octobus.net>
parents: 38752
diff changeset
25 \x1b[0;32madding a\x1b[0m (esc)
12415
1ff3fc4b6a66 tests: unify test-diff-color
Matt Mackall <mpm@selenic.com>
parents: 9711
diff changeset
26 $ cat > a <<EOF
1ff3fc4b6a66 tests: unify test-diff-color
Matt Mackall <mpm@selenic.com>
parents: 9711
diff changeset
27 > c
1ff3fc4b6a66 tests: unify test-diff-color
Matt Mackall <mpm@selenic.com>
parents: 9711
diff changeset
28 > c
1ff3fc4b6a66 tests: unify test-diff-color
Matt Mackall <mpm@selenic.com>
parents: 9711
diff changeset
29 > a
1ff3fc4b6a66 tests: unify test-diff-color
Matt Mackall <mpm@selenic.com>
parents: 9711
diff changeset
30 > a
1ff3fc4b6a66 tests: unify test-diff-color
Matt Mackall <mpm@selenic.com>
parents: 9711
diff changeset
31 > dd
1ff3fc4b6a66 tests: unify test-diff-color
Matt Mackall <mpm@selenic.com>
parents: 9711
diff changeset
32 > a
1ff3fc4b6a66 tests: unify test-diff-color
Matt Mackall <mpm@selenic.com>
parents: 9711
diff changeset
33 > a
1ff3fc4b6a66 tests: unify test-diff-color
Matt Mackall <mpm@selenic.com>
parents: 9711
diff changeset
34 > c
1ff3fc4b6a66 tests: unify test-diff-color
Matt Mackall <mpm@selenic.com>
parents: 9711
diff changeset
35 > c
1ff3fc4b6a66 tests: unify test-diff-color
Matt Mackall <mpm@selenic.com>
parents: 9711
diff changeset
36 > EOF
1ff3fc4b6a66 tests: unify test-diff-color
Matt Mackall <mpm@selenic.com>
parents: 9711
diff changeset
37
1ff3fc4b6a66 tests: unify test-diff-color
Matt Mackall <mpm@selenic.com>
parents: 9711
diff changeset
38 default context
1ff3fc4b6a66 tests: unify test-diff-color
Matt Mackall <mpm@selenic.com>
parents: 9711
diff changeset
39
31110
7fec37746417 color: add a 'ui.color' option to control color behavior
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 27411
diff changeset
40 $ hg diff --nodates
12942
05fffd665170 tests: use (esc) for all non-ASCII test output
Mads Kiilerich <mads@kiilerich.com>
parents: 12415
diff changeset
41 \x1b[0;1mdiff -r cf9f4ba66af2 a\x1b[0m (esc)
05fffd665170 tests: use (esc) for all non-ASCII test output
Mads Kiilerich <mads@kiilerich.com>
parents: 12415
diff changeset
42 \x1b[0;31;1m--- a/a\x1b[0m (esc)
05fffd665170 tests: use (esc) for all non-ASCII test output
Mads Kiilerich <mads@kiilerich.com>
parents: 12415
diff changeset
43 \x1b[0;32;1m+++ b/a\x1b[0m (esc)
05fffd665170 tests: use (esc) for all non-ASCII test output
Mads Kiilerich <mads@kiilerich.com>
parents: 12415
diff changeset
44 \x1b[0;35m@@ -2,7 +2,7 @@\x1b[0m (esc)
12415
1ff3fc4b6a66 tests: unify test-diff-color
Matt Mackall <mpm@selenic.com>
parents: 9711
diff changeset
45 c
1ff3fc4b6a66 tests: unify test-diff-color
Matt Mackall <mpm@selenic.com>
parents: 9711
diff changeset
46 a
1ff3fc4b6a66 tests: unify test-diff-color
Matt Mackall <mpm@selenic.com>
parents: 9711
diff changeset
47 a
12942
05fffd665170 tests: use (esc) for all non-ASCII test output
Mads Kiilerich <mads@kiilerich.com>
parents: 12415
diff changeset
48 \x1b[0;31m-b\x1b[0m (esc)
05fffd665170 tests: use (esc) for all non-ASCII test output
Mads Kiilerich <mads@kiilerich.com>
parents: 12415
diff changeset
49 \x1b[0;32m+dd\x1b[0m (esc)
12415
1ff3fc4b6a66 tests: unify test-diff-color
Matt Mackall <mpm@selenic.com>
parents: 9711
diff changeset
50 a
1ff3fc4b6a66 tests: unify test-diff-color
Matt Mackall <mpm@selenic.com>
parents: 9711
diff changeset
51 a
1ff3fc4b6a66 tests: unify test-diff-color
Matt Mackall <mpm@selenic.com>
parents: 9711
diff changeset
52 c
1ff3fc4b6a66 tests: unify test-diff-color
Matt Mackall <mpm@selenic.com>
parents: 9711
diff changeset
53
38660
b07b691d2667 tests: add diff color trailing whitespace test
Sune Foldager <cryo@cyanite.org>
parents: 38591
diff changeset
54 trailing whitespace
b07b691d2667 tests: add diff color trailing whitespace test
Sune Foldager <cryo@cyanite.org>
parents: 38591
diff changeset
55
b07b691d2667 tests: add diff color trailing whitespace test
Sune Foldager <cryo@cyanite.org>
parents: 38591
diff changeset
56 $ cp a a.orig
38752
8623a6c96998 tests: use inline Python instead of sed to add trailing whitespace
Augie Fackler <augie@google.com>
parents: 38660
diff changeset
57 >>> with open('a', 'rb') as f:
8623a6c96998 tests: use inline Python instead of sed to add trailing whitespace
Augie Fackler <augie@google.com>
parents: 38660
diff changeset
58 ... data = f.read()
8623a6c96998 tests: use inline Python instead of sed to add trailing whitespace
Augie Fackler <augie@google.com>
parents: 38660
diff changeset
59 >>> with open('a', 'wb') as f:
8623a6c96998 tests: use inline Python instead of sed to add trailing whitespace
Augie Fackler <augie@google.com>
parents: 38660
diff changeset
60 ... f.write(data.replace('dd', 'dd \r'))
38660
b07b691d2667 tests: add diff color trailing whitespace test
Sune Foldager <cryo@cyanite.org>
parents: 38591
diff changeset
61 $ hg diff --nodates
b07b691d2667 tests: add diff color trailing whitespace test
Sune Foldager <cryo@cyanite.org>
parents: 38591
diff changeset
62 \x1b[0;1mdiff -r cf9f4ba66af2 a\x1b[0m (esc)
b07b691d2667 tests: add diff color trailing whitespace test
Sune Foldager <cryo@cyanite.org>
parents: 38591
diff changeset
63 \x1b[0;31;1m--- a/a\x1b[0m (esc)
b07b691d2667 tests: add diff color trailing whitespace test
Sune Foldager <cryo@cyanite.org>
parents: 38591
diff changeset
64 \x1b[0;32;1m+++ b/a\x1b[0m (esc)
b07b691d2667 tests: add diff color trailing whitespace test
Sune Foldager <cryo@cyanite.org>
parents: 38591
diff changeset
65 \x1b[0;35m@@ -2,7 +2,7 @@\x1b[0m (esc)
b07b691d2667 tests: add diff color trailing whitespace test
Sune Foldager <cryo@cyanite.org>
parents: 38591
diff changeset
66 c
b07b691d2667 tests: add diff color trailing whitespace test
Sune Foldager <cryo@cyanite.org>
parents: 38591
diff changeset
67 a
b07b691d2667 tests: add diff color trailing whitespace test
Sune Foldager <cryo@cyanite.org>
parents: 38591
diff changeset
68 a
b07b691d2667 tests: add diff color trailing whitespace test
Sune Foldager <cryo@cyanite.org>
parents: 38591
diff changeset
69 \x1b[0;31m-b\x1b[0m (esc)
b07b691d2667 tests: add diff color trailing whitespace test
Sune Foldager <cryo@cyanite.org>
parents: 38591
diff changeset
70 \x1b[0;32m+dd\x1b[0m\x1b[0;1;41m \x1b[0m\r (esc)
b07b691d2667 tests: add diff color trailing whitespace test
Sune Foldager <cryo@cyanite.org>
parents: 38591
diff changeset
71 a
b07b691d2667 tests: add diff color trailing whitespace test
Sune Foldager <cryo@cyanite.org>
parents: 38591
diff changeset
72 a
b07b691d2667 tests: add diff color trailing whitespace test
Sune Foldager <cryo@cyanite.org>
parents: 38591
diff changeset
73 c
b07b691d2667 tests: add diff color trailing whitespace test
Sune Foldager <cryo@cyanite.org>
parents: 38591
diff changeset
74
b07b691d2667 tests: add diff color trailing whitespace test
Sune Foldager <cryo@cyanite.org>
parents: 38591
diff changeset
75 $ mv a.orig a
b07b691d2667 tests: add diff color trailing whitespace test
Sune Foldager <cryo@cyanite.org>
parents: 38591
diff changeset
76
32102
9a85ea1daf49 color: turn 'ui.color' into a boolean (auto or off)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 31110
diff changeset
77 (check that 'ui.color=yes' match '--color=auto')
9a85ea1daf49 color: turn 'ui.color' into a boolean (auto or off)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 31110
diff changeset
78
9a85ea1daf49 color: turn 'ui.color' into a boolean (auto or off)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 31110
diff changeset
79 $ hg diff --nodates --config ui.formatted=no
9a85ea1daf49 color: turn 'ui.color' into a boolean (auto or off)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 31110
diff changeset
80 diff -r cf9f4ba66af2 a
9a85ea1daf49 color: turn 'ui.color' into a boolean (auto or off)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 31110
diff changeset
81 --- a/a
9a85ea1daf49 color: turn 'ui.color' into a boolean (auto or off)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 31110
diff changeset
82 +++ b/a
9a85ea1daf49 color: turn 'ui.color' into a boolean (auto or off)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 31110
diff changeset
83 @@ -2,7 +2,7 @@
9a85ea1daf49 color: turn 'ui.color' into a boolean (auto or off)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 31110
diff changeset
84 c
9a85ea1daf49 color: turn 'ui.color' into a boolean (auto or off)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 31110
diff changeset
85 a
9a85ea1daf49 color: turn 'ui.color' into a boolean (auto or off)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 31110
diff changeset
86 a
9a85ea1daf49 color: turn 'ui.color' into a boolean (auto or off)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 31110
diff changeset
87 -b
9a85ea1daf49 color: turn 'ui.color' into a boolean (auto or off)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 31110
diff changeset
88 +dd
9a85ea1daf49 color: turn 'ui.color' into a boolean (auto or off)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 31110
diff changeset
89 a
9a85ea1daf49 color: turn 'ui.color' into a boolean (auto or off)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 31110
diff changeset
90 a
9a85ea1daf49 color: turn 'ui.color' into a boolean (auto or off)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 31110
diff changeset
91 c
9a85ea1daf49 color: turn 'ui.color' into a boolean (auto or off)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 31110
diff changeset
92
9a85ea1daf49 color: turn 'ui.color' into a boolean (auto or off)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 31110
diff changeset
93 (check that 'ui.color=no' disable color)
9a85ea1daf49 color: turn 'ui.color' into a boolean (auto or off)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 31110
diff changeset
94
9a85ea1daf49 color: turn 'ui.color' into a boolean (auto or off)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 31110
diff changeset
95 $ hg diff --nodates --config ui.formatted=yes --config ui.color=no
9a85ea1daf49 color: turn 'ui.color' into a boolean (auto or off)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 31110
diff changeset
96 diff -r cf9f4ba66af2 a
9a85ea1daf49 color: turn 'ui.color' into a boolean (auto or off)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 31110
diff changeset
97 --- a/a
9a85ea1daf49 color: turn 'ui.color' into a boolean (auto or off)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 31110
diff changeset
98 +++ b/a
9a85ea1daf49 color: turn 'ui.color' into a boolean (auto or off)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 31110
diff changeset
99 @@ -2,7 +2,7 @@
9a85ea1daf49 color: turn 'ui.color' into a boolean (auto or off)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 31110
diff changeset
100 c
9a85ea1daf49 color: turn 'ui.color' into a boolean (auto or off)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 31110
diff changeset
101 a
9a85ea1daf49 color: turn 'ui.color' into a boolean (auto or off)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 31110
diff changeset
102 a
9a85ea1daf49 color: turn 'ui.color' into a boolean (auto or off)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 31110
diff changeset
103 -b
9a85ea1daf49 color: turn 'ui.color' into a boolean (auto or off)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 31110
diff changeset
104 +dd
9a85ea1daf49 color: turn 'ui.color' into a boolean (auto or off)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 31110
diff changeset
105 a
9a85ea1daf49 color: turn 'ui.color' into a boolean (auto or off)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 31110
diff changeset
106 a
9a85ea1daf49 color: turn 'ui.color' into a boolean (auto or off)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 31110
diff changeset
107 c
9a85ea1daf49 color: turn 'ui.color' into a boolean (auto or off)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 31110
diff changeset
108
32103
9a98023ac8db color: special case 'always' in 'ui.color'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 32102
diff changeset
109 (check that 'ui.color=always' force color)
9a98023ac8db color: special case 'always' in 'ui.color'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 32102
diff changeset
110
9a98023ac8db color: special case 'always' in 'ui.color'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 32102
diff changeset
111 $ hg diff --nodates --config ui.formatted=no --config ui.color=always
9a98023ac8db color: special case 'always' in 'ui.color'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 32102
diff changeset
112 \x1b[0;1mdiff -r cf9f4ba66af2 a\x1b[0m (esc)
9a98023ac8db color: special case 'always' in 'ui.color'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 32102
diff changeset
113 \x1b[0;31;1m--- a/a\x1b[0m (esc)
9a98023ac8db color: special case 'always' in 'ui.color'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 32102
diff changeset
114 \x1b[0;32;1m+++ b/a\x1b[0m (esc)
9a98023ac8db color: special case 'always' in 'ui.color'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 32102
diff changeset
115 \x1b[0;35m@@ -2,7 +2,7 @@\x1b[0m (esc)
9a98023ac8db color: special case 'always' in 'ui.color'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 32102
diff changeset
116 c
9a98023ac8db color: special case 'always' in 'ui.color'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 32102
diff changeset
117 a
9a98023ac8db color: special case 'always' in 'ui.color'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 32102
diff changeset
118 a
9a98023ac8db color: special case 'always' in 'ui.color'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 32102
diff changeset
119 \x1b[0;31m-b\x1b[0m (esc)
9a98023ac8db color: special case 'always' in 'ui.color'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 32102
diff changeset
120 \x1b[0;32m+dd\x1b[0m (esc)
9a98023ac8db color: special case 'always' in 'ui.color'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 32102
diff changeset
121 a
9a98023ac8db color: special case 'always' in 'ui.color'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 32102
diff changeset
122 a
9a98023ac8db color: special case 'always' in 'ui.color'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 32102
diff changeset
123 c
9a98023ac8db color: special case 'always' in 'ui.color'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 32102
diff changeset
124
12415
1ff3fc4b6a66 tests: unify test-diff-color
Matt Mackall <mpm@selenic.com>
parents: 9711
diff changeset
125 --unified=2
1ff3fc4b6a66 tests: unify test-diff-color
Matt Mackall <mpm@selenic.com>
parents: 9711
diff changeset
126
31110
7fec37746417 color: add a 'ui.color' option to control color behavior
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 27411
diff changeset
127 $ hg diff --nodates -U 2
12942
05fffd665170 tests: use (esc) for all non-ASCII test output
Mads Kiilerich <mads@kiilerich.com>
parents: 12415
diff changeset
128 \x1b[0;1mdiff -r cf9f4ba66af2 a\x1b[0m (esc)
05fffd665170 tests: use (esc) for all non-ASCII test output
Mads Kiilerich <mads@kiilerich.com>
parents: 12415
diff changeset
129 \x1b[0;31;1m--- a/a\x1b[0m (esc)
05fffd665170 tests: use (esc) for all non-ASCII test output
Mads Kiilerich <mads@kiilerich.com>
parents: 12415
diff changeset
130 \x1b[0;32;1m+++ b/a\x1b[0m (esc)
05fffd665170 tests: use (esc) for all non-ASCII test output
Mads Kiilerich <mads@kiilerich.com>
parents: 12415
diff changeset
131 \x1b[0;35m@@ -3,5 +3,5 @@\x1b[0m (esc)
12415
1ff3fc4b6a66 tests: unify test-diff-color
Matt Mackall <mpm@selenic.com>
parents: 9711
diff changeset
132 a
1ff3fc4b6a66 tests: unify test-diff-color
Matt Mackall <mpm@selenic.com>
parents: 9711
diff changeset
133 a
12942
05fffd665170 tests: use (esc) for all non-ASCII test output
Mads Kiilerich <mads@kiilerich.com>
parents: 12415
diff changeset
134 \x1b[0;31m-b\x1b[0m (esc)
05fffd665170 tests: use (esc) for all non-ASCII test output
Mads Kiilerich <mads@kiilerich.com>
parents: 12415
diff changeset
135 \x1b[0;32m+dd\x1b[0m (esc)
12415
1ff3fc4b6a66 tests: unify test-diff-color
Matt Mackall <mpm@selenic.com>
parents: 9711
diff changeset
136 a
1ff3fc4b6a66 tests: unify test-diff-color
Matt Mackall <mpm@selenic.com>
parents: 9711
diff changeset
137 a
7458
03dd55115985 color: Add tests for colorized diff and status output.
Augie Fackler <durin42@gmail.com>
parents:
diff changeset
138
12415
1ff3fc4b6a66 tests: unify test-diff-color
Matt Mackall <mpm@selenic.com>
parents: 9711
diff changeset
139 diffstat
9579
c06e7581bbaa color: add test for record support
Brodie Rao <me+hg@dackz.net>
parents: 7458
diff changeset
140
31110
7fec37746417 color: add a 'ui.color' option to control color behavior
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 27411
diff changeset
141 $ hg diff --stat
12942
05fffd665170 tests: use (esc) for all non-ASCII test output
Mads Kiilerich <mads@kiilerich.com>
parents: 12415
diff changeset
142 a | 2 \x1b[0;32m+\x1b[0m\x1b[0;31m-\x1b[0m (esc)
12415
1ff3fc4b6a66 tests: unify test-diff-color
Matt Mackall <mpm@selenic.com>
parents: 9711
diff changeset
143 1 files changed, 1 insertions(+), 1 deletions(-)
23172
e955549cd045 tests: write hgrc of more than two lines by using shell heredoc
Yuya Nishihara <yuya@tcha.org>
parents: 22589
diff changeset
144 $ cat <<EOF >> $HGRCPATH
31110
7fec37746417 color: add a 'ui.color' option to control color behavior
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 27411
diff changeset
145 > [extensions]
23172
e955549cd045 tests: write hgrc of more than two lines by using shell heredoc
Yuya Nishihara <yuya@tcha.org>
parents: 22589
diff changeset
146 > record =
e955549cd045 tests: write hgrc of more than two lines by using shell heredoc
Yuya Nishihara <yuya@tcha.org>
parents: 22589
diff changeset
147 > [ui]
e955549cd045 tests: write hgrc of more than two lines by using shell heredoc
Yuya Nishihara <yuya@tcha.org>
parents: 22589
diff changeset
148 > interactive = true
e955549cd045 tests: write hgrc of more than two lines by using shell heredoc
Yuya Nishihara <yuya@tcha.org>
parents: 22589
diff changeset
149 > [diff]
e955549cd045 tests: write hgrc of more than two lines by using shell heredoc
Yuya Nishihara <yuya@tcha.org>
parents: 22589
diff changeset
150 > git = True
e955549cd045 tests: write hgrc of more than two lines by using shell heredoc
Yuya Nishihara <yuya@tcha.org>
parents: 22589
diff changeset
151 > EOF
9641
9b99f158348a color: colorize diff --stat
Brodie Rao <me+hg@dackz.net>
parents: 9579
diff changeset
152
16899
8149ff405c78 tests: convert some 'hghave execbit' to #if
Mads Kiilerich <mads@kiilerich.com>
parents: 16324
diff changeset
153 #if execbit
8149ff405c78 tests: convert some 'hghave execbit' to #if
Mads Kiilerich <mads@kiilerich.com>
parents: 16324
diff changeset
154
12415
1ff3fc4b6a66 tests: unify test-diff-color
Matt Mackall <mpm@selenic.com>
parents: 9711
diff changeset
155 record
9579
c06e7581bbaa color: add test for record support
Brodie Rao <me+hg@dackz.net>
parents: 7458
diff changeset
156
15442
db0340f4b507 tests: use 'hghave execbit' for tests that manipulate x bit in file system
Mads Kiilerich <mads@kiilerich.com>
parents: 15243
diff changeset
157 $ chmod +x a
31110
7fec37746417 color: add a 'ui.color' option to control color behavior
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 27411
diff changeset
158 $ hg record -m moda a <<EOF
12415
1ff3fc4b6a66 tests: unify test-diff-color
Matt Mackall <mpm@selenic.com>
parents: 9711
diff changeset
159 > y
1ff3fc4b6a66 tests: unify test-diff-color
Matt Mackall <mpm@selenic.com>
parents: 9711
diff changeset
160 > y
1ff3fc4b6a66 tests: unify test-diff-color
Matt Mackall <mpm@selenic.com>
parents: 9711
diff changeset
161 > EOF
12942
05fffd665170 tests: use (esc) for all non-ASCII test output
Mads Kiilerich <mads@kiilerich.com>
parents: 12415
diff changeset
162 \x1b[0;1mdiff --git a/a b/a\x1b[0m (esc)
05fffd665170 tests: use (esc) for all non-ASCII test output
Mads Kiilerich <mads@kiilerich.com>
parents: 12415
diff changeset
163 \x1b[0;36;1mold mode 100644\x1b[0m (esc)
05fffd665170 tests: use (esc) for all non-ASCII test output
Mads Kiilerich <mads@kiilerich.com>
parents: 12415
diff changeset
164 \x1b[0;36;1mnew mode 100755\x1b[0m (esc)
12415
1ff3fc4b6a66 tests: unify test-diff-color
Matt Mackall <mpm@selenic.com>
parents: 9711
diff changeset
165 1 hunks, 1 lines changed
22589
9ab18a912c44 ui: show prompt choice if input is not a tty but is forced to be interactive
Mads Kiilerich <madski@unity3d.com>
parents: 22460
diff changeset
166 \x1b[0;33mexamine changes to 'a'? [Ynesfdaq?]\x1b[0m y (esc)
9ab18a912c44 ui: show prompt choice if input is not a tty but is forced to be interactive
Mads Kiilerich <madski@unity3d.com>
parents: 22460
diff changeset
167
27411
c84a07530040 record: turn on showfunc
timeless <timeless@mozdev.org>
parents: 23172
diff changeset
168 \x1b[0;35m@@ -2,7 +2,7 @@ c\x1b[0m (esc)
12415
1ff3fc4b6a66 tests: unify test-diff-color
Matt Mackall <mpm@selenic.com>
parents: 9711
diff changeset
169 c
1ff3fc4b6a66 tests: unify test-diff-color
Matt Mackall <mpm@selenic.com>
parents: 9711
diff changeset
170 a
1ff3fc4b6a66 tests: unify test-diff-color
Matt Mackall <mpm@selenic.com>
parents: 9711
diff changeset
171 a
12942
05fffd665170 tests: use (esc) for all non-ASCII test output
Mads Kiilerich <mads@kiilerich.com>
parents: 12415
diff changeset
172 \x1b[0;31m-b\x1b[0m (esc)
05fffd665170 tests: use (esc) for all non-ASCII test output
Mads Kiilerich <mads@kiilerich.com>
parents: 12415
diff changeset
173 \x1b[0;32m+dd\x1b[0m (esc)
12415
1ff3fc4b6a66 tests: unify test-diff-color
Matt Mackall <mpm@selenic.com>
parents: 9711
diff changeset
174 a
1ff3fc4b6a66 tests: unify test-diff-color
Matt Mackall <mpm@selenic.com>
parents: 9711
diff changeset
175 a
1ff3fc4b6a66 tests: unify test-diff-color
Matt Mackall <mpm@selenic.com>
parents: 9711
diff changeset
176 c
22589
9ab18a912c44 ui: show prompt choice if input is not a tty but is forced to be interactive
Mads Kiilerich <madski@unity3d.com>
parents: 22460
diff changeset
177 \x1b[0;33mrecord this change to 'a'? [Ynesfdaq?]\x1b[0m y (esc)
9ab18a912c44 ui: show prompt choice if input is not a tty but is forced to be interactive
Mads Kiilerich <madski@unity3d.com>
parents: 22460
diff changeset
178
15243
1e9451476bf8 tests: cleanup of echo statements left over from test conversion
Mads Kiilerich <mads@kiilerich.com>
parents: 13987
diff changeset
179
12415
1ff3fc4b6a66 tests: unify test-diff-color
Matt Mackall <mpm@selenic.com>
parents: 9711
diff changeset
180 $ echo "[extensions]" >> $HGRCPATH
1ff3fc4b6a66 tests: unify test-diff-color
Matt Mackall <mpm@selenic.com>
parents: 9711
diff changeset
181 $ echo "mq=" >> $HGRCPATH
1ff3fc4b6a66 tests: unify test-diff-color
Matt Mackall <mpm@selenic.com>
parents: 9711
diff changeset
182 $ hg rollback
13446
1e497df514e2 rollback: clarifies the message about the reverted state (issue2628)
Gilles Moris <gilles.moris@free.fr>
parents: 12942
diff changeset
183 repository tip rolled back to revision 0 (undo commit)
1e497df514e2 rollback: clarifies the message about the reverted state (issue2628)
Gilles Moris <gilles.moris@free.fr>
parents: 12942
diff changeset
184 working directory now based on revision 0
9711
d29bd00bbc50 color: wrap qrecord
Martin Geisler <mg@lazybytes.net>
parents: 9641
diff changeset
185
12415
1ff3fc4b6a66 tests: unify test-diff-color
Matt Mackall <mpm@selenic.com>
parents: 9711
diff changeset
186 qrecord
9711
d29bd00bbc50 color: wrap qrecord
Martin Geisler <mg@lazybytes.net>
parents: 9641
diff changeset
187
31110
7fec37746417 color: add a 'ui.color' option to control color behavior
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 27411
diff changeset
188 $ hg qrecord -m moda patch <<EOF
12415
1ff3fc4b6a66 tests: unify test-diff-color
Matt Mackall <mpm@selenic.com>
parents: 9711
diff changeset
189 > y
1ff3fc4b6a66 tests: unify test-diff-color
Matt Mackall <mpm@selenic.com>
parents: 9711
diff changeset
190 > y
1ff3fc4b6a66 tests: unify test-diff-color
Matt Mackall <mpm@selenic.com>
parents: 9711
diff changeset
191 > EOF
12942
05fffd665170 tests: use (esc) for all non-ASCII test output
Mads Kiilerich <mads@kiilerich.com>
parents: 12415
diff changeset
192 \x1b[0;1mdiff --git a/a b/a\x1b[0m (esc)
05fffd665170 tests: use (esc) for all non-ASCII test output
Mads Kiilerich <mads@kiilerich.com>
parents: 12415
diff changeset
193 \x1b[0;36;1mold mode 100644\x1b[0m (esc)
05fffd665170 tests: use (esc) for all non-ASCII test output
Mads Kiilerich <mads@kiilerich.com>
parents: 12415
diff changeset
194 \x1b[0;36;1mnew mode 100755\x1b[0m (esc)
12415
1ff3fc4b6a66 tests: unify test-diff-color
Matt Mackall <mpm@selenic.com>
parents: 9711
diff changeset
195 1 hunks, 1 lines changed
22589
9ab18a912c44 ui: show prompt choice if input is not a tty but is forced to be interactive
Mads Kiilerich <madski@unity3d.com>
parents: 22460
diff changeset
196 \x1b[0;33mexamine changes to 'a'? [Ynesfdaq?]\x1b[0m y (esc)
9ab18a912c44 ui: show prompt choice if input is not a tty but is forced to be interactive
Mads Kiilerich <madski@unity3d.com>
parents: 22460
diff changeset
197
27411
c84a07530040 record: turn on showfunc
timeless <timeless@mozdev.org>
parents: 23172
diff changeset
198 \x1b[0;35m@@ -2,7 +2,7 @@ c\x1b[0m (esc)
12415
1ff3fc4b6a66 tests: unify test-diff-color
Matt Mackall <mpm@selenic.com>
parents: 9711
diff changeset
199 c
1ff3fc4b6a66 tests: unify test-diff-color
Matt Mackall <mpm@selenic.com>
parents: 9711
diff changeset
200 a
1ff3fc4b6a66 tests: unify test-diff-color
Matt Mackall <mpm@selenic.com>
parents: 9711
diff changeset
201 a
12942
05fffd665170 tests: use (esc) for all non-ASCII test output
Mads Kiilerich <mads@kiilerich.com>
parents: 12415
diff changeset
202 \x1b[0;31m-b\x1b[0m (esc)
05fffd665170 tests: use (esc) for all non-ASCII test output
Mads Kiilerich <mads@kiilerich.com>
parents: 12415
diff changeset
203 \x1b[0;32m+dd\x1b[0m (esc)
12415
1ff3fc4b6a66 tests: unify test-diff-color
Matt Mackall <mpm@selenic.com>
parents: 9711
diff changeset
204 a
1ff3fc4b6a66 tests: unify test-diff-color
Matt Mackall <mpm@selenic.com>
parents: 9711
diff changeset
205 a
1ff3fc4b6a66 tests: unify test-diff-color
Matt Mackall <mpm@selenic.com>
parents: 9711
diff changeset
206 c
22589
9ab18a912c44 ui: show prompt choice if input is not a tty but is forced to be interactive
Mads Kiilerich <madski@unity3d.com>
parents: 22460
diff changeset
207 \x1b[0;33mrecord this change to 'a'? [Ynesfdaq?]\x1b[0m y (esc)
9ab18a912c44 ui: show prompt choice if input is not a tty but is forced to be interactive
Mads Kiilerich <madski@unity3d.com>
parents: 22460
diff changeset
208
16899
8149ff405c78 tests: convert some 'hghave execbit' to #if
Mads Kiilerich <mads@kiilerich.com>
parents: 16324
diff changeset
209
18006
0c10cf819146 subrepo: add argument to "diff()" to pass "ui" of caller side (issue3712) (API)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 16913
diff changeset
210 $ hg qpop -a
0c10cf819146 subrepo: add argument to "diff()" to pass "ui" of caller side (issue3712) (API)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 16913
diff changeset
211 popping patch
0c10cf819146 subrepo: add argument to "diff()" to pass "ui" of caller side (issue3712) (API)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 16913
diff changeset
212 patch queue now empty
0c10cf819146 subrepo: add argument to "diff()" to pass "ui" of caller side (issue3712) (API)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 16913
diff changeset
213
16899
8149ff405c78 tests: convert some 'hghave execbit' to #if
Mads Kiilerich <mads@kiilerich.com>
parents: 16324
diff changeset
214 #endif
16913
f2719b387380 tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents: 16899
diff changeset
215
18006
0c10cf819146 subrepo: add argument to "diff()" to pass "ui" of caller side (issue3712) (API)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 16913
diff changeset
216 issue3712: test colorization of subrepo diff
0c10cf819146 subrepo: add argument to "diff()" to pass "ui" of caller side (issue3712) (API)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 16913
diff changeset
217
0c10cf819146 subrepo: add argument to "diff()" to pass "ui" of caller side (issue3712) (API)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 16913
diff changeset
218 $ hg init sub
0c10cf819146 subrepo: add argument to "diff()" to pass "ui" of caller side (issue3712) (API)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 16913
diff changeset
219 $ echo b > sub/b
0c10cf819146 subrepo: add argument to "diff()" to pass "ui" of caller side (issue3712) (API)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 16913
diff changeset
220 $ hg -R sub commit -Am 'create sub'
39091
ddc1da134772 addremove: add associated color for the new labels
Boris Feld <boris.feld@octobus.net>
parents: 38752
diff changeset
221 \x1b[0;32madding b\x1b[0m (esc)
18006
0c10cf819146 subrepo: add argument to "diff()" to pass "ui" of caller side (issue3712) (API)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 16913
diff changeset
222 $ echo 'sub = sub' > .hgsub
0c10cf819146 subrepo: add argument to "diff()" to pass "ui" of caller side (issue3712) (API)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 16913
diff changeset
223 $ hg add .hgsub
0c10cf819146 subrepo: add argument to "diff()" to pass "ui" of caller side (issue3712) (API)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 16913
diff changeset
224 $ hg commit -m 'add subrepo sub'
0c10cf819146 subrepo: add argument to "diff()" to pass "ui" of caller side (issue3712) (API)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 16913
diff changeset
225 $ echo aa >> a
0c10cf819146 subrepo: add argument to "diff()" to pass "ui" of caller side (issue3712) (API)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 16913
diff changeset
226 $ echo bb >> sub/b
0c10cf819146 subrepo: add argument to "diff()" to pass "ui" of caller side (issue3712) (API)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 16913
diff changeset
227
31110
7fec37746417 color: add a 'ui.color' option to control color behavior
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 27411
diff changeset
228 $ hg diff -S
18006
0c10cf819146 subrepo: add argument to "diff()" to pass "ui" of caller side (issue3712) (API)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 16913
diff changeset
229 \x1b[0;1mdiff --git a/a b/a\x1b[0m (esc)
0c10cf819146 subrepo: add argument to "diff()" to pass "ui" of caller side (issue3712) (API)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 16913
diff changeset
230 \x1b[0;31;1m--- a/a\x1b[0m (esc)
0c10cf819146 subrepo: add argument to "diff()" to pass "ui" of caller side (issue3712) (API)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 16913
diff changeset
231 \x1b[0;32;1m+++ b/a\x1b[0m (esc)
0c10cf819146 subrepo: add argument to "diff()" to pass "ui" of caller side (issue3712) (API)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 16913
diff changeset
232 \x1b[0;35m@@ -7,3 +7,4 @@\x1b[0m (esc)
0c10cf819146 subrepo: add argument to "diff()" to pass "ui" of caller side (issue3712) (API)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 16913
diff changeset
233 a
0c10cf819146 subrepo: add argument to "diff()" to pass "ui" of caller side (issue3712) (API)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 16913
diff changeset
234 c
0c10cf819146 subrepo: add argument to "diff()" to pass "ui" of caller side (issue3712) (API)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 16913
diff changeset
235 c
0c10cf819146 subrepo: add argument to "diff()" to pass "ui" of caller side (issue3712) (API)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 16913
diff changeset
236 \x1b[0;32m+aa\x1b[0m (esc)
18720
0ade08dcb3c3 tests: remove glob lines which unnecessary match / for \ on windows
Simon Heimberg <simohe@besonet.ch>
parents: 18157
diff changeset
237 \x1b[0;1mdiff --git a/sub/b b/sub/b\x1b[0m (esc)
18006
0c10cf819146 subrepo: add argument to "diff()" to pass "ui" of caller side (issue3712) (API)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 16913
diff changeset
238 \x1b[0;31;1m--- a/sub/b\x1b[0m (esc)
0c10cf819146 subrepo: add argument to "diff()" to pass "ui" of caller side (issue3712) (API)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 16913
diff changeset
239 \x1b[0;32;1m+++ b/sub/b\x1b[0m (esc)
0c10cf819146 subrepo: add argument to "diff()" to pass "ui" of caller side (issue3712) (API)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 16913
diff changeset
240 \x1b[0;35m@@ -1,1 +1,2 @@\x1b[0m (esc)
0c10cf819146 subrepo: add argument to "diff()" to pass "ui" of caller side (issue3712) (API)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 16913
diff changeset
241 b
0c10cf819146 subrepo: add argument to "diff()" to pass "ui" of caller side (issue3712) (API)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 16913
diff changeset
242 \x1b[0;32m+bb\x1b[0m (esc)
0c10cf819146 subrepo: add argument to "diff()" to pass "ui" of caller side (issue3712) (API)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents: 16913
diff changeset
243
22460
c343557a8442 patch: enable diff.tab markup for the color extension
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 18720
diff changeset
244 test tabs
c343557a8442 patch: enable diff.tab markup for the color extension
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 18720
diff changeset
245
c343557a8442 patch: enable diff.tab markup for the color extension
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 18720
diff changeset
246 $ cat >> a <<EOF
c343557a8442 patch: enable diff.tab markup for the color extension
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 18720
diff changeset
247 > one tab
c343557a8442 patch: enable diff.tab markup for the color extension
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 18720
diff changeset
248 > two tabs
c343557a8442 patch: enable diff.tab markup for the color extension
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 18720
diff changeset
249 > end tab
c343557a8442 patch: enable diff.tab markup for the color extension
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 18720
diff changeset
250 > mid tab
c343557a8442 patch: enable diff.tab markup for the color extension
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 18720
diff changeset
251 > all tabs
c343557a8442 patch: enable diff.tab markup for the color extension
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 18720
diff changeset
252 > EOF
31110
7fec37746417 color: add a 'ui.color' option to control color behavior
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 27411
diff changeset
253 $ hg diff --nodates
22460
c343557a8442 patch: enable diff.tab markup for the color extension
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 18720
diff changeset
254 \x1b[0;1mdiff --git a/a b/a\x1b[0m (esc)
c343557a8442 patch: enable diff.tab markup for the color extension
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 18720
diff changeset
255 \x1b[0;31;1m--- a/a\x1b[0m (esc)
c343557a8442 patch: enable diff.tab markup for the color extension
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 18720
diff changeset
256 \x1b[0;32;1m+++ b/a\x1b[0m (esc)
c343557a8442 patch: enable diff.tab markup for the color extension
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 18720
diff changeset
257 \x1b[0;35m@@ -7,3 +7,9 @@\x1b[0m (esc)
c343557a8442 patch: enable diff.tab markup for the color extension
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 18720
diff changeset
258 a
c343557a8442 patch: enable diff.tab markup for the color extension
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 18720
diff changeset
259 c
c343557a8442 patch: enable diff.tab markup for the color extension
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 18720
diff changeset
260 c
c343557a8442 patch: enable diff.tab markup for the color extension
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 18720
diff changeset
261 \x1b[0;32m+aa\x1b[0m (esc)
c343557a8442 patch: enable diff.tab markup for the color extension
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 18720
diff changeset
262 \x1b[0;32m+\x1b[0m \x1b[0;32mone tab\x1b[0m (esc)
c343557a8442 patch: enable diff.tab markup for the color extension
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 18720
diff changeset
263 \x1b[0;32m+\x1b[0m \x1b[0;32mtwo tabs\x1b[0m (esc)
c343557a8442 patch: enable diff.tab markup for the color extension
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 18720
diff changeset
264 \x1b[0;32m+end tab\x1b[0m\x1b[0;1;41m \x1b[0m (esc)
c343557a8442 patch: enable diff.tab markup for the color extension
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 18720
diff changeset
265 \x1b[0;32m+mid\x1b[0m \x1b[0;32mtab\x1b[0m (esc)
c343557a8442 patch: enable diff.tab markup for the color extension
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 18720
diff changeset
266 \x1b[0;32m+\x1b[0m \x1b[0;32mall\x1b[0m \x1b[0;32mtabs\x1b[0m\x1b[0;1;41m \x1b[0m (esc)
c343557a8442 patch: enable diff.tab markup for the color extension
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 18720
diff changeset
267 $ echo "[color]" >> $HGRCPATH
c343557a8442 patch: enable diff.tab markup for the color extension
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 18720
diff changeset
268 $ echo "diff.tab = bold magenta" >> $HGRCPATH
31110
7fec37746417 color: add a 'ui.color' option to control color behavior
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 27411
diff changeset
269 $ hg diff --nodates
22460
c343557a8442 patch: enable diff.tab markup for the color extension
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 18720
diff changeset
270 \x1b[0;1mdiff --git a/a b/a\x1b[0m (esc)
c343557a8442 patch: enable diff.tab markup for the color extension
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 18720
diff changeset
271 \x1b[0;31;1m--- a/a\x1b[0m (esc)
c343557a8442 patch: enable diff.tab markup for the color extension
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 18720
diff changeset
272 \x1b[0;32;1m+++ b/a\x1b[0m (esc)
c343557a8442 patch: enable diff.tab markup for the color extension
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 18720
diff changeset
273 \x1b[0;35m@@ -7,3 +7,9 @@\x1b[0m (esc)
c343557a8442 patch: enable diff.tab markup for the color extension
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 18720
diff changeset
274 a
c343557a8442 patch: enable diff.tab markup for the color extension
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 18720
diff changeset
275 c
c343557a8442 patch: enable diff.tab markup for the color extension
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 18720
diff changeset
276 c
c343557a8442 patch: enable diff.tab markup for the color extension
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 18720
diff changeset
277 \x1b[0;32m+aa\x1b[0m (esc)
c343557a8442 patch: enable diff.tab markup for the color extension
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 18720
diff changeset
278 \x1b[0;32m+\x1b[0m\x1b[0;1;35m \x1b[0m\x1b[0;32mone tab\x1b[0m (esc)
c343557a8442 patch: enable diff.tab markup for the color extension
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 18720
diff changeset
279 \x1b[0;32m+\x1b[0m\x1b[0;1;35m \x1b[0m\x1b[0;32mtwo tabs\x1b[0m (esc)
c343557a8442 patch: enable diff.tab markup for the color extension
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 18720
diff changeset
280 \x1b[0;32m+end tab\x1b[0m\x1b[0;1;41m \x1b[0m (esc)
c343557a8442 patch: enable diff.tab markup for the color extension
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 18720
diff changeset
281 \x1b[0;32m+mid\x1b[0m\x1b[0;1;35m \x1b[0m\x1b[0;32mtab\x1b[0m (esc)
c343557a8442 patch: enable diff.tab markup for the color extension
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 18720
diff changeset
282 \x1b[0;32m+\x1b[0m\x1b[0;1;35m \x1b[0m\x1b[0;32mall\x1b[0m\x1b[0;1;35m \x1b[0m\x1b[0;32mtabs\x1b[0m\x1b[0;1;41m \x1b[0m (esc)
c343557a8442 patch: enable diff.tab markup for the color extension
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents: 18720
diff changeset
283
16913
f2719b387380 tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents: 16899
diff changeset
284 $ cd ..
35277
6ba79cf34f5e patch: add within-line color diff capacity
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32122
diff changeset
285
6ba79cf34f5e patch: add within-line color diff capacity
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32122
diff changeset
286 test inline color diff
6ba79cf34f5e patch: add within-line color diff capacity
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32122
diff changeset
287
6ba79cf34f5e patch: add within-line color diff capacity
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32122
diff changeset
288 $ hg init inline
6ba79cf34f5e patch: add within-line color diff capacity
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32122
diff changeset
289 $ cd inline
6ba79cf34f5e patch: add within-line color diff capacity
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32122
diff changeset
290 $ cat > file1 << EOF
6ba79cf34f5e patch: add within-line color diff capacity
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32122
diff changeset
291 > this is the first line
6ba79cf34f5e patch: add within-line color diff capacity
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32122
diff changeset
292 > this is the second line
6ba79cf34f5e patch: add within-line color diff capacity
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32122
diff changeset
293 > third line starts with space
6ba79cf34f5e patch: add within-line color diff capacity
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32122
diff changeset
294 > + starts with a plus sign
35328
4937db58b663 patch: move part of tabsplitter logic in _inlinediff
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 35277
diff changeset
295 > this one with one tab
4937db58b663 patch: move part of tabsplitter logic in _inlinediff
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 35277
diff changeset
296 > now with full two tabs
4937db58b663 patch: move part of tabsplitter logic in _inlinediff
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 35277
diff changeset
297 > now tabs everywhere, much fun
35277
6ba79cf34f5e patch: add within-line color diff capacity
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32122
diff changeset
298 >
6ba79cf34f5e patch: add within-line color diff capacity
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32122
diff changeset
299 > this line won't change
6ba79cf34f5e patch: add within-line color diff capacity
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32122
diff changeset
300 >
6ba79cf34f5e patch: add within-line color diff capacity
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32122
diff changeset
301 > two lines are going to
6ba79cf34f5e patch: add within-line color diff capacity
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32122
diff changeset
302 > be changed into three!
6ba79cf34f5e patch: add within-line color diff capacity
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32122
diff changeset
303 >
6ba79cf34f5e patch: add within-line color diff capacity
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32122
diff changeset
304 > three of those lines will
6ba79cf34f5e patch: add within-line color diff capacity
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32122
diff changeset
305 > collapse onto one
6ba79cf34f5e patch: add within-line color diff capacity
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32122
diff changeset
306 > (to see if it works)
6ba79cf34f5e patch: add within-line color diff capacity
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32122
diff changeset
307 > EOF
6ba79cf34f5e patch: add within-line color diff capacity
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32122
diff changeset
308 $ hg add file1
6ba79cf34f5e patch: add within-line color diff capacity
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32122
diff changeset
309 $ hg ci -m 'commit'
35328
4937db58b663 patch: move part of tabsplitter logic in _inlinediff
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 35277
diff changeset
310
35277
6ba79cf34f5e patch: add within-line color diff capacity
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32122
diff changeset
311 $ cat > file1 << EOF
6ba79cf34f5e patch: add within-line color diff capacity
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32122
diff changeset
312 > that is the first paragraph
6ba79cf34f5e patch: add within-line color diff capacity
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32122
diff changeset
313 > this is the second line
6ba79cf34f5e patch: add within-line color diff capacity
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32122
diff changeset
314 > third line starts with space
6ba79cf34f5e patch: add within-line color diff capacity
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32122
diff changeset
315 > - starts with a minus sign
35328
4937db58b663 patch: move part of tabsplitter logic in _inlinediff
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 35277
diff changeset
316 > this one with two tab
4937db58b663 patch: move part of tabsplitter logic in _inlinediff
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 35277
diff changeset
317 > now with full three tabs
4937db58b663 patch: move part of tabsplitter logic in _inlinediff
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 35277
diff changeset
318 > now there are tabs everywhere, much fun
35277
6ba79cf34f5e patch: add within-line color diff capacity
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32122
diff changeset
319 >
6ba79cf34f5e patch: add within-line color diff capacity
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32122
diff changeset
320 > this line won't change
6ba79cf34f5e patch: add within-line color diff capacity
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32122
diff changeset
321 >
6ba79cf34f5e patch: add within-line color diff capacity
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32122
diff changeset
322 > two lines are going to
6ba79cf34f5e patch: add within-line color diff capacity
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32122
diff changeset
323 > (entirely magically,
6ba79cf34f5e patch: add within-line color diff capacity
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32122
diff changeset
324 > assuming this works)
6ba79cf34f5e patch: add within-line color diff capacity
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32122
diff changeset
325 > be changed into four!
6ba79cf34f5e patch: add within-line color diff capacity
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32122
diff changeset
326 >
6ba79cf34f5e patch: add within-line color diff capacity
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32122
diff changeset
327 > three of those lines have
6ba79cf34f5e patch: add within-line color diff capacity
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32122
diff changeset
328 > collapsed onto one
6ba79cf34f5e patch: add within-line color diff capacity
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32122
diff changeset
329 > EOF
38591
be441eb65f09 diff: graduate word-diff option from experimental
Yuya Nishihara <yuya@tcha.org>
parents: 37732
diff changeset
330 $ hg diff --config diff.word-diff=False --color=debug
35277
6ba79cf34f5e patch: add within-line color diff capacity
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32122
diff changeset
331 [diff.diffline|diff --git a/file1 b/file1]
6ba79cf34f5e patch: add within-line color diff capacity
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32122
diff changeset
332 [diff.file_a|--- a/file1]
6ba79cf34f5e patch: add within-line color diff capacity
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32122
diff changeset
333 [diff.file_b|+++ b/file1]
35328
4937db58b663 patch: move part of tabsplitter logic in _inlinediff
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 35277
diff changeset
334 [diff.hunk|@@ -1,16 +1,17 @@]
35277
6ba79cf34f5e patch: add within-line color diff capacity
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32122
diff changeset
335 [diff.deleted|-this is the first line]
6ba79cf34f5e patch: add within-line color diff capacity
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32122
diff changeset
336 [diff.deleted|-this is the second line]
6ba79cf34f5e patch: add within-line color diff capacity
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32122
diff changeset
337 [diff.deleted|- third line starts with space]
6ba79cf34f5e patch: add within-line color diff capacity
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32122
diff changeset
338 [diff.deleted|-+ starts with a plus sign]
35328
4937db58b663 patch: move part of tabsplitter logic in _inlinediff
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 35277
diff changeset
339 [diff.deleted|-][diff.tab| ][diff.deleted|this one with one tab]
4937db58b663 patch: move part of tabsplitter logic in _inlinediff
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 35277
diff changeset
340 [diff.deleted|-][diff.tab| ][diff.deleted|now with full two tabs]
4937db58b663 patch: move part of tabsplitter logic in _inlinediff
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 35277
diff changeset
341 [diff.deleted|-][diff.tab| ][diff.deleted|now tabs][diff.tab| ][diff.deleted|everywhere, much fun]
35277
6ba79cf34f5e patch: add within-line color diff capacity
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32122
diff changeset
342 [diff.inserted|+that is the first paragraph]
6ba79cf34f5e patch: add within-line color diff capacity
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32122
diff changeset
343 [diff.inserted|+ this is the second line]
6ba79cf34f5e patch: add within-line color diff capacity
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32122
diff changeset
344 [diff.inserted|+third line starts with space]
6ba79cf34f5e patch: add within-line color diff capacity
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32122
diff changeset
345 [diff.inserted|+- starts with a minus sign]
35328
4937db58b663 patch: move part of tabsplitter logic in _inlinediff
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 35277
diff changeset
346 [diff.inserted|+][diff.tab| ][diff.inserted|this one with two tab]
4937db58b663 patch: move part of tabsplitter logic in _inlinediff
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 35277
diff changeset
347 [diff.inserted|+][diff.tab| ][diff.inserted|now with full three tabs]
4937db58b663 patch: move part of tabsplitter logic in _inlinediff
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 35277
diff changeset
348 [diff.inserted|+][diff.tab| ][diff.inserted|now there are tabs][diff.tab| ][diff.inserted|everywhere, much fun]
35277
6ba79cf34f5e patch: add within-line color diff capacity
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32122
diff changeset
349
6ba79cf34f5e patch: add within-line color diff capacity
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32122
diff changeset
350 this line won't change
6ba79cf34f5e patch: add within-line color diff capacity
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32122
diff changeset
351
6ba79cf34f5e patch: add within-line color diff capacity
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32122
diff changeset
352 two lines are going to
6ba79cf34f5e patch: add within-line color diff capacity
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32122
diff changeset
353 [diff.deleted|-be changed into three!]
6ba79cf34f5e patch: add within-line color diff capacity
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32122
diff changeset
354 [diff.inserted|+(entirely magically,]
6ba79cf34f5e patch: add within-line color diff capacity
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32122
diff changeset
355 [diff.inserted|+ assuming this works)]
6ba79cf34f5e patch: add within-line color diff capacity
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32122
diff changeset
356 [diff.inserted|+be changed into four!]
6ba79cf34f5e patch: add within-line color diff capacity
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32122
diff changeset
357
6ba79cf34f5e patch: add within-line color diff capacity
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32122
diff changeset
358 [diff.deleted|-three of those lines will]
6ba79cf34f5e patch: add within-line color diff capacity
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32122
diff changeset
359 [diff.deleted|-collapse onto one]
6ba79cf34f5e patch: add within-line color diff capacity
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32122
diff changeset
360 [diff.deleted|-(to see if it works)]
6ba79cf34f5e patch: add within-line color diff capacity
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32122
diff changeset
361 [diff.inserted|+three of those lines have]
6ba79cf34f5e patch: add within-line color diff capacity
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32122
diff changeset
362 [diff.inserted|+collapsed onto one]
38591
be441eb65f09 diff: graduate word-diff option from experimental
Yuya Nishihara <yuya@tcha.org>
parents: 37732
diff changeset
363 $ hg diff --config diff.word-diff=True --color=debug
35277
6ba79cf34f5e patch: add within-line color diff capacity
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32122
diff changeset
364 [diff.diffline|diff --git a/file1 b/file1]
6ba79cf34f5e patch: add within-line color diff capacity
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32122
diff changeset
365 [diff.file_a|--- a/file1]
6ba79cf34f5e patch: add within-line color diff capacity
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32122
diff changeset
366 [diff.file_b|+++ b/file1]
35328
4937db58b663 patch: move part of tabsplitter logic in _inlinediff
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 35277
diff changeset
367 [diff.hunk|@@ -1,16 +1,17 @@]
37732
35632d392279 patch: implement a new worddiff algorithm
Jun Wu <quark@fb.com>
parents: 37731
diff changeset
368 [diff.deleted|-][diff.deleted.changed|this][diff.deleted.unchanged| is the first ][diff.deleted.changed|line]
35632d392279 patch: implement a new worddiff algorithm
Jun Wu <quark@fb.com>
parents: 37731
diff changeset
369 [diff.deleted|-][diff.deleted.unchanged|this is the second line]
35632d392279 patch: implement a new worddiff algorithm
Jun Wu <quark@fb.com>
parents: 37731
diff changeset
370 [diff.deleted|-][diff.deleted.changed| ][diff.deleted.unchanged|third line starts with space]
35632d392279 patch: implement a new worddiff algorithm
Jun Wu <quark@fb.com>
parents: 37731
diff changeset
371 [diff.deleted|-][diff.deleted.changed|+][diff.deleted.unchanged| starts with a ][diff.deleted.changed|plus][diff.deleted.unchanged| sign]
35632d392279 patch: implement a new worddiff algorithm
Jun Wu <quark@fb.com>
parents: 37731
diff changeset
372 [diff.deleted|-][diff.tab| ][diff.deleted.unchanged|this one with ][diff.deleted.changed|one][diff.deleted.unchanged| tab]
35632d392279 patch: implement a new worddiff algorithm
Jun Wu <quark@fb.com>
parents: 37731
diff changeset
373 [diff.deleted|-][diff.tab| ][diff.deleted.unchanged|now with full ][diff.deleted.changed|two][diff.deleted.unchanged| tabs]
35632d392279 patch: implement a new worddiff algorithm
Jun Wu <quark@fb.com>
parents: 37731
diff changeset
374 [diff.deleted|-][diff.tab| ][diff.deleted.unchanged|now ][diff.deleted.unchanged|tabs][diff.tab| ][diff.deleted.unchanged|everywhere, much fun]
35632d392279 patch: implement a new worddiff algorithm
Jun Wu <quark@fb.com>
parents: 37731
diff changeset
375 [diff.inserted|+][diff.inserted.changed|that][diff.inserted.unchanged| is the first ][diff.inserted.changed|paragraph]
35632d392279 patch: implement a new worddiff algorithm
Jun Wu <quark@fb.com>
parents: 37731
diff changeset
376 [diff.inserted|+][diff.inserted.changed| ][diff.inserted.unchanged|this is the second line]
35632d392279 patch: implement a new worddiff algorithm
Jun Wu <quark@fb.com>
parents: 37731
diff changeset
377 [diff.inserted|+][diff.inserted.unchanged|third line starts with space]
35632d392279 patch: implement a new worddiff algorithm
Jun Wu <quark@fb.com>
parents: 37731
diff changeset
378 [diff.inserted|+][diff.inserted.changed|-][diff.inserted.unchanged| starts with a ][diff.inserted.changed|minus][diff.inserted.unchanged| sign]
35632d392279 patch: implement a new worddiff algorithm
Jun Wu <quark@fb.com>
parents: 37731
diff changeset
379 [diff.inserted|+][diff.tab| ][diff.inserted.unchanged|this one with ][diff.inserted.changed|two][diff.inserted.unchanged| tab]
35632d392279 patch: implement a new worddiff algorithm
Jun Wu <quark@fb.com>
parents: 37731
diff changeset
380 [diff.inserted|+][diff.tab| ][diff.inserted.unchanged|now with full ][diff.inserted.changed|three][diff.inserted.unchanged| tabs]
35632d392279 patch: implement a new worddiff algorithm
Jun Wu <quark@fb.com>
parents: 37731
diff changeset
381 [diff.inserted|+][diff.tab| ][diff.inserted.unchanged|now ][diff.inserted.changed|there are ][diff.inserted.unchanged|tabs][diff.tab| ][diff.inserted.unchanged|everywhere, much fun]
35277
6ba79cf34f5e patch: add within-line color diff capacity
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32122
diff changeset
382
6ba79cf34f5e patch: add within-line color diff capacity
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32122
diff changeset
383 this line won't change
6ba79cf34f5e patch: add within-line color diff capacity
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32122
diff changeset
384
6ba79cf34f5e patch: add within-line color diff capacity
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32122
diff changeset
385 two lines are going to
37732
35632d392279 patch: implement a new worddiff algorithm
Jun Wu <quark@fb.com>
parents: 37731
diff changeset
386 [diff.deleted|-][diff.deleted.unchanged|be changed into ][diff.deleted.changed|three][diff.deleted.unchanged|!]
35632d392279 patch: implement a new worddiff algorithm
Jun Wu <quark@fb.com>
parents: 37731
diff changeset
387 [diff.inserted|+][diff.inserted.changed|(entirely magically,]
35632d392279 patch: implement a new worddiff algorithm
Jun Wu <quark@fb.com>
parents: 37731
diff changeset
388 [diff.inserted|+][diff.inserted.changed| assuming this works)]
35632d392279 patch: implement a new worddiff algorithm
Jun Wu <quark@fb.com>
parents: 37731
diff changeset
389 [diff.inserted|+][diff.inserted.unchanged|be changed into ][diff.inserted.changed|four][diff.inserted.unchanged|!]
35277
6ba79cf34f5e patch: add within-line color diff capacity
Matthieu Laneuville <matthieu.laneuville@octobus.net>
parents: 32122
diff changeset
390
37732
35632d392279 patch: implement a new worddiff algorithm
Jun Wu <quark@fb.com>
parents: 37731
diff changeset
391 [diff.deleted|-][diff.deleted.unchanged|three of those lines ][diff.deleted.changed|will]
35632d392279 patch: implement a new worddiff algorithm
Jun Wu <quark@fb.com>
parents: 37731
diff changeset
392 [diff.deleted|-][diff.deleted.changed|collapse][diff.deleted.unchanged| onto one]
35632d392279 patch: implement a new worddiff algorithm
Jun Wu <quark@fb.com>
parents: 37731
diff changeset
393 [diff.deleted|-][diff.deleted.changed|(to see if it works)]
35632d392279 patch: implement a new worddiff algorithm
Jun Wu <quark@fb.com>
parents: 37731
diff changeset
394 [diff.inserted|+][diff.inserted.unchanged|three of those lines ][diff.inserted.changed|have]
35632d392279 patch: implement a new worddiff algorithm
Jun Wu <quark@fb.com>
parents: 37731
diff changeset
395 [diff.inserted|+][diff.inserted.changed|collapsed][diff.inserted.unchanged| onto one]
35383
82c3762349ac patch: do not break up multibyte character when highlighting word
Yuya Nishihara <yuya@tcha.org>
parents: 35328
diff changeset
396
82c3762349ac patch: do not break up multibyte character when highlighting word
Yuya Nishihara <yuya@tcha.org>
parents: 35328
diff changeset
397 multibyte character shouldn't be broken up in word diff:
82c3762349ac patch: do not break up multibyte character when highlighting word
Yuya Nishihara <yuya@tcha.org>
parents: 35328
diff changeset
398
82c3762349ac patch: do not break up multibyte character when highlighting word
Yuya Nishihara <yuya@tcha.org>
parents: 35328
diff changeset
399 $ $PYTHON <<'EOF'
82c3762349ac patch: do not break up multibyte character when highlighting word
Yuya Nishihara <yuya@tcha.org>
parents: 35328
diff changeset
400 > with open("utf8", "wb") as f:
82c3762349ac patch: do not break up multibyte character when highlighting word
Yuya Nishihara <yuya@tcha.org>
parents: 35328
diff changeset
401 > f.write(b"blah \xe3\x82\xa2 blah\n")
82c3762349ac patch: do not break up multibyte character when highlighting word
Yuya Nishihara <yuya@tcha.org>
parents: 35328
diff changeset
402 > EOF
82c3762349ac patch: do not break up multibyte character when highlighting word
Yuya Nishihara <yuya@tcha.org>
parents: 35328
diff changeset
403 $ hg ci -Am 'add utf8 char' utf8
82c3762349ac patch: do not break up multibyte character when highlighting word
Yuya Nishihara <yuya@tcha.org>
parents: 35328
diff changeset
404 $ $PYTHON <<'EOF'
82c3762349ac patch: do not break up multibyte character when highlighting word
Yuya Nishihara <yuya@tcha.org>
parents: 35328
diff changeset
405 > with open("utf8", "wb") as f:
82c3762349ac patch: do not break up multibyte character when highlighting word
Yuya Nishihara <yuya@tcha.org>
parents: 35328
diff changeset
406 > f.write(b"blah \xe3\x82\xa4 blah\n")
82c3762349ac patch: do not break up multibyte character when highlighting word
Yuya Nishihara <yuya@tcha.org>
parents: 35328
diff changeset
407 > EOF
82c3762349ac patch: do not break up multibyte character when highlighting word
Yuya Nishihara <yuya@tcha.org>
parents: 35328
diff changeset
408 $ hg ci -m 'slightly change utf8 char' utf8
37731
5471348921c1 patch: buffer lines for a same hunk
Jun Wu <quark@fb.com>
parents: 35383
diff changeset
409
38591
be441eb65f09 diff: graduate word-diff option from experimental
Yuya Nishihara <yuya@tcha.org>
parents: 37732
diff changeset
410 $ hg diff --config diff.word-diff=True --color=debug -c.
35383
82c3762349ac patch: do not break up multibyte character when highlighting word
Yuya Nishihara <yuya@tcha.org>
parents: 35328
diff changeset
411 [diff.diffline|diff --git a/utf8 b/utf8]
82c3762349ac patch: do not break up multibyte character when highlighting word
Yuya Nishihara <yuya@tcha.org>
parents: 35328
diff changeset
412 [diff.file_a|--- a/utf8]
82c3762349ac patch: do not break up multibyte character when highlighting word
Yuya Nishihara <yuya@tcha.org>
parents: 35328
diff changeset
413 [diff.file_b|+++ b/utf8]
82c3762349ac patch: do not break up multibyte character when highlighting word
Yuya Nishihara <yuya@tcha.org>
parents: 35328
diff changeset
414 [diff.hunk|@@ -1,1 +1,1 @@]
37732
35632d392279 patch: implement a new worddiff algorithm
Jun Wu <quark@fb.com>
parents: 37731
diff changeset
415 [diff.deleted|-][diff.deleted.unchanged|blah ][diff.deleted.changed|\xe3\x82\xa2][diff.deleted.unchanged| blah] (esc)
35632d392279 patch: implement a new worddiff algorithm
Jun Wu <quark@fb.com>
parents: 37731
diff changeset
416 [diff.inserted|+][diff.inserted.unchanged|blah ][diff.inserted.changed|\xe3\x82\xa4][diff.inserted.unchanged| blah] (esc)