-
Notifications
You must be signed in to change notification settings - Fork 356
/
completion.zsh
144 lines (138 loc) · 9.93 KB
/
completion.zsh
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