Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- diff --git a/contrib/zsh_compl/_rgbasm b/contrib/zsh_compl/_rgbasm
- index 2998be21..238c9baf 100644
- --- a/contrib/zsh_compl/_rgbasm
- +++ b/contrib/zsh_compl/_rgbasm
- @@ -1,7 +1,7 @@
- #compdef rgbasm
- _rgbasm_warnings() {
- - local warnings=(
- + local -a base_warnings=(
- 'error:Turn all warnings into errors'
- 'all:Enable most warning messages'
- @@ -30,8 +30,55 @@ _rgbasm_warnings() {
- 'unterminated-load:Warn on LOAD without ENDL'
- 'user:Warn when executing the WARN built-in'
- )
- - # TODO: handle `no-` and `error=` somehow?
- - # TODO: handle `=0|1|2` levels for `numeric-string`, `purge`, `truncation`, and `unmapped-char`?
- +
- + # Warnings that support levels
- + local -a level_warnings=(
- + 'numeric-string'
- + 'purge'
- + 'truncation'
- + 'unmapped-char'
- + )
- +
- + local -a warnings=()
- + local warning
- +
- + # Add base warnings
- + warnings=($base_warnings)
- +
- + # Add no- prefix for all warnings except error, all, extra, everything
- + for warning in ${base_warnings}; do
- + local name=${warning%%:*}
- + local desc=${warning#*:}
- + case $name in
- + error|all|extra|everything) continue ;;
- + *) warnings+=("no-$name:Disable warning: $desc") ;;
- + esac
- + done
- +
- + # Add error= prefix for all warnings except error, all, extra, everything
- + for warning in ${base_warnings}; do
- + local name=${warning%%:*}
- + local desc=${warning#*:}
- + case $name in
- + error|all|extra|everything) continue ;;
- + *) warnings+=("error=$name:Treat as error: $desc") ;;
- + esac
- + done
- +
- + # Add =0|1|2 levels for specific warnings
- + for warning in $level_warnings; do
- + local base_desc
- + for w in $base_warnings; do
- + if [[ ${w%%:*} == $warning ]]; then
- + base_desc=${w#*:}
- + break
- + fi
- + done
- + warnings+=("$warning=0:Disable: $base_desc")
- + warnings+=("$warning=1:Enable: $base_desc")
- + warnings+=("$warning=2:Extra strict: $base_desc")
- + done
- +
- _describe warning warnings
- }
- @@ -64,4 +111,4 @@ local args=(
- ":assembly sources:_files -g '*.asm'"
- )
- -_arguments -s -S : $args
- +_arguments -s -S : $args
- \ No newline at end of file
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement