rxvt-unicode에서 색상 코드 정의

rxvt-unicode에서 색상 코드 정의

터미널에서 일부 도구를 사용할 node.js때 컬러 출력에 문제가 있습니다 . 보시다시피 색상 코드 90을 사용하는 일부 텍스트는mochaurxvt여기터미널에서 사라집니다.

tput colors출력은 다음과 같습니다: 256

다음 명령을 사용하세요.

(x=`tput op` y=`printf %76s`;for i in {0..256};do o=00$i;echo -e ${o:${#o}-3:3} `tput setaf $i;tput setab $i`${y// /=}(x=`tput op` y=`printf %76s`;for i in {0..256};do o=00$i;echo -e ${o:${#o}-3:3} `tput setaf $i;tput setab $i`${y// /=}$x;done)$x;done)

전 색상 다 있는 것 같아요.

그러나 내가 다음과 같이 응답하려고 하면:

echo '\e[0;90m shahin \e[m '

빈 줄이 인쇄됩니다! 이 색상 코드를 수동으로 정의하는 방법이 있습니까?

다들 감사 해요!

업데이트: 일부 이미지가 상황을 더 잘 설명할 것이라고 생각합니다. 다음은 finalterm터미널의 echo 명령 이미지 입니다 .

여기에 이미지 설명을 입력하세요.

결과를 여기에 배치했습니다 urxvt.

여기에 이미지 설명을 입력하세요.

이것이 결과이다이것 perl동일한 컴퓨터에서 실행되는 스크립트 urxvt:

여기에 이미지 설명을 입력하세요.

답변1

잘못된 이스케이프 시퀀스를 사용했습니다.

가깝지만( 로 시작 escape[, 로 끝남 m) 매개변수가 잘못되었습니다.

xterm 및 유사한 터미널에서 색상을 인쇄하는 데 사용되는 SGR(선택된 그래픽 렌더링) 이스케이프 시퀀스가 ​​세 개 이상 있습니다.

  • ANSI(색상 0-7), 매개변수 30-37(전경) 및 40-47(배경) 사용
  • aixterm(색상 8-15), 매개변수 90-97(전경) 및 100-107(배경) 사용
  • 256색(색상 0-255), 코드 사용38;5;범위(전경) 및48;5;범위(배경)

따라서 aixterm 전경색 8을 선택했습니다. 일반적으로 이러한 색상은 색상 0-7의 밝은 버전으로 나타납니다. ANSI 색상 0 예검은색. 유광블랙은...단말기에 따라 회색일수도 있습니다. 그냥 검은색일 수도 있어요.

어쩌면 다음과 같은 뜻일 수도 있습니다.

echo '\e[0;38;5;90m shahin \e[m '

이것이 이식 가능한 동안:

printf '\033[0;38;5;90m shahin \033[m \n'

추가 자료:

답변2

문제는 색상이 보이지 않는다는 것이 아니라
터미널 배경과 동일합니다(예: 어두운 회색).

기본적으로 투명한 색상이 하나 있는데, 아래에 터미널 기본 색상이 표시됩니다. 이 색상이 사용되는지는 확실하지 않습니다. 배경에 사용된 "검은색" 색상이 실제로 전경에 사용된 어두운 회색과 동일할 수도 있습니다.

가능하다면 GUI(예: konsole또는 gnome-terminal)를 사용하여 색상 설정을 쉽게 실험할 수 있고 변경할 수 있는 내용을 명확하게 보여주는 터미널을 엽니다. 아니면 그냥 시험해 보고 rxvt-unicode맞는지 확인해 보세요 .

해결책은 아니더라도 적어도 무엇이 잘못되었는지는 알 수 있을 것 같습니다.

아직 해결되지 않은 경우 여기에 새 정보를 제공해 주시면 세부 사항을 해결해 드리겠습니다.



참고 사항:

복사하여 붙여넣기를 통해 작업하라는 긴 명령을 얻지 못했지만 다음과 같을 수 있습니다.
colortest-256

colortest우분투 등의 패키지

시도해 보십시오 colortest-16. 문제를 설명하는 데 도움이 될 수 있습니다.
그렇지 않다면 스크린샷을 찍어주세요!

관련 정보