다음 명령을 입력할 수 있습니다.
$ echo hello
hello
그런 다음 Ctrl+R을 사용하여 검색합니다.
(reverse-i-search)`h': echo hello
그러면 검색이 실패하는 경우가 있습니다.
(failed reverse-i-search)`hz': echo hello
디스플레이의 "역검색 실패" 부분에 색상을 지정할 수 있나요? 나는 일반적인 흰색 텍스트와 대조되는 빨간색 텍스트를 선호합니다. 이렇게 하면 검색이 실패했음을 빨리 알 수 있습니다.
답변1
현재 버전의 Bash(4.4) 기준으로 "reverse-i-search"와 동일한 위치, 동일한 방식으로 "failed reverse-i-search" 메시지가 생성되어 변경될 수 있는 어떤 기능과도 구별할 수 없게 만듭니다. 그 색깔.
기본적으로 원하는 것을 정확하게 얻으려면 bash 소스 코드를 수정해야 합니다. (180행 주위의 파일 ./lib/readline/isearch.c)http://git.savannah.gnu.org/cgit/bash.git/tree/lib/readline/isearch.c
또 다른 접근 방식은 터미널에 "시각적 벨"을 활성화하는 것입니다. 검색이 실패하면 터미널에서 오디오 또는 시각적 이벤트가 될 수 있는 "벨 울리기" 작업이 수행되기 때문입니다. (파일 ./lib/readline/isearch.c 라인 715 참조)
답변2
~처럼czvtools가 지적했습니다., "역검색 실패" 알림이 울립니다. 일반 벨소리 대신 시각적 벨소리를 만들 수 있습니다. "xterm-vb.terminfo" 파일을 생성합니다:
xterm-vb|red visible bell,
# \e7 save current cursor position
# \e[40A up 40 lines
# \e[80C move right 80 spaces
# \e[4D move left 4 spaces
# \e[5;30;41mERROR\e[m bright background; foreground black; background red
# \e8 restore cursor to position of last save_cursor
flash=\e7\e[40A\e[80C\e[4D\e[5;30;41mERROR\e[m\e8,
use=xterm,
파일을 컴파일하고 설치합니다.
tic xterm-vb.terminfo
"~/.profile" 또는 이와 유사한 줄을 추가합니다.
TERM=xterm-vb
"~/.inputrc"에 다음 줄을 추가합니다.
set bell-style visible