complete -c srgn -l completions -d 'Print shell completions for the given shell' -r -f -a "{bash	'',elvish	'',fish	'',powershell	'',zsh	''}"
complete -c srgn -l files -d 'Glob of files to work on (instead of reading stdin).' -r
complete -c srgn -l csharp -d 'Scope CSharp code using a premade query.' -r -f -a "{comments	'Comments (including XML, inline, doc comments)',strings	'Strings (incl. verbatim, interpolated; incl. quotes, except for interpolated)',usings	'`using` directives (including periods)'}"
complete -c srgn -l csharp-query -d 'Scope CSharp code using a custom tree-sitter query.' -r
complete -c srgn -l go -d 'Scope Go code using a premade query.' -r -f -a "{comments	'Comments (single- and multi-line)',strings	'Strings (interpreted and raw; excluding struct tags)',imports	'Imports',struct-tags	'Struct tags'}"
complete -c srgn -l go-query -d 'Scope Go code using a custom tree-sitter query.' -r
complete -c srgn -l python -d 'Scope Python code using a premade query.' -r -f -a "{comments	'Comments',strings	'Strings (raw, byte, f-strings; interpolation is respected; quotes included)',imports	'Module names in imports (incl. periods; excl. `import`/`from`/`as`/`*`)',doc-strings	'Docstrings (not including multi-line strings)',function-names	'Function names, at the definition site',function-calls	'Function calls'}"
complete -c srgn -l python-query -d 'Scope Python code using a custom tree-sitter query.' -r
complete -c srgn -l rust -d 'Scope Rust code using a premade query.' -r -f -a "{comments	'Comments (line and block styles; excluding doc comments; comment chars incl.)',doc-comments	'Doc comments (comment chars included)',uses	'Use statements (paths only; excl. `use`/`as`/`*`)',strings	'Strings (regular, raw, byte; includes interpolation parts in format strings!)'}"
complete -c srgn -l rust-query -d 'Scope Rust code using a custom tree-sitter query.' -r
complete -c srgn -l typescript -d 'Scope TypeScript code using a premade query.' -r -f -a "{comments	'Comments',strings	'Strings (literal, template; includes quote characters)',imports	'Imports (module specifiers)'}"
complete -c srgn -l typescript-query -d 'Scope TypeScript code using a custom tree-sitter query.' -r
complete -c srgn -s u -l upper -d 'Uppercase scope'
complete -c srgn -s l -l lower -d 'Lowercase scope'
complete -c srgn -s t -l titlecase -d 'Titlecase scope'
complete -c srgn -s n -l normalize -d 'Normalize (Normalization Form D) scope, and throw away marks'
complete -c srgn -s g -l german -d 'Perform substitutions on German words, such as \'Abenteuergruesse\' to \'Abenteuergrüße\''
complete -c srgn -s S -l symbols -d 'Perform substitutions on symbols, such as \'!=\' to \'≠\', \'->\' to \'→\''
complete -c srgn -s d -l delete -d 'Delete scope'
complete -c srgn -s s -l squeeze -l squeeze-repeats -d 'Squeeze consecutive occurrences of scope into one'
complete -c srgn -l fail-empty-glob -d 'Fail if file globbing is requested but returns no matches.'
complete -c srgn -s i -l invert -d 'Undo the effects of passed actions, where applicable'
complete -c srgn -s L -l literal-string -d 'Do not interpret the scope as a regex. Instead, interpret it as a literal string. Will require a scope to be passed.'
complete -c srgn -l fail-any -d 'If anything at all is found to be in scope, fail.'
complete -c srgn -l fail-none -d 'If nothing is found to be in scope, fail.'
complete -c srgn -s v -l verbose -d 'Increase log verbosity level'
complete -c srgn -l german-prefer-original -d 'When some original version and its replacement are equally legal, prefer the original and do not modify.'
complete -c srgn -l german-naive -d 'Always perform any possible replacement (\'ae\' -> \'ä\', \'ss\' -> \'ß\', etc.), regardless of legality of the resulting word'
complete -c srgn -s h -l help -d 'Print help (see more with \'--help\')'
complete -c srgn -s V -l version -d 'Print version'
