aboutsummaryrefslogtreecommitdiffhomepage
path: root/share/completions/hg.fish
diff options
context:
space:
mode:
authorGravatar axel <axel@liljencrantz.se>2007-01-25 23:28:36 +1000
committerGravatar axel <axel@liljencrantz.se>2007-01-25 23:28:36 +1000
commit350b637a1afb39b9d7a20eed9e30c57b2e2120ee (patch)
treea9bf6f947d4e1fe7f60c3abce03b149a33c79bc4 /share/completions/hg.fish
parentf917dccf6ff53ee0223b04813303787f18938538 (diff)
Generalize make_mercurial_completions.fish a bit so it can be used with darcs as well. Add make targets for creating darcs/hg completions.
darcs-hash:20070125132836-ac50b-0e7a728e4be2386d696094a414a1c8bcaee771fc.gz
Diffstat (limited to 'share/completions/hg.fish')
-rw-r--r--share/completions/hg.fish370
1 files changed, 189 insertions, 181 deletions
diff --git a/share/completions/hg.fish b/share/completions/hg.fish
index 364fbd70..485e9195 100644
--- a/share/completions/hg.fish
+++ b/share/completions/hg.fish
@@ -1,11 +1,16 @@
#
-# Completions for the hg command (Mercurial)
+# Completions for the hg command
# This file was autogenerated by the file make_mercurial_completions.fish
# which is shipped with the fish source code
#
#
+# Completions from commandline
+#
+
+
+#
# subcommands
#
@@ -57,150 +62,150 @@ complete -c hg -n '__fish_use_subcommand' -x -a version --description 'output ve
# Completions for the 'add' subcommand
#
-complete -c hg -s I -l include --description 'include names matching the given patterns'
-complete -c hg -s X -l exclude --description 'exclude names matching the given patterns'
-complete -c hg -s n -l dry-run --description 'do not perform actions, just print output'
+complete -c hg -n 'contains add (commandline -poc)' -s I -l include --description 'Include names matching the given patterns'
+complete -c hg -n 'contains add (commandline -poc)' -s X -l exclude --description 'Exclude names matching the given patterns'
+complete -c hg -n 'contains add (commandline -poc)' -s -l dry-run --description 'Do not perform actions, just print output'
#
# Completions for the 'annotate' subcommand
#
-complete -c hg -s r -l rev --description 'annotate the specified revision'
-complete -c hg -s a -l text --description 'treat all files as text'
-complete -c hg -s u -l user --description 'list the author'
-complete -c hg -s d -l date --description 'list the date'
-complete -c hg -s n -l number --description 'list the revision number (default)'
-complete -c hg -s c -l changeset --description 'list the changeset'
-complete -c hg -s I -l include --description 'include names matching the given patterns'
-complete -c hg -s X -l exclude --description 'exclude names matching the given patterns'
+complete -c hg -n 'contains annotate (commandline -poc)' -s r -l rev --description 'Annotate the specified revision'
+complete -c hg -n 'contains annotate (commandline -poc)' -s a -l text --description 'Treat all files as text'
+complete -c hg -n 'contains annotate (commandline -poc)' -s u -l user --description 'List the author'
+complete -c hg -n 'contains annotate (commandline -poc)' -s d -l date --description 'List the date'
+complete -c hg -n 'contains annotate (commandline -poc)' -s -l number --description 'List the revision number (default)'
+complete -c hg -n 'contains annotate (commandline -poc)' -s c -l changeset --description 'List the changeset'
+complete -c hg -n 'contains annotate (commandline -poc)' -s I -l include --description 'Include names matching the given patterns'
+complete -c hg -n 'contains annotate (commandline -poc)' -s X -l exclude --description 'Exclude names matching the given patterns'
#
# Completions for the 'archive' subcommand
#
-complete -c hg -s p -l prefix --description 'directory prefix for files in archive'
-complete -c hg -s r -l rev --description 'revision to distribute'
-complete -c hg -s t -l type --description 'type of distribution to create'
-complete -c hg -s I -l include --description 'include names matching the given patterns'
-complete -c hg -s X -l exclude --description 'exclude names matching the given patterns'
-complete -c hg -l no-decode --description 'do not pass files through decoders'
+complete -c hg -n 'contains archive (commandline -poc)' -l no-decode --description 'Do not pass files through decoders'
+complete -c hg -n 'contains archive (commandline -poc)' -s p -l prefix --description 'Directory prefix for files in archive'
+complete -c hg -n 'contains archive (commandline -poc)' -s r -l rev --description 'Revision to distribute'
+complete -c hg -n 'contains archive (commandline -poc)' -s t -l type --description 'Type of distribution to create'
+complete -c hg -n 'contains archive (commandline -poc)' -s I -l include --description 'Include names matching the given patterns'
+complete -c hg -n 'contains archive (commandline -poc)' -s X -l exclude --description 'Exclude names matching the given patterns'
#
# Completions for the 'backout' subcommand
#
-complete -c hg -s m -l message --description 'use <text> as commit message'
-complete -c hg -s l -l logfile --description 'read commit message from <file>'
-complete -c hg -s d -l date --description 'record datecode as commit date'
-complete -c hg -s u -l user --description 'record user as committer'
-complete -c hg -s I -l include --description 'include names matching the given patterns'
-complete -c hg -s X -l exclude --description 'exclude names matching the given patterns'
-complete -c hg -l merge --description 'merge with old dirstate parent after backout'
-complete -c hg -l parent --description 'parent to choose when backing out merge'
+complete -c hg -n 'contains backout (commandline -poc)' -l merge --description 'Merge with old dirstate parent after backout'
+complete -c hg -n 'contains backout (commandline -poc)' -s m -l message --description 'Use <text> as commit message'
+complete -c hg -n 'contains backout (commandline -poc)' -s l -l logfile --description 'Read commit message from <file>'
+complete -c hg -n 'contains backout (commandline -poc)' -s d -l date --description 'Record datecode as commit date'
+complete -c hg -n 'contains backout (commandline -poc)' -l parent --description 'Parent to choose when backing out merge'
+complete -c hg -n 'contains backout (commandline -poc)' -s u -l user --description 'Record user as committer'
+complete -c hg -n 'contains backout (commandline -poc)' -s I -l include --description 'Include names matching the given patterns'
+complete -c hg -n 'contains backout (commandline -poc)' -s X -l exclude --description 'Exclude names matching the given patterns'
#
# Completions for the 'bundle' subcommand
#
-complete -c hg -s f -l force --description 'run even when remote repository is unrelated'
+complete -c hg -n 'contains bundle (commandline -poc)' -s f -l force --description 'Run even when remote repository is unrelated'
#
# Completions for the 'cat' subcommand
#
-complete -c hg -s o -l output --description 'print output to file with formatted name'
-complete -c hg -s r -l rev --description 'print the given revision'
-complete -c hg -s I -l include --description 'include names matching the given patterns'
-complete -c hg -s X -l exclude --description 'exclude names matching the given patterns'
+complete -c hg -n 'contains cat (commandline -poc)' -s o -l output --description 'Print output to file with formatted name'
+complete -c hg -n 'contains cat (commandline -poc)' -s r -l rev --description 'Print the given revision'
+complete -c hg -n 'contains cat (commandline -poc)' -s I -l include --description 'Include names matching the given patterns'
+complete -c hg -n 'contains cat (commandline -poc)' -s X -l exclude --description 'Exclude names matching the given patterns'
#
# Completions for the 'clone' subcommand
#
-complete -c hg -s U -l noupdate --description 'do not update the new working directory'
-complete -c hg -s r -l rev --description 'a changeset you would like to have after cloning'
-complete -c hg -s e -l ssh --description 'specify ssh command to use'
-complete -c hg -l pull --description 'use pull protocol to copy metadata'
-complete -c hg -l uncompressed --description 'use uncompressed transfer (fast over LAN)'
-complete -c hg -l remotecmd --description 'specify hg command to run on the remote side'
+complete -c hg -n 'contains clone (commandline -poc)' -s U -l noupdate --description 'Do not update the new working directory'
+complete -c hg -n 'contains clone (commandline -poc)' -s r -l rev --description 'A changeset you would like to have after cloning'
+complete -c hg -n 'contains clone (commandline -poc)' -l pull --description 'Use pull protocol to copy metadata'
+complete -c hg -n 'contains clone (commandline -poc)' -l uncompressed --description 'Use uncompressed transfer (fast over LAN)'
+complete -c hg -n 'contains clone (commandline -poc)' -s -l ssh --description 'Specify ssh command to use'
+complete -c hg -n 'contains clone (commandline -poc)' -l remotecmd --description 'Specify hg command to run on the remote side'
#
# Completions for the 'commit' subcommand
#
-complete -c hg -s A -l addremove --description 'mark new/missing files as added/removed before committing'
-complete -c hg -s m -l message --description 'use <text> as commit message'
-complete -c hg -s l -l logfile --description 'read the commit message from <file>'
-complete -c hg -s d -l date --description 'record datecode as commit date'
-complete -c hg -s u -l user --description 'record user as commiter'
-complete -c hg -s I -l include --description 'include names matching the given patterns'
-complete -c hg -s X -l exclude --description 'exclude names matching the given patterns'
+complete -c hg -n 'contains commit (commandline -poc)' -s A -l addremove --description 'Mark new/missing files as added/removed before committing'
+complete -c hg -n 'contains commit (commandline -poc)' -s m -l message --description 'Use <text> as commit message'
+complete -c hg -n 'contains commit (commandline -poc)' -s l -l logfile --description 'Read the commit message from <file>'
+complete -c hg -n 'contains commit (commandline -poc)' -s d -l date --description 'Record datecode as commit date'
+complete -c hg -n 'contains commit (commandline -poc)' -s u -l user --description 'Record user as commiter'
+complete -c hg -n 'contains commit (commandline -poc)' -s I -l include --description 'Include names matching the given patterns'
+complete -c hg -n 'contains commit (commandline -poc)' -s X -l exclude --description 'Exclude names matching the given patterns'
#
# Completions for the 'copy' subcommand
#
-complete -c hg -s A -l after --description 'record a copy that has already occurred'
-complete -c hg -s f -l force --description 'forcibly copy over an existing managed file'
-complete -c hg -s I -l include --description 'include names matching the given patterns'
-complete -c hg -s X -l exclude --description 'exclude names matching the given patterns'
-complete -c hg -s n -l dry-run --description 'do not perform actions, just print output'
+complete -c hg -n 'contains copy (commandline -poc)' -s A -l after --description 'Record a copy that has already occurred'
+complete -c hg -n 'contains copy (commandline -poc)' -s f -l force --description 'Forcibly copy over an existing managed file'
+complete -c hg -n 'contains copy (commandline -poc)' -s I -l include --description 'Include names matching the given patterns'
+complete -c hg -n 'contains copy (commandline -poc)' -s X -l exclude --description 'Exclude names matching the given patterns'
+complete -c hg -n 'contains copy (commandline -poc)' -s -l dry-run --description 'Do not perform actions, just print output'
#
# Completions for the 'diff' subcommand
#
-complete -c hg -s r -l rev --description 'revision'
-complete -c hg -s a -l text --description 'treat all files as text'
-complete -c hg -s p -l show-function --description 'show which function each change is in'
-complete -c hg -s w -l ignore-all-space --description 'ignore white space when comparing lines'
-complete -c hg -s b -l ignore-space-change --description 'ignore changes in the amount of white space'
-complete -c hg -s B -l ignore-blank-lines --description 'ignore changes whose lines are all blank'
-complete -c hg -s I -l include --description 'include names matching the given patterns'
-complete -c hg -s X -l exclude --description 'exclude names matching the given patterns'
+complete -c hg -n 'contains diff (commandline -poc)' -s r -l rev --description 'Revision'
+complete -c hg -n 'contains diff (commandline -poc)' -s a -l text --description 'Treat all files as text'
+complete -c hg -n 'contains diff (commandline -poc)' -s p -l show-function --description 'Show which function each change is in'
+complete -c hg -n 'contains diff (commandline -poc)' -s w -l ignore-all-space --description 'Ignore white space when comparing lines'
+complete -c hg -n 'contains diff (commandline -poc)' -s b -l ignore-space-change --description 'Ignore changes in the amount of white space'
+complete -c hg -n 'contains diff (commandline -poc)' -s B -l ignore-blank-lines --description 'Ignore changes whose lines are all blank'
+complete -c hg -n 'contains diff (commandline -poc)' -s I -l include --description 'Include names matching the given patterns'
+complete -c hg -n 'contains diff (commandline -poc)' -s X -l exclude --description 'Exclude names matching the given patterns'
#
# Completions for the 'export' subcommand
#
-complete -c hg -s o -l output --description 'print output to file with formatted name'
-complete -c hg -s a -l text --description 'treat all files as text'
-complete -c hg -l switch-parent --description 'diff against the second parent'
+complete -c hg -n 'contains export (commandline -poc)' -s o -l output --description 'Print output to file with formatted name'
+complete -c hg -n 'contains export (commandline -poc)' -s a -l text --description 'Treat all files as text'
+complete -c hg -n 'contains export (commandline -poc)' -l switch-parent --description 'Diff against the second parent'
#
# Completions for the 'grep' subcommand
#
-complete -c hg -s 0 -l print0 --description 'end fields with NUL'
-complete -c hg -s i -l ignore-case --description 'ignore case when matching'
-complete -c hg -s l -l files-with-matches --description 'print only filenames and revs that match'
-complete -c hg -s n -l line-number --description 'print matching line numbers'
-complete -c hg -s r -l rev --description 'search in given revision range'
-complete -c hg -s u -l user --description 'print user who committed change'
-complete -c hg -s I -l include --description 'include names matching the given patterns'
-complete -c hg -s X -l exclude --description 'exclude names matching the given patterns'
-complete -c hg -l all --description 'print all revisions that match'
+complete -c hg -n 'contains grep (commandline -poc)' -s 0 -l print0 --description 'End fields with NUL'
+complete -c hg -n 'contains grep (commandline -poc)' -l all --description 'Print all revisions that match'
+complete -c hg -n 'contains grep (commandline -poc)' -s i -l ignore-case --description 'Ignore case when matching'
+complete -c hg -n 'contains grep (commandline -poc)' -s l -l files-with-matches --description 'Print only filenames and revs that match'
+complete -c hg -n 'contains grep (commandline -poc)' -s -l line-number --description 'Print matching line numbers'
+complete -c hg -n 'contains grep (commandline -poc)' -s r -l rev --description 'Search in given revision range'
+complete -c hg -n 'contains grep (commandline -poc)' -s u -l user --description 'Print user who committed change'
+complete -c hg -n 'contains grep (commandline -poc)' -s I -l include --description 'Include names matching the given patterns'
+complete -c hg -n 'contains grep (commandline -poc)' -s X -l exclude --description 'Exclude names matching the given patterns'
#
# Completions for the 'heads' subcommand
#
-complete -c hg -s b -l branches --description 'show branches'
-complete -c hg -s r -l rev --description 'show only heads which are descendants of rev'
-complete -c hg -l style --description 'display using template map file'
-complete -c hg -l template --description 'display with template'
+complete -c hg -n 'contains heads (commandline -poc)' -s b -l branches --description 'Show branches'
+complete -c hg -n 'contains heads (commandline -poc)' -l style --description 'Display using template map file'
+complete -c hg -n 'contains heads (commandline -poc)' -s r -l rev --description 'Show only heads which are descendants of rev'
+complete -c hg -n 'contains heads (commandline -poc)' -l template --description 'Display with template'
#
@@ -219,62 +224,62 @@ complete -c hg -l template --description 'display with template'
# Completions for the 'import' subcommand
#
-complete -c hg -s p -l strip --description 'directory strip option for patch. This has the same'
-complete -c hg -s m -l message --description 'use <text> as commit message'
-complete -c hg -s b -l base --description 'base path'
-complete -c hg -s f -l force --description 'skip check for outstanding uncommitted changes'
+complete -c hg -n 'contains import (commandline -poc)' -s p -l strip --description 'Directory strip option for patch. This has the same'
+complete -c hg -n 'contains import (commandline -poc)' -s m -l message --description 'Use <text> as commit message'
+complete -c hg -n 'contains import (commandline -poc)' -s b -l base --description 'Base path'
+complete -c hg -n 'contains import (commandline -poc)' -s f -l force --description 'Skip check for outstanding uncommitted changes'
#
# Completions for the 'incoming' subcommand
#
-complete -c hg -s M -l no-merges --description 'do not show merges'
-complete -c hg -s f -l force --description 'run even when remote repository is unrelated'
-complete -c hg -s n -l newest-first --description 'show newest record first'
-complete -c hg -s p -l patch --description 'show patch'
-complete -c hg -s r -l rev --description 'a specific revision you would like to pull'
-complete -c hg -s e -l ssh --description 'specify ssh command to use'
-complete -c hg -l style --description 'display using template map file'
-complete -c hg -l bundle --description 'file to store the bundles into'
-complete -c hg -l template --description 'display with template'
-complete -c hg -l remotecmd --description 'specify hg command to run on the remote side'
+complete -c hg -n 'contains incoming (commandline -poc)' -s M -l no-merges --description 'Do not show merges'
+complete -c hg -n 'contains incoming (commandline -poc)' -s f -l force --description 'Run even when remote repository is unrelated'
+complete -c hg -n 'contains incoming (commandline -poc)' -l style --description 'Display using template map file'
+complete -c hg -n 'contains incoming (commandline -poc)' -s -l newest-first --description 'Show newest record first'
+complete -c hg -n 'contains incoming (commandline -poc)' -l bundle --description 'File to store the bundles into'
+complete -c hg -n 'contains incoming (commandline -poc)' -s p -l patch --description 'Show patch'
+complete -c hg -n 'contains incoming (commandline -poc)' -s r -l rev --description 'A specific revision you would like to pull'
+complete -c hg -n 'contains incoming (commandline -poc)' -l template --description 'Display with template'
+complete -c hg -n 'contains incoming (commandline -poc)' -s -l ssh --description 'Specify ssh command to use'
+complete -c hg -n 'contains incoming (commandline -poc)' -l remotecmd --description 'Specify hg command to run on the remote side'
#
# Completions for the 'init' subcommand
#
-complete -c hg -s e -l ssh --description 'specify ssh command to use'
-complete -c hg -l remotecmd --description 'specify hg command to run on the remote side'
+complete -c hg -n 'contains init (commandline -poc)' -s -l ssh --description 'Specify ssh command to use'
+complete -c hg -n 'contains init (commandline -poc)' -l remotecmd --description 'Specify hg command to run on the remote side'
#
# Completions for the 'locate' subcommand
#
-complete -c hg -s r -l rev --description 'search the repository as it stood at rev'
-complete -c hg -s 0 -l print0 --description 'end filenames with NUL, for use with xargs'
-complete -c hg -s f -l fullpath --description 'print complete paths from the filesystem root'
-complete -c hg -s I -l include --description 'include names matching the given patterns'
-complete -c hg -s X -l exclude --description 'exclude names matching the given patterns'
+complete -c hg -n 'contains locate (commandline -poc)' -s r -l rev --description 'Search the repository as it stood at rev'
+complete -c hg -n 'contains locate (commandline -poc)' -s 0 -l print0 --description 'End filenames with NUL, for use with xargs'
+complete -c hg -n 'contains locate (commandline -poc)' -s f -l fullpath --description 'Print complete paths from the filesystem root'
+complete -c hg -n 'contains locate (commandline -poc)' -s I -l include --description 'Include names matching the given patterns'
+complete -c hg -n 'contains locate (commandline -poc)' -s X -l exclude --description 'Exclude names matching the given patterns'
#
# Completions for the 'log' subcommand
#
-complete -c hg -s b -l branches --description 'show branches'
-complete -c hg -s k -l keyword --description 'search for a keyword'
-complete -c hg -s l -l limit --description 'limit number of changes displayed'
-complete -c hg -s r -l rev --description 'show the specified revision or range'
-complete -c hg -s M -l no-merges --description 'do not show merges'
-complete -c hg -s m -l only-merges --description 'show only merges'
-complete -c hg -s p -l patch --description 'show patch'
-complete -c hg -s I -l include --description 'include names matching the given patterns'
-complete -c hg -s X -l exclude --description 'exclude names matching the given patterns'
-complete -c hg -l style --description 'display using template map file'
-complete -c hg -l template --description 'display with template'
+complete -c hg -n 'contains log (commandline -poc)' -s b -l branches --description 'Show branches'
+complete -c hg -n 'contains log (commandline -poc)' -s k -l keyword --description 'Search for a keyword'
+complete -c hg -n 'contains log (commandline -poc)' -s l -l limit --description 'Limit number of changes displayed'
+complete -c hg -n 'contains log (commandline -poc)' -s r -l rev --description 'Show the specified revision or range'
+complete -c hg -n 'contains log (commandline -poc)' -s M -l no-merges --description 'Do not show merges'
+complete -c hg -n 'contains log (commandline -poc)' -l style --description 'Display using template map file'
+complete -c hg -n 'contains log (commandline -poc)' -s m -l only-merges --description 'Show only merges'
+complete -c hg -n 'contains log (commandline -poc)' -s p -l patch --description 'Show patch'
+complete -c hg -n 'contains log (commandline -poc)' -l template --description 'Display with template'
+complete -c hg -n 'contains log (commandline -poc)' -s I -l include --description 'Include names matching the given patterns'
+complete -c hg -n 'contains log (commandline -poc)' -s X -l exclude --description 'Exclude names matching the given patterns'
#
@@ -287,33 +292,33 @@ complete -c hg -l template --description 'display with template'
# Completions for the 'merge' subcommand
#
-complete -c hg -s b -l branch --description 'merge with head of a specific branch'
-complete -c hg -s f -l force --description 'force a merge with outstanding changes'
+complete -c hg -n 'contains merge (commandline -poc)' -s b -l branch --description 'Merge with head of a specific branch'
+complete -c hg -n 'contains merge (commandline -poc)' -s f -l force --description 'Force a merge with outstanding changes'
#
# Completions for the 'outgoing' subcommand
#
-complete -c hg -s M -l no-merges --description 'do not show merges'
-complete -c hg -s f -l force --description 'run even when remote repository is unrelated'
-complete -c hg -s p -l patch --description 'show patch'
-complete -c hg -s r -l rev --description 'a specific revision you would like to push'
-complete -c hg -s n -l newest-first --description 'show newest record first'
-complete -c hg -s e -l ssh --description 'specify ssh command to use'
-complete -c hg -l style --description 'display using template map file'
-complete -c hg -l template --description 'display with template'
-complete -c hg -l remotecmd --description 'specify hg command to run on the remote side'
+complete -c hg -n 'contains outgoing (commandline -poc)' -s M -l no-merges --description 'Do not show merges'
+complete -c hg -n 'contains outgoing (commandline -poc)' -s f -l force --description 'Run even when remote repository is unrelated'
+complete -c hg -n 'contains outgoing (commandline -poc)' -s p -l patch --description 'Show patch'
+complete -c hg -n 'contains outgoing (commandline -poc)' -l style --description 'Display using template map file'
+complete -c hg -n 'contains outgoing (commandline -poc)' -s r -l rev --description 'A specific revision you would like to push'
+complete -c hg -n 'contains outgoing (commandline -poc)' -s -l newest-first --description 'Show newest record first'
+complete -c hg -n 'contains outgoing (commandline -poc)' -l template --description 'Display with template'
+complete -c hg -n 'contains outgoing (commandline -poc)' -s -l ssh --description 'Specify ssh command to use'
+complete -c hg -n 'contains outgoing (commandline -poc)' -l remotecmd --description 'Specify hg command to run on the remote side'
#
# Completions for the 'parents' subcommand
#
-complete -c hg -s b -l branches --description 'show branches'
-complete -c hg -s r -l rev --description 'show parents from the specified rev'
-complete -c hg -l style --description 'display using template map file'
-complete -c hg -l template --description 'display with template'
+complete -c hg -n 'contains parents (commandline -poc)' -s b -l branches --description 'Show branches'
+complete -c hg -n 'contains parents (commandline -poc)' -s r -l rev --description 'Show parents from the specified rev'
+complete -c hg -n 'contains parents (commandline -poc)' -l style --description 'Display using template map file'
+complete -c hg -n 'contains parents (commandline -poc)' -l template --description 'Display with template'
#
@@ -326,21 +331,21 @@ complete -c hg -l template --description 'display with template'
# Completions for the 'pull' subcommand
#
-complete -c hg -s u -l update --description 'update the working directory to tip after pull'
-complete -c hg -s e -l ssh --description 'specify ssh command to use'
-complete -c hg -s f -l force --description 'run even when remote repository is unrelated'
-complete -c hg -s r -l rev --description 'a specific revision you would like to pull'
-complete -c hg -l remotecmd --description 'specify hg command to run on the remote side'
+complete -c hg -n 'contains pull (commandline -poc)' -s u -l update --description 'Update the working directory to tip after pull'
+complete -c hg -n 'contains pull (commandline -poc)' -s -l ssh --description 'Specify ssh command to use'
+complete -c hg -n 'contains pull (commandline -poc)' -s f -l force --description 'Run even when remote repository is unrelated'
+complete -c hg -n 'contains pull (commandline -poc)' -s r -l rev --description 'A specific revision you would like to pull'
+complete -c hg -n 'contains pull (commandline -poc)' -l remotecmd --description 'Specify hg command to run on the remote side'
#
# Completions for the 'push' subcommand
#
-complete -c hg -s f -l force --description 'force push'
-complete -c hg -s e -l ssh --description 'specify ssh command to use'
-complete -c hg -s r -l rev --description 'a specific revision you would like to push'
-complete -c hg -l remotecmd --description 'specify hg command to run on the remote side'
+complete -c hg -n 'contains push (commandline -poc)' -s f -l force --description 'Force push'
+complete -c hg -n 'contains push (commandline -poc)' -s -l ssh --description 'Specify ssh command to use'
+complete -c hg -n 'contains push (commandline -poc)' -s r -l rev --description 'A specific revision you would like to push'
+complete -c hg -n 'contains push (commandline -poc)' -l remotecmd --description 'Specify hg command to run on the remote side'
#
@@ -353,32 +358,32 @@ complete -c hg -l remotecmd --description 'specify hg command to run on the remo
# Completions for the 'remove' subcommand
#
-complete -c hg -s A -l after --description 'record remove that has already occurred'
-complete -c hg -s f -l force --description 'remove file even if modified'
-complete -c hg -s I -l include --description 'include names matching the given patterns'
-complete -c hg -s X -l exclude --description 'exclude names matching the given patterns'
+complete -c hg -n 'contains remove (commandline -poc)' -s A -l after --description 'Record remove that has already occurred'
+complete -c hg -n 'contains remove (commandline -poc)' -s f -l force --description 'Remove file even if modified'
+complete -c hg -n 'contains remove (commandline -poc)' -s I -l include --description 'Include names matching the given patterns'
+complete -c hg -n 'contains remove (commandline -poc)' -s X -l exclude --description 'Exclude names matching the given patterns'
#
# Completions for the 'rename' subcommand
#
-complete -c hg -s A -l after --description 'record a rename that has already occurred'
-complete -c hg -s f -l force --description 'forcibly copy over an existing managed file'
-complete -c hg -s I -l include --description 'include names matching the given patterns'
-complete -c hg -s X -l exclude --description 'exclude names matching the given patterns'
-complete -c hg -s n -l dry-run --description 'do not perform actions, just print output'
+complete -c hg -n 'contains rename (commandline -poc)' -s A -l after --description 'Record a rename that has already occurred'
+complete -c hg -n 'contains rename (commandline -poc)' -s f -l force --description 'Forcibly copy over an existing managed file'
+complete -c hg -n 'contains rename (commandline -poc)' -s I -l include --description 'Include names matching the given patterns'
+complete -c hg -n 'contains rename (commandline -poc)' -s X -l exclude --description 'Exclude names matching the given patterns'
+complete -c hg -n 'contains rename (commandline -poc)' -s -l dry-run --description 'Do not perform actions, just print output'
#
# Completions for the 'revert' subcommand
#
-complete -c hg -s r -l rev --description 'revision to revert to'
-complete -c hg -s I -l include --description 'include names matching given patterns'
-complete -c hg -s X -l exclude --description 'exclude names matching given patterns'
-complete -c hg -s n -l dry-run --description 'do not perform actions, just print output'
-complete -c hg -l no-backup --description 'do not save backup copies of files'
+complete -c hg -n 'contains revert (commandline -poc)' -s r -l rev --description 'Revision to revert to'
+complete -c hg -n 'contains revert (commandline -poc)' -l no-backup --description 'Do not save backup copies of files'
+complete -c hg -n 'contains revert (commandline -poc)' -s I -l include --description 'Include names matching given patterns'
+complete -c hg -n 'contains revert (commandline -poc)' -s X -l exclude --description 'Exclude names matching given patterns'
+complete -c hg -n 'contains revert (commandline -poc)' -s -l dry-run --description 'Do not perform actions, just print output'
#
@@ -397,47 +402,47 @@ complete -c hg -l no-backup --description 'do not save backup copies of files'
# Completions for the 'serve' subcommand
#
-complete -c hg -s A -l accesslog --description 'name of access log file to write to'
-complete -c hg -s d -l daemon --description 'run server in background'
-complete -c hg -s E -l errorlog --description 'name of error log file to write to'
-complete -c hg -s p -l port --description 'port to use (default: 8000)'
-complete -c hg -s a -l address --description 'address to use'
-complete -c hg -s n -l name --description 'name to show in web pages (default: working dir)'
-complete -c hg -s t -l templates --description 'web templates to use'
-complete -c hg -s 6 -l ipv6 --description 'use IPv6 in addition to IPv4'
-complete -c hg -l daemon-pipefds --description 'used internally by daemon mode'
-complete -c hg -l webdir-conf --description 'name of the webdir config file (serve more than one repo)'
-complete -c hg -l pid-file --description 'name of file to write process ID to'
-complete -c hg -l stdio --description 'for remote clients'
-complete -c hg -l style --description 'template style to use'
+complete -c hg -n 'contains serve (commandline -poc)' -s A -l accesslog --description 'Name of access log file to write to'
+complete -c hg -n 'contains serve (commandline -poc)' -s d -l daemon --description 'Run server in background'
+complete -c hg -n 'contains serve (commandline -poc)' -l daemon-pipefds --description 'Used internally by daemon mode'
+complete -c hg -n 'contains serve (commandline -poc)' -s -l errorlog --description 'Name of error log file to write to'
+complete -c hg -n 'contains serve (commandline -poc)' -s p -l port --description 'Port to use (default: 8000)'
+complete -c hg -n 'contains serve (commandline -poc)' -s a -l address --description 'Address to use'
+complete -c hg -n 'contains serve (commandline -poc)' -s -l name --description 'Name to show in web pages (default: working dir)'
+complete -c hg -n 'contains serve (commandline -poc)' -l webdir-conf --description 'Name of the webdir config file (serve more than one repo)'
+complete -c hg -n 'contains serve (commandline -poc)' -l pid-file --description 'Name of file to write process ID to'
+complete -c hg -n 'contains serve (commandline -poc)' -l stdio --description 'For remote clients'
+complete -c hg -n 'contains serve (commandline -poc)' -s t -l templates --description 'Web templates to use'
+complete -c hg -n 'contains serve (commandline -poc)' -l style --description 'Template style to use'
+complete -c hg -n 'contains serve (commandline -poc)' -s 6 -l ipv6 --description 'Use IPv6 in addition to IPv4'
#
# Completions for the 'status' subcommand
#
-complete -c hg -s m -l modified --description 'show only modified files'
-complete -c hg -s a -l added --description 'show only added files'
-complete -c hg -s r -l removed --description 'show only removed files'
-complete -c hg -s d -l deleted --description 'show only deleted (but tracked) files'
-complete -c hg -s u -l unknown --description 'show only unknown (not tracked) files'
-complete -c hg -s i -l ignored --description 'show ignored files'
-complete -c hg -s n -l no-status --description 'hide status prefix'
-complete -c hg -s C -l copies --description 'show source of copied files'
-complete -c hg -s 0 -l print0 --description 'end filenames with NUL, for use with xargs'
-complete -c hg -s I -l include --description 'include names matching the given patterns'
-complete -c hg -s X -l exclude --description 'exclude names matching the given patterns'
+complete -c hg -n 'contains status (commandline -poc)' -s m -l modified --description 'Show only modified files'
+complete -c hg -n 'contains status (commandline -poc)' -s a -l added --description 'Show only added files'
+complete -c hg -n 'contains status (commandline -poc)' -s r -l removed --description 'Show only removed files'
+complete -c hg -n 'contains status (commandline -poc)' -s d -l deleted --description 'Show only deleted (but tracked) files'
+complete -c hg -n 'contains status (commandline -poc)' -s u -l unknown --description 'Show only unknown (not tracked) files'
+complete -c hg -n 'contains status (commandline -poc)' -s i -l ignored --description 'Show ignored files'
+complete -c hg -n 'contains status (commandline -poc)' -s -l no-status --description 'Hide status prefix'
+complete -c hg -n 'contains status (commandline -poc)' -s C -l copies --description 'Show source of copied files'
+complete -c hg -n 'contains status (commandline -poc)' -s 0 -l print0 --description 'End filenames with NUL, for use with xargs'
+complete -c hg -n 'contains status (commandline -poc)' -s I -l include --description 'Include names matching the given patterns'
+complete -c hg -n 'contains status (commandline -poc)' -s X -l exclude --description 'Exclude names matching the given patterns'
#
# Completions for the 'tag' subcommand
#
-complete -c hg -s l -l local --description 'make the tag local'
-complete -c hg -s m -l message --description 'message for tag commit log entry'
-complete -c hg -s d -l date --description 'record datecode as commit date'
-complete -c hg -s u -l user --description 'record user as commiter'
-complete -c hg -s r -l rev --description 'revision to tag'
+complete -c hg -n 'contains tag (commandline -poc)' -s l -l local --description 'Make the tag local'
+complete -c hg -n 'contains tag (commandline -poc)' -s m -l message --description 'Message for tag commit log entry'
+complete -c hg -n 'contains tag (commandline -poc)' -s d -l date --description 'Record datecode as commit date'
+complete -c hg -n 'contains tag (commandline -poc)' -s u -l user --description 'Record user as commiter'
+complete -c hg -n 'contains tag (commandline -poc)' -s r -l rev --description 'Revision to tag'
#
@@ -450,27 +455,27 @@ complete -c hg -s r -l rev --description 'revision to tag'
# Completions for the 'tip' subcommand
#
-complete -c hg -s b -l branches --description 'show branches'
-complete -c hg -s p -l patch --description 'show patch'
-complete -c hg -l style --description 'display using template map file'
-complete -c hg -l template --description 'display with template'
+complete -c hg -n 'contains tip (commandline -poc)' -s b -l branches --description 'Show branches'
+complete -c hg -n 'contains tip (commandline -poc)' -l style --description 'Display using template map file'
+complete -c hg -n 'contains tip (commandline -poc)' -s p -l patch --description 'Show patch'
+complete -c hg -n 'contains tip (commandline -poc)' -l template --description 'Display with template'
#
# Completions for the 'unbundle' subcommand
#
-complete -c hg -s u -l update --description 'update the working directory to tip after unbundle'
+complete -c hg -n 'contains unbundle (commandline -poc)' -s u -l update --description 'Update the working directory to tip after unbundle'
#
# Completions for the 'update' subcommand
#
-complete -c hg -s b -l branch --description 'checkout the head of a specific branch'
-complete -c hg -s m -l merge --description 'allow merging of branches (DEPRECATED)'
-complete -c hg -s C -l clean --description 'overwrite locally modified files'
-complete -c hg -s f -l force --description 'force a merge with outstanding changes'
+complete -c hg -n 'contains update (commandline -poc)' -s b -l branch --description 'Checkout the head of a specific branch'
+complete -c hg -n 'contains update (commandline -poc)' -s m -l merge --description 'Allow merging of branches (DEPRECATED)'
+complete -c hg -n 'contains update (commandline -poc)' -s C -l clean --description 'Overwrite locally modified files'
+complete -c hg -n 'contains update (commandline -poc)' -s f -l force --description 'Force a merge with outstanding changes'
#
@@ -483,3 +488,6 @@ complete -c hg -s f -l force --description 'force a merge with outstanding chang
# Completions for the 'version' subcommand
#
+
+
+