아이콘, 커서 색상 및 기타 모든 색상 사용자 정의를 지원하는 Linux 터미널

아이콘, 커서 색상 및 기타 모든 색상 사용자 정의를 지원하는 Linux 터미널

evilvte 외에도 Linux에 충돌 없이 호스트별로 커서와 전경을 모두 지정할 수 있는 터미널 에뮬레이터가 있습니까?그리고배경색그리고 또한아이콘(즉, 실행 중인 애플리케이션이 최소화되었을 때 표시되는 아이콘)?

나는 꽤 많은 수의 다른 호스트에 SSH를 수행하고 있으며 내가 로그온한 호스트를 더 쉽게 추적할 수 있도록 각 호스트에는 고유한 색상 구성표(즉, 고유한 배경 조합, 전경 및 커서 색상) 터미널 Windows에 사용합니다. 이러한 터미널 세션 사이를 본능적으로 적절하게 탐색하기 쉽도록 터미널 에뮬레이터 설정을 사용자 정의하여 최소화되었을 때(또는 XFCE 데스크탑에서 ALT-TAB을 실행할 때) 아이콘이 색상 구성표를 반영하도록 합니다. 사용하고 있습니다.

(호스트에 사용하는 색 구성표와 일치하는 배경, 전경 및 커서 색상으로 터미널 그래픽을 생성하는 Perl 프로그램이 있으므로 작업할 모든 호스트에 적합한 아이콘을 쉽게 생성할 수 있습니다.)

이 접근 방식의 문제점은 작동하지 않는다는 것이 아니라(실제로 매력적으로 작동합니다!) 지원하는 충분히 좋은 터미널 에뮬레이터를 선택하기가 어렵다는 것입니다.모두다음 중:

  • 세션별로 사용자 정의 가능한 아이콘 그래픽(디스크의 모든 이미지를 지정할 수 있다는 의미).
  • 세션별로 사용자 정의 가능한 배경, 전경그리고커서 색상.
  • 바람직하게는 세션별로 사용자 정의 가능한 ANSI 색상('밝은' 색상 8~15 포함)을 사용하는 것이 좋습니다. 배경색이 빨간색인 경우 ANSI 빨간색과 밝은 빨간색을 조정하여 배경색과 약간 다르기 때문입니다. (예, 조정을 자동화하는 스크립트도 있습니다)

지금 나는 evilvte에 의존하고 있는데, 왜냐하면 아이콘과 모든 색상(커서, 전경, 배경, 굵게, 희미함 및 모든 ANSI 색상)을 사용자 정의할 수 있는 유일한 터미널 소프트웨어이기 때문입니다. evilvte의 문제는 세션당 하나의 별도 바이너리를 컴파일해야 한다는 것입니다(부분적으로 자동화되어 작동하지만 솔직히 꽤 추악한 접근 방식). 또한 evilvte는 너비/높이를 늘릴 수 있음에도 불구하고 터미널 창의 너비나 높이를 줄이는 것(즉, 열이나 행 수를 줄이는 것)을 지원하지 않습니다. evilvte의 또 다른 잠재적인 문제는 미래의 evilvte 버전에서는 작동할 수도 있고 작동하지 않을 수도 있는 모든 ANSI 색상을 조정하기 위해 상당히 추악한 해킹을 수행했다는 것입니다.

나는 gnome-terminal을 시도했지만 원래는 커서 색상을 사용자 정의하는 기능이 부족했고 일단 지원이 포함되었습니다.저것세션별로 아이콘을 사용자 정의하는 기능을 제거하기로 결정했습니다.

나에게 필요한 모든 기능을 제공하지만 evilvte를 사용할 때 겪는 골치 아픈 일이 없는 터미널에 대한 포인터라면 감사하겠습니다.

편집하다: Matt Jenkins는 나에게 xterm을 사용할 것을 제안하고 그것을 사용하는 방법에 대한 몇 가지 좋은 힌트를 제공하는 훌륭하고 잘 작성된 답변을 제공합니다. 불행하게도 xterm에는 내 요구 사항에 적합하지 않게 만드는 몇 가지 제한 사항이 있습니다(xterm은 단색 흑백 아이콘 픽스맵만 지원하며 하드 코딩되어 ANSI 색상으로 컴파일되어 있습니다). 그래서 나는 그의 대답을 받아들이지 않았지만(체크 표시 클릭) 여전히 한 지점을 "올렸습니다".

답변1

