[macos] iTerm 2 : 키보드 단축키를 설정하여 줄의 시작 / 끝으로 건너 뛰는 방법?

Ctrl+ left/ right가 줄의 시작 / 끝으로 점프 함을 알 수 있습니다 . 이것을 Cmd+ left/ right arrow? 로 변경하는 방법

얻기 위하여 Alt+ left/ right arrow워드 점프 제대로 작동하기에 따라 이 문서를 .



답변

iTerm2에 다음 프로파일 바로 가기 키 추가

FOR  ACTION         SEND
⌘←  "SEND HEX CODE"      0x01
⌘→  "SEND HEX CODE"      0x05
⌥←  "SEND ESC SEQ"  b
⌥→  "SEND ESC SEQ"  f

필요한 사람들을위한 비주얼은 다음과 같습니다.

iTerm 추가 키 비주얼


답변

iTerm2에서 단어와 줄의 시작 / 끝을 건너 뛰려면 아래 두 가지 솔루션 중 하나 를 선택 하십시오.

1. 간단한 솔루션 (권장)

  1. 환경 설정 열기
  2. “프로필”탭을 클릭하십시오
  3. 왼쪽 목록에서 프로필을 선택하고 (예 : “기본”) “키”탭을 클릭하십시오.
  4. “사전 설정”다운 다운을 클릭하고 “자연 텍스트 편집”을 선택하십시오.

여기에 이미지 설명을 입력하십시오


2. 수동으로 키 매핑 (고급)

위에서 언급 한 “자연 텍스트 편집”사전 설정을 사용하지 않으려면 필요한 키를 수동으로 매핑 할 수 있습니다.

  1. 환경 설정 열기
  2. “키”탭을 클릭하십시오
  3. [+]아이콘을 클릭하십시오

이제 다음 단축키를 추가 할 수 있습니다.

커서를 한 단어 왼쪽으로 이동

  • 키보드 단축키 : +
  • 작업 : 16 진수 코드 보내기
  • 암호: 0x1b 0x62

여기에 이미지 설명을 입력하십시오

커서를 한 단어 오른쪽으로 이동

  • 키보드 조합 : +
  • 작업 : 16 진수 코드 보내기
  • 암호: 0x1b 0x66

커서를 줄의 시작으로 이동

  • 키보드 조합 : +
  • 작업 : 16 진수 코드 보내기
  • 암호: 0x01

커서를 줄의 끝으로 이동

  • 키보드 조합 : +
  • 작업 : 16 진수 코드 보내기
  • 암호: 0x05

단어 삭제

  • 키보드 조합 : +←Delete
  • 작업 : 16 진수 코드 보내기
  • 암호: 0x1b 0x08

줄 삭제

  • 키보드 조합 : +←Delete
  • 작업 : 16 진수 코드 보내기
  • 암호: 0x15

실행 취소

  • 키보드 조합 : +z
  • 작업 : 16 진수 코드 보내기
  • 암호: 0x1f

이전 바인딩제거하는 것을 잊지 마십시오 :

  • “프로필”탭을 엽니 다
  • 하위 탭 “키”를 클릭하십시오
  • 키 조합 + +에 대한 매핑 제거

답변

이미 좋은 답변이 많이 있지만, 쉘뿐만 아니라 가능한 한 기본 OSX 기능에 가장 가까운 것을 제공해야합니다. ZSH, Bash, node, python -i, iex 및 irb / pry 세션에서 작동한다는 것을 확인했습니다 (readline에는 rb-readline gem을 사용하지만 모두 작동해야 함).

열고 사용하여 ITerm 환경 설정 + ,와에 탐색 Profiles탭합니다 ( Keys탭이 사용되지만, 추가 프로필에 키 바인딩은 당신이 할 수 있도록 할 수 있습니다 프로필을 저장 여러 컴퓨터에 동기화) 및 keys하위 탭하고 다음을 입력 :

커서 왼쪽의 모든 문자를 삭제

+ ←Delete16 진수 코드 보내기 :

0x15더 호환되지만 기능은 때로는 커서 왼쪽의 문자가 아닌 전체 행을 삭제하는 것입니다. 나는 개인적으로 이것을 사용 ^U하고 커서 왼쪽의 물건 만 삭제 하기 위해 zsh bindkey를 덮어 씁니다 (아래 참조).

또는

0x18 0x7f호환성이 떨어지고 노드에서 작동하지 않으며 기본적으로 zsh에서는 작동하지 않습니다. zsh 를 수정하려면 아래를 참조하십시오 (bash / irb / pry는 양호해야 함) 작동 할 때 원하는 기능을 수행합니다.

