Bash에서 자동 완성 하위 명령을 실행할 때 완성 색상을 변경하는 방법은 무엇입니까?
알 수 없는 이유로 bash는 완료 결과를 깨진 심볼릭 링크로 처리하는 것 같습니다. 정말 불안해 보입니다.
시스템 메시지:
- Bash 버전: 4.4.23(1)-출시됨
- 운영 체제: Manjaro Linux
편집: 내가 아는 한, colored-stats
GNU Readline 옵션에서 색상을 설정하면 ~/.inputrc
완전히 꺼집니다.
set colored-stats off
그러나 이렇게 하면 디렉터리 색상 지정과 같은 자동 완성 시 다른 색상 지정도 비활성화됩니다.
집에 있는 Manjaro Linux 상자에서는 깨진 심볼릭 링크의 유사한 색상이 발생하지만 내가 작업하는 Arch Linux 상자에서는 발생하지 않기 때문에 이것이 이상하다고 생각했습니다. 두 가지 모두에 동일한 bashrc
합계가 적용됩니다 inputrc
. 그러나 아직 확인하지 않은 다른 잠재적인 차이점이 있습니다.
다시 편집: ~/.inputrc
참조용으로 내 내용을 붙여넣습니다.
$include /etc/inputrc
$if mode=emacs
# cycle through possible completions
TAB: menu-complete
# complete until the end of common prefix before cycling through possible completions
set menu-complete-display-prefix on
# show possible completions if more than one completions are possible
set show-all-if-ambiguous on
set show-all-if-unmodified on
# do not duplicate characters after the cursor if they consist partially of possbile completion
set skip-completed-text on
# display colors when doing completion as `ls` does
set colored-stats on
# color tab-completion matched prefix part
set colored-completion-prefix on
# fuck off stty key bindings. (stty -a)
set bind-tty-special-chars off
"\C-w": unix-word-rubout
"\eh": kill-region
"\eH": copy-region-as-kill
"\C-x\'": "\'\'\C-b"
"\C-x`": "``\C-b"
"\C-x\"": "\"\"\C-b"
"\C-x{": "{}\C-b"
"\C-x[": "[]\C-b"
"\C-x(": "()\C-b"
"\C-x0": vi-eWord
"\eF": "\C-x0\C-f"
"\eB": vi-bWord
"\eD": "\e \eF\eh"
$endif
답변1
언급한 대로 GNU Readline의 완성 색상은 colored-stats
in을 통해 활성화 됩니다 .inputrc
.
색상은 에 의해 결정되며 $LS_COLORS
를 사용하여 생성할 수 있습니다 dircolors
.
완성 제안은 MISSING
해당 항목의 출처 속성에서 ~/.dircolors
. 주석 처리(또는 05;
깜박임을 비활성화하기 위해 제거하는 등 덜 방해적인 것으로 변경)하면 제안 사항이 기본 색상으로 인쇄됩니다. 의 해당 항목 $LS_COLORS
은 다음과 같습니다(ANSI 색상 및 의 예 ...:mi=03;31:...
).03
31
유사한 토론:
https://bugzilla.redhat.com/show_bug.cgi?id=1648170
인용하다:
https://wiki.archlinux.org/index.php/Readline#Colorized_completion
https://wiki.archlinux.org/index.php/Color_output_in_console#ls
dircolors: 색상 설정을 전체적으로 수정합니다.
https://askubuntu.com/questions/466198/how-do-i-change-the-color-for-directories-with-ls-in-the-console