Control, Alt 및 Esc에 도달하기 어려운 경우 빠르게 입력


12

저는 Emacs를 처음 접했고 내장 튜토리얼을 시도하고 있습니다. 내가 기초를했다 후, 나는 정말 열심히 도달 발견 Ctrl하고 Alt또는 Esc키를. 더 빨리 입력하려고하는데 모든 명령에 이러한 키가 필요하기 때문에 전혀 빠를 수 없습니다. 검색했지만이 키에 대해 아무도 불평하지 않는 것 같습니다.

나는 이미 키 CtrlCaps Lock키를 바꿀 수 있다는 것을 알고 있지만 권장하지 않는다고 들었으므로 그렇게하지 않는 것이 좋습니다.

명령을보다 쉽게 ​​입력 할 수있는 방법은 무엇입니까?


7
몇 년 전 Caps Lock을 다른 Ctrl 키로 작동하도록 매핑했으며 emacs를 사용하지 않더라도 완전히 만족합니다. 홈 행에 직접 넣는 것이 훨씬 낫습니다. 누가 그것을 추천 할 것인지 전혀 모릅니다.
Ineu

1
이것에 대한 한 가지 논쟁은 아마도 나처럼 이것을하는 사람들은 항상 왼쪽 핑키와 엄지 손가락을 사용하여 수정 키를 누르는 것입니다. 보다 균형 잡힌 접근 방식은 오른쪽과 왼쪽 Ctrl 키와 Alt 키를 사용하여 한 손이 수정 자와 다른 키를 치는 것입니다. 그러나 나는 ctrl과 같은 caps-lock을 가진 수년간의 근육 기억을 가지고 있으며 그것에 만족합니다.
glucas

1
일반적인 "타이핑"을 위해 Ctrl과 Alt를 사용할 필요는 없습니다. 이러한 수정자를 사용하는 키 바인딩은 텍스트 탐색, 죽이기 (잘라 내기), k (붙여 넣기), 파일 열기 등을 도와줍니다. Vi를 제외하고는 모든 텍스트 편집기에서 이러한 유형의 기능에 수정 자 키를 사용하거나 마우스를 사용해야한다고 생각합니다. "빠른"이라고 말하면 기준 프레임은 무엇입니까? 무엇에 비해 빠른가? (참고로 : Caps Lock을 Ctrl에 매핑하는 것을 좋아하고 누구에게나 추천 할 것입니다.)
nispio

2
다음은 "Emacs Pinky"를 피하는 가장 좋은 방법은 무엇입니까? 라는 동일한 관련 스레드에 대한 링크입니다 . : stackoverflow.com/questions/52492/… 스레드의 날짜는 6 년이며 12,940 회 이상의 조회수와 31 개의 다른 답변이 있습니다.
법률 목록

1
Stack Exchange에 오신 것을 환영합니다. Stack Exchange는 설문 조사 질문을 수행하지 않기 때문에 설문 조사가 아닌 설문 조사 방법이 아닌 질문으로 귀하의 질문을 다시 말한 바 있습니다 .
Gilles 'SO- 악마 그만'

답변:


22

이것은 "답변"하기 어려운 질문이지만 몇 가지 생각입니다.

Emacs는 처음에는 이상하게 느껴질 것이기 때문에 기본 키 바인딩으로 잠시 작업 해보십시오. 작동하는 것과 작동하지 않는 것을 더 잘 이해할 때까지 주요 구성 변경을 제안하지 않습니다.

Caps-Lock vs. Ctrl 인수의 양쪽에 Emacs 사용자가 있습니다. 개인적으로 나는 caps-lock을 오랫동안 Ctrl 키로 사용했으며 매우 편리합니다. 나는 모든 수정 자 키에 왼손을 사용합니다. 일반적으로 Caps Lock( C-) 및에 대한 내 새끼 Shift손가락, Alt( M-)에 대한 내 엄지 손가락을 사용 합니다. 나는 이것을 몇 년 동안 해왔으며 그것에 만족합니다. 양손으로 수정 자 키를 칠 수 있다는 느낌이 들지만 그것이 내가 배운 방식이 아닙니다.

수정 자 키에 의존하지 않는 모드가 있습니다. Vim 스타일의 모달 편집을 좋아한다면 Evil 또는 더 Emacs와 같은 god-mode를 시도 할 수 있습니다 . 그러나 나는 여전히 기본값으로 시간을 보내는 것이 좋습니다.

