콘솔에서 256 색 (tty)


11

내가없는 시스템이 있다고 가정 해보십시오 X server. 콘솔에서만 로그인 할 수 있습니다. 기본적으로 리눅스 콘솔은 8 가지 색상 만 지원합니다.

# tput colors
8

터미널 에뮬레이터 (예 : 터미네이터)에서와 마찬가지로 콘솔에서 256 색을 사용할 수 있습니까?

인터넷 검색을하는 동안 비슷한 질문 (10 세 이상)이 많이 있지만 명확한 대답은 없습니다. 누군가는 프레임 버퍼를 사용할 것을 제안하고, 어떤 사람들은 커널 부트 옵션에 TERM 인수를 추가 할 것을 제안합니다.

현재 커널 부트 매개 변수로 하나의 추가 옵션 만 전달합니다.

append="video=1280x720"

비디오 해상도를 전달하는 것은 kernel mode setting지원이 가능한 최신 커널에서만 작동한다고 생각 하지만 확실하지 않습니다.

현대 리눅스 콘솔에서 256 색상을 사용할 수 있습니까 (tty)

어떻게?

커널 4.1에서 Debian Wheezy를 사용하고 있습니다

최신 정보:

@muru의 제안에 따라 시도했습니다 fbterm. 256 색으로 작동하지만 매우 못생긴 글꼴이 있습니다. 게다가, 왼쪽 아래 모서리에 지속적으로 깜박이는 커서가 있습니다.

fbterm / framebuffer없이 콘솔에서 256 색을 사용할 수 있습니까?

콘솔의 8 색 한계는 어디에서 왔습니까?


FbTerm은 분명히 다음을 수행합니다. superuser.com/a/492078/334516 , askubuntu.com/a/57128/158442
muru

@muru-제안 해 주셔서 감사합니다. 내 질문을 업데이트했습니다.
Martin Vegter

물론 Linux 콘솔로 설정 TERM하면 xterm-256color다른 웜 캔을 열 수 있습니다. 이 링크 는 힌트를 제공합니다.
Thomas Dickey

RE : 업데이트 다른 글꼴을 사용하기 때문에 "못생긴 / 깨진"글꼴이 없습니다. 그것은 잘못 될 수 $TERM(수 있습니다 fbterm 전에 시작 fbterm32 비트 비디오 모드 또는 둘 다) 여부. 시작하기 전에 콘솔 커서를 해제 fbterm하고, 사용, 당신이 거기 일단 컴퓨터를 켭니다 tput. unix.stackexchange.com/questions/220330/…
Paul Wratt

BTW 나는 또한 fbterm소스를 보았고 , 이스케이프 코드 시퀀스를 xterm-256color대신 사용하도록 변환하는 것은 간단하지만 시간이 많이 걸립니다 ( fbterm-xterm). 은 $TERM또한 함께 인라인 될 필요가 terminfotermcap명명 규칙 ( fbterm-xterm-256color또는 fbterm-256color기존 쉘 스크립트로 "슬롯"에). 참고 fbterm사용 TERM=fbterm하는 스위치로는 256 색 옵션을 달리 자사의 16 색 (아니면 기본과 동일)를 켭니다.
Paul Wratt

답변:


2

실제 질문은 다음 두 항목으로 구성됩니다.

  • fbterm / framebuffer없이 콘솔에서 256 색을 사용할 수 있습니까?

  • 콘솔의 8 색 한계는 어디에서 왔습니까?

첫 번째로 : 분명히 아닙니다. 제안 된 모든 접근 방식은 fbterm을 사용합니다. 두 번째로 : 터미널 설명 (일명 "terminfo entry")에서 나옵니다. 로 TERM설정된 Linux 콘솔의 linux경우 터미널이 8 가지 색상을 지원한다고합니다. tput 은 터미널 데이터베이스에서 정보를 가져옵니다.

인용 된 스레드 의 항목 중 하나는 fbterm이 xterm과 색상을 설정하기 위해 다른 이스케이프 시퀀스를 사용한다고 말합니다. 이 경우 (그리고 Emacs 사용자가 하드 코딩하려는 경향이있는 경우) fbterm에 적합한 터미널 항목이 없습니다.


리눅스 커널 터미널 에뮬레이터는 최근 몇 년간 추가적인 SGR 지원을 얻었습니다 : github.com/torvalds/linux/commit/… github.com/torvalds/linux/commit/… github.com/torvalds/linux/commit/…
JdeBP

1
확인-체크인 주석을 읽지 않았을 수 있습니다. VGA 콘솔의 하드웨어 제한으로 인해 색상이 16 개의 전경 및 8 개의 배경으로 다운 그레이드 됩니다. fbdev 콘솔에서는 품질 손실없이 지원할 수 있지만 추가하려면 많은 양의 코드가 필요합니다. *
Thomas Dickey

나는 그 의견을 이미 읽었으며 그 이후로 SGR 지원을 추가로 받았다고 썼다 . (-: 그러나 여기에 2016 년에 쓴대로 항상 8 개의 색상 제한이있는 것은 아닙니다.
JdeBP

아직 8의 같은 팔레트의 ANSI 8 대담 / 밝은 ANSI 에 대한되었습니다으로 25+ 년 (와 ncurses를하기 때문에 리눅스 - 16color 항목을했다 2009 ).
토마스 디키

나는 이전에 커널 소스 (OP 시간에 대해)를 살펴 보았고 256 색 ( linux-256color) 을 허용하는 간단한 프로세스로 간주했습니다 . 이 패치는 Thomas Dickey가 위에서 언급 한 "하드웨어 제한으로 인한 것"과 같은 이유로 업스트림에서 허용되지 않습니다. IE Linux 최저 공통 분모에서 작동 해야합니다 .
Paul Wratt
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.