-
Notifications
You must be signed in to change notification settings - Fork 20
Open
Description
Every base16 theme contains the following tests:
if test -n "$TMUX"
# Tell tmux to pass the escape sequences through
# (Source: http://permalink.gmane.org/gmane.comp.terminal-emulators.tmux.user/1324)
function put_template; printf '\033Ptmux;\033\033]4;%d;rgb:%s\033\033\\\033\\' $argv; end;
function put_template_var; printf '\033Ptmux;\033\033]%d;rgb:%s\033\033\\\033\\' $argv; end;
function put_template_custom; printf '\033Ptmux;\033\033]%s%s\033\033\\\033\\' $argv; end;
else if string match 'screen*' $TERM # [ "${TERM%%[-.]*}" = "screen" ]
# GNU screen (screen, screen-256color, screen-256color-bce)
function put_template; printf '\033P\033]4;%d;rgb:%s\007\033\\' $argv; end;
function put_template_var; printf '\033P\033]%d;rgb:%s\007\033\\' $argv; end;
function put_template_custom; printf '\033P\033]%s%s\007\033\\' $argv; end;
else if string match 'linux*' $TERM # [ "${TERM%%-*}" = "linux" ]
function put_template; test $argv[1] -lt 16 && printf "\e]P%x%s" $argv[1] (echo $argv[2] | sed 's/\///g'); end;
function put_template_var; true; end;
function put_template_custom; true; end;
else
function put_template; printf '\033]4;%d;rgb:%s\033\\' $argv; end;
function put_template_var; printf '\033]%d;rgb:%s\033\\' $argv; end;
function put_template_custom; printf '\033]%s%s\033\\' $argv; end;
endThe problem is that string match in fish prints matching substrings by default (docs)
Illustrated on NixOS using Stylix:
Notice how linux is printed after entering the tty.
A simple fix for this is to use the -q flag to stop the matched substring from being printed.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels