2016-12-06 4 views
2

Seit Bash 4.4 können Sie die Variablen vi-ins-mode-string und vi-cmd-string in .inputrc setzen. Ich habe versucht, die Vordergrund- und Hintergrundfarbe jeder dieser Zeichenfolgen zu ändern, indem Sie tput setab number und tput setaf number verwenden, kein Erfolg.Bash 4.4 vi-mode Färbung

Ich denke, es ist möglich, wie ich Bash-Powerline-Skript gesehen habe und es genau diese Funktionen verwendet, um die Färbung zu tun.

Jede Hilfe wäre willkommen.

Antwort

2

Sie sind nicht bash Variablen, sondern readline Variablen, so dass sie nur in .inputrc eingestellt werden, das keine bash Skript. Sie müssen die rohen ASCII-Escape-Sequenzen verwenden.

set editing-mode vi 
set show-mode-in-prompt on 
set vi-cmd-mode-string \1\e[32m\2(c)\1\e[0m\2 
set vi-ins-mode-string \1\e[34m\2(i)\1\e[0m\2