Emacs에 익숙해지고 가장 유용한 명령과 모드를 배우면 키 바인딩으로 땜질을 시작할 수 있습니다. 기능 키는 접두사로 사용되어 수정자를 사용할 수 있지만 접두사로 사용할 수는 있습니다. key-chord 와 같은 패키지가 있으므로 반복 키 (예 jj:) 또는 키 코드 (예 :) jk를 명령에 바인딩 할 수 있습니다 . smartrep 와 같은 것들도 있습니다.이 명령을 사용하면 일부 초기 명령 후에 단일 키를 사용하여 명령을 계속 수행 할 수 있습니다.이 명령을 사용하면 일부 수정 자 콤보를 누르고 있지 않아도됩니다. 그러나 이러한 종류의 패키지를 설정하려면 리 바인드하려는 명령을 알아야합니다.


일주일 전에 나는 통제를 위해 모자 잠금 장치를 전환했으며 그것을하는 사람들에게 질문이 있습니다 : 당신은 새끼 손가락 또는 약지로만 모자 잠금 장치를 쳤습니까? 나는 일반적으로 코드를 작성할 때 핑키로 칠했지만 적극적으로 글을 쓰지 않을 때 (예를 들어 코드를 탐색 할 때) 훨씬 편안하게 내 손가락을 사용한다는 것을 알았습니다.
MonsieurBanana 2016 년

나는 항상 내 핑키를 사용한다고 생각하지만 어떤 것이 든 함께하십시오!
glucas

수정자를 사용하는 방법은 본질적으로 사용자와 동일하며 alt gr레이아웃에서 악센트 문자를 작성해야 할 때 오른쪽 엄지 손가락을 사용하여 키 를 누릅니다 . 실제로 자주 그것을 사용할 필요는 없지만이 접근법은 해당 키를 사용하는 레이아웃에 잘 맞습니다.
DoMiNeLa10

10

크리스마스를 위해 Kinesis 키보드가 있습니다. 나는 이것을 광고로 만들지 않도록 링크를 게시하지 않을 것입니다. 비슷한 품질의 키보드도 마찬가지입니다.

그 전에 추가로 Ctrl매핑 된 Steelseries 키보드가있었습니다 Caps Lock. 내가 배워야 할 중요한 것들 (이전 키보드로)은 다음과 같습니다.

  • 보도 M-x 손을. Ctrl랩톱 키보드에서 올바른 키를 찾을 수 있지만 이전 데스크톱 키보드에서는 키를 찾을 수 없습니다. 이 행할 수에 도달하면 언론에 배워야한다 C-x, C-r, C-s, C-a, C-eC-c함께 등 모두 너무 손.
  • Shift가능할 때마다 올바르게 사용하십시오 .
  • 당신이 직선 키보드를 고수한다면, 당신은 새끼 손가락을 훈련시켜야합니다! 피아노 연주자가 다섯 손가락 운동을하는 것과 같은 방식입니다.
  • 사용하지 마십시오 Home, Pagup, PagedownEnd뿐만 아니라 kyes 화살표.
  • 일부 명령에는 대체 키 바인딩이있을 수 있지만 더 길지만 더 쉽게 누를 수 있습니다 (동시에 더 적은 키를 눌러야 함).
  • 인체 공학적 키보드를 사용하기로 결정한 경우 다시 매핑을 수행해야하며 새끼 손가락을 훈련시키는 대신 엄지 손가락을 훈련해야합니다.

1
"양손"팁에 대한 찬성, 그것은 당신이 자주 보지 않는 팁입니다. 나는 너무 자주 C-x C-f내 왼손으로하고 내 핑키를 다치게하기 시작합니다. 대신 오른쪽 검지 손가락을 오른쪽 컨트롤에 놓고 왼쪽 검지 손가락을 x, f에 대면 훨씬 좋습니다.
robru

피아노에 대해 말하면 엄지 손가락을 사용하여 수정자를 누르십시오 (스케일을 연주 할 때와 같이). 예 : 엄지 손가락을 아래로 향하게하고 Ctrl팔을 굴린 x다음 집게 손가락으로 누릅니다 . 손을 꽉 쥐는 대신 긴장을 풀고 큰 팔 근육을 사용합니다. 모든 콤보에는 적용되지 않지만 왼쪽 하단의 C-a C-c C-d C-s C-x"스크래치 페스트 (scrunch fest)"에 대해서는 특히 시도해 볼 수 있습니다 .
Greg Hendershott

4

