diff --git a/assets/completions/bat.fish b/assets/completions/bat.fish new file mode 100644 index 00000000..0d28e508 --- /dev/null +++ b/assets/completions/bat.fish @@ -0,0 +1,59 @@ +# Fish Shell Completions (WIP) + +# Place or symlink to $XDG_CONFIG_HOME/fish/completions/bat.fish ($XDG_CONFIG_HOME is usually set to ~/.config) +complete -c bat -s l -l language -d "Set the language for syntax highlighting" + +complete -c bat -l list-languages -d "Display list of supported languages for syntax highlighting" + +complete -c bat -s m -l map-syntax -d " Map a file extension or file name to an existing syntax" + +# TODO: add completion for theme list +complete -c bat -l theme -d " Set the theme for syntax highlighting" + +complete -c bat -l list-themes -d "Display a list of supported themes for syntax highlighting" + +# TODO: add completion for style list +complete -c bat -l style -d " Comma-separated list of style elements or presets to display with file contents" -a 'auto full plain changes header grid numbers' + +complete -c bat -s p -l plain -d "Only show plain style, no decorations. Alias for '--style=plain'" + +complete -c bat -s n -l number -d "Only show line numbers, no other decorations. Alias for '--style=numbers'" + +complete -c bat -s A -l show-all -d "Show non-printable characters like space/tab/newline" + +# TODO: possibly add completion showing max line (using 'wc -l') on file in current arguments (using commandline -opc) +complete -c bat -s r -l line-range -d " Only print the specified range of lines for each file" + +# TODO: possibly add completion showing max line (using 'wc -l') on file in current arguments (using commandline -opc) +complete -c bat -s H -l highlight-line -d " Highlight the N-th line with a different background color" + +# TODO: add completion for auto/never/always +complete -c bat -l color -d " Specify when to use colored output (*auto*, never, always)" + +# TODO: add completion for always/never +complete -c bat -l italic-text -d " Specify when to use ANSI sequences for italic text (always, *never*)" + +# TODO: add completion for auto/never/always +complete -c bat -l decorations -d " Specify when to use the decorations specified with '--style' (*auto*, never, always)" + +# TODO: add completion for auto/never/always +complete -c bat -l paging -d " Specify when to use the pager (*auto*, never, always)" + +# TODO: add completion for sub-commands like less +complete -c bat -l pager -d " Specify which pager to use (default is 'less') eg. 'less -RF'" + +# TODO: add completion for auto/never/character +complete -c bat -l wrap -d " Specify the text-wrapping mode (*auto*, never, character)" + +complete -c bat -l tabs -d " Set the tab width to T spaces (width of 0 passes tabs through directly)" + +complete -c bat -s u -l unbuffered -d "POSIX-compliant unbuffered output. Option is ignored" + +complete -c bat -l terminal-width -d " Explicitly set terminal width; Prefix with '+' or '-' to offset (default width is auto determined)" + +complete -c bat -s h -l help -d "Print help message" + +complete -c bat -s V -l version -d "Show version information" + +# TODO: add completion for sub-command 'cache' +# # cache Modify the syntax-definition and theme cache \ No newline at end of file