#compdef rubocop # ------------------------------------------------------------------------------ # Copyright (c) 2015 Github zsh-users - https://github.com/zsh-users # All rights reserved. # # Redistribution and use in source and binary forms, with or without # modification, are permitted provided that the following conditions are met: # * Redistributions of source code must retain the above copyright # notice, this list of conditions and the following disclaimer. # * Redistributions in binary form must reproduce the above copyright # notice, this list of conditions and the following disclaimer in the # documentation and/or other materials provided with the distribution. # * Neither the name of the zsh-users nor the # names of its contributors may be used to endorse or promote products # derived from this software without specific prior written permission. # # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND # ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED # WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE # DISCLAIMED. IN NO EVENT SHALL ZSH-USERS BE LIABLE FOR ANY # DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES # (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; # LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND # ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS # SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. # ------------------------------------------------------------------------------ # Description # ----------- # # Completion script for rubocop 1.38 (https://github.com/rubocop/rubocop) # # ------------------------------------------------------------------------------ # Authors # ------- # # * Akira Maeda # * Shohei Yoshida # # ------------------------------------------------------------------------------ local curcontext="$curcontext" state line ret=1 typeset -A opt_args _rubocop_format_params() { local -a formatter=( "autogenconf" "clang" "emacs" "files" "fuubar" "github" "html" "json" "junit" "markdown" "offenses" "pacman" "progress" "quiet" "simple" "tap" "worst" ) _values 'formatter' $formatter } _arguments -C \ '(-l --lint)'{-l,--lint}'[Run only lint cops]' \ '(-x --fix-layout)'{-x,--fix-layout}'[Run only layout cops, with autocorrect on]' \ '--safe[Run only safe cops]' \ '*--except[Exclude the given cops]:cops' \ '*--only[Run only the given cops]:cops' \ '--only-guide-cops[Run only cops for rules that link to a style guide]' \ '(-F --fail-fast)'{-f,--fail-fast}'[Inspect files in order of modification time and stop after the first file containing offenses]' \ '--disable-pending-cops[Run without pending cops]' \ '--enable-pending-cops[Run with pending cops]' \ '--ignore-disable-comments[Run cops even when they are disabled locally by a `rubocop:disable` directive]' \ '--force-exclusion[Any files excluded by `Exclude` in configuration files will be excluded, even if given explicitly as arguments]' \ '(-s --stdin)'{-s,--stdin}'[Pipe source from STDIN, using FILE in offense reports]: :_files' \ '(-P --parallel --no-parallel)'{-p,--parallel}'[Use available CPUs to execute inspection in parallel]' \ '(-P --parallel --no-parallel)--no-parallel[Execute not parallel]' \ '--raise-cop-error[Raise cop-related errors with cause and location]' \ '--fail-level[Minimum severity for exit with error code]:severity:(autocorrect info refactor convention warning error fatal)' \ '(-C --cache)'{-C,--cache}'[Use result caching or not]: :(TRUE FALSE)' \ '--cache-root[Set the cache root directory]: :_files -/' \ '--server[If a server process has not been started yet start the server process and execute inspection with server]' \ '--restart-server[Restart server process]' \ '--start-server[Start server process]' \ '--stop-server[Stop server process]' \ '--server-status[Show server status]' \ '(-f --format)'{-f,--format}'[Choose an output formatter]:FORMATTER:_rubocop_format_params' \ '(-D --display-cop-names)'{-D,--display-cop-names}'[Display cop names in offense messages]' \ '(-E --extra-details)'{-E,--extra-details}'[Display extra details in offense messages]' \ '(-S --display-style-guide)'{-S,--display-style-guide}'[Display style guide URLs in offense messages]' \ '(-o --out)'{-o,--out}'[Write output to a file instead of STDOUT]: :_files' \ '--stderr[Write all output to stderr except for the autocorrected source]' \ '--display-time[Display elapsed time in seconds]' \ '--display-only-failed[Only output offense messages]' \ '--display-only-fail-level-offenses[Only output offense messages at the specified --fail-level or above]' \ '--display-only-correctable[Only output correctable offense messages]' \ '--display-only-safe-correctable[Only output safe-correctable offense messages with combined with --display-only-correctable]' \ '(-a --autocorrect)'{-a,--autocorrect}"[Auto-correct offenses(only when it's safe)]" \ '(-A --autocorrect-all)'{-A,--autocorrect-all}'[Autocorrect offenses(safe and unsafe)]' \ '--auto-gen-config[Generate a configuration file acting as a TODO list]' \ '--regenerate-todo[Regenerate the TODO configuration file using the last configuration]' \ '(--no-exclude-limit)--exclude-limit[Set the limit for how many files to explicitly exclude]:count' \ '(--exclude-limit)--no-exclude-limit[Do not set the limit for how many files to exclude]' \ '--offense-counts[Include offense counts in configuration file generated by --auto-gen-config]' \ '--auto-gen-only-exclude[Generate only Exclude parameters and not Max when running --auto-gen-config]' \ '--auto-gen-timestamp[Include the data and time when the --auto-gen-config was run in the file it generates]' \ '(-L --list-target-files)'{-L,--list-target-files}'[List all files RuboCop will inspect]' \ '*--show-cops[Show the given cops or all cops]::cops' \ '--show-docs-url[Display url to documentation for the given cops or base url by default]::cops' \ '--init[Generate a .rubocop.yml file in the current directory]' \ '(-c --config)'{-c,--config}'[Specify configuration file]: :_files' \ '(-d --debug)'{-d,--debug}'[Display debug info]' \ '(-r --require)'{-r,--require}'[Require Ruby file]: :_files' \ '(--no-color --color)--color[Force color output on]' \ '(--no-color --color)--no-color[Force color output off]' \ '(-v --version -V --verbose-version)'{-v,--version}'[Display version]' \ '(-V --verbose-version -v --version)'{-V,--verbose-version}'[Display verbose version]' \ '(- *)'{-h,--help}'[Show help]' \ '*: :_files' && ret=0 return ret # Local Variables: # mode: Shell-Script # sh-indentation: 2 # indent-tabs-mode: nil # sh-basic-offset: 2 # End: # vim: ft=zsh sw=2 ts=2 et