linux(gnu-) 화면: Ctrl-a(기본 명령 키)를 Alt-a로 "원샷" 재매핑

linux(gnu-) 화면: Ctrl-a(기본 명령 키)를 Alt-a로 "원샷" 재매핑

screens C-a또는 ^a(기본 명령) 바인딩을 다시 매핑 Alt-a하거나 ^[a기억하기 쉬운 일회성 명령/스위치를 사용하는 방법을 찾고 있습니다 . 나는 이것이 두 단계로 달성될 수 있다는 것을 알고 있지만 화면 자체에서만 가능합니다. 그러나 이상적으로는 screen실행할 때 명령줄에 몇 가지 인수를 전달하고 싶습니다 . 내가 찾고 있는 것은 Tmuxs 명령과 유사한 것 입니다 set prefix M-a(또는 오히려 비슷한 것입니다. 왜냐하면 afaik은 screenAlt/Meta 키에 대한 인간 친화적인 구문을 이해하지 못하기 때문입니다). 이 기본값을 다음으로 다시 매핑할 수 있다면 ^a더 좋을 것입니다 .AltGr-a

다음을 시도해 보세요:

1. $ screen  -e '\0033''\0141' 

이 값은 showkey에서 가져옵니다.

$ # showkey -a                                                                                                                                                                                                                                                                                                                                                                                                                                                    
    Press any keys - Ctrl-D will terminate this program                                                                                                                                                                                                                                                                                                                                                                                                                                       
    ^A        1 0001 0x01            < Ctrl-a                                                                                                                                                                                                      
    ^[a      27 0033 0x1b            < Alt-a yields 2 lines : first line                                                                                                                                                                                                                   
             97 0141 0x61            < Alt-a second line

첫 번째 행은 C-a키입니다. 2호선과 3호선은Alt-a 단일, 동시단추. 화면에 요청한 대로 2개의 문자가 표시되지만 -e예상대로 매핑하지 못했습니다.

  1. 내부 화면을 보면, 예시에서 보이는 것처럼 어떤 방식으로든 해당 -k옵션을 활용할 수 있지 않을까 싶습니다.bindkey수동, 내용은 다음과 같습니다.

명령: 바인딩키 [opts] [[명령어 매개변수]]

논쟁''는 작업이 바인딩되는 문자 시퀀스입니다. 이는 고정 문자열이거나용어 모자키보드 기능 이름("-k" 옵션을 사용하여 선택 가능)

문제는 Alt / AltGr키에 대한 "Termcap" 항목을 어디서 찾을 수 있느냐는 것입니다. man termcap아무것도 표시되지 않습니다.

또, 어쩌면 이SE 답변도움이 되겠지만 올바른 구문을 알 수 없습니다.


대신 이것을 사용하도록 제안하는 사람들을 위해 Tmux:

  • 여러 다른 서버로 SSH를 통해 연결해야 하는데, 창 변경, C-b C-b이전 서버로 돌아갈 수 없는 등 기본 키 바인딩이 어색합니다( C-b l이를 위해 사용해야 함).
  • 세션 잠금 없음
  • 내 화면의 "머슬메모리"
  • 그리고 필요한 경우 기억할 몇 가지 다른 질문도 있습니다. ;)

심지어 다시 매핑 AltGr<->는 Ctrl서버가 무료이기 때문에(X에 의해 오염되지 않음) X 관련 프로그램을 포함하지 않는 한 충분히 좋은 솔루션이 될 것입니다 X.

답변1

나는 종종 gnu 화면의 명령 문자로 ^A를 선택하는 것에 대해 궁금해했습니다. 왜냐하면 이 문자는 readline 등에서 유용하기 때문에 자주 사용하는 키 누르기 기능입니다.

어쨌든 저는 대신 ^X를 사용합니다(다른 목적으로 자주 사용되지 않기 때문입니다).

.screenrc에 다음을 추가하세요.

escape ^Xa

(에서https://www.gnu.org/software/screen/manual/screen.html#index-escape-character):

탈출

명령 문자를 x로 설정하고 리터럴 명령 문자를 생성하는 문자(메타 명령을 트리거하여)를 y로 설정합니다(-e 옵션과 유사). 각 인수는 단일 문자, ^x(Cx의 경우) 형식의 두 문자 시퀀스, 백슬래시 뒤에 8진수(문자의 ASCII 코드 지정), 또는 백슬래시 뒤에 두 번째 문자(예: ^ 또는 \. 기본값은 ^Aa입니다. 셋째, ^ 또는 \와 같습니다. 기본값은 ^Aa입니다.

관련 정보