function __fish_cursor_xterm -d 'Set cursor (xterm)' set -l shape $argv[1] switch "$shape" case block set shape 2 case underscore set shape 4 case line set shape 6 case '*' # Unknown shape return end if contains blink $argv set shape (math $shape - 1) end echo -en "\e[$shape q" end