sapling/tests/test-completion.t

384 lines
9.0 KiB
Perl
Raw Normal View History

2010-08-17 16:37:05 +04:00
Show all commands except debug commands
$ hg debugcomplete
add
addremove
annotate
archive
backout
bisect
bookmarks
2010-08-17 16:37:05 +04:00
branch
branches
bundle
cat
clone
commit
config
2010-08-17 16:37:05 +04:00
copy
diff
export
files
2010-08-17 16:37:05 +04:00
forget
2011-10-13 03:45:36 +04:00
graft
2010-08-17 16:37:05 +04:00
grep
heads
help
identify
import
incoming
init
locate
log
manifest
merge
outgoing
parents
paths
phase
2010-08-17 16:37:05 +04:00
pull
push
recover
remove
rename
resolve
revert
rollback
root
serve
status
summary
tag
tags
tip
unbundle
update
verify
version
Show all commands that start with "a"
$ hg debugcomplete a
add
addremove
annotate
archive
Do not show debug commands if there are other candidates
$ hg debugcomplete d
diff
Show debug commands if there are no other candidates
$ hg debugcomplete debug
debugancestor
debugapplystreamclonebundle
2010-08-17 16:37:05 +04:00
debugbuilddag
debugbundle
2010-08-17 16:37:05 +04:00
debugcheckstate
debugcolor
2010-08-17 16:37:05 +04:00
debugcommands
debugcomplete
debugconfig
debugcreatestreamclonebundle
2010-08-17 16:37:05 +04:00
debugdag
debugdata
debugdate
debugdeltachain
debugdirstate
debugdiscovery
debugextensions
debugfileset
2010-08-17 16:37:05 +04:00
debugfsinfo
debuggetbundle
debugignore
2010-08-17 16:37:05 +04:00
debugindex
debugindexdot
debuginstall
debugknown
debuglabelcomplete
debuglocks
debugmergestate
debugnamecomplete
debugobsolete
debugpathcomplete
debugpickmergetool
2010-08-17 16:37:05 +04:00
debugpushkey
2012-03-12 22:37:39 +04:00
debugpvec
debugrebuilddirstate
debugrebuildfncache
2010-08-17 16:37:05 +04:00
debugrename
debugrevlog
2010-08-17 16:37:05 +04:00
debugrevspec
debugsetparents
debugssl
2010-08-17 16:37:05 +04:00
debugsub
debugsuccessorssets
debugtemplate
debugupdatecaches
debugupgraderepo
2010-08-17 16:37:05 +04:00
debugwalk
debugwireargs
2010-08-17 16:37:05 +04:00
Do not show the alias of a debug command if there are other candidates
(this should hide rawcommit)
$ hg debugcomplete r
recover
remove
rename
resolve
revert
rollback
root
Show the alias of a debug command if there are no other candidates
$ hg debugcomplete rawc
Show the global options
$ hg debugcomplete --options | sort
--color
2010-08-17 16:37:05 +04:00
--config
--cwd
--debug
--debugger
--encoding
--encodingmode
--help
--hidden
2010-08-17 16:37:05 +04:00
--noninteractive
--pager
2010-08-17 16:37:05 +04:00
--profile
--quiet
--repository
--time
--traceback
--verbose
--version
-R
-h
-q
-v
-y
Show the options for the "serve" command
$ hg debugcomplete --options serve | sort
--accesslog
--address
--certificate
--cmdserver
--color
2010-08-17 16:37:05 +04:00
--config
--cwd
--daemon
--daemon-postexec
2010-08-17 16:37:05 +04:00
--debug
--debugger
--encoding
--encodingmode
--errorlog
--help
--hidden
2010-08-17 16:37:05 +04:00
--ipv6
--name
--noninteractive
--pager
2010-08-17 16:37:05 +04:00
--pid-file
--port
--prefix
--profile
--quiet
--repository
--stdio
--style
--subrepos
2010-08-17 16:37:05 +04:00
--templates
--time
--traceback
--verbose
--version
--web-conf
-6
-A
-E
-R
-S
2010-08-17 16:37:05 +04:00
-a
-d
-h
-n
-p
-q
-t
-v
-y
Show an error if we use --options with an ambiguous abbreviation
$ hg debugcomplete --options s
hg: command 's' is ambiguous:
serve showconfig status summary
2010-09-17 02:51:32 +04:00
[255]
2010-08-17 16:37:05 +04:00
Show all commands + options
$ hg debugcommands
add: include, exclude, subrepos, dry-run
annotate: rev, follow, no-follow, text, user, file, date, number, changeset, line-number, skip, ignore-all-space, ignore-space-change, ignore-blank-lines, ignore-space-at-eol, include, exclude, template
clone: noupdate, updaterev, rev, branch, pull, uncompressed, ssh, remotecmd, insecure
commit: addremove, close-branch, amend, secret, edit, interactive, include, exclude, message, logfile, date, user, subrepos
diff: rev, change, text, git, binary, nodates, noprefix, show-function, reverse, ignore-all-space, ignore-space-change, ignore-blank-lines, ignore-space-at-eol, unified, stat, root, include, exclude, subrepos
export: output, switch-parent, rev, text, git, binary, nodates
2010-08-17 16:37:05 +04:00
forget: include, exclude
init: ssh, remotecmd, insecure
log: follow, follow-first, date, copies, keyword, rev, removed, only-merges, user, only-branch, branch, prune, patch, git, limit, no-merges, stat, graph, style, template, include, exclude
merge: force, rev, preview, tool
pull: update, force, rev, bookmark, branch, ssh, remotecmd, insecure
push: force, rev, bookmark, branch, new-branch, pushvars, ssh, remotecmd, insecure
remove: after, force, subrepos, include, exclude
serve: accesslog, daemon, daemon-postexec, errorlog, port, address, prefix, name, web-conf, webdir-conf, pid-file, stdio, cmdserver, templates, style, ipv6, certificate, subrepos
status: all, modified, added, removed, deleted, clean, unknown, ignored, no-status, terse, copies, print0, rev, change, include, exclude, subrepos, template
2010-08-17 16:37:05 +04:00
summary: remote
update: clean, check, merge, date, rev, tool
addremove: similarity, subrepos, include, exclude, dry-run
2010-09-21 00:33:12 +04:00
archive: no-decode, prefix, rev, type, subrepos, include, exclude
backout: merge, commit, no-commit, parent, rev, edit, tool, include, exclude, message, logfile, date, user
bisect: reset, good, bad, skip, extend, command, noupdate
2014-10-02 19:43:22 +04:00
bookmarks: force, rev, delete, rename, inactive, template
2010-08-17 16:37:05 +04:00
branch: force, clean
2014-10-02 17:59:56 +04:00
branches: active, closed, template
bundle: force, rev, branch, base, all, type, ssh, remotecmd, insecure
cat: output, rev, decode, include, exclude, template
config: untrusted, edit, local, global, template
2010-08-17 16:37:05 +04:00
copy: after, force, include, exclude, dry-run
debugancestor:
debugapplystreamclonebundle:
debugbuilddag: mergeable-file, overwritten-file, new-file
debugbundle: all, part-type, spec
2010-08-17 16:37:05 +04:00
debugcheckstate:
debugcolor: style
2010-08-17 16:37:05 +04:00
debugcommands:
debugcomplete: options
debugcreatestreamclonebundle:
2010-08-17 16:37:05 +04:00
debugdag: tags, branches, dots, spaces
debugdata: changelog, manifest, dir
2010-08-17 16:37:05 +04:00
debugdate: extended
debugdeltachain: changelog, manifest, dir, template
debugdirstate: nodates, datesort
debugdiscovery: old, nonheads, ssh, remotecmd, insecure
debugextensions: template
debugfileset: rev
2010-08-17 16:37:05 +04:00
debugfsinfo:
debuggetbundle: head, common, type
debugignore:
debugindex: changelog, manifest, dir, format
debugindexdot: changelog, manifest, dir
debuginstall: template
debugknown:
debuglabelcomplete:
debuglocks: force-lock, force-wlock
debugmergestate:
debugnamecomplete:
debugobsolete: flags, record-parents, rev, exclusive, index, delete, date, user, template
debugpathcomplete: full, normal, added, removed
debugpickmergetool: rev, changedelete, include, exclude, tool
2010-08-17 16:37:05 +04:00
debugpushkey:
2012-03-12 22:37:39 +04:00
debugpvec:
debugrebuilddirstate: rev, minimal
debugrebuildfncache:
2010-08-17 16:37:05 +04:00
debugrename: rev
debugrevlog: changelog, manifest, dir, dump
debugrevspec: optimize, show-revs, show-set, show-stage, no-optimized, verify-optimized
2010-08-17 16:37:05 +04:00
debugsetparents:
debugssl:
2010-08-17 16:37:05 +04:00
debugsub: rev
debugsuccessorssets: closest
debugtemplate: rev, define
debugupdatecaches:
debugupgraderepo: optimize, run
2010-08-17 16:37:05 +04:00
debugwalk: include, exclude
debugwireargs: three, four, five, ssh, remotecmd, insecure
files: rev, print0, include, exclude, template, subrepos
graft: rev, continue, edit, log, force, currentdate, currentuser, date, user, tool, dry-run
grep: print0, all, text, follow, ignore-case, files-with-matches, line-number, rev, user, date, template, include, exclude
2010-08-17 16:37:05 +04:00
heads: rev, topo, active, closed, style, template
help: extension, command, keyword, system
identify: add template support This is based on a patch proposed last year by Mathias De Maré[1], with a few changes. - Tags and bookmarks are now formatted lists, for more flexible queries. - The templater is populated whether or not [-nibtB] is specified. (Plain output is unchanged.) This seems more consistent with other templated commands. - The 'id' property is a string, instead of a list. - The parents of 'wdir()' have their own list of attributes. I left 'id' as a string because it seems very useful for generating version info. It's also a bit strange because the value and meaning changes depending on whether or not --debug is passed (short vs full hash), whether the revision is a merge or not (one hash or two, separated by a '+'), the working directory or not (node vs p1node), and local or not (remote defaults to tip, and never has '+'). The equivalent string built with {rev} seems much less useful, and I couldn't think of a reasonable name, so I left it out. The discussion seemed to be pointing towards having a list of nodes, with more than one entry for a merge. It seems simpler to give the nodes a name, and use {node} for the actual commit probed, especially now that there is a virtual node for 'wdir()'. Yuya mentioned using fm.nested() in that thread, so I did for the parent nodes. I'm not sure if the plan is to fill in all of the context attributes in these items, or if these nested items should simply be made {p1node} and {p1rev}. I used ':' as the tag separator for consistency with {tags} in the log templater. Likewise, bookmarks are separated by a space for consistency with the corresponding log template. [1] https://www.mercurial-scm.org/pipermail/mercurial-devel/2016-August/087039.html
2017-06-25 06:09:21 +03:00
identify: rev, num, id, branch, tags, bookmarks, ssh, remotecmd, insecure, template
import: strip, base, edit, force, no-commit, bypass, partial, exact, prefix, import-branch, message, logfile, date, user, similarity
incoming: force, newest-first, bundle, rev, bookmarks, branch, patch, git, limit, no-merges, stat, graph, style, template, ssh, remotecmd, insecure, subrepos
2010-08-17 16:37:05 +04:00
locate: rev, print0, fullpath, include, exclude
manifest: rev, all, template
outgoing: force, rev, newest-first, bookmarks, branch, patch, git, limit, no-merges, stat, graph, style, template, ssh, remotecmd, insecure, subrepos
2010-08-17 16:37:05 +04:00
parents: rev, style, template
paths: template
phase: public, draft, secret, force, rev
2010-08-17 16:37:05 +04:00
recover:
rename: after, force, include, exclude, dry-run
resolve: all, list, mark, unmark, no-status, tool, include, exclude, template
revert: all, date, rev, no-backup, interactive, include, exclude, dry-run
rollback: dry-run, force
2010-08-17 16:37:05 +04:00
root:
tag: force, local, rev, remove, edit, message, date, user
tags: template
2010-08-17 16:37:05 +04:00
tip: patch, git, style, template
unbundle: update
verify:
version: template
$ hg init a
$ cd a
$ echo fee > fee
$ hg ci -q -Amfee
$ hg tag fee
$ mkdir fie
$ echo dead > fie/dead
$ echo live > fie/live
$ hg bookmark fo
$ hg branch -q fie
$ hg ci -q -Amfie
$ echo fo > fo
$ hg branch -qf default
$ hg ci -q -Amfo
$ echo Fum > Fum
$ hg ci -q -AmFum
$ hg bookmark Fum
Test debugpathcomplete
$ hg debugpathcomplete f
fee
fie
fo
$ hg debugpathcomplete -f f
fee
fie/dead
fie/live
fo
$ hg rm Fum
$ hg debugpathcomplete -r F
Fum
Test debugnamecomplete
$ hg debugnamecomplete
Fum
default
fee
fie
fo
tip
$ hg debugnamecomplete f
fee
fie
fo
Test debuglabelcomplete, a deprecated name for debugnamecomplete that is still
used for completions in some shells.
$ hg debuglabelcomplete
Fum
default
fee
fie
fo
tip
$ hg debuglabelcomplete f
fee
fie
fo