Zsh Mailing List Archive
Messages sorted by: Reverse Date, Date, Thread, Author

[PATCH 04/25] Remove variables and use their contents directly.



From: Doron Behar <doron.behar@xxxxxxxxx>

---
 Completion/Unix/Command/_luarocks | 108 +++++++++++++++++++-----------
 1 file changed, 69 insertions(+), 39 deletions(-)

diff --git a/Completion/Unix/Command/_luarocks b/Completion/Unix/Command/_luarocks
index bb5588251..b14f6a8b3 100644
--- a/Completion/Unix/Command/_luarocks
+++ b/Completion/Unix/Command/_luarocks
@@ -1,39 +1,5 @@
 #compdef luarocks
 
-# {{{ General options
-local general_options=(
-	'(--server --only-server)--server=[Fetch rocks/rockspecs from this server]:HOST:_hosts'
-	'(--server --only-server)--only-server=[Fetch rocks/rockspecs from this server only]:HOST:_hosts'
-	'--only-sources=[Restrict downloads to paths matching the given URL]:URL:_urls'
-	'--tree=[Which tree to operate on]:TREE:'
-	'--local[Use the tree in the user'"'"'s home directory]'
-	'--verbose[Display verbose output of commands executed]'
-	'--timeout=[Timeout on network operations]:SECONDS:{_message "timeout (seconds)"}'
-)
-# }}}
-# {{{ All commands
-local commands=(
-	'build[Build/compile a rock]'
-	'config[Query information about the LuaRocks configuration]'
-	'doc[Show documentation for an installed rock]'
-	'download[Download a specific rock file from a rocks server]'
-	'help[Help on commands]'
-	'install[Install a rock]'
-	'lint[Check syntax of a rockspec]'
-	'list[List currently installed rocks]'
-	'make[Compile package in current directory using a rockspec]'
-	'new_version[Auto-write a rockspec for a new version of a rock]'
-	'pack[Create a rock, packing sources or binaries]'
-	'path[Return the currently configured package path]'
-	'purge[Remove all installed rocks from a tree]'
-	'remove[Uninstall a rock]'
-	'search[Query the LuaRocks servers]'
-	'show[Show information about an installed rock]'
-	'unpack[Unpack the contents of a rock]'
-	'upload[Upload a rockspec to the public rocks repository]'
-	'write_rockspect[Write a template for a rockspec file]'
-)
-# }}}
 # {{{ `build` command receives as an argument a .rockspec file, or external rock and afterwards a version
 local make_command_options=(
 	'--pack-binary-rock[Produce a .rock file with the contents of compilation inside the current directory instead of installing it]'
@@ -55,6 +21,8 @@ _luarocks_build_deps_mode(){
 	)
 	_describe 'dependencies mode' modes
 }
