dots/.zstyle.zsh

72 lines
3.1 KiB
Bash

###################
### COMPLETIONS ###
###################
compctl -g '~/.teamocil/*(:t:r)' teamocil
# Specify the order of completers to use:
# - `_expand`: Expand variables and globs.
# - `_complete`: Standard completion.
# - `_ignored`: Ignore certain completions.
# - `_approximate`: Approximate matching for fuzzy completions.
zstyle ':completion:*' completer _expand _complete _ignored _approximate
# Enable case-insensitive matching
zstyle ':completion:*' matcher-list 'm:{a-z}={A-Z}'
# Disable the menu selection feature (automatically select the first match)
zstyle ':completion:*' menu select
# Customize the prompt shown when scrolling through completions
# - `%SScrolling active: current selection at %p%s`: Shows a message indicating that scrolling is active and the current selection.
zstyle ':completion:*' select-prompt '%SScrolling active: current selection at %p%s'
# Format descriptions in completion lists
# - `[%d]`: Wrap descriptions in square brackets.
zstyle ':completion:*:descriptions' format '[%d]'
# Specify the command to use for completing process names
# - `ps -au$USER`: List processes for the current user.
zstyle ':completion:*:processes' command 'ps -au$USER'
# Specify the command to use for completing process names with fzf-tab
# - `ps -u $USER -o pid,user,comm,cmd -w -w`: List processes with detailed information.
zstyle ':completion:*:*:*:*:processes' command "ps -u $USER -o pid,user,comm,cmd -w -w"
# Disable sorting of completion options
zstyle ':completion:complete:*:options' sort false
# Disable sorting of git checkout completions
zstyle ":completion:*:git-checkout:*" sort false
# Apply LS_COLORS to completion lists for colored output
zstyle ':completion:*' list-colors ${(s.:.)LS_COLORS}
zstyle ':completion:*' menu select
zstyle ':completion:*:matches' group 'yes'
zstyle ':completion:*:options' description 'yes'
zstyle ':completion:*:options' auto-description '%d'
zstyle ':completion:*:corrections' format '%U%F{red}-- %d (errors: %e) --%f%u'
zstyle ':completion:*:descriptions' format '%U%F{yellow}-- %d --%f%u'
zstyle ':completion:*:messages' format '%F{purple} -- %d --%f'
zstyle ':completion:*:warnings' format '%F{red} -- no matches found --%f'
# Configure fzf-tab behavior
#
# # Use the input string as the query string for _zlua completions
# zstyle ':fzf-tab:complete:_zlua:*' query-string input
#
# # Customize the kill command completion with fzf-tab
# # - `extra-opts`: Additional options for fzf, including a preview window showing the command of the selected process.
# zstyle ':fzf-tab:complete:kill:argument-rest' extra-opts --preview=$extract'ps --pid=$in[(w)1] -o cmd --no-headers -w -w' --preview-window=down:3:wrap
#
# # Customize the cd command completion with fzf-tab
# # - `fzf-preview`: Show a preview of directories using `eza` (a modern replacement for `ls`).
# zstyle ':fzf-tab:complete:cd:*' fzf-preview 'eza -1 --color=always $realpath'
#
# # Customize the z command completion with fzf-tab
# # - `fzf-preview`: Show a preview of directories using `eza`.
# zstyle ':fzf-tab:complete:z:*' fzf-preview 'eza -1 --color=always $realpath'
#
# # Use default fzf options for fzf-tab
# zstyle ':fzf-tab:*' use-fzf-default-opts yes