저는 Arch Linux(32비트 대안)를 사용하고 있으며 최근 Vim에서 보던 파란색 선이 :set cursorline
파란색이 아니라 밑줄이 그어져 있어야 한다는 사실을 발견했습니다.
이로 인해 해결책을 모색하게 되었습니다.
나는 그래픽 환경을 사용하지 않기 때문에 데스크탑 환경이나 창 관리자도 없고 단지 zsh
내가 현재 가장 좋아하는 쉘인 tty와 잘 어울립니다.
:hi CursorLine cterm=bold
이제 커서 선은 더 이상 파란색이 아니고 주로 밝은 색상이 되어 이미 내 삶을 더 좋게 만들어 주기 때문에 이것이 커서 선을 더 예쁘게 보이게 합니다.
나는 또한 cterm=underline
(여전히 선을 파란색으로 렌더링) undercurl
시도 :hi clear CursorLine
하고 다시 시도했지만 원하는 밑줄이 표시되지 않았습니다.
나는 fbterm
그것이 유사 그래픽 터미널 에뮬레이터라고 믿기 때문에 Vim을 사용해 보았지만 훨씬 더 보기 흉한 슈퍼와이드 글꼴을 사용했을 뿐 동일한 동작을 보였습니다.
이는 Vim에만 적용되는 것이 아니라 모든 것에 적용되는 것 같습니다. 나는 echo
es에서 ANSI 이스케이프 시퀀스를 시도했고 텍스트에 밑줄을 긋으려고 할 때 밑줄 없이 파란색도 얻었습니다.
그래서 나는 믿는다무엇글꼴, 셸 구성, Vim 구성 등 무엇이든 누락되었습니다.
몇 번 검색한 후에도 내 tty에 이러한 형식 지정 옵션이 누락된 이유에 대한 답을 찾지 못했기 때문에 여기에 질문하기로 결정했습니다.
Raspbian을 실행하는 Raspberry Pi 3B+에서 이것을 시도했고 tty에서 거의 동일한 동작을 얻었다는 점도 주목할 가치가 있습니다.
내가 이 기능을 작동시킬 수 있었던 유일한 곳은 내가 때때로 Firefox를 사용하기 시작한 X 서버였습니다. 나는 xterm
그 위에 생성했고바라보다위의 명령을 입력해도 밑줄이 표시됩니다 zsh
.
이제 다른 터미널 글꼴을 사용해 보고 내 tty를 더욱 아름답게 만드는 데 더 가까워졌는지 살펴보겠습니다.
편집 01:
Asciinema로 녹음했는데 잘 나오긴 했지만 실제로 본 것은 제가 설명한 것과 똑같았습니다.
편집 02:
내가 읽고있다이 아치 위키 페이지yaft
터미널 에뮬레이터에 대해 조금 알아보고 제가 찾던 것이 될 것 같았기 때문에 한번 시도해 보기로 결정했습니다 .
내가 그것을 설치했고 그것을 사용하면 내가 원했던 기능 중 적어도 일부가 활성화되었으므로 정말 좋습니다.
답변1
Linux 콘솔 드라이버는 가독성과 구현 용이성 사이의 절충안이므로 컬러 디스플레이의 밑줄을 지원하지 않습니다. 이는 1990년대 중반부터 발생했으며 다음 문헌에 기록되어 있습니다.console_codes(4)
:
4 set underscore (simulated with color on a color display)
(the colors used to simulate dim or underline are set
using ESC ] ...)
당신이 다른 것을 가지고 있을 가능성은 거의 없습니다.컬러 디스플레이. 밑줄을 그리는 데 사용되는 색상을 변경할 수 있지만 어떤 방식으로든 색조가 적용됩니다. 매뉴얼 페이지에는 사용자 정의에 대한 이스케이프 시퀀스가 언급되어 있습니다.색상 팔레트:
ESC ] OSC (Should be: Operating system command) ESC ] P
nrrggbb: set palette, with parameter given in 7
hexadecimal digits after the final P :-(. Here n
is the color (0–15), and rrggbb indicates the
red/green/blue values (0–255). ESC ] R: reset
palette
16개의 팔레트 항목 중 어느 항목이 표시될 것인지 알려주는 데 사용되는 이스케이프 시퀀스어둑한그리고강조하다:
ESC [ 1 ; n ] Set color n as the underline color.
ESC [ 2 ; n ] Set color n as the dim color.
"xterm"으로 설정된 변형은 TERM
결과가 좋지 않습니다.
- Linux 콘솔 드라이버는 xterm 터미널 설명의 내용에 대한 지원이 부족합니다.
- 터미널
linux
설명은 Linux 콘솔 드라이버의 실제 기능을 사용하기 위한 것입니다.
infocmp linux xterm-256color
차이점을 보려면 사용하세요 . 꽤 길기 때문에 차이의 정도를 보여주는 요약은 다음과 같습니다.
$ infocmp -1x linux | wc -l
122
$ infocmp -1x xterm-256color |wc -l
272
$ infocmp -1x linux xterm-256color | wc -l
213