Mercurial > hg
annotate contrib/bash_completion @ 1806:a2c69737e65e
Automatic nesting into running transactions in the same repository.
This associates a transaction handle with a given repository object, and
any additional calls to start new transactions reuse that transaction.
For the 2700 patch import run, this brings the system time down from
1m20s to 50s, mostly by skipping backups of the dirstate file.
(note, this patch does not change hg import to use the nested transaction,
mq is the only user right now)
author | mason@suse.com |
---|---|
date | Tue, 28 Feb 2006 12:24:54 -0600 |
parents | 2af98c4b2587 |
children | 7e10518b2b9e |
rev | line source |
---|---|
1311
db8bebb08f8f
bash_completion: extended patterns require extglob option
TK Soh <teekaysoh@yahoo.com>
parents:
1308
diff
changeset
|
1 shopt -s extglob |
db8bebb08f8f
bash_completion: extended patterns require extglob option
TK Soh <teekaysoh@yahoo.com>
parents:
1308
diff
changeset
|
2 |
1641
1ef060ae7966
bash_completion: be more careful about whitespaces
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
1639
diff
changeset
|
3 _hg_command_list() |
1ef060ae7966
bash_completion: be more careful about whitespaces
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
1639
diff
changeset
|
4 { |
1683
063e04831a09
Use user specified path to hg in bash_completion
Thomas Arendsen Hein <thomas@intevation.de>
parents:
1643
diff
changeset
|
5 "$hg" --debug help 2>/dev/null | \ |
1805
2af98c4b2587
Fix bash_completion on Solaris
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
1684
diff
changeset
|
6 awk -F', ' '/^list of commands:/ {commands=1} |
2af98c4b2587
Fix bash_completion on Solaris
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
1684
diff
changeset
|
7 commands && /^ [^ ]/ { |
2af98c4b2587
Fix bash_completion on Solaris
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
1684
diff
changeset
|
8 sub(/ /, "") |
2af98c4b2587
Fix bash_completion on Solaris
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
1684
diff
changeset
|
9 sub(/:.*/, "") |
2af98c4b2587
Fix bash_completion on Solaris
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
1684
diff
changeset
|
10 command = $1 |
2af98c4b2587
Fix bash_completion on Solaris
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
1684
diff
changeset
|
11 if (index(command, "debug") == 1) { |
2af98c4b2587
Fix bash_completion on Solaris
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
1684
diff
changeset
|
12 for (i=1; i<=NF; i++) |
2af98c4b2587
Fix bash_completion on Solaris
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
1684
diff
changeset
|
13 debug[j++] = $i |
2af98c4b2587
Fix bash_completion on Solaris
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
1684
diff
changeset
|
14 next |
2af98c4b2587
Fix bash_completion on Solaris
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
1684
diff
changeset
|
15 } |
1684
cf930b2452d3
Cleanup of spacing in bash_completion
Thomas Arendsen Hein <thomas@intevation.de>
parents:
1683
diff
changeset
|
16 print command |
1805
2af98c4b2587
Fix bash_completion on Solaris
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
1684
diff
changeset
|
17 for (i=2; i<=NF; i++) |
2af98c4b2587
Fix bash_completion on Solaris
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
1684
diff
changeset
|
18 if (index(command, $i) != 1) |
2af98c4b2587
Fix bash_completion on Solaris
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
1684
diff
changeset
|
19 print $i |
1684
cf930b2452d3
Cleanup of spacing in bash_completion
Thomas Arendsen Hein <thomas@intevation.de>
parents:
1683
diff
changeset
|
20 } |
cf930b2452d3
Cleanup of spacing in bash_completion
Thomas Arendsen Hein <thomas@intevation.de>
parents:
1683
diff
changeset
|
21 /^global options:/ {exit 0} |
1805
2af98c4b2587
Fix bash_completion on Solaris
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
1684
diff
changeset
|
22 END {for (i in debug) print debug[i]}' |
1641
1ef060ae7966
bash_completion: be more careful about whitespaces
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
1639
diff
changeset
|
23 } |
1ef060ae7966
bash_completion: be more careful about whitespaces
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
1639
diff
changeset
|
24 |
1ef060ae7966
bash_completion: be more careful about whitespaces
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
1639
diff
changeset
|
25 _hg_option_list() |
1ef060ae7966
bash_completion: be more careful about whitespaces
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
1639
diff
changeset
|
26 { |
1684
cf930b2452d3
Cleanup of spacing in bash_completion
Thomas Arendsen Hein <thomas@intevation.de>
parents:
1683
diff
changeset
|
27 "$hg" -v help $1 2>/dev/null | \ |
cf930b2452d3
Cleanup of spacing in bash_completion
Thomas Arendsen Hein <thomas@intevation.de>
parents:
1683
diff
changeset
|
28 awk '/^ *-/ { |
cf930b2452d3
Cleanup of spacing in bash_completion
Thomas Arendsen Hein <thomas@intevation.de>
parents:
1683
diff
changeset
|
29 for (i = 1; i <= NF; i ++) { |
1641
1ef060ae7966
bash_completion: be more careful about whitespaces
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
1639
diff
changeset
|
30 if (index($i, "-") != 1) |
1684
cf930b2452d3
Cleanup of spacing in bash_completion
Thomas Arendsen Hein <thomas@intevation.de>
parents:
1683
diff
changeset
|
31 break; |
1641
1ef060ae7966
bash_completion: be more careful about whitespaces
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
1639
diff
changeset
|
32 print $i; |
1684
cf930b2452d3
Cleanup of spacing in bash_completion
Thomas Arendsen Hein <thomas@intevation.de>
parents:
1683
diff
changeset
|
33 } |
cf930b2452d3
Cleanup of spacing in bash_completion
Thomas Arendsen Hein <thomas@intevation.de>
parents:
1683
diff
changeset
|
34 }' |
1641
1ef060ae7966
bash_completion: be more careful about whitespaces
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
1639
diff
changeset
|
35 } |
1ef060ae7966
bash_completion: be more careful about whitespaces
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
1639
diff
changeset
|
36 |
1ef060ae7966
bash_completion: be more careful about whitespaces
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
1639
diff
changeset
|
37 |
916 | 38 _hg_commands() |
39 { | |
1555
01a5121a005a
bash_completion: use hg --debug help to get the list of debug commands.
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
1339
diff
changeset
|
40 local all commands result |
01a5121a005a
bash_completion: use hg --debug help to get the list of debug commands.
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
1339
diff
changeset
|
41 |
1641
1ef060ae7966
bash_completion: be more careful about whitespaces
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
1639
diff
changeset
|
42 all=$(_hg_command_list) |
1ef060ae7966
bash_completion: be more careful about whitespaces
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
1639
diff
changeset
|
43 commands=${all%%$'\n'debug*} |
1642
b8d792057e5b
bash_completion: always use single quotes with compgen -W
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
1641
diff
changeset
|
44 result=$(compgen -W '$commands' -- "$cur") |
1308
2073e5a71008
Cleanup of tabs and trailing spaces.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
1263
diff
changeset
|
45 |
2073e5a71008
Cleanup of tabs and trailing spaces.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
1263
diff
changeset
|
46 # hide debug commands from users, but complete them if |
1555
01a5121a005a
bash_completion: use hg --debug help to get the list of debug commands.
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
1339
diff
changeset
|
47 # there is no other possible command |
01a5121a005a
bash_completion: use hg --debug help to get the list of debug commands.
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
1339
diff
changeset
|
48 if [ "$result" = "" ]; then |
01a5121a005a
bash_completion: use hg --debug help to get the list of debug commands.
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
1339
diff
changeset
|
49 local debug |
1641
1ef060ae7966
bash_completion: be more careful about whitespaces
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
1639
diff
changeset
|
50 debug=debug${all#*$'\n'debug} |
1642
b8d792057e5b
bash_completion: always use single quotes with compgen -W
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
1641
diff
changeset
|
51 result=$(compgen -W '$debug' -- "$cur") |
916 | 52 fi |
1555
01a5121a005a
bash_completion: use hg --debug help to get the list of debug commands.
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
1339
diff
changeset
|
53 |
01a5121a005a
bash_completion: use hg --debug help to get the list of debug commands.
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
1339
diff
changeset
|
54 COMPREPLY=(${COMPREPLY[@]:-} $result) |
916 | 55 } |
56 | |
57 _hg_paths() | |
58 { | |
1684
cf930b2452d3
Cleanup of spacing in bash_completion
Thomas Arendsen Hein <thomas@intevation.de>
parents:
1683
diff
changeset
|
59 local paths="$("$hg" paths 2>/dev/null | sed -e 's/ = .*$//')" |
cf930b2452d3
Cleanup of spacing in bash_completion
Thomas Arendsen Hein <thomas@intevation.de>
parents:
1683
diff
changeset
|
60 COMPREPLY=(${COMPREPLY[@]:-} $(compgen -W '$paths' -- "$cur")) |
916 | 61 } |
62 | |
1587
851bc33ff545
Less annoying directory completion (see http://bugs.debian.org/343458)
Daniel Kobras <kobras@debian.org>
parents:
1556
diff
changeset
|
63 _hg_repos() |
851bc33ff545
Less annoying directory completion (see http://bugs.debian.org/343458)
Daniel Kobras <kobras@debian.org>
parents:
1556
diff
changeset
|
64 { |
851bc33ff545
Less annoying directory completion (see http://bugs.debian.org/343458)
Daniel Kobras <kobras@debian.org>
parents:
1556
diff
changeset
|
65 local i |
1684
cf930b2452d3
Cleanup of spacing in bash_completion
Thomas Arendsen Hein <thomas@intevation.de>
parents:
1683
diff
changeset
|
66 for i in $(compgen -d -- "$cur"); do |
cf930b2452d3
Cleanup of spacing in bash_completion
Thomas Arendsen Hein <thomas@intevation.de>
parents:
1683
diff
changeset
|
67 test ! -d "$i"/.hg || COMPREPLY=(${COMPREPLY[@]:-} "$i") |
1587
851bc33ff545
Less annoying directory completion (see http://bugs.debian.org/343458)
Daniel Kobras <kobras@debian.org>
parents:
1556
diff
changeset
|
68 done |
851bc33ff545
Less annoying directory completion (see http://bugs.debian.org/343458)
Daniel Kobras <kobras@debian.org>
parents:
1556
diff
changeset
|
69 } |
851bc33ff545
Less annoying directory completion (see http://bugs.debian.org/343458)
Daniel Kobras <kobras@debian.org>
parents:
1556
diff
changeset
|
70 |
935
925563ff1b18
bash: Add smarter completion of add/commit/remove/forget/diff/revert
mpm@selenic.com
parents:
929
diff
changeset
|
71 _hg_status() |
925563ff1b18
bash: Add smarter completion of add/commit/remove/forget/diff/revert
mpm@selenic.com
parents:
929
diff
changeset
|
72 { |
1684
cf930b2452d3
Cleanup of spacing in bash_completion
Thomas Arendsen Hein <thomas@intevation.de>
parents:
1683
diff
changeset
|
73 local files="$("$hg" status -n$1 . 2>/dev/null)" |
cf930b2452d3
Cleanup of spacing in bash_completion
Thomas Arendsen Hein <thomas@intevation.de>
parents:
1683
diff
changeset
|
74 COMPREPLY=(${COMPREPLY[@]:-} $(compgen -W '$files' -- "$cur")) |
935
925563ff1b18
bash: Add smarter completion of add/commit/remove/forget/diff/revert
mpm@selenic.com
parents:
929
diff
changeset
|
75 } |
925563ff1b18
bash: Add smarter completion of add/commit/remove/forget/diff/revert
mpm@selenic.com
parents:
929
diff
changeset
|
76 |
916 | 77 _hg_tags() |
78 { | |
1684
cf930b2452d3
Cleanup of spacing in bash_completion
Thomas Arendsen Hein <thomas@intevation.de>
parents:
1683
diff
changeset
|
79 local tags="$("$hg" tags 2>/dev/null | |
cf930b2452d3
Cleanup of spacing in bash_completion
Thomas Arendsen Hein <thomas@intevation.de>
parents:
1683
diff
changeset
|
80 sed -e 's/[0-9]*:[a-f0-9]\{40\}$//; s/ *$//')" |
cf930b2452d3
Cleanup of spacing in bash_completion
Thomas Arendsen Hein <thomas@intevation.de>
parents:
1683
diff
changeset
|
81 COMPREPLY=(${COMPREPLY[@]:-} $(compgen -W '$tags' -- "$cur")) |
916 | 82 } |
83 | |
84 # this is "kind of" ugly... | |
85 _hg_count_non_option() | |
86 { | |
87 local i count=0 | |
88 local filters="$1" | |
89 | |
1684
cf930b2452d3
Cleanup of spacing in bash_completion
Thomas Arendsen Hein <thomas@intevation.de>
parents:
1683
diff
changeset
|
90 for ((i=1; $i<=$COMP_CWORD; i++)); do |
916 | 91 if [[ "${COMP_WORDS[i]}" != -* ]]; then |
1152
ff560ce0c635
bash_completion: small cleanup and bugfix
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
1151
diff
changeset
|
92 if [[ ${COMP_WORDS[i-1]} == @($filters|$global_args) ]]; then |
ff560ce0c635
bash_completion: small cleanup and bugfix
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
1151
diff
changeset
|
93 continue |
ff560ce0c635
bash_completion: small cleanup and bugfix
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
1151
diff
changeset
|
94 fi |
916 | 95 count=$(($count + 1)) |
96 fi | |
97 done | |
98 | |
99 echo $(($count - 1)) | |
100 } | |
101 | |
102 _hg() | |
103 { | |
104 local cur prev cmd opts i | |
1151
10b4f2a5ce17
teach bash_completion about --cwd
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
1150
diff
changeset
|
105 # global options that receive an argument |
10b4f2a5ce17
teach bash_completion about --cwd
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
1150
diff
changeset
|
106 local global_args='--cwd|-R|--repository' |
1683
063e04831a09
Use user specified path to hg in bash_completion
Thomas Arendsen Hein <thomas@intevation.de>
parents:
1643
diff
changeset
|
107 local hg="$1" |
916 | 108 |
109 COMPREPLY=() | |
110 cur="$2" | |
111 prev="$3" | |
112 | |
1308
2073e5a71008
Cleanup of tabs and trailing spaces.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
1263
diff
changeset
|
113 # searching for the command |
1151
10b4f2a5ce17
teach bash_completion about --cwd
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
1150
diff
changeset
|
114 # (first non-option argument that doesn't follow a global option that |
10b4f2a5ce17
teach bash_completion about --cwd
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
1150
diff
changeset
|
115 # receives an argument) |
1684
cf930b2452d3
Cleanup of spacing in bash_completion
Thomas Arendsen Hein <thomas@intevation.de>
parents:
1683
diff
changeset
|
116 for ((i=1; $i<=$COMP_CWORD; i++)); do |
1151
10b4f2a5ce17
teach bash_completion about --cwd
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
1150
diff
changeset
|
117 if [[ ${COMP_WORDS[i]} != -* ]]; then |
10b4f2a5ce17
teach bash_completion about --cwd
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
1150
diff
changeset
|
118 if [[ ${COMP_WORDS[i-1]} != @($global_args) ]]; then |
10b4f2a5ce17
teach bash_completion about --cwd
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
1150
diff
changeset
|
119 cmd="${COMP_WORDS[i]}" |
10b4f2a5ce17
teach bash_completion about --cwd
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
1150
diff
changeset
|
120 break |
10b4f2a5ce17
teach bash_completion about --cwd
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
1150
diff
changeset
|
121 fi |
916 | 122 fi |
123 done | |
124 | |
125 if [[ "$cur" == -* ]]; then | |
1641
1ef060ae7966
bash_completion: be more careful about whitespaces
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
1639
diff
changeset
|
126 opts=$(_hg_option_list $cmd) |
916 | 127 |
1684
cf930b2452d3
Cleanup of spacing in bash_completion
Thomas Arendsen Hein <thomas@intevation.de>
parents:
1683
diff
changeset
|
128 COMPREPLY=(${COMPREPLY[@]:-} $(compgen -W '$opts' -- "$cur")) |
916 | 129 return |
130 fi | |
131 | |
1151
10b4f2a5ce17
teach bash_completion about --cwd
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
1150
diff
changeset
|
132 # global options |
10b4f2a5ce17
teach bash_completion about --cwd
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
1150
diff
changeset
|
133 case "$prev" in |
10b4f2a5ce17
teach bash_completion about --cwd
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
1150
diff
changeset
|
134 -R|--repository) |
1587
851bc33ff545
Less annoying directory completion (see http://bugs.debian.org/343458)
Daniel Kobras <kobras@debian.org>
parents:
1556
diff
changeset
|
135 _hg_repos |
1151
10b4f2a5ce17
teach bash_completion about --cwd
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
1150
diff
changeset
|
136 return |
10b4f2a5ce17
teach bash_completion about --cwd
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
1150
diff
changeset
|
137 ;; |
10b4f2a5ce17
teach bash_completion about --cwd
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
1150
diff
changeset
|
138 --cwd) |
1587
851bc33ff545
Less annoying directory completion (see http://bugs.debian.org/343458)
Daniel Kobras <kobras@debian.org>
parents:
1556
diff
changeset
|
139 # Stick with default bash completion |
1151
10b4f2a5ce17
teach bash_completion about --cwd
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
1150
diff
changeset
|
140 return |
10b4f2a5ce17
teach bash_completion about --cwd
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
1150
diff
changeset
|
141 ;; |
10b4f2a5ce17
teach bash_completion about --cwd
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
1150
diff
changeset
|
142 esac |
916 | 143 |
144 if [ -z "$cmd" ] || [ $COMP_CWORD -eq $i ]; then | |
145 _hg_commands | |
146 return | |
147 fi | |
148 | |
1150
4ee09418c8e5
bash_completion: better handling of aliases
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
1149
diff
changeset
|
149 # canonicalize command name |
1684
cf930b2452d3
Cleanup of spacing in bash_completion
Thomas Arendsen Hein <thomas@intevation.de>
parents:
1683
diff
changeset
|
150 cmd=$("$hg" -q help "$cmd" 2>/dev/null | sed -e 's/^hg //; s/ .*//; 1q') |
1150
4ee09418c8e5
bash_completion: better handling of aliases
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
1149
diff
changeset
|
151 |
916 | 152 if [ "$cmd" != status ] && [ "$prev" = -r ] || [ "$prev" = --rev ]; then |
153 _hg_tags | |
154 return | |
155 fi | |
156 | |
157 case "$cmd" in | |
158 help) | |
159 _hg_commands | |
160 ;; | |
1150
4ee09418c8e5
bash_completion: better handling of aliases
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
1149
diff
changeset
|
161 export|manifest|update) |
916 | 162 _hg_tags |
163 ;; | |
1150
4ee09418c8e5
bash_completion: better handling of aliases
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
1149
diff
changeset
|
164 pull|push|outgoing|incoming) |
916 | 165 _hg_paths |
1587
851bc33ff545
Less annoying directory completion (see http://bugs.debian.org/343458)
Daniel Kobras <kobras@debian.org>
parents:
1556
diff
changeset
|
166 _hg_repos |
916 | 167 ;; |
168 paths) | |
169 _hg_paths | |
170 ;; | |
935
925563ff1b18
bash: Add smarter completion of add/commit/remove/forget/diff/revert
mpm@selenic.com
parents:
929
diff
changeset
|
171 add) |
925563ff1b18
bash: Add smarter completion of add/commit/remove/forget/diff/revert
mpm@selenic.com
parents:
929
diff
changeset
|
172 _hg_status "u" |
925563ff1b18
bash: Add smarter completion of add/commit/remove/forget/diff/revert
mpm@selenic.com
parents:
929
diff
changeset
|
173 ;; |
1150
4ee09418c8e5
bash_completion: better handling of aliases
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
1149
diff
changeset
|
174 commit) |
1639
dbfc04a55607
_hg_status improvements in bash_completion:
Thomas Arendsen Hein <thomas@intevation.de>
parents:
1638
diff
changeset
|
175 _hg_status "mar" |
935
925563ff1b18
bash: Add smarter completion of add/commit/remove/forget/diff/revert
mpm@selenic.com
parents:
929
diff
changeset
|
176 ;; |
925563ff1b18
bash: Add smarter completion of add/commit/remove/forget/diff/revert
mpm@selenic.com
parents:
929
diff
changeset
|
177 remove) |
1639
dbfc04a55607
_hg_status improvements in bash_completion:
Thomas Arendsen Hein <thomas@intevation.de>
parents:
1638
diff
changeset
|
178 _hg_status "d" |
935
925563ff1b18
bash: Add smarter completion of add/commit/remove/forget/diff/revert
mpm@selenic.com
parents:
929
diff
changeset
|
179 ;; |
925563ff1b18
bash: Add smarter completion of add/commit/remove/forget/diff/revert
mpm@selenic.com
parents:
929
diff
changeset
|
180 forget) |
925563ff1b18
bash: Add smarter completion of add/commit/remove/forget/diff/revert
mpm@selenic.com
parents:
929
diff
changeset
|
181 _hg_status "a" |
925563ff1b18
bash: Add smarter completion of add/commit/remove/forget/diff/revert
mpm@selenic.com
parents:
929
diff
changeset
|
182 ;; |
925563ff1b18
bash: Add smarter completion of add/commit/remove/forget/diff/revert
mpm@selenic.com
parents:
929
diff
changeset
|
183 diff) |
1639
dbfc04a55607
_hg_status improvements in bash_completion:
Thomas Arendsen Hein <thomas@intevation.de>
parents:
1638
diff
changeset
|
184 _hg_status "mar" |
935
925563ff1b18
bash: Add smarter completion of add/commit/remove/forget/diff/revert
mpm@selenic.com
parents:
929
diff
changeset
|
185 ;; |
925563ff1b18
bash: Add smarter completion of add/commit/remove/forget/diff/revert
mpm@selenic.com
parents:
929
diff
changeset
|
186 revert) |
1639
dbfc04a55607
_hg_status improvements in bash_completion:
Thomas Arendsen Hein <thomas@intevation.de>
parents:
1638
diff
changeset
|
187 _hg_status "mard" |
935
925563ff1b18
bash: Add smarter completion of add/commit/remove/forget/diff/revert
mpm@selenic.com
parents:
929
diff
changeset
|
188 ;; |
916 | 189 clone) |
190 local count=$(_hg_count_non_option) | |
191 if [ $count = 1 ]; then | |
192 _hg_paths | |
193 fi | |
1684
cf930b2452d3
Cleanup of spacing in bash_completion
Thomas Arendsen Hein <thomas@intevation.de>
parents:
1683
diff
changeset
|
194 _hg_repos |
916 | 195 ;; |
1115
89f54e72581d
bash_completion: add debugindex and debugdata support
mpm@selenic.com
parents:
1018
diff
changeset
|
196 debugindex|debugindexdot) |
1684
cf930b2452d3
Cleanup of spacing in bash_completion
Thomas Arendsen Hein <thomas@intevation.de>
parents:
1683
diff
changeset
|
197 COMPREPLY=(${COMPREPLY[@]:-} $(compgen -f -X "!*.i" -- "$cur")) |
1115
89f54e72581d
bash_completion: add debugindex and debugdata support
mpm@selenic.com
parents:
1018
diff
changeset
|
198 ;; |
89f54e72581d
bash_completion: add debugindex and debugdata support
mpm@selenic.com
parents:
1018
diff
changeset
|
199 debugdata) |
1684
cf930b2452d3
Cleanup of spacing in bash_completion
Thomas Arendsen Hein <thomas@intevation.de>
parents:
1683
diff
changeset
|
200 COMPREPLY=(${COMPREPLY[@]:-} $(compgen -f -X "!*.d" -- "$cur")) |
1115
89f54e72581d
bash_completion: add debugindex and debugdata support
mpm@selenic.com
parents:
1018
diff
changeset
|
201 ;; |
916 | 202 esac |
203 | |
204 } | |
205 | |
1684
cf930b2452d3
Cleanup of spacing in bash_completion
Thomas Arendsen Hein <thomas@intevation.de>
parents:
1683
diff
changeset
|
206 complete -o bashdefault -o default -F _hg hg 2>/dev/null \ |
1153
fa9ae7df88a9
bash_completion: try to use bash3 features if they're available
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
1152
diff
changeset
|
207 || complete -o default -F _hg hg |