Merge pull request #40 from posener/tool
gocomplete: add go tool subcommands
This commit is contained in:
commit
e8d6fef54b
|
@ -126,11 +126,264 @@ func main() {
|
|||
Args: complete.PredictOr(anyPackage, ellipsis),
|
||||
}
|
||||
|
||||
doc := complete.Command{
|
||||
Flags: complete.Flags{
|
||||
"-c": complete.PredictNothing,
|
||||
"-cmd": complete.PredictNothing,
|
||||
"-u": complete.PredictNothing,
|
||||
},
|
||||
Args: anyPackage,
|
||||
}
|
||||
|
||||
tool := complete.Command{
|
||||
Flags: complete.Flags{
|
||||
"-n": complete.PredictNothing,
|
||||
},
|
||||
Args: complete.PredictAnything,
|
||||
Sub: complete.Commands{
|
||||
"addr2line": {
|
||||
Args: anyFile,
|
||||
},
|
||||
"asm": {
|
||||
Flags: complete.Flags{
|
||||
"-D": complete.PredictAnything,
|
||||
"-I": complete.PredictDirs("*"),
|
||||
"-S": complete.PredictNothing,
|
||||
"-debug": complete.PredictNothing,
|
||||
"-dynlink": complete.PredictNothing,
|
||||
"-e": complete.PredictNothing,
|
||||
"-o": anyFile,
|
||||
"-shared": complete.PredictNothing,
|
||||
"-trimpath": complete.PredictNothing,
|
||||
},
|
||||
Args: complete.PredictFiles("*.s"),
|
||||
},
|
||||
"cgo": {
|
||||
Flags: complete.Flags{
|
||||
"-debug-define": complete.PredictNothing,
|
||||
"debug-gcc": complete.PredictNothing,
|
||||
"dynimport": anyFile,
|
||||
"dynlinker": complete.PredictNothing,
|
||||
"dynout": anyFile,
|
||||
"dynpackage": anyPackage,
|
||||
"exportheader": complete.PredictDirs("*"),
|
||||
"gccgo": complete.PredictNothing,
|
||||
"gccgopkgpath": complete.PredictDirs("*"),
|
||||
"gccgoprefix": complete.PredictAnything,
|
||||
"godefs": complete.PredictNothing,
|
||||
"import_runtime_cgo": complete.PredictNothing,
|
||||
"import_syscall": complete.PredictNothing,
|
||||
"importpath": complete.PredictDirs("*"),
|
||||
"objdir": complete.PredictDirs("*"),
|
||||
"srcdir": complete.PredictDirs("*"),
|
||||
},
|
||||
Args: goFiles,
|
||||
},
|
||||
"compile": {
|
||||
Flags: complete.Flags{
|
||||
"-%": complete.PredictNothing,
|
||||
"-+": complete.PredictNothing,
|
||||
"-B": complete.PredictNothing,
|
||||
"-D": complete.PredictDirs("*"),
|
||||
"-E": complete.PredictNothing,
|
||||
"-I": complete.PredictDirs("*"),
|
||||
"-K": complete.PredictNothing,
|
||||
"-N": complete.PredictNothing,
|
||||
"-S": complete.PredictNothing,
|
||||
"-V": complete.PredictNothing,
|
||||
"-W": complete.PredictNothing,
|
||||
"-asmhdr": anyFile,
|
||||
"-bench": anyFile,
|
||||
"-buildid": complete.PredictNothing,
|
||||
"-complete": complete.PredictNothing,
|
||||
"-cpuprofile": anyFile,
|
||||
"-d": complete.PredictNothing,
|
||||
"-dynlink": complete.PredictNothing,
|
||||
"-e": complete.PredictNothing,
|
||||
"-f": complete.PredictNothing,
|
||||
"-h": complete.PredictNothing,
|
||||
"-i": complete.PredictNothing,
|
||||
"-importmap": complete.PredictAnything,
|
||||
"-installsuffix": complete.PredictAnything,
|
||||
"-j": complete.PredictNothing,
|
||||
"-l": complete.PredictNothing,
|
||||
"-largemodel": complete.PredictNothing,
|
||||
"-linkobj": anyFile,
|
||||
"-live": complete.PredictNothing,
|
||||
"-m": complete.PredictNothing,
|
||||
"-memprofile": complete.PredictNothing,
|
||||
"-memprofilerate": complete.PredictAnything,
|
||||
"-msan": complete.PredictNothing,
|
||||
"-nolocalimports": complete.PredictNothing,
|
||||
"-o": anyFile,
|
||||
"-p": complete.PredictDirs("*"),
|
||||
"-pack": complete.PredictNothing,
|
||||
"-r": complete.PredictNothing,
|
||||
"-race": complete.PredictNothing,
|
||||
"-s": complete.PredictNothing,
|
||||
"-shared": complete.PredictNothing,
|
||||
"-traceprofile": anyFile,
|
||||
"-trimpath": complete.PredictAnything,
|
||||
"-u": complete.PredictNothing,
|
||||
"-v": complete.PredictNothing,
|
||||
"-w": complete.PredictNothing,
|
||||
"-wb": complete.PredictNothing,
|
||||
},
|
||||
Args: goFiles,
|
||||
},
|
||||
"cover": {
|
||||
Flags: complete.Flags{
|
||||
"-func": complete.PredictAnything,
|
||||
"-html": complete.PredictAnything,
|
||||
"-mode": complete.PredictSet("set", "count", "atomic"),
|
||||
"-o": anyFile,
|
||||
"-var": complete.PredictAnything,
|
||||
},
|
||||
Args: anyFile,
|
||||
},
|
||||
"dist": {
|
||||
Sub: complete.Commands{
|
||||
"banner": {Flags: complete.Flags{"-v": complete.PredictNothing}},
|
||||
"bootstrap": {Flags: complete.Flags{"-v": complete.PredictNothing}},
|
||||
"clean": {Flags: complete.Flags{"-v": complete.PredictNothing}},
|
||||
"env": {Flags: complete.Flags{"-v": complete.PredictNothing, "-p": complete.PredictNothing}},
|
||||
"install": {Flags: complete.Flags{"-v": complete.PredictNothing}, Args: complete.PredictDirs("*")},
|
||||
"list": {Flags: complete.Flags{"-v": complete.PredictNothing, "-json": complete.PredictNothing}},
|
||||
"test": {Flags: complete.Flags{"-v": complete.PredictNothing, "-h": complete.PredictNothing}},
|
||||
"version": {Flags: complete.Flags{"-v": complete.PredictNothing}},
|
||||
},
|
||||
},
|
||||
"doc": doc,
|
||||
"fix": {
|
||||
Flags: complete.Flags{
|
||||
"-diff": complete.PredictNothing,
|
||||
"-force": complete.PredictAnything,
|
||||
"-r": complete.PredictSet("context", "gotypes", "netipv6zone", "printerconfig"),
|
||||
},
|
||||
Args: anyGo,
|
||||
},
|
||||
"link": {},
|
||||
"nm": {
|
||||
Flags: complete.Flags{
|
||||
"-n": complete.PredictNothing,
|
||||
"-size": complete.PredictNothing,
|
||||
"-sort": complete.PredictAnything,
|
||||
"-type": complete.PredictNothing,
|
||||
},
|
||||
Args: anyGo,
|
||||
},
|
||||
"objdump": {
|
||||
Flags: complete.Flags{
|
||||
"-s": complete.PredictAnything,
|
||||
},
|
||||
Args: anyFile,
|
||||
},
|
||||
"pack": {},
|
||||
"pprof": {
|
||||
Flags: complete.Flags{
|
||||
"-callgrind": complete.PredictNothing,
|
||||
"-disasm": complete.PredictAnything,
|
||||
"-dot": complete.PredictNothing,
|
||||
"-eog": complete.PredictNothing,
|
||||
"-evince": complete.PredictNothing,
|
||||
"-gif": complete.PredictNothing,
|
||||
"-gv": complete.PredictNothing,
|
||||
"-list": complete.PredictAnything,
|
||||
"-pdf": complete.PredictNothing,
|
||||
"-peek": complete.PredictAnything,
|
||||
"-png": complete.PredictNothing,
|
||||
"-proto": complete.PredictNothing,
|
||||
"-ps": complete.PredictNothing,
|
||||
"-raw": complete.PredictNothing,
|
||||
"-svg": complete.PredictNothing,
|
||||
"-tags": complete.PredictNothing,
|
||||
"-text": complete.PredictNothing,
|
||||
"-top": complete.PredictNothing,
|
||||
"-tree": complete.PredictNothing,
|
||||
"-web": complete.PredictNothing,
|
||||
"-weblist": complete.PredictAnything,
|
||||
"-output": anyFile,
|
||||
"-functions": complete.PredictNothing,
|
||||
"-files": complete.PredictNothing,
|
||||
"-lines": complete.PredictNothing,
|
||||
"-addresses": complete.PredictNothing,
|
||||
"-base": complete.PredictAnything,
|
||||
"-drop_negative": complete.PredictNothing,
|
||||
"-cum": complete.PredictNothing,
|
||||
"-seconds": complete.PredictAnything,
|
||||
"-nodecount": complete.PredictAnything,
|
||||
"-nodefraction": complete.PredictAnything,
|
||||
"-edgefraction": complete.PredictAnything,
|
||||
"-sample_index": complete.PredictNothing,
|
||||
"-mean": complete.PredictNothing,
|
||||
"-inuse_space": complete.PredictNothing,
|
||||
"-inuse_objects": complete.PredictNothing,
|
||||
"-alloc_space": complete.PredictNothing,
|
||||
"-alloc_objects": complete.PredictNothing,
|
||||
"-total_delay": complete.PredictNothing,
|
||||
"-contentions": complete.PredictNothing,
|
||||
"-mean_delay": complete.PredictNothing,
|
||||
"-runtime": complete.PredictNothing,
|
||||
"-focus": complete.PredictAnything,
|
||||
"-ignore": complete.PredictAnything,
|
||||
"-tagfocus": complete.PredictAnything,
|
||||
"-tagignore": complete.PredictAnything,
|
||||
"-call_tree": complete.PredictNothing,
|
||||
"-unit": complete.PredictAnything,
|
||||
"-divide_by": complete.PredictAnything,
|
||||
"-buildid": complete.PredictAnything,
|
||||
"-tools": complete.PredictDirs("*"),
|
||||
"-help": complete.PredictNothing,
|
||||
},
|
||||
Args: anyFile,
|
||||
},
|
||||
"tour": {
|
||||
Flags: complete.Flags{
|
||||
"-http": complete.PredictAnything,
|
||||
"-openbrowser": complete.PredictNothing,
|
||||
},
|
||||
},
|
||||
"trace": {
|
||||
Flags: complete.Flags{
|
||||
"-http": complete.PredictAnything,
|
||||
"-pprof": complete.PredictSet("net", "sync", "syscall", "sched"),
|
||||
},
|
||||
Args: anyFile,
|
||||
},
|
||||
"vet": {
|
||||
Flags: complete.Flags{
|
||||
"-all": complete.PredictNothing,
|
||||
"-asmdecl": complete.PredictNothing,
|
||||
"-assign": complete.PredictNothing,
|
||||
"-atomic": complete.PredictNothing,
|
||||
"-bool": complete.PredictNothing,
|
||||
"-buildtags": complete.PredictNothing,
|
||||
"-cgocall": complete.PredictNothing,
|
||||
"-composites": complete.PredictNothing,
|
||||
"-compositewhitelist": complete.PredictNothing,
|
||||
"-copylocks": complete.PredictNothing,
|
||||
"-httpresponse": complete.PredictNothing,
|
||||
"-lostcancel": complete.PredictNothing,
|
||||
"-methods": complete.PredictNothing,
|
||||
"-nilfunc": complete.PredictNothing,
|
||||
"-printf": complete.PredictNothing,
|
||||
"-printfuncs": complete.PredictAnything,
|
||||
"-rangeloops": complete.PredictNothing,
|
||||
"-shadow": complete.PredictNothing,
|
||||
"-shadowstrict": complete.PredictNothing,
|
||||
"-shift": complete.PredictNothing,
|
||||
"-structtags": complete.PredictNothing,
|
||||
"-tags": complete.PredictAnything,
|
||||
"-tests": complete.PredictNothing,
|
||||
"-unreachable": complete.PredictNothing,
|
||||
"-unsafeptr": complete.PredictNothing,
|
||||
"-unusedfuncs": complete.PredictAnything,
|
||||
"-unusedresult": complete.PredictNothing,
|
||||
"-unusedstringmethods": complete.PredictAnything,
|
||||
"-v": complete.PredictNothing,
|
||||
},
|
||||
Args: anyGo,
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
clean := complete.Command{
|
||||
|
@ -174,6 +427,7 @@ func main() {
|
|||
"generate": generate,
|
||||
"vet": vet,
|
||||
"list": list,
|
||||
"doc": doc,
|
||||
"tool": tool,
|
||||
"clean": clean,
|
||||
"env": env,
|
||||
|
|
Loading…
Reference in New Issue