1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144
|
#compdef delta
autoload -U is-at-least
_delta() {
typeset -A opt_args
typeset -a _arguments_options
local ret=1
if is-at-least 5.2; then
_arguments_options=(-s -S -C)
else
_arguments_options=(-s -C)
fi
local context curcontext="$curcontext" state line
_arguments "${_arguments_options[@]}" \
'--blame-code-style=[Style string for the code section of a git blame line]:STYLE: ' \
'--blame-format=[Format string for git blame commit metadata]:FMT: ' \
'--blame-palette=[Background colors used for git blame lines (space-separated string)]:COLORS: ' \
'--blame-separator-format=[Separator between the blame format and the code section of a git blame line]:FMT: ' \
'--blame-separator-style=[Style string for the blame-separator-format]:STYLE: ' \
'--blame-timestamp-format=[Format of \`git blame\` timestamp in raw git output received by delta]:FMT: ' \
'--blame-timestamp-output-format=[Format string for git blame timestamp output]:FMT: ' \
'--config=[Load the config file at PATH instead of ~/.gitconfig]:PATH:_files' \
'--commit-decoration-style=[Style string for the commit hash decoration]:STYLE: ' \
'--commit-regex=[Regular expression used to identify the commit line when parsing git output]:REGEX: ' \
'--commit-style=[Style string for the commit hash line]:STYLE: ' \
'--default-language=[Default language used for syntax highlighting]:LANG: ' \
'--diff-stat-align-width=[Width allocated for file paths in a diff stat section]:N: ' \
'--features=[Names of delta features to activate (space-separated)]:FEATURES: ' \
'--file-added-label=[Text to display before an added file path]:STRING: ' \
'--file-copied-label=[Text to display before a copied file path]:STRING: ' \
'--file-decoration-style=[Style string for the file decoration]:STYLE: ' \
'--file-modified-label=[Text to display before a modified file path]:STRING: ' \
'--file-removed-label=[Text to display before a removed file path]:STRING: ' \
'--file-renamed-label=[Text to display before a renamed file path]:STRING: ' \
'--file-style=[Style string for the file section]:STYLE: ' \
'--file-transformation=[Sed-style command transforming file paths for display]:SED_CMD: ' \
'--generate-completion=[Print completion file for the given shell]:GENERATE_COMPLETION:(bash elvish fish powershell zsh)' \
'--grep-context-line-style=[Style string for non-matching lines of grep output]:STYLE: ' \
'--grep-file-style=[Style string for file paths in grep output]:STYLE: ' \
'--grep-header-decoration-style=[Style string for the header decoration in grep output]:STYLE: ' \
'--grep-header-file-style=[Style string for the file path part of the header in grep output]:STYLE: ' \
'--grep-line-number-style=[Style string for line numbers in grep output]:STYLE: ' \
'--grep-output-type=[Grep output format. Possible values\: "ripgrep" - file name printed once, followed by matching lines within that file, each preceded by a line number. "classic" - file name\:line number, followed by matching line. Default is "ripgrep" if \`rg --json\` format is detected, otherwise "classic"]:OUTPUT_TYPE:(ripgrep classic)' \
'--grep-match-line-style=[Style string for matching lines of grep output]:STYLE: ' \
'--grep-match-word-style=[Style string for the matching substrings within a matching line of grep output]:STYLE: ' \
'--grep-separator-symbol=[Separator symbol printed after the file path and line number in grep output]:STRING: ' \
'--hunk-header-decoration-style=[Style string for the hunk-header decoration]:STYLE: ' \
'--hunk-header-file-style=[Style string for the file path part of the hunk-header]:STYLE: ' \
'--hunk-header-line-number-style=[Style string for the line number part of the hunk-header]:STYLE: ' \
'--hunk-header-style=[Style string for the hunk-header]:STYLE: ' \
'--hunk-label=[Text to display before a hunk header]:STRING: ' \
'--hyperlinks-commit-link-format=[Format string for commit hyperlinks (requires --hyperlinks)]:FMT: ' \
'--hyperlinks-file-link-format=[Format string for file hyperlinks (requires --hyperlinks)]:FMT: ' \
'--inline-hint-style=[Style string for short inline hint text]:STYLE: ' \
'--inspect-raw-lines=[Kill-switch for --color-moved support]:true|false:(true false)' \
'--line-buffer-size=[Size of internal line buffer]:N: ' \
'--line-fill-method=[Line-fill method in side-by-side mode]:STRING:(ansi spaces)' \
'--line-numbers-left-format=[Format string for the left column of line numbers]:FMT: ' \
'--line-numbers-left-style=[Style string for the left column of line numbers]:STYLE: ' \
'--line-numbers-minus-style=[Style string for line numbers in the old (minus) version of the file]:STYLE: ' \
'--line-numbers-plus-style=[Style string for line numbers in the new (plus) version of the file]:STYLE: ' \
'--line-numbers-right-format=[Format string for the right column of line numbers]:FMT: ' \
'--line-numbers-right-style=[Style string for the right column of line numbers]:STYLE: ' \
'--line-numbers-zero-style=[Style string for line numbers in unchanged (zero) lines]:STYLE: ' \
'--map-styles=[Map styles encountered in raw input to desired output styles]:STYLES_MAP: ' \
'--max-line-distance=[Maximum line pair distance parameter in within-line diff algorithm]:DIST: ' \
'--max-line-length=[Truncate lines longer than this]:N: ' \
'--merge-conflict-begin-symbol=[String marking the beginning of a merge conflict region]:STRING: ' \
'--merge-conflict-end-symbol=[String marking the end of a merge conflict region]:STRING: ' \
'--merge-conflict-ours-diff-header-decoration-style=[Style string for the decoration of the header above the '\''ours'\'' merge conflict diff]:STYLE: ' \
'--merge-conflict-ours-diff-header-style=[Style string for the header above the '\''ours'\'' branch merge conflict diff]:STYLE: ' \
'--merge-conflict-theirs-diff-header-decoration-style=[Style string for the decoration of the header above the '\''theirs'\'' merge conflict diff]:STYLE: ' \
'--merge-conflict-theirs-diff-header-style=[Style string for the header above the '\''theirs'\'' branch merge conflict diff]:STYLE: ' \
'--minus-empty-line-marker-style=[Style string for removed empty line marker]:STYLE: ' \
'--minus-emph-style=[Style string for emphasized sections of removed lines]:STYLE: ' \
'--minus-non-emph-style=[Style string for non-emphasized sections of removed lines that have an emphasized section]:STYLE: ' \
'--minus-style=[Style string for removed lines]:STYLE: ' \
'--navigate-regex=[Regular expression defining navigation stop points]:REGEX: ' \
'--pager=[Which pager to use]:CMD: ' \
'--paging=[Whether to use a pager when displaying output]:auto|always|never:(auto always never)' \
'--plus-emph-style=[Style string for emphasized sections of added lines]:STYLE: ' \
'--plus-empty-line-marker-style=[Style string for added empty line marker]:STYLE: ' \
'--plus-non-emph-style=[Style string for non-emphasized sections of added lines that have an emphasized section]:STYLE: ' \
'--plus-style=[Style string for added lines]:STYLE: ' \
'--right-arrow=[Text to display with a changed file path]:STRING: ' \
'--syntax-theme=[The syntax-highlighting theme to use]:SYNTAX_THEME: ' \
'--tabs=[The number of spaces to replace tab characters with]:N: ' \
'--true-color=[Whether to emit 24-bit ("true color") RGB color codes]:auto|always|never:(auto always never)' \
'--whitespace-error-style=[Style string for whitespace errors]:STYLE: ' \
'-w+[The width of underline/overline decorations]:N: ' \
'--width=[The width of underline/overline decorations]:N: ' \
'--word-diff-regex=[Regular expression defining a '\''word'\'' in within-line diff algorithm]:REGEX: ' \
'--wrap-left-symbol=[End-of-line wrapped content symbol (left-aligned)]:STRING: ' \
'--wrap-max-lines=[How often a line should be wrapped if it does not fit]:N: ' \
'--wrap-right-percent=[Threshold for right-aligning wrapped content]:PERCENT: ' \
'--wrap-right-prefix-symbol=[Pre-wrapped content symbol (right-aligned)]:STRING: ' \
'--wrap-right-symbol=[End-of-line wrapped content symbol (right-aligned)]:STRING: ' \
'--zero-style=[Style string for unchanged lines]:STYLE: ' \
'--24-bit-color=[Deprecated\: use --true-color]:auto|always|never:(auto always never)' \
'--color-only[Do not alter the input structurally in any way]' \
'--dark[Use default colors appropriate for a dark terminal background]' \
'--diff-highlight[Emulate diff-highlight]' \
'--diff-so-fancy[Emulate diff-so-fancy]' \
'--hyperlinks[Render commit hashes, file names, and line numbers as hyperlinks]' \
'--keep-plus-minus-markers[Prefix added/removed lines with a +/- character, as git does]' \
'--light[Use default colors appropriate for a light terminal background]' \
'-n[Display line numbers next to the diff]' \
'--line-numbers[Display line numbers next to the diff]' \
'--list-languages[List supported languages and associated file extensions]' \
'--list-syntax-themes[List available syntax-highlighting color themes]' \
'--navigate[Activate diff navigation]' \
'--no-gitconfig[Do not read any settings from git config]' \
'--parse-ansi[Display ANSI color escape sequences in human-readable form]' \
'--raw[Do not alter the input in any way]' \
'--relative-paths[Output all file paths relative to the current directory]' \
'--show-colors[Show available named colors]' \
'--show-config[Display the active values for all Delta options]' \
'--show-syntax-themes[Show example diff for available syntax-highlighting themes]' \
'--show-themes[Show example diff for available delta themes]' \
'-s[Display diffs in side-by-side layout]' \
'--side-by-side[Display diffs in side-by-side layout]' \
'-h[Print help (see more with '\''--help'\'')]' \
'--help[Print help (see more with '\''--help'\'')]' \
'-V[Print version]' \
'--version[Print version]' \
'::minus_file -- First file to be compared when delta is being used in diff mode:_files' \
'::plus_file -- Second file to be compared when delta is being used in diff mode:_files' \
&& ret=0
}
(( $+functions[_delta_commands] )) ||
_delta_commands() {
local commands; commands=()
_describe -t commands 'delta commands' commands "$@"
}
if [ "$funcstack[1]" = "_delta" ]; then
_delta "$@"
else
compdef _delta delta
fi
|