"konsole"이 당신의 친구인 것 같습니다.

여러 터미널 프로그램을 광범위하게 조사한 결과 다음을 발견했습니다.

  • konsole사용자 정의 색 구성표 설정을 지원합니다.

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

  • konsole사용자 정의 아이콘을 지원합니다:

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

  • konsole여러 프로필을 지원하므로 스크립팅이 필요하지 않습니다. 각 서버에 대해 새 프로필을 생성하기만 하면 됩니다. 프로필에 ssh 명령을 포함하여 서버에 자동 로그인할 수도 있습니다.

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

아, 그리고 konsole탭도 있으므로 복잡함을 줄이고 더 적은 수의 창에서 서버를 그룹화할 수 있습니다. (어쩌면 모든 웹 서버가 한 창에 있고 모든 파일 서버가 다른 창에 있을 수도 있습니다.)

창 관리자에서 아이콘("프로필" 아이콘과 별도의 아이콘)을 설정하려면 konsole 명령에 --icon 플래그를 지정해야 합니다.

$ konsole --icon /usr/share/icons/oxygen/16x16/apps/java.png

다음을 제공합니다.

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

이를 결합하면 --profile원하는 결과를 얻을 수 있습니다.

이 창 관리자 아이콘은 탭을 변경할 때 변경되지 않으므로 탭 그룹(예: 모든 웹 서버)을 식별하는 아이콘으로 사용할 수 있습니다. 또는 탭을 사용하지 않고 각 탭마다 하나의 창만 사용할 수 있습니다. 섬기는 사람.

답변2

대부분의 Linux 터미널 소프트웨어는 동작을 설정하기 위한 명령줄 플래그를 제공합니다. 심지어 가장 기본적인 xterm.

몇 가지 요구 사항을 해결해 보겠습니다.

  • 세션별로 사용자 정의 가능한 아이콘 그래픽(디스크의 모든 이미지를 지정할 수 있다는 의미).

이는 터미널 프로그램과 아무 관련이 없습니다. 이것은 터미널 프로그램을 실행하는 "바로가기" 아이콘입니다. 당신은.desktop파일 형식.

  • 세션별로 배경, 전경 및 커서 색상을 사용자 정의할 수 있습니다.

선호하는 터미널 프로그램에 어떤 명령줄 플래그가 있는지 조사해야 합니다. 예를 들어, xterm에는 -fg다음이 있습니다 -bg.

$ xterm -fg gold -bg darkblue
  • 바람직하게는 세션별로 사용자 정의 가능한 ANSI 색상('밝은' 색상 8~15 포함)을 사용하는 것이 좋습니다. 배경색이 빨간색인 경우 ANSI 빨간색과 밝은 빨간색을 조정하여 배경색과 약간 다르기 때문입니다. (예, 조정을 자동화하는 스크립트도 있습니다)

ANSI 색상은 미리 정의된 표준입니다. 변경해서는 안됩니다. 대부분의 터미널 프로그램에서는 일반 16개 ANSI 색상으로 제한되지 않는 다양한 색상 팔레트에서 "기본" 전경과 배경을 지정할 수 있습니다. 이러한 색상의 전체 목록을 보려면 rgb.txt 파일을 살펴보세요. Linux 배포판 어딘가에 있으며 "표준" X11 색상이 포함되어 있습니다. 우분투에서는 /usr/share/X11/rgb.txt에 있습니다.

추가적인 식별 기능으로 대부분의 터미널 프로그램에서는 창 제목을 설정할 수 있습니다. 예를 들어 좋은 xterm을 사용하면 다음을 사용할 수 있습니다.

$ xterm -bg darkblue -fg gold -title "My terminal"

그리고 실행 명령을 입력할 수도 있습니다.

$ xterm -bg darkblue -fg gold -title "Web Server" -e "ssh [email protected]"

결국은 다음과 같습니다.

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

해당 명령을 웹 서버 아이콘에 대한 포인터와 함께 "Web Server.desktop" 파일의 대상에 넣으면 bob이 여러분의 삼촌이 됩니다!

편집하다:

방금 아이콘을 사용하는 방법에 대한 내용을 읽었습니다.

제목 표시줄에 아이콘을 설정하는 것은 "iconPixmap" X 리소스를 설정한 경우입니다. 이는 -xrm"XBM" 파일을 가리키는 플래그를 사용하여 수행할 수 있습니다.

$ xterm -xrm '*iconPixmap: /path/to/icon.xbm'

관련 정보