################### ### 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