+_luarocks_build(){
+}
 # }}}
 # {{{ `config` command sets a flag in the format VAR=VALUE
 local config_command_options=(
@@ -65,12 +33,16 @@ local config_command_options=(
 	'--user-config[Location of the user config file]'
 	'--rock-trees[Rocks trees in useFirst the user tree, then the system tree]'
 )
+_luarocks_config(){
+}
 # }}}
 # {{{ `doc` command ... TODO: what kind of argument it receives
 local doc_command_options=(
 	'--home[Open the home page of project]'
 	'--list[List documentation files only]'
 )
+_luarocks_doc(){
+}
 # }}}
 # {{{ `download` command receives an argument of an external only rockspec
 local download_command_options=(
@@ -79,28 +51,44 @@ local download_command_options=(
 	'--rockspec[Download .rockspec if available]'
 	'--arch=[Download rock for a specific architecture]:ARCH:'
 )
+_luarocks_download(){
+}
 # }}}
 # {{{ `help` command receives an argument of an internal command
+_luarocks_help(){
+}
 # }}}
 # {{{ `install` command receives the same argument as the build command and it accepts the same options as well
+_luarocks_install(){
+}
 # }}}
 # {{{ `lint` command receives an argument of a rockspec file
+_luarocks_lint(){
+}
 # }}}
 # {{{ `list` command receives only options
 local list_command_options=(
 	'--outdated[List only rocks for which there is a higher version available in the rocks server]'
 	'--porcelain[Produce machine-friendly output]'
 )
+_luarocks_list(){
+}
 # }}}
 # {{{ `make` command receives an argument of a rockspec file
 # it's options were already described above.
+_luarocks_make(){
+}
 # }}}
 # {{{ `new_version` command receives an argument a .rockspec file, or external rock and afterwards a version and optionally afterwards a URL
 local new_version_command_options=(
 	'--tag=[if no version is specified, this option'"'"'s argument is used instead]:TAG:__git_tag'
 )
+_luarocks_new_version(){
+}
 # }}}
 # {{{ `pack` command receives as an argument a .rockspec file, or external rock and afterwards a version
+_luarocks_pack(){
+}
 # }}}
 # {{{ `path` command receives only options
 local path_command_options=(
@@ -110,6 +98,8 @@ local path_command_options=(
 	'--lr-cpath[Exports the Lua cpath (not formatted as shell command)]'
 	'--lr-bin[Exports the system path (not formatted as shell command)]'
 )
+_luarocks_path(){
+}
 # }}}
 # {{{ `purge` command receives only options, --tree is mandatory, --force can be used only in conjunction with --old-versions
 local option_force='--force[Force removing old versions when]'
@@ -117,6 +107,8 @@ local purge_command_options=(
 	'--old-versions[Keep the highest-numbered version of each rock and remove the other ones]'
 	$option_force
 )
+_luarocks_purge(){
+}
 # }}}
 # {{{ `remove` command receives as an argument a name of a locally installed rock
 local option_force_fast='--force-fast[works like --force but doesn'"'"'t reports forced removals]'
@@ -125,6 +117,8 @@ local remove_command_options=(
 	$option_force
 	$option_force_fast
 )
+_luarocks_remove(){
+}
 # }}}
 # {{{ `search` command receives as an argument only a string as a search query
 local search_command_options=(
@@ -132,6 +126,8 @@ local search_command_options=(
 	'--binary[Return only pure Lua and binary rocks (rocks that can be used with the "install" command without requiring a C toolchain)]'
 	'--all[List all contents of the server that are suitable to this platform, do not filter by name]'
 )
+_luarocks_search(){
+}
 # }}}
 # {{{ `show` command receives as an argument only an installed rock
 local show_command_options=(
@@ -143,11 +139,15 @@ local show_command_options=(
 	'--rock-tree[local tree where rock is installed]'
 	'--rock-dir[data directory of the installed rock]'
 )
+_luarocks_show(){
+}
 # }}}
 # {{{ `unpack` command receives as an argument a rock package or an external rock and afterwards a version
 local unpack_command_options=(
 	'--force[Unpack files even if the output directory already exists]'
 )
+_luarocks_unpack(){
+}
 # }}}
 # {{{ `upload` command receives as an argument a rockspec file with .src.rock extension
 local upload_command_options=(
@@ -155,6 +155,8 @@ local upload_command_options=(
 	'--api-key=[Give it an API key]:KEY:{_message "api key"}'
 	'--force[Replace existing rockspec if the same revision of a module already exists]'
 )
+_luarocks_upload(){
+}
 # }}}
 # {{{ `write_rockspec` command receives as an argument a name and a version with optionally a URL/PATH
 local write_rockspec_command_options=(
@@ -176,11 +178,39 @@ _luarocks_version(){
 }
 # }}}
 
-# {{{ Helpers
-_luarocks_commands(){
+# The real thing
+_luarocks_command(){
+	local -a commands=(
+		build:'Build/compile a rock'
+		config:'Query information about the LuaRocks configuration'
+		doc:'Show documentation for an installed rock'
+		download:'Download a specific rock file from a rocks server'
+		help:'Help on commands'
+		install:'Install a rock'
+		lint:'Check syntax of a rockspec'
+		list:'List currently installed rocks'
+		make:'Compile package in current directory using a rockspec'
+		new_version:'Auto-write a rockspec for a new version of a rock'
+		pack:'Create a rock, packing sources or binaries'
+		path:'Return the currently configured package path'
+		purge:'Remove all installed rocks from a tree'
+		remove:'Uninstall a rock'
+		search:'Query the LuaRocks servers'
+		show:'Show information about an installed rock'
+		unpack:'Unpack the contents of a rock'
+		upload:'Upload a rockspec to the public rocks repository'
+		write_rockspect:'Write a template for a rockspec file'
+	)
 	_describe 'command' commands
 }
-# }}}
 
-# The real thing
-_arguments "${general_options[@]}" '*:COMMAND:_luarocks_commands'
+_arguments \
+	'(--server --only-server)--server=[Fetch rocks/rockspecs from this server]:HOST:_hosts' \
+	'(--server --only-server)--only-server=[Fetch rocks/rockspecs from this server only]:HOST:_hosts' \
+	'--only-sources=[Restrict downloads to paths matching the given URL]:URL:_urls' \
+	'--tree=[Which tree to operate on]:TREE:{_files -/}' \
+	'--local[Use the tree in the user'"'"'s home directory]' \
+	'--verbose[Display verbose output of commands executed]' \
+	'--timeout=[Timeout on network operations]:SECONDS:{_message "timeout (seconds)"}' \
+	'*:COMMAND:_luarocks_command'
+
-- 
2.17.0



Messages sorted by: Reverse Date, Date, Thread, Author