커서 오른쪽의 모든 문자를 삭제

+ fn+ ←Delete또는 + Delete→16 진수 코드 보내기 :0x0b

커서 왼쪽에서 한 단어 삭제

+ ←Delete16 진수 코드 보내기 :

0x1b 0x08 엘릭서의 IEX 중단, 다른 곳에서는 잘 작동하는 것 같습니다

또는

0x17 모든 곳에서 작동하지만 IRB에서 정상적인 단어 나누기에서 멈추지 않고 리터럴 공간이 보일 때까지 삭제됩니다.

커서 오른쪽에서 한 단어 삭제

+ fn←Delete또는 + Delete→16 진수 코드 보내기 :0x1b 0x64

커서를 줄 앞으로 이동

+ 16 진수 코드 보내기 :0x01

줄 끝으로 커서 이동

+ 16 진수 코드 보내기 :0x05

커서를 한 단어 왼쪽으로 이동

+ 16 진수 코드 보내기 :0x1b 0x62

커서를 한 단어 오른쪽으로 이동

+ 16 진수 코드 보내기 :0x1b 0x66

실행 취소

+ z16 진수 코드 보내기 :0x1f

Redo는 일반적으로 bash, zsh 또는 readline에 바인딩되지 않으므로 사용하지 않는 16 진수 코드로 설정하여 zsh에서 수정할 수 있습니다

+ + Z또는 + y16 진수 코드 보내기 :0x18 0x1f

이제 작동하지 않는 문제를 해결하는 방법

zsh의 경우 다음을 실행하여 아직 작동하지 않는 + ←Delete+ + Z/ + y에 대한 바인딩을 설정할 수 있습니다
.

# changes hex 0x15 to delete everything to the left of the cursor,
# rather than the whole line
$ echo 'bindkey "^U" backward-kill-line' >> ~/.zshrc

# binds hex 0x18 0x7f with deleting everything to the left of the cursor
$ echo 'bindkey "^X\\x7f" backward-kill-line' >> ~/.zshrc

# adds redo
$ echo 'bindkey "^X^_" redo' >> ~/.zshrc

# reload your .zshrc for changes to take effect
$ source ~/.zshrc

bash 또는 readline에 redo를 추가하기위한 솔루션을 찾을 수 없으므로 누군가가 그 중 하나에 대한 솔루션을 알고 있다면 아래에 의견을 말하고 추가하려고 시도합니다.

키 시퀀스를 16 진으로 변환하는 방법에 대한 검색 테이블을 찾는 사람에게는 이 테이블이 매우 유용합니다.


답변

iterm2 에서 주요 환경 설정을 설정하려면 위에 나열된 학습서를 따르십시오 .

  1. 새로운 단축 키 만들기
  2. 조치로 “이스케이프 시퀀스 전송”을 선택하십시오.
  3. 그런 다음 아래 텍스트에서 cmd-left 를 설정 하십시오.
    • 입력 [H을위한 라인 시작
      OR
    • 입력 [F을위한 라인 끝

답변

iTerm 3.0.12에서는 Natural Text Editing사전 설정으로 전환 할 수 있습니다 .

여기에 이미지 설명을 입력하십시오

iTerm → 환경 설정 → 프로파일 → 키

경고 사전 설정이므로 이전에 바인딩 한 키를 무시할 수 있습니다. 따라서 사전 설정을 적용하기 전에 현재 키 바인딩을 저장하는 것이 좋습니다.


답변

iTerm2에서 줄의 끝 또는 줄의 시작으로 가고 싶은 사람을 빠르게 참조하려면 위의 링크
http://hackaddict.blogspot.com/2007/07/skip-to-next-or-previous-word- in-iterm.html은 iTerm2에서 다음과 같이
지적합니다.

  • Ctrl+ A, 줄의 시작 부분으로 이동
  • Ctrl+ E, 줄 끝으로 이동합니다.

답변

Travis 답변을 사용 했고 지침에 따라 가져올 수 있는 동적 프로필 을 만들었습니다 .

GabLeRoux / iterm2-macos- 동적 프로파일

지침은 readme에 있으며 수동으로 모두 추가하는 것보다 가져 오는 것이 훨씬 빠릅니다. 의견에 숨겨져 있기 때문에 @gooli의 요청에 따라 답변했습니다. 당신이 이것을 즐기기를 바랍니다