1 단계, evil-mode를 설치하십시오 ( http://www.emacswiki.org/emacs/Evil ). vim 키 바인딩을 사용하고 텍스트 객체와 같은 고급 vim 기능을 제공하므로 Ctrl, Alt를 훨씬 적게 입력하십시오.

2 단계, 악한 리더 ( https://github.com/cofi/evil-leader )를 사용하고 리더 키를 누른 다음 ( ","에 매핑) 먼저 키 조합을 입력하여 명령을 트리거하십시오. 그것을 최대한 활용하십시오. 더 이상 Ctrl 및 Alt가 필요하지 않습니다. 예를 들어 Mx를 대체하기 위해 ", mx"를 사용합니다.

3 단계, evil-escape ( https://github.com/syl20bnr/evil-escape )를 설치하고 "kj"를 눌러 "Cg"및 "ESC"를 시뮬레이션합니다.

이 솔루션은 모든 터미널, BTW에서 작동합니다.

훌륭한 예는 spacemacs https://github.com/syl20bnr/spacemacs입니다 (그러나 SPACE 키는 리더 키로 사용됨)


2

Dvorak 레이아웃을 사용하고 Emacs 기본 키 바인딩에서 잘 작동한다는 것을 알았습니다. C-n홈 행 C-p에 있고 새끼 손가락 대신 검지로 누를 수 있습니다. C-u(접두사 키)도 홈 행에 있습니다.

특정 키 조합을 입력하는 것이 더 쉽기 때문에 모든 키보드에서 Caps Lock 및 Ctrl을 교체했습니다. M-x왼쪽 Alt및 오른쪽보다 누르기가 더 쉽기 때문에 스페이스 바 오른쪽의 메뉴 키에 바인딩 했습니다 x.

그 외에는 god-mode더 긴 편집 세션을 좀 더 편안하게 만드는 데 사용 합니다. Emacs 키가 장애물이 아니며 기본값을 주로 사용합니다.

@glucas와 같이 Ctrl에는 왼쪽 핑키를 사용하고 왼쪽 Alt 키에는 왼쪽 엄지 손가락을 사용합니다. 진정한 인체 공학적 키보드에서 왼쪽 스페이스 키를 Alt에 바인딩하여 일반 키보드보다 훨씬 덜 어색합니다.

Ctrl과 Caps Lock을 교체하여 왼손에 너무 많은 스트레스가 걱정되는 경우 Ctrl 키를 Return 키에 바인딩 할 수도 있습니다. 자세한 내용은이 기사를 참조하십시오 : http://emacsredux.com/blog/2013/11/12/a-crazy-productivity-boost-remap-return-to-control/


1

TL; DR : 중요한 키에 도달하기 어려운지 확인하십시오.

"Emacs Pinky"에 대한 예방책으로 Kinesis에 대한 두 번째 wvxvw의 답변입니다. 나는 14 년 동안 광산을 사용해 왔기 때문에 지금까지 투자는 많은 돈을 벌었 다. Kinesis에서 맨 아래 행 을 수정 자 ( s-H-C-M/ M-C-H-s)에 매핑하고 Mode_switch"내장 화살표 키"에 액세스 할 수있는 엄지 키가 있습니다. 이 설정은 원하는대로 거의 남겨 두지 않습니다.

랩톱에서 입력하거나 입력 해야하는 경우가 여전히 있으며, 비슷한 설정을하고 숫자 행 을 수정 자에 다시 매핑 하고 기능 키 에 숫자 기호를 넣습니다 (내 .xmodmap 또는 .xkb 파일 참조) 세부). 다시 말하지만, 손목에 비틀림이 적고 새끼 손가락에 전혀 스트레스가 없음을 의미합니다.

최근 몇 개월 동안 나는에 사용하는 손가락에 약간의 스트레스 나타났습니다 ControlMode_switch노트북에 있습니다. 스트레스를 감지 할 때 항상 스트레스를 줄이는 것이 좋습니다. 나는 끈적 끈적한 키로 놀았 지 만 현재 지원하는 것이 많이 필요하다는 것을 알았습니다. 그들은 정말 좋은 생각이기 때문에 유감입니다.

그러나 나는 신 모드로 운이 좋았습니다.이 모드 는 수프 모양의 끈적 끈적한 Control열쇠와 같지만 Emacs에서만 가능합니다. 그와 함께 장난 악 모드 , 내가 관찰 이 비슷한 끈적 정의하기 간단 것으로 Meta키를 - 또는 다른 수정 또는 포함 된 레이어를 정의 할 수 있습니다. 선택된 키맵은 다소 개인적이지만, evil-dvorak 은 하나의 관련 최적화입니다.

"emacs에 살기"가 상당히 높은 수준으로 도움을 준 주요 인체 관련 관련 사용자 정의를 요약하면 다음과 같습니다.

~ 10 년 : Kinesis, dvorak, Xmodmap / Xkb, Ratpoison (중요 : RP의 이스케이프를 도달 범위 내로 설정하는 것이 C-t기본값이지만 쉽게 개선 될 수 있음)

~ 1 년 : Pentadactyl ( Emacs 바인딩 포함 ), God 모드 + Evil 모드 (거룩하지 않은 동맹) 및 하루 중 일부를 스탠딩 데스크로 전환. 또한 명령을 빠르게 입력하기위한 Helm.


0

오랜 emacs 사용자들에게는 이것이 매우 감동적인 주제라는 것을 알게 될 것입니다. 여기에 다른 답변이 제안했듯이 특정 키보드에서 입력하는 언어에 대해 어떤 키 시퀀스가 ​​특히 어려운지 알아 내려면 약간의 기본값을 사용해보십시오. 그런 다음 Ctrl, Meta 및 Escape와 같은 중요한 키를 한두 개 다시 매핑하십시오. 랩톱 및 OS에 따라 여러 가지 방법으로 다시 매핑 할 수 있습니다. 예를 들어 Mac OS X에서 Karabiner 와 함께 키보드 환경 설정 패널 은 키의 재 맵핑을 찾기에 충분합니다. 한 번에 하나의 솔루션을 사용하여 필요에 맞는지 확인하십시오. 필요에 맞는 것을 찾는 데 시간이 걸릴 수 있습니다. 장시간 사용자는 새끼 손가락이 너무 많이 걸리지 않도록 제안합니다. 조심하십시오.


0

이 문제는 Emacs에만 국한되지 않습니다. 키 바인딩으로 제어 할 수있는 다른 프로그램의 사용자들도 어려움을 겪습니다. 이맥스는 더 많은 명령을 가지고 있기 때문에 더 큰 범위를 가지고 있습니다. 근본적인 이유는 필요한 모든 명령에 필요한 키가 충분하지 않기 때문입니다. 이론에 관심이 없으면 마지막 단락으로 건너 뜁니다.

확실한 해결책은 Emacs 명령을위한 추가 키보드를 추가하는 것입니다. 그러면 총 200 개의 키가 생깁니다. 그런 다음 더 느리게 입력합니다. 실제로 표준 키보드의 100 개 키는 터치 입력하기에 너무 많습니다. 인간은 손목을 움직이지 않고도 한 손으로 최대 22 개의 키에 도달 할 수 있다고 추정합니다.

더 빨리 입력하려면 수정 자 키를 손가락 아래로 이동합니다. 그런 다음 라틴 문자를위한 키가 충분하지 않습니다. 예를 들어, 'j'는 수정 자 키이며 'j'를 누른 다음 'd'를 누르면 문자 'j'가 생성됩니다. 모든 문자에 대해 수정 자 키를 누르지 않으려면 모드 와 모달 편집기를 사용하십시오. 예를 들어, 삽입 모드에서 'j'는 문자 'j'를 생성합니다. 명령 모드에서 'j'프리폼 컷 (kill); 모드를 전환하는 키가 있습니다. (이러한 예제는 편집기에서 구현되지 않으며 단지 예제 일뿐입니다.)

Vim은 유명한 모달 편집기입니다. 위에서 언급했습니다. Emacs는 프로그래밍이 가능하기 때문에 God Mode라고 불리는 모달 마이너 모드가 있습니다. 그것은 개선 될 수 있지만 필요를 충족시킵니다. 신 모드에서는 모든 Emacs 명령에 대해 새로운 키 바인딩을 배울 필요는 없지만 모든 키 바인딩을 머리 속의 일련의 키로 변환해야합니다. 예를 들어 'gw'는 'M-w'에 바인딩 된 명령을 생성합니다.


0

한마디로 엄지 손가락으로 쉽게 누르십시오. Kinesis없이 할 수 있습니다.

이제 세부 사항입니다. 일본어 키보드 예 :

일본어 키보드
(출처 : owltech.co.jp )

그리고 맨 아래 행을 사용하여 모두 같은 예 AltShiftCtrlShiftAltEscBSSpaceRetTab, 물리적 인 스페이스 바를되는 가운데 하나. 그것은 당신이 공간을 혼자 누르면, 그것은 평범한 공간이지만 다른 사람들과 함께 누르면 Ctrl이 될 것임을 의미합니다. Alt / Esc, Shift / BS 등에서 동일

실제로이를 달성하는 방법은 "Emacs Pinky"를 피하는 가장 좋은 방법무엇입니까?를 참조하십시오 . stackoverflow.com에서. (이 질문은 이미 Gilles 에 의해 언급되었습니다 )

ebay.com 또는 amazon.com에서 일본어 키보드를 구입할 수 있습니다. amazon.co.jp는 영어로도 제공됩니다.


0

왼쪽 엄지 손가락을 사용하여 왼쪽 alt(즉, metaemacs) 키를 쉽게 누를 수 있으며, 원래의 Ctrl 키 기반 단축키 대신 모든 일반적인 기능 (예 : 커서 이동)을 메타 키 기반 단축키로 리 바인드 할 수 있습니다. 내 init.el 파일 에서 수행 합니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.