Mercurial > hg
annotate tests/test-pager.t @ 50440:3a2df812e1c7
pull: add --remote-hidden option and pass it through peer creation
This option will allow to pull changesets that are hidden on the remote. This
is useful when looking into a changeset’s evolution history, resolving
evolution instability or mirroring a repository.
The option is best effort and will only affect the pull when it can. The option
will be ignored when it cannot be honored.
Support for each type of peer is yet to be implemented. They currently all warn
about lack of support. The warning code will get removed as peers gain
support for this option.
The option is still experimental, so we will have freedom to update the UI or
implementation before it graduates out of experimental.
Based on a changeset by Pierre-Yves David, which added the option.
author | Manuel Jacob <me@manueljacob.de> |
---|---|
date | Thu, 04 Apr 2019 18:07:30 +0200 |
parents | 42d2b31cee0b |
children |
rev | line source |
---|---|
28319 | 1 $ cat >> fakepager.py <<EOF |
2 > import sys | |
32541
3b569745af6c
cat: do not start pager if output will be written to file
Yuya Nishihara <yuya@tcha.org>
parents:
32337
diff
changeset
|
3 > printed = False |
28319 | 4 > for line in sys.stdin: |
5 > sys.stdout.write('paged! %r\n' % line) | |
32541
3b569745af6c
cat: do not start pager if output will be written to file
Yuya Nishihara <yuya@tcha.org>
parents:
32337
diff
changeset
|
6 > printed = True |
3b569745af6c
cat: do not start pager if output will be written to file
Yuya Nishihara <yuya@tcha.org>
parents:
32337
diff
changeset
|
7 > if not printed: |
3b569745af6c
cat: do not start pager if output will be written to file
Yuya Nishihara <yuya@tcha.org>
parents:
32337
diff
changeset
|
8 > sys.stdout.write('paged empty output!\n') |
28319 | 9 > EOF |
10 | |
11 Enable ui.formatted because pager won't fire without it, and set up | |
12 pager and tell it to use our fake pager that lets us see when the | |
13 pager was running. | |
14 $ cat >> $HGRCPATH <<EOF | |
15 > [ui] | |
16 > formatted = yes | |
32026
57042e91521a
color: turn on by default (but for windows)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
32025
diff
changeset
|
17 > color = no |
28319 | 18 > [pager] |
39707
5abc47d4ca6b
tests: quote PYTHON usage
Matt Harbison <matt_harbison@yahoo.com>
parents:
38074
diff
changeset
|
19 > pager = "$PYTHON" $TESTTMP/fakepager.py |
28319 | 20 > EOF |
21 | |
22 $ hg init repo | |
23 $ cd repo | |
24 $ echo a >> a | |
25 $ hg add a | |
26 $ hg ci -m 'add a' | |
39707
5abc47d4ca6b
tests: quote PYTHON usage
Matt Harbison <matt_harbison@yahoo.com>
parents:
38074
diff
changeset
|
27 $ for x in `"$PYTHON" $TESTDIR/seq.py 1 10`; do |
28319 | 28 > echo a $x >> a |
29 > hg ci -m "modify a $x" | |
30 > done | |
31 | |
30944
b7e073ae44c4
tests: switch "this command isn't paged" example to id
Augie Fackler <augie@google.com>
parents:
30942
diff
changeset
|
32 By default diff and log are paged, but id is not: |
28319 | 33 |
34 $ hg diff -c 2 --pager=yes | |
35 paged! 'diff -r f4be7687d414 -r bce265549556 a\n' | |
36 paged! '--- a/a\tThu Jan 01 00:00:00 1970 +0000\n' | |
37 paged! '+++ b/a\tThu Jan 01 00:00:00 1970 +0000\n' | |
38 paged! '@@ -1,2 +1,3 @@\n' | |
39 paged! ' a\n' | |
40 paged! ' a 1\n' | |
41 paged! '+a 2\n' | |
42 | |
43 $ hg log --limit 2 | |
44 paged! 'changeset: 10:46106edeeb38\n' | |
45 paged! 'tag: tip\n' | |
46 paged! 'user: test\n' | |
47 paged! 'date: Thu Jan 01 00:00:00 1970 +0000\n' | |
48 paged! 'summary: modify a 10\n' | |
49 paged! '\n' | |
50 paged! 'changeset: 9:6dd8ea7dd621\n' | |
51 paged! 'user: test\n' | |
52 paged! 'date: Thu Jan 01 00:00:00 1970 +0000\n' | |
53 paged! 'summary: modify a 9\n' | |
54 paged! '\n' | |
55 | |
30944
b7e073ae44c4
tests: switch "this command isn't paged" example to id
Augie Fackler <augie@google.com>
parents:
30942
diff
changeset
|
56 $ hg id |
b7e073ae44c4
tests: switch "this command isn't paged" example to id
Augie Fackler <augie@google.com>
parents:
30942
diff
changeset
|
57 46106edeeb38 tip |
28319 | 58 |
32098
149440d7e1a7
pager: test the 'enable' config option
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
32074
diff
changeset
|
59 We can control the pager from the config |
149440d7e1a7
pager: test the 'enable' config option
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
32074
diff
changeset
|
60 |
32104
f06d23af6cdf
pager: rename 'pager.enable' to 'ui.paginate'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
32103
diff
changeset
|
61 $ hg log --limit 1 --config 'ui.paginate=False' |
32098
149440d7e1a7
pager: test the 'enable' config option
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
32074
diff
changeset
|
62 changeset: 10:46106edeeb38 |
149440d7e1a7
pager: test the 'enable' config option
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
32074
diff
changeset
|
63 tag: tip |
149440d7e1a7
pager: test the 'enable' config option
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
32074
diff
changeset
|
64 user: test |
149440d7e1a7
pager: test the 'enable' config option
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
32074
diff
changeset
|
65 date: Thu Jan 01 00:00:00 1970 +0000 |
149440d7e1a7
pager: test the 'enable' config option
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
32074
diff
changeset
|
66 summary: modify a 10 |
149440d7e1a7
pager: test the 'enable' config option
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
32074
diff
changeset
|
67 |
32104
f06d23af6cdf
pager: rename 'pager.enable' to 'ui.paginate'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
32103
diff
changeset
|
68 $ hg log --limit 1 --config 'ui.paginate=0' |
32098
149440d7e1a7
pager: test the 'enable' config option
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
32074
diff
changeset
|
69 changeset: 10:46106edeeb38 |
149440d7e1a7
pager: test the 'enable' config option
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
32074
diff
changeset
|
70 tag: tip |
149440d7e1a7
pager: test the 'enable' config option
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
32074
diff
changeset
|
71 user: test |
149440d7e1a7
pager: test the 'enable' config option
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
32074
diff
changeset
|
72 date: Thu Jan 01 00:00:00 1970 +0000 |
149440d7e1a7
pager: test the 'enable' config option
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
32074
diff
changeset
|
73 summary: modify a 10 |
149440d7e1a7
pager: test the 'enable' config option
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
32074
diff
changeset
|
74 |
32104
f06d23af6cdf
pager: rename 'pager.enable' to 'ui.paginate'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
32103
diff
changeset
|
75 $ hg log --limit 1 --config 'ui.paginate=1' |
32098
149440d7e1a7
pager: test the 'enable' config option
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
32074
diff
changeset
|
76 paged! 'changeset: 10:46106edeeb38\n' |
149440d7e1a7
pager: test the 'enable' config option
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
32074
diff
changeset
|
77 paged! 'tag: tip\n' |
149440d7e1a7
pager: test the 'enable' config option
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
32074
diff
changeset
|
78 paged! 'user: test\n' |
149440d7e1a7
pager: test the 'enable' config option
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
32074
diff
changeset
|
79 paged! 'date: Thu Jan 01 00:00:00 1970 +0000\n' |
149440d7e1a7
pager: test the 'enable' config option
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
32074
diff
changeset
|
80 paged! 'summary: modify a 10\n' |
149440d7e1a7
pager: test the 'enable' config option
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
32074
diff
changeset
|
81 paged! '\n' |
149440d7e1a7
pager: test the 'enable' config option
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
32074
diff
changeset
|
82 |
33620
cc047a733f69
ui: enable pager always for explicit --pager=on (issue5580)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
33097
diff
changeset
|
83 explicit --pager=on should take precedence over other configurations |
cc047a733f69
ui: enable pager always for explicit --pager=on (issue5580)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
33097
diff
changeset
|
84 (issue5580) |
cc047a733f69
ui: enable pager always for explicit --pager=on (issue5580)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
33097
diff
changeset
|
85 |
cc047a733f69
ui: enable pager always for explicit --pager=on (issue5580)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
33097
diff
changeset
|
86 $ cat >> $HGRCPATH <<EOF |
cc047a733f69
ui: enable pager always for explicit --pager=on (issue5580)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
33097
diff
changeset
|
87 > [ui] |
cc047a733f69
ui: enable pager always for explicit --pager=on (issue5580)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
33097
diff
changeset
|
88 > paginate = false |
cc047a733f69
ui: enable pager always for explicit --pager=on (issue5580)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
33097
diff
changeset
|
89 > EOF |
cc047a733f69
ui: enable pager always for explicit --pager=on (issue5580)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
33097
diff
changeset
|
90 $ hg log --limit 1 --pager=on |
cc047a733f69
ui: enable pager always for explicit --pager=on (issue5580)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
33097
diff
changeset
|
91 paged! 'changeset: 10:46106edeeb38\n' |
cc047a733f69
ui: enable pager always for explicit --pager=on (issue5580)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
33097
diff
changeset
|
92 paged! 'tag: tip\n' |
cc047a733f69
ui: enable pager always for explicit --pager=on (issue5580)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
33097
diff
changeset
|
93 paged! 'user: test\n' |
cc047a733f69
ui: enable pager always for explicit --pager=on (issue5580)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
33097
diff
changeset
|
94 paged! 'date: Thu Jan 01 00:00:00 1970 +0000\n' |
cc047a733f69
ui: enable pager always for explicit --pager=on (issue5580)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
33097
diff
changeset
|
95 paged! 'summary: modify a 10\n' |
cc047a733f69
ui: enable pager always for explicit --pager=on (issue5580)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
33097
diff
changeset
|
96 paged! '\n' |
cc047a733f69
ui: enable pager always for explicit --pager=on (issue5580)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
33097
diff
changeset
|
97 |
cc047a733f69
ui: enable pager always for explicit --pager=on (issue5580)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
33097
diff
changeset
|
98 $ cat >> $HGRCPATH <<EOF |
cc047a733f69
ui: enable pager always for explicit --pager=on (issue5580)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
33097
diff
changeset
|
99 > [ui] |
cc047a733f69
ui: enable pager always for explicit --pager=on (issue5580)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
33097
diff
changeset
|
100 > # true is default value of ui.paginate |
cc047a733f69
ui: enable pager always for explicit --pager=on (issue5580)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
33097
diff
changeset
|
101 > paginate = true |
cc047a733f69
ui: enable pager always for explicit --pager=on (issue5580)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
33097
diff
changeset
|
102 > EOF |
cc047a733f69
ui: enable pager always for explicit --pager=on (issue5580)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
33097
diff
changeset
|
103 $ hg log --limit 1 --pager=off |
cc047a733f69
ui: enable pager always for explicit --pager=on (issue5580)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
33097
diff
changeset
|
104 changeset: 10:46106edeeb38 |
cc047a733f69
ui: enable pager always for explicit --pager=on (issue5580)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
33097
diff
changeset
|
105 tag: tip |
cc047a733f69
ui: enable pager always for explicit --pager=on (issue5580)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
33097
diff
changeset
|
106 user: test |
cc047a733f69
ui: enable pager always for explicit --pager=on (issue5580)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
33097
diff
changeset
|
107 date: Thu Jan 01 00:00:00 1970 +0000 |
cc047a733f69
ui: enable pager always for explicit --pager=on (issue5580)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
33097
diff
changeset
|
108 summary: modify a 10 |
cc047a733f69
ui: enable pager always for explicit --pager=on (issue5580)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
33097
diff
changeset
|
109 |
cc047a733f69
ui: enable pager always for explicit --pager=on (issue5580)
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
33097
diff
changeset
|
110 |
30944
b7e073ae44c4
tests: switch "this command isn't paged" example to id
Augie Fackler <augie@google.com>
parents:
30942
diff
changeset
|
111 We can enable the pager on id: |
28319 | 112 |
31405
d5eb20934c36
tests: duplicate test for pager for old extension and for in-core pager
Martin von Zweigbergk <martinvonz@google.com>
parents:
31079
diff
changeset
|
113 BROKEN: should be paged |
30944
b7e073ae44c4
tests: switch "this command isn't paged" example to id
Augie Fackler <augie@google.com>
parents:
30942
diff
changeset
|
114 $ hg --config pager.attend-id=yes id |
31405
d5eb20934c36
tests: duplicate test for pager for old extension and for in-core pager
Martin von Zweigbergk <martinvonz@google.com>
parents:
31079
diff
changeset
|
115 46106edeeb38 tip |
28319 | 116 |
30996
cc3c9b6f1e09
tests: clean up a bunch of pager testing that is about to be invalidated
Augie Fackler <augie@google.com>
parents:
30944
diff
changeset
|
117 Setting attend-$COMMAND to a false value works, even with pager in |
cc3c9b6f1e09
tests: clean up a bunch of pager testing that is about to be invalidated
Augie Fackler <augie@google.com>
parents:
30944
diff
changeset
|
118 core: |
28319 | 119 $ hg --config pager.attend-diff=no diff -c 2 |
120 diff -r f4be7687d414 -r bce265549556 a | |
121 --- a/a Thu Jan 01 00:00:00 1970 +0000 | |
122 +++ b/a Thu Jan 01 00:00:00 1970 +0000 | |
123 @@ -1,2 +1,3 @@ | |
124 a | |
125 a 1 | |
126 +a 2 | |
127 | |
32072
05cdd5678c6b
tests: drop unnecessary pager attend in test
Gregory Szorc <gregory.szorc@gmail.com>
parents:
32026
diff
changeset
|
128 Command aliases should have same behavior as main command |
05cdd5678c6b
tests: drop unnecessary pager attend in test
Gregory Szorc <gregory.szorc@gmail.com>
parents:
32026
diff
changeset
|
129 |
05cdd5678c6b
tests: drop unnecessary pager attend in test
Gregory Szorc <gregory.szorc@gmail.com>
parents:
32026
diff
changeset
|
130 $ hg history --limit 2 |
28319 | 131 paged! 'changeset: 10:46106edeeb38\n' |
132 paged! 'tag: tip\n' | |
133 paged! 'user: test\n' | |
134 paged! 'date: Thu Jan 01 00:00:00 1970 +0000\n' | |
135 paged! 'summary: modify a 10\n' | |
136 paged! '\n' | |
137 paged! 'changeset: 9:6dd8ea7dd621\n' | |
138 paged! 'user: test\n' | |
139 paged! 'date: Thu Jan 01 00:00:00 1970 +0000\n' | |
140 paged! 'summary: modify a 9\n' | |
141 paged! '\n' | |
142 | |
32073
04629b2da72c
tests: test that abbreviated command alias is also paged
Gregory Szorc <gregory.szorc@gmail.com>
parents:
32072
diff
changeset
|
143 Abbreviated command alias should also be paged |
04629b2da72c
tests: test that abbreviated command alias is also paged
Gregory Szorc <gregory.szorc@gmail.com>
parents:
32072
diff
changeset
|
144 |
04629b2da72c
tests: test that abbreviated command alias is also paged
Gregory Szorc <gregory.szorc@gmail.com>
parents:
32072
diff
changeset
|
145 $ hg hist -l 1 |
04629b2da72c
tests: test that abbreviated command alias is also paged
Gregory Szorc <gregory.szorc@gmail.com>
parents:
32072
diff
changeset
|
146 paged! 'changeset: 10:46106edeeb38\n' |
04629b2da72c
tests: test that abbreviated command alias is also paged
Gregory Szorc <gregory.szorc@gmail.com>
parents:
32072
diff
changeset
|
147 paged! 'tag: tip\n' |
04629b2da72c
tests: test that abbreviated command alias is also paged
Gregory Szorc <gregory.szorc@gmail.com>
parents:
32072
diff
changeset
|
148 paged! 'user: test\n' |
04629b2da72c
tests: test that abbreviated command alias is also paged
Gregory Szorc <gregory.szorc@gmail.com>
parents:
32072
diff
changeset
|
149 paged! 'date: Thu Jan 01 00:00:00 1970 +0000\n' |
04629b2da72c
tests: test that abbreviated command alias is also paged
Gregory Szorc <gregory.szorc@gmail.com>
parents:
32072
diff
changeset
|
150 paged! 'summary: modify a 10\n' |
04629b2da72c
tests: test that abbreviated command alias is also paged
Gregory Szorc <gregory.szorc@gmail.com>
parents:
32072
diff
changeset
|
151 paged! '\n' |
04629b2da72c
tests: test that abbreviated command alias is also paged
Gregory Szorc <gregory.szorc@gmail.com>
parents:
32072
diff
changeset
|
152 |
32074
769c831708c7
tests: demonstrate that pager.attend-<abbreviated> doesn't work
Gregory Szorc <gregory.szorc@gmail.com>
parents:
32073
diff
changeset
|
153 Attend for an abbreviated command does not work |
769c831708c7
tests: demonstrate that pager.attend-<abbreviated> doesn't work
Gregory Szorc <gregory.szorc@gmail.com>
parents:
32073
diff
changeset
|
154 |
769c831708c7
tests: demonstrate that pager.attend-<abbreviated> doesn't work
Gregory Szorc <gregory.szorc@gmail.com>
parents:
32073
diff
changeset
|
155 $ hg --config pager.attend-ident=true ident |
769c831708c7
tests: demonstrate that pager.attend-<abbreviated> doesn't work
Gregory Szorc <gregory.szorc@gmail.com>
parents:
32073
diff
changeset
|
156 46106edeeb38 tip |
769c831708c7
tests: demonstrate that pager.attend-<abbreviated> doesn't work
Gregory Szorc <gregory.szorc@gmail.com>
parents:
32073
diff
changeset
|
157 |
769c831708c7
tests: demonstrate that pager.attend-<abbreviated> doesn't work
Gregory Szorc <gregory.szorc@gmail.com>
parents:
32073
diff
changeset
|
158 $ hg --config extensions.pager= --config pager.attend-ident=true ident |
769c831708c7
tests: demonstrate that pager.attend-<abbreviated> doesn't work
Gregory Szorc <gregory.szorc@gmail.com>
parents:
32073
diff
changeset
|
159 46106edeeb38 tip |
769c831708c7
tests: demonstrate that pager.attend-<abbreviated> doesn't work
Gregory Szorc <gregory.szorc@gmail.com>
parents:
32073
diff
changeset
|
160 |
30847
e12553cfd0a4
pager: wrap _runcommand() no matter if stdout is redirected
Yuya Nishihara <yuya@tcha.org>
parents:
29344
diff
changeset
|
161 Pager should not start if stdout is not a tty. |
e12553cfd0a4
pager: wrap _runcommand() no matter if stdout is redirected
Yuya Nishihara <yuya@tcha.org>
parents:
29344
diff
changeset
|
162 |
e12553cfd0a4
pager: wrap _runcommand() no matter if stdout is redirected
Yuya Nishihara <yuya@tcha.org>
parents:
29344
diff
changeset
|
163 $ hg log -l1 -q --config ui.formatted=False |
e12553cfd0a4
pager: wrap _runcommand() no matter if stdout is redirected
Yuya Nishihara <yuya@tcha.org>
parents:
29344
diff
changeset
|
164 10:46106edeeb38 |
e12553cfd0a4
pager: wrap _runcommand() no matter if stdout is redirected
Yuya Nishihara <yuya@tcha.org>
parents:
29344
diff
changeset
|
165 |
31079
873ebdd6e84d
pager: do not try to run an empty pager command
Yuya Nishihara <yuya@tcha.org>
parents:
31000
diff
changeset
|
166 Pager should be disabled if pager.pager is empty (otherwise the output would |
873ebdd6e84d
pager: do not try to run an empty pager command
Yuya Nishihara <yuya@tcha.org>
parents:
31000
diff
changeset
|
167 be silently lost.) |
873ebdd6e84d
pager: do not try to run an empty pager command
Yuya Nishihara <yuya@tcha.org>
parents:
31000
diff
changeset
|
168 |
873ebdd6e84d
pager: do not try to run an empty pager command
Yuya Nishihara <yuya@tcha.org>
parents:
31000
diff
changeset
|
169 $ hg log -l1 -q --config pager.pager= |
873ebdd6e84d
pager: do not try to run an empty pager command
Yuya Nishihara <yuya@tcha.org>
parents:
31000
diff
changeset
|
170 10:46106edeeb38 |
873ebdd6e84d
pager: do not try to run an empty pager command
Yuya Nishihara <yuya@tcha.org>
parents:
31000
diff
changeset
|
171 |
28531
fe79a5821e5a
test-pager: add a test for pager with color enabled
Augie Fackler <augie@google.com>
parents:
28319
diff
changeset
|
172 Pager with color enabled allows colors to come through by default, |
fe79a5821e5a
test-pager: add a test for pager with color enabled
Augie Fackler <augie@google.com>
parents:
28319
diff
changeset
|
173 even though stdout is no longer a tty. |
fe79a5821e5a
test-pager: add a test for pager with color enabled
Augie Fackler <augie@google.com>
parents:
28319
diff
changeset
|
174 $ cat >> $HGRCPATH <<EOF |
32025
d323d9e0d7b4
pager: stop using the color extension in tests
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
31954
diff
changeset
|
175 > [ui] |
32103
9a98023ac8db
color: special case 'always' in 'ui.color'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
32102
diff
changeset
|
176 > color = always |
28531
fe79a5821e5a
test-pager: add a test for pager with color enabled
Augie Fackler <augie@google.com>
parents:
28319
diff
changeset
|
177 > [color] |
fe79a5821e5a
test-pager: add a test for pager with color enabled
Augie Fackler <augie@google.com>
parents:
28319
diff
changeset
|
178 > mode = ansi |
fe79a5821e5a
test-pager: add a test for pager with color enabled
Augie Fackler <augie@google.com>
parents:
28319
diff
changeset
|
179 > EOF |
fe79a5821e5a
test-pager: add a test for pager with color enabled
Augie Fackler <augie@google.com>
parents:
28319
diff
changeset
|
180 $ hg log --limit 3 |
fe79a5821e5a
test-pager: add a test for pager with color enabled
Augie Fackler <augie@google.com>
parents:
28319
diff
changeset
|
181 paged! '\x1b[0;33mchangeset: 10:46106edeeb38\x1b[0m\n' |
fe79a5821e5a
test-pager: add a test for pager with color enabled
Augie Fackler <augie@google.com>
parents:
28319
diff
changeset
|
182 paged! 'tag: tip\n' |
fe79a5821e5a
test-pager: add a test for pager with color enabled
Augie Fackler <augie@google.com>
parents:
28319
diff
changeset
|
183 paged! 'user: test\n' |
fe79a5821e5a
test-pager: add a test for pager with color enabled
Augie Fackler <augie@google.com>
parents:
28319
diff
changeset
|
184 paged! 'date: Thu Jan 01 00:00:00 1970 +0000\n' |
fe79a5821e5a
test-pager: add a test for pager with color enabled
Augie Fackler <augie@google.com>
parents:
28319
diff
changeset
|
185 paged! 'summary: modify a 10\n' |
fe79a5821e5a
test-pager: add a test for pager with color enabled
Augie Fackler <augie@google.com>
parents:
28319
diff
changeset
|
186 paged! '\n' |
fe79a5821e5a
test-pager: add a test for pager with color enabled
Augie Fackler <augie@google.com>
parents:
28319
diff
changeset
|
187 paged! '\x1b[0;33mchangeset: 9:6dd8ea7dd621\x1b[0m\n' |
fe79a5821e5a
test-pager: add a test for pager with color enabled
Augie Fackler <augie@google.com>
parents:
28319
diff
changeset
|
188 paged! 'user: test\n' |
fe79a5821e5a
test-pager: add a test for pager with color enabled
Augie Fackler <augie@google.com>
parents:
28319
diff
changeset
|
189 paged! 'date: Thu Jan 01 00:00:00 1970 +0000\n' |
fe79a5821e5a
test-pager: add a test for pager with color enabled
Augie Fackler <augie@google.com>
parents:
28319
diff
changeset
|
190 paged! 'summary: modify a 9\n' |
fe79a5821e5a
test-pager: add a test for pager with color enabled
Augie Fackler <augie@google.com>
parents:
28319
diff
changeset
|
191 paged! '\n' |
fe79a5821e5a
test-pager: add a test for pager with color enabled
Augie Fackler <augie@google.com>
parents:
28319
diff
changeset
|
192 paged! '\x1b[0;33mchangeset: 8:cff05a6312fe\x1b[0m\n' |
fe79a5821e5a
test-pager: add a test for pager with color enabled
Augie Fackler <augie@google.com>
parents:
28319
diff
changeset
|
193 paged! 'user: test\n' |
fe79a5821e5a
test-pager: add a test for pager with color enabled
Augie Fackler <augie@google.com>
parents:
28319
diff
changeset
|
194 paged! 'date: Thu Jan 01 00:00:00 1970 +0000\n' |
fe79a5821e5a
test-pager: add a test for pager with color enabled
Augie Fackler <augie@google.com>
parents:
28319
diff
changeset
|
195 paged! 'summary: modify a 8\n' |
fe79a5821e5a
test-pager: add a test for pager with color enabled
Augie Fackler <augie@google.com>
parents:
28319
diff
changeset
|
196 paged! '\n' |
29132
12769703d4ba
dispatch: always load extensions before running shell aliases (issue5230)
Jun Wu <quark@fb.com>
parents:
28531
diff
changeset
|
197 |
34442
73d8a5283f87
test-pager: make it compatible with chg
Jun Wu <quark@fb.com>
parents:
34021
diff
changeset
|
198 #if no-chg |
31478
9335dc6b2a9c
pager: avoid shell=True on subprocess.Popen for better errors (issue5491)
Augie Fackler <augie@google.com>
parents:
31405
diff
changeset
|
199 An invalid pager command name is reported sensibly if we don't have to |
9335dc6b2a9c
pager: avoid shell=True on subprocess.Popen for better errors (issue5491)
Augie Fackler <augie@google.com>
parents:
31405
diff
changeset
|
200 use shell=True in the subprocess call: |
9335dc6b2a9c
pager: avoid shell=True on subprocess.Popen for better errors (issue5491)
Augie Fackler <augie@google.com>
parents:
31405
diff
changeset
|
201 $ hg log --limit 3 --config pager.pager=this-command-better-never-exist |
9335dc6b2a9c
pager: avoid shell=True on subprocess.Popen for better errors (issue5491)
Augie Fackler <augie@google.com>
parents:
31405
diff
changeset
|
202 missing pager command 'this-command-better-never-exist', skipping pager |
9335dc6b2a9c
pager: avoid shell=True on subprocess.Popen for better errors (issue5491)
Augie Fackler <augie@google.com>
parents:
31405
diff
changeset
|
203 \x1b[0;33mchangeset: 10:46106edeeb38\x1b[0m (esc) |
9335dc6b2a9c
pager: avoid shell=True on subprocess.Popen for better errors (issue5491)
Augie Fackler <augie@google.com>
parents:
31405
diff
changeset
|
204 tag: tip |
9335dc6b2a9c
pager: avoid shell=True on subprocess.Popen for better errors (issue5491)
Augie Fackler <augie@google.com>
parents:
31405
diff
changeset
|
205 user: test |
9335dc6b2a9c
pager: avoid shell=True on subprocess.Popen for better errors (issue5491)
Augie Fackler <augie@google.com>
parents:
31405
diff
changeset
|
206 date: Thu Jan 01 00:00:00 1970 +0000 |
9335dc6b2a9c
pager: avoid shell=True on subprocess.Popen for better errors (issue5491)
Augie Fackler <augie@google.com>
parents:
31405
diff
changeset
|
207 summary: modify a 10 |
9335dc6b2a9c
pager: avoid shell=True on subprocess.Popen for better errors (issue5491)
Augie Fackler <augie@google.com>
parents:
31405
diff
changeset
|
208 |
9335dc6b2a9c
pager: avoid shell=True on subprocess.Popen for better errors (issue5491)
Augie Fackler <augie@google.com>
parents:
31405
diff
changeset
|
209 \x1b[0;33mchangeset: 9:6dd8ea7dd621\x1b[0m (esc) |
9335dc6b2a9c
pager: avoid shell=True on subprocess.Popen for better errors (issue5491)
Augie Fackler <augie@google.com>
parents:
31405
diff
changeset
|
210 user: test |
9335dc6b2a9c
pager: avoid shell=True on subprocess.Popen for better errors (issue5491)
Augie Fackler <augie@google.com>
parents:
31405
diff
changeset
|
211 date: Thu Jan 01 00:00:00 1970 +0000 |
9335dc6b2a9c
pager: avoid shell=True on subprocess.Popen for better errors (issue5491)
Augie Fackler <augie@google.com>
parents:
31405
diff
changeset
|
212 summary: modify a 9 |
9335dc6b2a9c
pager: avoid shell=True on subprocess.Popen for better errors (issue5491)
Augie Fackler <augie@google.com>
parents:
31405
diff
changeset
|
213 |
9335dc6b2a9c
pager: avoid shell=True on subprocess.Popen for better errors (issue5491)
Augie Fackler <augie@google.com>
parents:
31405
diff
changeset
|
214 \x1b[0;33mchangeset: 8:cff05a6312fe\x1b[0m (esc) |
9335dc6b2a9c
pager: avoid shell=True on subprocess.Popen for better errors (issue5491)
Augie Fackler <augie@google.com>
parents:
31405
diff
changeset
|
215 user: test |
9335dc6b2a9c
pager: avoid shell=True on subprocess.Popen for better errors (issue5491)
Augie Fackler <augie@google.com>
parents:
31405
diff
changeset
|
216 date: Thu Jan 01 00:00:00 1970 +0000 |
9335dc6b2a9c
pager: avoid shell=True on subprocess.Popen for better errors (issue5491)
Augie Fackler <augie@google.com>
parents:
31405
diff
changeset
|
217 summary: modify a 8 |
9335dc6b2a9c
pager: avoid shell=True on subprocess.Popen for better errors (issue5491)
Augie Fackler <augie@google.com>
parents:
31405
diff
changeset
|
218 |
34442
73d8a5283f87
test-pager: make it compatible with chg
Jun Wu <quark@fb.com>
parents:
34021
diff
changeset
|
219 #endif |
31478
9335dc6b2a9c
pager: avoid shell=True on subprocess.Popen for better errors (issue5491)
Augie Fackler <augie@google.com>
parents:
31405
diff
changeset
|
220 |
9335dc6b2a9c
pager: avoid shell=True on subprocess.Popen for better errors (issue5491)
Augie Fackler <augie@google.com>
parents:
31405
diff
changeset
|
221 A complicated pager command gets worse behavior. Bonus points if you can |
48256
56d037d07395
backout: backed out changeset 2f2107c01dee
Raphaël Gomès <rgomes@octobus.net>
parents:
48185
diff
changeset
|
222 improve this. Windows apparently does this better, but only sometimes? |
56d037d07395
backout: backed out changeset 2f2107c01dee
Raphaël Gomès <rgomes@octobus.net>
parents:
48185
diff
changeset
|
223 #if windows |
31478
9335dc6b2a9c
pager: avoid shell=True on subprocess.Popen for better errors (issue5491)
Augie Fackler <augie@google.com>
parents:
31405
diff
changeset
|
224 $ hg log --limit 3 \ |
9335dc6b2a9c
pager: avoid shell=True on subprocess.Popen for better errors (issue5491)
Augie Fackler <augie@google.com>
parents:
31405
diff
changeset
|
225 > --config pager.pager='this-command-better-never-exist --seriously' \ |
9335dc6b2a9c
pager: avoid shell=True on subprocess.Popen for better errors (issue5491)
Augie Fackler <augie@google.com>
parents:
31405
diff
changeset
|
226 > 2>/dev/null || true |
47807
bc74cb9a8e40
pager: account for flakiness in Windows output
Raphaël Gomès <rgomes@octobus.net>
parents:
47614
diff
changeset
|
227 \x1b[0;33mchangeset: 10:46106edeeb38\x1b[0m (esc) (?) |
bc74cb9a8e40
pager: account for flakiness in Windows output
Raphaël Gomès <rgomes@octobus.net>
parents:
47614
diff
changeset
|
228 tag: tip (?) |
bc74cb9a8e40
pager: account for flakiness in Windows output
Raphaël Gomès <rgomes@octobus.net>
parents:
47614
diff
changeset
|
229 user: test (?) |
bc74cb9a8e40
pager: account for flakiness in Windows output
Raphaël Gomès <rgomes@octobus.net>
parents:
47614
diff
changeset
|
230 date: Thu Jan 01 00:00:00 1970 +0000 (?) |
bc74cb9a8e40
pager: account for flakiness in Windows output
Raphaël Gomès <rgomes@octobus.net>
parents:
47614
diff
changeset
|
231 summary: modify a 10 (?) |
bc74cb9a8e40
pager: account for flakiness in Windows output
Raphaël Gomès <rgomes@octobus.net>
parents:
47614
diff
changeset
|
232 (?) |
bc74cb9a8e40
pager: account for flakiness in Windows output
Raphaël Gomès <rgomes@octobus.net>
parents:
47614
diff
changeset
|
233 \x1b[0;33mchangeset: 9:6dd8ea7dd621\x1b[0m (esc) (?) |
bc74cb9a8e40
pager: account for flakiness in Windows output
Raphaël Gomès <rgomes@octobus.net>
parents:
47614
diff
changeset
|
234 user: test (?) |
bc74cb9a8e40
pager: account for flakiness in Windows output
Raphaël Gomès <rgomes@octobus.net>
parents:
47614
diff
changeset
|
235 date: Thu Jan 01 00:00:00 1970 +0000 (?) |
bc74cb9a8e40
pager: account for flakiness in Windows output
Raphaël Gomès <rgomes@octobus.net>
parents:
47614
diff
changeset
|
236 summary: modify a 9 (?) |
bc74cb9a8e40
pager: account for flakiness in Windows output
Raphaël Gomès <rgomes@octobus.net>
parents:
47614
diff
changeset
|
237 (?) |
bc74cb9a8e40
pager: account for flakiness in Windows output
Raphaël Gomès <rgomes@octobus.net>
parents:
47614
diff
changeset
|
238 \x1b[0;33mchangeset: 8:cff05a6312fe\x1b[0m (esc) (?) |
bc74cb9a8e40
pager: account for flakiness in Windows output
Raphaël Gomès <rgomes@octobus.net>
parents:
47614
diff
changeset
|
239 user: test (?) |
bc74cb9a8e40
pager: account for flakiness in Windows output
Raphaël Gomès <rgomes@octobus.net>
parents:
47614
diff
changeset
|
240 date: Thu Jan 01 00:00:00 1970 +0000 (?) |
bc74cb9a8e40
pager: account for flakiness in Windows output
Raphaël Gomès <rgomes@octobus.net>
parents:
47614
diff
changeset
|
241 summary: modify a 8 (?) |
bc74cb9a8e40
pager: account for flakiness in Windows output
Raphaël Gomès <rgomes@octobus.net>
parents:
47614
diff
changeset
|
242 (?) |
48256
56d037d07395
backout: backed out changeset 2f2107c01dee
Raphaël Gomès <rgomes@octobus.net>
parents:
48185
diff
changeset
|
243 #else |
56d037d07395
backout: backed out changeset 2f2107c01dee
Raphaël Gomès <rgomes@octobus.net>
parents:
48185
diff
changeset
|
244 $ hg log --limit 3 \ |
56d037d07395
backout: backed out changeset 2f2107c01dee
Raphaël Gomès <rgomes@octobus.net>
parents:
48185
diff
changeset
|
245 > --config pager.pager='this-command-better-never-exist --seriously' \ |
56d037d07395
backout: backed out changeset 2f2107c01dee
Raphaël Gomès <rgomes@octobus.net>
parents:
48185
diff
changeset
|
246 > 2>/dev/null || true |
56d037d07395
backout: backed out changeset 2f2107c01dee
Raphaël Gomès <rgomes@octobus.net>
parents:
48185
diff
changeset
|
247 #endif |
31478
9335dc6b2a9c
pager: avoid shell=True on subprocess.Popen for better errors (issue5491)
Augie Fackler <augie@google.com>
parents:
31405
diff
changeset
|
248 |
29132
12769703d4ba
dispatch: always load extensions before running shell aliases (issue5230)
Jun Wu <quark@fb.com>
parents:
28531
diff
changeset
|
249 Pager works with shell aliases. |
12769703d4ba
dispatch: always load extensions before running shell aliases (issue5230)
Jun Wu <quark@fb.com>
parents:
28531
diff
changeset
|
250 |
12769703d4ba
dispatch: always load extensions before running shell aliases (issue5230)
Jun Wu <quark@fb.com>
parents:
28531
diff
changeset
|
251 $ cat >> $HGRCPATH <<EOF |
12769703d4ba
dispatch: always load extensions before running shell aliases (issue5230)
Jun Wu <quark@fb.com>
parents:
28531
diff
changeset
|
252 > [alias] |
12769703d4ba
dispatch: always load extensions before running shell aliases (issue5230)
Jun Wu <quark@fb.com>
parents:
28531
diff
changeset
|
253 > echoa = !echo a |
12769703d4ba
dispatch: always load extensions before running shell aliases (issue5230)
Jun Wu <quark@fb.com>
parents:
28531
diff
changeset
|
254 > EOF |
12769703d4ba
dispatch: always load extensions before running shell aliases (issue5230)
Jun Wu <quark@fb.com>
parents:
28531
diff
changeset
|
255 |
12769703d4ba
dispatch: always load extensions before running shell aliases (issue5230)
Jun Wu <quark@fb.com>
parents:
28531
diff
changeset
|
256 $ hg echoa |
12769703d4ba
dispatch: always load extensions before running shell aliases (issue5230)
Jun Wu <quark@fb.com>
parents:
28531
diff
changeset
|
257 a |
31405
d5eb20934c36
tests: duplicate test for pager for old extension and for in-core pager
Martin von Zweigbergk <martinvonz@google.com>
parents:
31079
diff
changeset
|
258 BROKEN: should be paged |
29132
12769703d4ba
dispatch: always load extensions before running shell aliases (issue5230)
Jun Wu <quark@fb.com>
parents:
28531
diff
changeset
|
259 $ hg --config pager.attend-echoa=yes echoa |
31405
d5eb20934c36
tests: duplicate test for pager for old extension and for in-core pager
Martin von Zweigbergk <martinvonz@google.com>
parents:
31079
diff
changeset
|
260 a |
29343
e095b9e753f7
tests: move chg pager test to test-pager.t
Jun Wu <quark@fb.com>
parents:
29132
diff
changeset
|
261 |
e095b9e753f7
tests: move chg pager test to test-pager.t
Jun Wu <quark@fb.com>
parents:
29132
diff
changeset
|
262 Pager works with hg aliases including environment variables. |
e095b9e753f7
tests: move chg pager test to test-pager.t
Jun Wu <quark@fb.com>
parents:
29132
diff
changeset
|
263 |
e095b9e753f7
tests: move chg pager test to test-pager.t
Jun Wu <quark@fb.com>
parents:
29132
diff
changeset
|
264 $ cat >> $HGRCPATH <<'EOF' |
e095b9e753f7
tests: move chg pager test to test-pager.t
Jun Wu <quark@fb.com>
parents:
29132
diff
changeset
|
265 > [alias] |
e095b9e753f7
tests: move chg pager test to test-pager.t
Jun Wu <quark@fb.com>
parents:
29132
diff
changeset
|
266 > printa = log -T "$A\n" -r 0 |
e095b9e753f7
tests: move chg pager test to test-pager.t
Jun Wu <quark@fb.com>
parents:
29132
diff
changeset
|
267 > EOF |
e095b9e753f7
tests: move chg pager test to test-pager.t
Jun Wu <quark@fb.com>
parents:
29132
diff
changeset
|
268 |
e095b9e753f7
tests: move chg pager test to test-pager.t
Jun Wu <quark@fb.com>
parents:
29132
diff
changeset
|
269 $ A=1 hg --config pager.attend-printa=yes printa |
e095b9e753f7
tests: move chg pager test to test-pager.t
Jun Wu <quark@fb.com>
parents:
29132
diff
changeset
|
270 paged! '1\n' |
e095b9e753f7
tests: move chg pager test to test-pager.t
Jun Wu <quark@fb.com>
parents:
29132
diff
changeset
|
271 $ A=2 hg --config pager.attend-printa=yes printa |
e095b9e753f7
tests: move chg pager test to test-pager.t
Jun Wu <quark@fb.com>
parents:
29132
diff
changeset
|
272 paged! '2\n' |
29344 | 273 |
30942
65a3b4d67a65
pager: add a test of --pager=no functionality
Augie Fackler <augie@google.com>
parents:
30847
diff
changeset
|
274 Something that's explicitly attended is still not paginated if the |
65a3b4d67a65
pager: add a test of --pager=no functionality
Augie Fackler <augie@google.com>
parents:
30847
diff
changeset
|
275 pager is globally set to off using a flag: |
65a3b4d67a65
pager: add a test of --pager=no functionality
Augie Fackler <augie@google.com>
parents:
30847
diff
changeset
|
276 $ A=2 hg --config pager.attend-printa=yes printa --pager=no |
65a3b4d67a65
pager: add a test of --pager=no functionality
Augie Fackler <augie@google.com>
parents:
30847
diff
changeset
|
277 2 |
65a3b4d67a65
pager: add a test of --pager=no functionality
Augie Fackler <augie@google.com>
parents:
30847
diff
changeset
|
278 |
29344 | 279 Pager should not override the exit code of other commands |
280 | |
281 $ cat >> $TESTTMP/fortytwo.py <<'EOF' | |
32337
46ba2cdda476
registrar: move cmdutil.command to registrar module (API)
Yuya Nishihara <yuya@tcha.org>
parents:
32104
diff
changeset
|
282 > from mercurial import commands, registrar |
29344 | 283 > cmdtable = {} |
32337
46ba2cdda476
registrar: move cmdutil.command to registrar module (API)
Yuya Nishihara <yuya@tcha.org>
parents:
32104
diff
changeset
|
284 > command = registrar.command(cmdtable) |
38074
5a3feb2bc9dd
py3: add b'' prefixes in tests/test-pager.t
Pulkit Goyal <7895pulkit@gmail.com>
parents:
37598
diff
changeset
|
285 > @command(b'fortytwo', [], b'fortytwo', norepo=True) |
29344 | 286 > def fortytwo(ui, *opts): |
38074
5a3feb2bc9dd
py3: add b'' prefixes in tests/test-pager.t
Pulkit Goyal <7895pulkit@gmail.com>
parents:
37598
diff
changeset
|
287 > ui.write(b'42\n') |
29344 | 288 > return 42 |
289 > EOF | |
290 | |
291 $ cat >> $HGRCPATH <<'EOF' | |
292 > [extensions] | |
293 > fortytwo = $TESTTMP/fortytwo.py | |
294 > EOF | |
295 | |
296 $ hg fortytwo --pager=on | |
297 paged! '42\n' | |
298 [42] | |
30999
334cf948c758
annotate: migrate to modern pager API
Augie Fackler <augie@google.com>
parents:
30996
diff
changeset
|
299 |
334cf948c758
annotate: migrate to modern pager API
Augie Fackler <augie@google.com>
parents:
30996
diff
changeset
|
300 A command that asks for paging using ui.pager() directly works: |
334cf948c758
annotate: migrate to modern pager API
Augie Fackler <augie@google.com>
parents:
30996
diff
changeset
|
301 $ hg blame a |
334cf948c758
annotate: migrate to modern pager API
Augie Fackler <augie@google.com>
parents:
30996
diff
changeset
|
302 paged! ' 0: a\n' |
334cf948c758
annotate: migrate to modern pager API
Augie Fackler <augie@google.com>
parents:
30996
diff
changeset
|
303 paged! ' 1: a 1\n' |
334cf948c758
annotate: migrate to modern pager API
Augie Fackler <augie@google.com>
parents:
30996
diff
changeset
|
304 paged! ' 2: a 2\n' |
334cf948c758
annotate: migrate to modern pager API
Augie Fackler <augie@google.com>
parents:
30996
diff
changeset
|
305 paged! ' 3: a 3\n' |
334cf948c758
annotate: migrate to modern pager API
Augie Fackler <augie@google.com>
parents:
30996
diff
changeset
|
306 paged! ' 4: a 4\n' |
334cf948c758
annotate: migrate to modern pager API
Augie Fackler <augie@google.com>
parents:
30996
diff
changeset
|
307 paged! ' 5: a 5\n' |
334cf948c758
annotate: migrate to modern pager API
Augie Fackler <augie@google.com>
parents:
30996
diff
changeset
|
308 paged! ' 6: a 6\n' |
334cf948c758
annotate: migrate to modern pager API
Augie Fackler <augie@google.com>
parents:
30996
diff
changeset
|
309 paged! ' 7: a 7\n' |
334cf948c758
annotate: migrate to modern pager API
Augie Fackler <augie@google.com>
parents:
30996
diff
changeset
|
310 paged! ' 8: a 8\n' |
334cf948c758
annotate: migrate to modern pager API
Augie Fackler <augie@google.com>
parents:
30996
diff
changeset
|
311 paged! ' 9: a 9\n' |
334cf948c758
annotate: migrate to modern pager API
Augie Fackler <augie@google.com>
parents:
30996
diff
changeset
|
312 paged! '10: a 10\n' |
334cf948c758
annotate: migrate to modern pager API
Augie Fackler <augie@google.com>
parents:
30996
diff
changeset
|
313 but not with HGPLAIN |
334cf948c758
annotate: migrate to modern pager API
Augie Fackler <augie@google.com>
parents:
30996
diff
changeset
|
314 $ HGPLAIN=1 hg blame a |
334cf948c758
annotate: migrate to modern pager API
Augie Fackler <augie@google.com>
parents:
30996
diff
changeset
|
315 0: a |
334cf948c758
annotate: migrate to modern pager API
Augie Fackler <augie@google.com>
parents:
30996
diff
changeset
|
316 1: a 1 |
334cf948c758
annotate: migrate to modern pager API
Augie Fackler <augie@google.com>
parents:
30996
diff
changeset
|
317 2: a 2 |
334cf948c758
annotate: migrate to modern pager API
Augie Fackler <augie@google.com>
parents:
30996
diff
changeset
|
318 3: a 3 |
334cf948c758
annotate: migrate to modern pager API
Augie Fackler <augie@google.com>
parents:
30996
diff
changeset
|
319 4: a 4 |
334cf948c758
annotate: migrate to modern pager API
Augie Fackler <augie@google.com>
parents:
30996
diff
changeset
|
320 5: a 5 |
334cf948c758
annotate: migrate to modern pager API
Augie Fackler <augie@google.com>
parents:
30996
diff
changeset
|
321 6: a 6 |
334cf948c758
annotate: migrate to modern pager API
Augie Fackler <augie@google.com>
parents:
30996
diff
changeset
|
322 7: a 7 |
334cf948c758
annotate: migrate to modern pager API
Augie Fackler <augie@google.com>
parents:
30996
diff
changeset
|
323 8: a 8 |
334cf948c758
annotate: migrate to modern pager API
Augie Fackler <augie@google.com>
parents:
30996
diff
changeset
|
324 9: a 9 |
334cf948c758
annotate: migrate to modern pager API
Augie Fackler <augie@google.com>
parents:
30996
diff
changeset
|
325 10: a 10 |
334cf948c758
annotate: migrate to modern pager API
Augie Fackler <augie@google.com>
parents:
30996
diff
changeset
|
326 explicit flags work too: |
334cf948c758
annotate: migrate to modern pager API
Augie Fackler <augie@google.com>
parents:
30996
diff
changeset
|
327 $ hg blame --pager=no a |
334cf948c758
annotate: migrate to modern pager API
Augie Fackler <augie@google.com>
parents:
30996
diff
changeset
|
328 0: a |
334cf948c758
annotate: migrate to modern pager API
Augie Fackler <augie@google.com>
parents:
30996
diff
changeset
|
329 1: a 1 |
334cf948c758
annotate: migrate to modern pager API
Augie Fackler <augie@google.com>
parents:
30996
diff
changeset
|
330 2: a 2 |
334cf948c758
annotate: migrate to modern pager API
Augie Fackler <augie@google.com>
parents:
30996
diff
changeset
|
331 3: a 3 |
334cf948c758
annotate: migrate to modern pager API
Augie Fackler <augie@google.com>
parents:
30996
diff
changeset
|
332 4: a 4 |
334cf948c758
annotate: migrate to modern pager API
Augie Fackler <augie@google.com>
parents:
30996
diff
changeset
|
333 5: a 5 |
334cf948c758
annotate: migrate to modern pager API
Augie Fackler <augie@google.com>
parents:
30996
diff
changeset
|
334 6: a 6 |
334cf948c758
annotate: migrate to modern pager API
Augie Fackler <augie@google.com>
parents:
30996
diff
changeset
|
335 7: a 7 |
334cf948c758
annotate: migrate to modern pager API
Augie Fackler <augie@google.com>
parents:
30996
diff
changeset
|
336 8: a 8 |
334cf948c758
annotate: migrate to modern pager API
Augie Fackler <augie@google.com>
parents:
30996
diff
changeset
|
337 9: a 9 |
334cf948c758
annotate: migrate to modern pager API
Augie Fackler <augie@google.com>
parents:
30996
diff
changeset
|
338 10: a 10 |
31000
84ec2d6a2831
tests: prove that ignore works
Augie Fackler <augie@google.com>
parents:
30999
diff
changeset
|
339 |
32541
3b569745af6c
cat: do not start pager if output will be written to file
Yuya Nishihara <yuya@tcha.org>
parents:
32337
diff
changeset
|
340 A command with --output option: |
3b569745af6c
cat: do not start pager if output will be written to file
Yuya Nishihara <yuya@tcha.org>
parents:
32337
diff
changeset
|
341 |
3b569745af6c
cat: do not start pager if output will be written to file
Yuya Nishihara <yuya@tcha.org>
parents:
32337
diff
changeset
|
342 $ hg cat -r0 a |
3b569745af6c
cat: do not start pager if output will be written to file
Yuya Nishihara <yuya@tcha.org>
parents:
32337
diff
changeset
|
343 paged! 'a\n' |
3b569745af6c
cat: do not start pager if output will be written to file
Yuya Nishihara <yuya@tcha.org>
parents:
32337
diff
changeset
|
344 $ hg cat -r0 a --output=- |
3b569745af6c
cat: do not start pager if output will be written to file
Yuya Nishihara <yuya@tcha.org>
parents:
32337
diff
changeset
|
345 paged! 'a\n' |
3b569745af6c
cat: do not start pager if output will be written to file
Yuya Nishihara <yuya@tcha.org>
parents:
32337
diff
changeset
|
346 $ hg cat -r0 a --output=out |
37598
7a9c905e51f9
export: do not start pager if output will be written to file
Yuya Nishihara <yuya@tcha.org>
parents:
34791
diff
changeset
|
347 |
7a9c905e51f9
export: do not start pager if output will be written to file
Yuya Nishihara <yuya@tcha.org>
parents:
34791
diff
changeset
|
348 $ hg export -r0 |
7a9c905e51f9
export: do not start pager if output will be written to file
Yuya Nishihara <yuya@tcha.org>
parents:
34791
diff
changeset
|
349 paged! '# HG changeset patch\n' |
7a9c905e51f9
export: do not start pager if output will be written to file
Yuya Nishihara <yuya@tcha.org>
parents:
34791
diff
changeset
|
350 paged! '# User test\n' |
7a9c905e51f9
export: do not start pager if output will be written to file
Yuya Nishihara <yuya@tcha.org>
parents:
34791
diff
changeset
|
351 paged! '# Date 0 0\n' |
7a9c905e51f9
export: do not start pager if output will be written to file
Yuya Nishihara <yuya@tcha.org>
parents:
34791
diff
changeset
|
352 paged! '# Thu Jan 01 00:00:00 1970 +0000\n' |
7a9c905e51f9
export: do not start pager if output will be written to file
Yuya Nishihara <yuya@tcha.org>
parents:
34791
diff
changeset
|
353 paged! '# Node ID 1f0dee641bb7258c56bd60e93edfa2405381c41e\n' |
7a9c905e51f9
export: do not start pager if output will be written to file
Yuya Nishihara <yuya@tcha.org>
parents:
34791
diff
changeset
|
354 paged! '# Parent 0000000000000000000000000000000000000000\n' |
7a9c905e51f9
export: do not start pager if output will be written to file
Yuya Nishihara <yuya@tcha.org>
parents:
34791
diff
changeset
|
355 paged! 'add a\n' |
7a9c905e51f9
export: do not start pager if output will be written to file
Yuya Nishihara <yuya@tcha.org>
parents:
34791
diff
changeset
|
356 paged! '\n' |
7a9c905e51f9
export: do not start pager if output will be written to file
Yuya Nishihara <yuya@tcha.org>
parents:
34791
diff
changeset
|
357 paged! '\x1b[0;1mdiff -r 000000000000 -r 1f0dee641bb7 a\x1b[0m\n' |
7a9c905e51f9
export: do not start pager if output will be written to file
Yuya Nishihara <yuya@tcha.org>
parents:
34791
diff
changeset
|
358 paged! '\x1b[0;31;1m--- /dev/null\tThu Jan 01 00:00:00 1970 +0000\x1b[0m\n' |
7a9c905e51f9
export: do not start pager if output will be written to file
Yuya Nishihara <yuya@tcha.org>
parents:
34791
diff
changeset
|
359 paged! '\x1b[0;32;1m+++ b/a\tThu Jan 01 00:00:00 1970 +0000\x1b[0m\n' |
7a9c905e51f9
export: do not start pager if output will be written to file
Yuya Nishihara <yuya@tcha.org>
parents:
34791
diff
changeset
|
360 paged! '\x1b[0;35m@@ -0,0 +1,1 @@\x1b[0m\n' |
7a9c905e51f9
export: do not start pager if output will be written to file
Yuya Nishihara <yuya@tcha.org>
parents:
34791
diff
changeset
|
361 paged! '\x1b[0;32m+a\x1b[0m\n' |
7a9c905e51f9
export: do not start pager if output will be written to file
Yuya Nishihara <yuya@tcha.org>
parents:
34791
diff
changeset
|
362 $ hg export -r0 -o - |
7a9c905e51f9
export: do not start pager if output will be written to file
Yuya Nishihara <yuya@tcha.org>
parents:
34791
diff
changeset
|
363 paged! '# HG changeset patch\n' |
7a9c905e51f9
export: do not start pager if output will be written to file
Yuya Nishihara <yuya@tcha.org>
parents:
34791
diff
changeset
|
364 paged! '# User test\n' |
7a9c905e51f9
export: do not start pager if output will be written to file
Yuya Nishihara <yuya@tcha.org>
parents:
34791
diff
changeset
|
365 paged! '# Date 0 0\n' |
7a9c905e51f9
export: do not start pager if output will be written to file
Yuya Nishihara <yuya@tcha.org>
parents:
34791
diff
changeset
|
366 paged! '# Thu Jan 01 00:00:00 1970 +0000\n' |
7a9c905e51f9
export: do not start pager if output will be written to file
Yuya Nishihara <yuya@tcha.org>
parents:
34791
diff
changeset
|
367 paged! '# Node ID 1f0dee641bb7258c56bd60e93edfa2405381c41e\n' |
7a9c905e51f9
export: do not start pager if output will be written to file
Yuya Nishihara <yuya@tcha.org>
parents:
34791
diff
changeset
|
368 paged! '# Parent 0000000000000000000000000000000000000000\n' |
7a9c905e51f9
export: do not start pager if output will be written to file
Yuya Nishihara <yuya@tcha.org>
parents:
34791
diff
changeset
|
369 paged! 'add a\n' |
7a9c905e51f9
export: do not start pager if output will be written to file
Yuya Nishihara <yuya@tcha.org>
parents:
34791
diff
changeset
|
370 paged! '\n' |
7a9c905e51f9
export: do not start pager if output will be written to file
Yuya Nishihara <yuya@tcha.org>
parents:
34791
diff
changeset
|
371 paged! '\x1b[0;1mdiff -r 000000000000 -r 1f0dee641bb7 a\x1b[0m\n' |
7a9c905e51f9
export: do not start pager if output will be written to file
Yuya Nishihara <yuya@tcha.org>
parents:
34791
diff
changeset
|
372 paged! '\x1b[0;31;1m--- /dev/null\tThu Jan 01 00:00:00 1970 +0000\x1b[0m\n' |
7a9c905e51f9
export: do not start pager if output will be written to file
Yuya Nishihara <yuya@tcha.org>
parents:
34791
diff
changeset
|
373 paged! '\x1b[0;32;1m+++ b/a\tThu Jan 01 00:00:00 1970 +0000\x1b[0m\n' |
7a9c905e51f9
export: do not start pager if output will be written to file
Yuya Nishihara <yuya@tcha.org>
parents:
34791
diff
changeset
|
374 paged! '\x1b[0;35m@@ -0,0 +1,1 @@\x1b[0m\n' |
7a9c905e51f9
export: do not start pager if output will be written to file
Yuya Nishihara <yuya@tcha.org>
parents:
34791
diff
changeset
|
375 paged! '\x1b[0;32m+a\x1b[0m\n' |
7a9c905e51f9
export: do not start pager if output will be written to file
Yuya Nishihara <yuya@tcha.org>
parents:
34791
diff
changeset
|
376 $ hg export -r0 -o out |
7a9c905e51f9
export: do not start pager if output will be written to file
Yuya Nishihara <yuya@tcha.org>
parents:
34791
diff
changeset
|
377 |
32541
3b569745af6c
cat: do not start pager if output will be written to file
Yuya Nishihara <yuya@tcha.org>
parents:
32337
diff
changeset
|
378 $ rm out |
3b569745af6c
cat: do not start pager if output will be written to file
Yuya Nishihara <yuya@tcha.org>
parents:
32337
diff
changeset
|
379 |
31000
84ec2d6a2831
tests: prove that ignore works
Augie Fackler <augie@google.com>
parents:
30999
diff
changeset
|
380 Put annotate in the ignore list for pager: |
84ec2d6a2831
tests: prove that ignore works
Augie Fackler <augie@google.com>
parents:
30999
diff
changeset
|
381 $ cat >> $HGRCPATH <<EOF |
84ec2d6a2831
tests: prove that ignore works
Augie Fackler <augie@google.com>
parents:
30999
diff
changeset
|
382 > [pager] |
84ec2d6a2831
tests: prove that ignore works
Augie Fackler <augie@google.com>
parents:
30999
diff
changeset
|
383 > ignore = annotate |
84ec2d6a2831
tests: prove that ignore works
Augie Fackler <augie@google.com>
parents:
30999
diff
changeset
|
384 > EOF |
84ec2d6a2831
tests: prove that ignore works
Augie Fackler <augie@google.com>
parents:
30999
diff
changeset
|
385 $ hg blame a |
84ec2d6a2831
tests: prove that ignore works
Augie Fackler <augie@google.com>
parents:
30999
diff
changeset
|
386 0: a |
84ec2d6a2831
tests: prove that ignore works
Augie Fackler <augie@google.com>
parents:
30999
diff
changeset
|
387 1: a 1 |
84ec2d6a2831
tests: prove that ignore works
Augie Fackler <augie@google.com>
parents:
30999
diff
changeset
|
388 2: a 2 |
84ec2d6a2831
tests: prove that ignore works
Augie Fackler <augie@google.com>
parents:
30999
diff
changeset
|
389 3: a 3 |
84ec2d6a2831
tests: prove that ignore works
Augie Fackler <augie@google.com>
parents:
30999
diff
changeset
|
390 4: a 4 |
84ec2d6a2831
tests: prove that ignore works
Augie Fackler <augie@google.com>
parents:
30999
diff
changeset
|
391 5: a 5 |
84ec2d6a2831
tests: prove that ignore works
Augie Fackler <augie@google.com>
parents:
30999
diff
changeset
|
392 6: a 6 |
84ec2d6a2831
tests: prove that ignore works
Augie Fackler <augie@google.com>
parents:
30999
diff
changeset
|
393 7: a 7 |
84ec2d6a2831
tests: prove that ignore works
Augie Fackler <augie@google.com>
parents:
30999
diff
changeset
|
394 8: a 8 |
84ec2d6a2831
tests: prove that ignore works
Augie Fackler <augie@google.com>
parents:
30999
diff
changeset
|
395 9: a 9 |
84ec2d6a2831
tests: prove that ignore works
Augie Fackler <augie@google.com>
parents:
30999
diff
changeset
|
396 10: a 10 |
31954
e518192d6bac
pager: set some environment variables if they're not set
Jun Wu <quark@fb.com>
parents:
31478
diff
changeset
|
397 |
34021
31a2eb0f74e5
pager: do not start pager if `ui` has been `pushbuffer`-ed
Jun Wu <quark@fb.com>
parents:
33971
diff
changeset
|
398 During pushbuffer, pager should not start: |
31a2eb0f74e5
pager: do not start pager if `ui` has been `pushbuffer`-ed
Jun Wu <quark@fb.com>
parents:
33971
diff
changeset
|
399 $ cat > $TESTTMP/pushbufferpager.py <<EOF |
31a2eb0f74e5
pager: do not start pager if `ui` has been `pushbuffer`-ed
Jun Wu <quark@fb.com>
parents:
33971
diff
changeset
|
400 > def uisetup(ui): |
31a2eb0f74e5
pager: do not start pager if `ui` has been `pushbuffer`-ed
Jun Wu <quark@fb.com>
parents:
33971
diff
changeset
|
401 > ui.pushbuffer() |
38074
5a3feb2bc9dd
py3: add b'' prefixes in tests/test-pager.t
Pulkit Goyal <7895pulkit@gmail.com>
parents:
37598
diff
changeset
|
402 > ui.pager(b'mycmd') |
5a3feb2bc9dd
py3: add b'' prefixes in tests/test-pager.t
Pulkit Goyal <7895pulkit@gmail.com>
parents:
37598
diff
changeset
|
403 > ui.write(b'content\n') |
34021
31a2eb0f74e5
pager: do not start pager if `ui` has been `pushbuffer`-ed
Jun Wu <quark@fb.com>
parents:
33971
diff
changeset
|
404 > ui.write(ui.popbuffer()) |
31a2eb0f74e5
pager: do not start pager if `ui` has been `pushbuffer`-ed
Jun Wu <quark@fb.com>
parents:
33971
diff
changeset
|
405 > EOF |
31a2eb0f74e5
pager: do not start pager if `ui` has been `pushbuffer`-ed
Jun Wu <quark@fb.com>
parents:
33971
diff
changeset
|
406 |
31a2eb0f74e5
pager: do not start pager if `ui` has been `pushbuffer`-ed
Jun Wu <quark@fb.com>
parents:
33971
diff
changeset
|
407 $ echo append >> a |
31a2eb0f74e5
pager: do not start pager if `ui` has been `pushbuffer`-ed
Jun Wu <quark@fb.com>
parents:
33971
diff
changeset
|
408 $ hg --config extensions.pushbuffer=$TESTTMP/pushbufferpager.py status --color=off |
31a2eb0f74e5
pager: do not start pager if `ui` has been `pushbuffer`-ed
Jun Wu <quark@fb.com>
parents:
33971
diff
changeset
|
409 content |
31a2eb0f74e5
pager: do not start pager if `ui` has been `pushbuffer`-ed
Jun Wu <quark@fb.com>
parents:
33971
diff
changeset
|
410 paged! 'M a\n' |
31a2eb0f74e5
pager: do not start pager if `ui` has been `pushbuffer`-ed
Jun Wu <quark@fb.com>
parents:
33971
diff
changeset
|
411 |
31954
e518192d6bac
pager: set some environment variables if they're not set
Jun Wu <quark@fb.com>
parents:
31478
diff
changeset
|
412 Environment variables like LESS and LV are set automatically: |
e518192d6bac
pager: set some environment variables if they're not set
Jun Wu <quark@fb.com>
parents:
31478
diff
changeset
|
413 $ cat > $TESTTMP/printlesslv.py <<EOF |
33971
dcfa83652744
tests: update test-pager to pass our import checker
Augie Fackler <raf@durin42.com>
parents:
33620
diff
changeset
|
414 > import os |
dcfa83652744
tests: update test-pager to pass our import checker
Augie Fackler <raf@durin42.com>
parents:
33620
diff
changeset
|
415 > import sys |
31954
e518192d6bac
pager: set some environment variables if they're not set
Jun Wu <quark@fb.com>
parents:
31478
diff
changeset
|
416 > sys.stdin.read() |
e518192d6bac
pager: set some environment variables if they're not set
Jun Wu <quark@fb.com>
parents:
31478
diff
changeset
|
417 > for name in ['LESS', 'LV']: |
e518192d6bac
pager: set some environment variables if they're not set
Jun Wu <quark@fb.com>
parents:
31478
diff
changeset
|
418 > sys.stdout.write(('%s=%s\n') % (name, os.environ.get(name, '-'))) |
e518192d6bac
pager: set some environment variables if they're not set
Jun Wu <quark@fb.com>
parents:
31478
diff
changeset
|
419 > sys.stdout.flush() |
e518192d6bac
pager: set some environment variables if they're not set
Jun Wu <quark@fb.com>
parents:
31478
diff
changeset
|
420 > EOF |
e518192d6bac
pager: set some environment variables if they're not set
Jun Wu <quark@fb.com>
parents:
31478
diff
changeset
|
421 |
e518192d6bac
pager: set some environment variables if they're not set
Jun Wu <quark@fb.com>
parents:
31478
diff
changeset
|
422 $ cat >> $HGRCPATH <<EOF |
e518192d6bac
pager: set some environment variables if they're not set
Jun Wu <quark@fb.com>
parents:
31478
diff
changeset
|
423 > [alias] |
e518192d6bac
pager: set some environment variables if they're not set
Jun Wu <quark@fb.com>
parents:
31478
diff
changeset
|
424 > noop = log -r 0 -T '' |
e518192d6bac
pager: set some environment variables if they're not set
Jun Wu <quark@fb.com>
parents:
31478
diff
changeset
|
425 > [ui] |
e518192d6bac
pager: set some environment variables if they're not set
Jun Wu <quark@fb.com>
parents:
31478
diff
changeset
|
426 > formatted=1 |
e518192d6bac
pager: set some environment variables if they're not set
Jun Wu <quark@fb.com>
parents:
31478
diff
changeset
|
427 > [pager] |
39707
5abc47d4ca6b
tests: quote PYTHON usage
Matt Harbison <matt_harbison@yahoo.com>
parents:
38074
diff
changeset
|
428 > pager = "$PYTHON" $TESTTMP/printlesslv.py |
31954
e518192d6bac
pager: set some environment variables if they're not set
Jun Wu <quark@fb.com>
parents:
31478
diff
changeset
|
429 > EOF |
e518192d6bac
pager: set some environment variables if they're not set
Jun Wu <quark@fb.com>
parents:
31478
diff
changeset
|
430 $ unset LESS |
e518192d6bac
pager: set some environment variables if they're not set
Jun Wu <quark@fb.com>
parents:
31478
diff
changeset
|
431 $ unset LV |
e518192d6bac
pager: set some environment variables if they're not set
Jun Wu <quark@fb.com>
parents:
31478
diff
changeset
|
432 $ hg noop --pager=on |
e518192d6bac
pager: set some environment variables if they're not set
Jun Wu <quark@fb.com>
parents:
31478
diff
changeset
|
433 LESS=FRX |
e518192d6bac
pager: set some environment variables if they're not set
Jun Wu <quark@fb.com>
parents:
31478
diff
changeset
|
434 LV=-c |
e518192d6bac
pager: set some environment variables if they're not set
Jun Wu <quark@fb.com>
parents:
31478
diff
changeset
|
435 $ LESS=EFGH hg noop --pager=on |
e518192d6bac
pager: set some environment variables if they're not set
Jun Wu <quark@fb.com>
parents:
31478
diff
changeset
|
436 LESS=EFGH |
e518192d6bac
pager: set some environment variables if they're not set
Jun Wu <quark@fb.com>
parents:
31478
diff
changeset
|
437 LV=-c |