From a0c95618c4bf6d3de9e932d1a3ec85b261b629fc Mon Sep 17 00:00:00 2001 From: June Kim Date: Sat, 9 May 2026 03:35:54 -0700 Subject: [PATCH] fix: pass --color=never --decorations=never in zsh completions When BAT_OPTS contains --color=always or --decorations=always, the zsh completion script's calls to --list-languages and --list-themes produce ANSI escape codes that corrupt tab completion results. Pass --color=never --decorations=never explicitly so completion output is always plain text regardless of user config. Fixes #3733 --- assets/completions/bat.zsh.in | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/assets/completions/bat.zsh.in b/assets/completions/bat.zsh.in index f8de56e4..4fddcbb4 100644 --- a/assets/completions/bat.zsh.in +++ b/assets/completions/bat.zsh.in @@ -90,20 +90,20 @@ _{{PROJECT_EXECUTABLE}}_main() { languages) local IFS=$'\n' local -a languages - languages=( ${(f)"$({{PROJECT_EXECUTABLE}} --list-languages | awk -F':|,' '{ for (i = 1; i <= NF; ++i) printf("%s:%s\n", $i, $1) }')"} ) + languages=( ${(f)"$({{PROJECT_EXECUTABLE}} --color=never --decorations=never --list-languages | awk -F':|,' '{ for (i = 1; i <= NF; ++i) printf("%s:%s\n", $i, $1) }')"} ) _describe 'language' languages && ret=0 ;; themes) local -a themes expl - themes=(${(f)"$(_call_program themes {{PROJECT_EXECUTABLE}} --list-themes)"} ) + themes=(${(f)"$(_call_program themes {{PROJECT_EXECUTABLE}} --color=never --decorations=never --list-themes)"} ) _wanted themes expl 'theme' compadd -a themes && ret=0 ;; theme_preferences) local -a themes expl - themes=(auto dark light auto:always auto:system ${(f)"$(_call_program themes {{PROJECT_EXECUTABLE}} --list-themes)"} ) + themes=(auto dark light auto:always auto:system ${(f)"$(_call_program themes {{PROJECT_EXECUTABLE}} --color=never --decorations=never --list-themes)"} ) _wanted themes expl 'theme' compadd -a themes && ret=0 ;;