]> src.twobees.de Git - dotfiles.git/blob - stow/oh-my-zsh/.oh-my-zsh/plugins/mix/_mix
7940ff1c9386f441b9e4352a3aff11f371663b6e
[dotfiles.git] / stow / oh-my-zsh / .oh-my-zsh / plugins / mix / _mix
1 #compdef mix
2 #autoload
3
4 # Elixir mix zsh completion
5
6 local -a _1st_arguments
7 _1st_arguments=(
8     'app.config:Configures all registered apps'
9     'app.start:Start all registered apps'
10     'app.tree:Prints the application tree'
11     'archive:Lists installed archives'
12     'archive.build:Archive this project into a .ez file'
13     'archive.install:Install an archive locally'
14     'archive.uninstall:Uninstall archives'
15     'clean:Delete generated application files'
16     'cmd:Executes the given command'
17     'compile:Compile source files'
18     'compile.protocols:Consolidates all protocols in all paths'
19     'deps:List dependencies and their status'
20     "deps.clean:Remove the given dependencies' files"
21     'deps.compile:Compile dependencies'
22     'deps.get:Get all out of date dependencies'
23     'deps.tree:Prints the dependency tree'
24     'deps.unlock:Unlock the given dependencies'
25     'deps.update:Update the given dependencies'
26     'do:Executes the tasks separated by comma'
27     'ecto.create:Create Ecto database'
28     'ecto.drop:Drop the storage for the given repository'
29     'ecto.dump:Dumps the current environment’s database structure'
30     'ecto.gen.migration:Generates a migration'
31     'ecto.gen.repo:Generates a new repository'
32     'ecto.load:Loads the current environment’s database structure'
33     'ecto.migrate:Runs Ecto migration'
34     'ecto.migrations:Displays the up / down migration status'
35     'ecto.rollback:Reverts applied migrations'
36     'escript:Lists installed escripts'
37     'escript.build:Builds an escript for the project'
38     'escript.install:Installs an escript locally'
39     'escript.uninstall:Uninstalls escripts'
40     'firmware:Nerves - Build a firmware image for the selected target platform'
41     'firmware.burn:Nerves - Writes the generated firmware image to an attached SDCard or file'
42     'firmware.image:Nerves - Create a firmware image file that can be copied byte-for-byte'
43     'format:Formats the given files and patterns'
44     'help:Print help information for tasks'
45     'hex:Print hex help information'
46     'hex.audit:Shows retired Hex deps for the current project'
47     'hex.build:Builds a new package version locally'
48     'hex.config:Reads, updates or deletes local Hex config'
49     'hex.docs:Fetches or opens documentation of a package'
50     'hex.info:Print hex information'
51     'hex.organization:Manages Hex.pm organizations'
52     'hex.key:Hex API key tasks'
53     'hex.outdated:Shows outdated Hex deps for the current project'
54     'hex.owner:Manages Hex package ownership'
55     'hex.package:Fetches or diffs packages'
56     'hex.publish:Publish a new package version'
57     'hex.registry:Manages local Hex registries'
58     'hex.repo:Manages Hex repositories'
59     'hex.retire:Retires a package version'
60     'hex.search:Search for package names'
61     'hex.sponsor:Show Hex packages accepting sponsorships'
62     'hex.user:Manages your Hex user account'
63     'loadconfig:Loads and persists the given configuration'
64     'local:List local tasks'
65     'local.hex:Install hex locally'
66     'local.phoenix:Updates Phoenix locally'
67     'local.phx:Updates the Phoenix project generator locally'
68     'local.public_keys:Manages public keys'
69     'local.rebar:Install rebar locally'
70     'nerves.artifact:Create an artifact for a specified Nerves package'
71     'nerves.artifact.get:Nerves get artifacts'
72     'nerves.info:Prints Nerves system information'
73     'nerves.new:Create a new Nerves application'
74     'nerves.release.init:Prepare a new Nerves project for use with releases'
75     'new:Create a new Elixir project'
76     'phoenix.digest:Digests and compress static files'
77     'phoenix.gen.channel:Generates a Phoenix channel'
78     'phoenix.gen.html:Generates controller, model and views for an HTML based resource'
79     'phoenix.gen.json:Generates a controller and model for a JSON based resource'
80     'phoenix.gen.model:Generates an Ecto model'
81     'phoenix.gen.secret:Generates a secret'
82     'phoenix.new:Creates a new Phoenix v1.2.1 application'
83     'phoenix.routes:Prints all routes'
84     'phoenix.server:Starts applications and their servers'
85     'phx.digest:Digests and compresses static files'
86     'phx.digest.clean:Removes old versions of static assets.'
87     'phx.gen.auth:Generates authentication logic for a resource'
88     'phx.gen.cert:Generates a self-signed certificate for HTTPS testing'
89     'phx.gen.channel:Generates a Phoenix channel'
90     'phx.gen.context:Generates a context with functions around an Ecto schema'
91     'phx.gen.embedded:Generates an embedded Ecto schema file'
92     'phx.gen.html:Generates controller, views, and context for an HTML resource'
93     'phx.gen.json:Generates controller, views, and context for a JSON resource'
94     'phx.gen.live:Generates LiveView, templates, and context for a resource'
95     'phx.gen.notifier:Generates a notifier that delivers emails by default'
96     'phx.gen.presence:Generates a Presence tracker'
97     'phx.gen.schema:Generates an Ecto schema and migration file'
98     'phx.gen.secret:Generates a secret'
99     'phx.gen.socket:Generates a Phoenix socket handler'
100     'phx.new:Creates a new Phoenix application'
101     'phx.new.ecto:Creates a new Ecto project within an umbrella project'
102     'phx.new.web:Creates a new Phoenix web project within an umbrella project'
103     'phx.routes:Prints all routes'
104     'phx.server:Starts applications and their servers'
105     'profile.cprof:Profiles the given file or expression with cprof'
106     'profile.eprof:Profiles the given file or expression with eprof'
107     'profile.fprof:Profiles the given file or expression with fprof'
108     'release:Assembles a self-contained release'
109     'release.init:Generates sample files for releases'
110     'run:Run the given file or expression'
111     "test:Run a project's tests"
112     'test.coverage:Build report from exported test coverage'
113     'xref:Prints cross reference information'
114     '--help:Describe available tasks'
115     '--version:Prints the Elixir version information'
116 )
117
118 __task_list ()
119 {
120     local expl
121     declare -a tasks
122
123     tasks=(app.config app.start app.tree archive archive.build archive.install archive.uninstall clean cmd compile compile.protocols deps deps.clean deps.compile deps.get deps.tree deps.unlock deps.update do ecto.create ecto.drop ecto.dump ecto.gen.migration ecto.gen.repo ecto.load ecto.migrate ecto.migrations ecto.rollback escript escript.build escript.install escript.uninstall firmware firmware.burn firmware.image format help hex hex.audit hex.build hex.config hex.docs hex.info hex.organization hex.key hex.outdated hex.owner hex.package hex.publish hex.registry hex.repo hex.retire hex.search hex.sponsor hex.user loadconfig local local.hex local.phoenix local.phx local.public_keys local.rebar nerves.artifact nerves.artifact.get nerves.info nerves.new nerves.release.init new phoenix.digest phoenix.gen.channel phoenix.gen.html phoenix.gen.json phoenix.gen.model phoenix.gen.secret phoenix.new phoenix.routes phoenix.server phx.digest phx.digest.clean phx.gen.auth phx.gen.cert phx.gen.channel phx.gen.context phx.gen.embedded phx.gen.html phx.gen.json phx.gen.live phx.gen.notifier phx.gen.presence phx.gen.schema phx.gen.secret phx.gen.socket phx.new phx.new.ecto phx.new.web phx.routes phx.server profile.cprof profile.eprof profile.fprof release release.init run test test.coverage xref)
124
125     _wanted tasks expl 'help' compadd $tasks
126 }
127
128 local expl
129
130 local curcontext="$curcontext" state line
131 typeset -A opt_args
132
133 _arguments -C \
134     ':command:->command' \
135     '*::options:->options'
136
137 case $state in
138   (command)
139       _describe -t commands "mix subcommand" _1st_arguments
140       return
141   ;;
142
143   (options)
144     case $line[1] in
145       (help)
146          _arguments ':feature:__task_list'
147          ;;
148       (test)
149          _files
150          ;;
151       (run)
152          _files
153          ;;
154     esac
155   ;;
156 esac