Mac OS X에서 Caps Lock을 Esc로 사용


449

Mac OS X Caps Lock에서처럼 작업하려면 어떻게해야 Esc합니까?


31
이것은 vim을 사용하는 프로그래머에게는 표준 작업 인 것 같습니다. 따라서 재개 투표
Jeromy Anglim

4
다른 방법은 Caps Lock을 컨트롤 (시스템 환경 설정> 키보드> 수정 자 키)에 매핑하고에 대한 이스케이프 시퀀스 Ctrl + [를 실행하는 것 입니다 esc. Vim에 유용합니다.
thelostspore

2
맥 OS 시에라 작동 기본 솔루션 : stackoverflow.com/a/41004544/1940276
케빈 로스

1
macOS Sierra에서 작동하는 기본 솔루션은 @rkusa에서 두 번째로 가장 좋은 답변입니다.
Marián Černý

답변:


394

편집 : 이 답변에 설명 된 것처럼 최신 버전의 MacOS는 이제 리 바인딩 Caps Lock을 기본적으로 지원 합니다 Escape. 따라서이를 위해 더 이상 타사 소프트웨어를 설치할 필요가 없습니다.


다음은 Seil (이전 명칭 :)을 사용하여이를 달성하는 방법에 대한 포괄적이고 시각적 인 연습 ( 링크 포함) 시도 PCKeyboardHack입니다.

  1. 첫째,에 이동 시스템 환경 설정을 선택, 키보드 , 다음 키보드 탭 (첫 번째 탭)을 클릭 수정 키 :

1 단계

팝업 대화 상자에서 Caps Lock KeyNo Action다음과 같이 설정하십시오 .

행동을 선택하지 마십시오

2) 이제 Seil 을 다운로드 하여 설치하려면 여기를 클릭하십시오 .

3) 설치 후 새로운 응용 프로그램이 설치되고 (Mountain Lion 이상) 이전 OS를 사용하는 경우 새로운 시스템 환경 설정 창을 확인해야 할 수 있습니다.

seil 또는 환경 설정 창 열기

4) "Change Caps Lock"박스를 체크하고 이스케이프 키의 코드로 "53"을 입력하십시오 :

키보드 코드를 설정

그리고 당신은 끝났습니다! 즉시 작동하지 않으면 컴퓨터를 다시 시작해야 할 수도 있습니다.

깊은 인상? 더 많은 제어를 원하십니까?

실제로 주요 키보드 리 맵핑 도구 인 KeyRemap4MacBook 을 확인하십시오 pqrs.org. 무료입니다.

이 도구를 좋아한다면 기부 할 수 있습니다 . 나는 그들과 관계가 없지만 오랫동안이 도구를 사용 해 왔으며 거기에있는 사람들은이 기능을 유지하고 기능을 추가하고 버그를 수정하는 훌륭한 일을 해왔다고 말해야합니다.

다음은 미리 선택할 수있는 몇 가지 옵션을 보여주는 스크린 샷입니다.

그림 1.png

PQRS에는 또한 추출 키를 다시 프로그래밍하기 위해 KeyRemap4MacBook 과 함께 사용할 수있는 NoEjectDelay 라는 훌륭한 유틸리티 가 있습니다 . 약간의 조정 후 AirPort Wifi를 토글하도록 설정했습니다.

이 유틸리티는 Mac 키보드를 다시 매핑 할 때 유연성이 무한합니다. 즐기세요!


3
정확히 2 년 동안 KeyRemap4Macbook 없이 PCKeyboardHack 만 사용하여 정확히 2 년 동안 사용하고 있음을 분명히하고 싶습니다 .
rossipedia

13
외장 키보드를 사용하는 경우 각 키보드에 대해 1 단계 (즉, Caps Lock = 동작 없음)를 반복해야합니다. 외장 키보드에 대해이 단계를 수행하지 못했습니다. 그 결과 실수로 캡 잠금 보호로 인해 캡 잠금이 매우 빠른 키 누름에 응답하지 않았습니다. superuser.com/questions/317900/eliminate-macbook-capslock-delay
Jeromy Anglim

11
훌륭한 튜토리얼. 약 1 년 동안 Caps Lock을 Esc에 매핑했습니다. 매우 효율적이었습니다. 그러나 어느 날 선임 개발자와 짝을 이루고있었습니다. Vim을 기본 편집자로 사용한다고 말했습니다. 나도 말했다. 그는 그의 기계를 열었고 우리는 일을 시작했습니다. 내 차례가 코드를 편집하려고 할 때, 그의 Caps Lock이 매핑되지 않았기 때문에 나는 뒤죽박죽 넘어졌다. 나는 계속 Esc까지 올라 가려고 노력했지만 Caps를 가끔씩 누르고 있으면 정상적인 명령이 바뀔 것입니다. 그는 Ctrl-c를 사용하면 다시 시각적 모드로 돌아갈 것이라고 가르쳤다. 자신에게 호의를 베풀고 Ctrl-c를 사용하십시오.
campeterson

7
(매일 더 배우는 것은) CTRL-[실제로 ESC와 동등한 것입니다. stackoverflow.com/questions/5030164/…
campeterson

5
좋은 것이가 @ rkusa의 대답에 따라 맥 OS 10.12.1의 기본 기능은 새로운 사용자가 다운로드 타사 소프트웨어 갈 필요가 없습니다 너무 지금 그 상단에 편집, 언급 또한 수 있다면
edhurtig

309

macOS 10.12.1부터 기본적으로 (시스템 환경 설정-> 키보드-> 수정 자 키) 로 다시 매핑 Caps Lock할 수 있습니다 Esc.

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


11
대박! 새로운 MBP에 이스케이프 키가 없다는 말을 듣고 이것을 발견했습니다. 애플이 약간의 반발을 예상 한 것처럼 보인다.
Andy E

1
El Capitan 10.11.6을 실행 중이며이 설정은 이미 사용 가능합니다.
zool

1
이것을 위해 신에게 감사하십시오; 시에라가 Seil / Karabiner를 파산 한 후 나는 내가 운명에 처한 것으로 생각했다.
필립

4
이상하게도, 나는 10.11.6에 있고이 옵션이 없습니다. esc를 caps, ctrl, opt 또는 command에만 다시 매핑 할 수 있습니다. 이것은 WASD 키보드 v2에 해당됩니다.
베니 파워

1
명령 줄을 통해이를 수행 할 수있는 방법이 있습니까? 아마도 이것들과 비슷한 방법일까요? github.com/herrbischoff/awesome-osx-command-line#keyboard
Jordan Eldredge

40

나는 여기에 대한 답변에 만족하지 않았고 명령 줄 솔루션을 찾았습니다 .

macOS Sierra 10.12에서 Apple은 사용자가 키를 다시 매핑하는 새로운 방법을 도입했습니다.

  • 시스템 GUI를 사용하지 않아도됩니다.
  • 특별한 권한이 필요하지 않습니다
  • 완벽하게 사용자 정의 가능
  • PCKeyboardHack / Seil / Karabiner / KeyRemap4MacBook / DoubleCommand / NoEjectDelay와 같은 타사 크랩을 설치할 필요가 없습니다.

그 소리가 당신에게 잘 들리면을 살펴보십시오 hidutil.

예를 들어 이스케이프하도록 caps-lock을 다시 매핑하려면 키 테이블을 참조하여 caps-lock에 사용 코드 0x39가 있고 이스케이프에 사용 코드 0x29가 있는지 확인하십시오. 다음 코드를 소스에 16 진수 값 0x700000000으로 넣고 다음과 같이 입력하십시오.

hidutil property --set '{"UserKeyMapping":[{"HIDKeyboardModifierMappingSrc":0x700000039,"HIDKeyboardModifierMappingDst":0x700000029}]}'

동일한 명령으로 다른 매핑을 추가 할 수 있습니다. 개인적으로 Caps-Lock을 백 스페이스에 다시 매핑하고 백 스페이스를 다시 매핑하여 삭제하고 싶습니다.

hidutil property --set '{"UserKeyMapping":[{"HIDKeyboardModifierMappingSrc":0x700000039,"HIDKeyboardModifierMappingDst":0x70000002A}, {"HIDKeyboardModifierMappingSrc":0x70000002A,"HIDKeyboardModifierMappingDst":0x70000004C}]}'

현재 매핑을 보려면

hidutil property --get "UserKeyMapping"

시스템 재부팅시 변경 사항이 손실됩니다. 그것들을 유지하려면 스크립트에 넣고 로그인 후크를 설정하십시오.

sudo defaults write com.apple.loginwindow LoginHook /path/to/login_script.sh

3
+! 이것은 macOS에서 키를 다시 매핑하는 현대적이고 올바른 방법입니다
Fanckush

2
Karabiner의 키 반복 문제로 인해 키 다시 매핑을위한 기본 솔루션을 찾게되었습니다. 이 게시물과 apple.stackexchange.com의 다른 게시물이 큰 도움이되었습니다.
chb

이것에 감사합니다, +1! 필자 는 Esc 키를 원하지 않지만 Caps Lock이 아닌 가난한 사람들에게 가치를 더하는 접선 메모를 Apple 게시물 에 추가했습니다.
tripleee

내장 키보드에 문제가있는 MacBook에 적합한 방법입니다. 내 키보드 설정에 문제가 발생하여 키를 다시 매핑 할 수 없었습니다.
Igor

LoginHook방법 으로이 작업을 제대로 수행 할 수 없었 습니다. 스칸디나비아 키보드에 대한 로컬 키보드 설정을 선택한 후에 뭔가가 추측 될 수 있습니까? 어쨌든, stackoverflow.com/a/22872222/874188 노트 LoginHook사용되지 않으며 옹호 사용하는 launchd대신.
tripleee

34

있을 수있다.

해결책 1

에서 arcticle TrueAffection.net합니다.

  • PCKeyboardHack을 다운로드하여 설치하십시오.
  • 시스템 환경 설정에서 PCKeyboardHack으로 이동하십시오.
  • 'Change Caps Lock'을 활성화하고 키 코드를 53으로 설정하십시오.

해결책 2

이 솔루션은 키보드 드라이버 패치를 포함하지 않지만 Vim 전용 솔루션을 제공합니다.

OS X은 Caps Lock 키를 전체 키에 매핑 할 수 있도록 지원하지만 .plist 파일을 편집하여 '수동으로'수행해야합니다. 프로세스는 이 기사 에서 설명 합니다. 이 힌트에 대한 부록으로 먼저 시스템 환경 설정에서 Caps-Lock을 없음으로 설정하는 것이 좋습니다. 그런 다음 .plist 파일에서 하나의 값만 변경하면됩니다. 또한 XML 변환 단계를 거치지 않고 속성 목록 편집기를 사용할 수도 있습니다.

요령은 Caps Lock 키를 대부분의 키보드에는없는 도움말 키 (코드 6)에 매핑하는 것입니다. 그러나 그렇다면 삽입 키로 취급되며 손을 뻗지 않도록 Caps Lock을 다시 매핑하는 것에 대해 묻기 때문에 어쨌든 사용하지 않을 것입니다.)

그런 다음 도움말과 Insert키를 Escvim에 매핑 할 수 있습니다 .

map  <Help> <Esc>
map! <Help> <Esc>
map  <Insert> <Esc>
map! <Insert> <Esc>

이것은 gvim (Vim.app)에서 작동합니다. 터미널에서 vim을 사용하지 못했고 MacVim으로 테스트하지 않았습니다.

따라서 이는 다소 복잡하고 반 구름 솔루션이거나 타사 해커를 설치하는 것입니다. 당신의 선택;)

편집 : 방금 주목 한 솔루션 3, MacVim 을 사용하는 경우 Ctrl, OptionCommand을 사용할 수 있습니다 Esc. 시스템 환경 설정을 사용하면 Caps Lock을 해당 키 중 하나에 매핑하는 것이 쉽지 않습니다.


1
해결 방법 3 : MacVim에서 Ctrl, Option 또는 Command를 Esc로 사용하는 방법은 무엇입니까? 환경 설정에서이 설정을 찾을 수 없습니다.
clizzin

시스템 환경 설정 => 키보드로 매핑하십시오.
maletor

9
당신이 암시하는 힌트는 어디에 있습니까?
Matthew Schinckel

2
Maletor-macvim에게 제어를 탈출로 사용하도록 지시 할 곳이 없습니다
Scott Schulthess

1
@MatthewSchinckel 여기에 그러한 링크가 있습니다 : hints.macworld.com/article.php?story=20060825072451882
Ben

33

macOS Sierra로 Caps Lock키를 매핑하는 것이 훨씬 쉬워졌습니다 Esc.

  1. 시스템 환경 설정 → 키보드를 엽니 다.

  2. 오른쪽 하단에서 수정 자 키 버튼을 클릭합니다.

  3. 다시 매핑하려는 하드웨어 키 옆에있는 드롭 다운 상자를 클릭하고 이스케이프를 선택하십시오.

  4. 확인을 클릭하고 시스템 환경 설정을 닫으십시오.

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

https://9to5mac.com/2016/10/25/remap-escape-key-action-macbook-pro-macos-sierra-10-12-1-modifier-keys/


30

내가 아는 유일한 방법은 Caps Lock을 Control, Option 또는 Command에 매핑하는 것입니다. 시스템 환경 설정의 키보드 및 마우스 패널을 통해 수행 할 수 있습니다. 왼쪽 하단에있는 "Modifier Keys"를 클릭하면 Caps Lock, Control, Option 및 Command를 그 중 하나에 다시 매핑 할 수 있습니다.

@Craig : Caps Lock 일반 (즉, 토글이 아닌) 키로 사용할 수 있음을 나타냅니다. MacBook에서 Caps Lock to Control을 다시 매핑했기 때문에 Caps Lock 표시등이 켜지지 않습니다. Control 키처럼 작동합니다.

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



1
슬프게도 로지텍 키보드와 함께, 그래서 CapsLock 키, 아니 정력 == 나를 돌아 키보드의 키 탈출하지
Enric 바스

14

Seil은 아직 macOS Sierra (10.12 베타)에서 사용할 수 없습니다. 따라서 다음 설정으로 Keyboard Maestro를 사용하고 있습니다.여기에 이미지 설명을 입력하십시오

이 github 의견에 대한 크레딧 : https://github.com/tekezo/Seil/issues/68#issuecomment-230131664


2
내가 사용하고 github.com/tekezo/Karabiner-Elements (시에라에서 작동). 나는 그것이 "Control_L (당신이 Control_L 만 전송 탈출을 입력 할 때 +) Control_L에"했다 할지라도, 지금까지 좋은 근무
atomkirk

1
@atomkirk 사용한 Karabiner JSON 구성을 공유 하시겠습니까?
LandonSchropp

1
{ "profiles": [{ "name": "Default profile", "selected": true, "simple_modifications": { "caps_lock": "escape"}}]}
atomkirk


Karabiner는 atomkirk의 JSON으로 나를 위해 속임수를 사용했습니다. 위의 스크린 샷에도 불구하고 Keyboard Maestro UI는 혼란스럽고 구성 할 수 없었습니다.
Paul

10

이 솔루션 중 몇 가지를 시도한 후에 몇 가지 메모가 있습니다.

DoubleCommand 를 사용하면 esc와 caps-lock을 바꿀 수 없습니다 .

PCKeyboardHack 사용하면 Capslock을 탈출,그러나 탈출을 capslock에 매핑하는 기능이 없습니다.. 최신 버전에서는 두 키를 모두 편집하여 완전한 스왑을 수행 할 수 있습니다.

이것은 귀하의 요구에 충분하거나 충분하지 않을 수 있습니다 (나는 그것이 나의 것임을 알고 있습니다).


1
PCKeyboardHack을 사용하면 이스케이프를 capslock에 매핑 할 수 없지만 동반 앱인 KeyRemap4MacBook 은 이스케이프를 지원 합니다. "Escape to CapsLock"및 "Shift + Escape to CapsLock"을 매핑 할 수 있습니다.
Rory O'Kane

9

타사 응용 프로그램을 설치하지 않고 iTerm 내부에서 vim 만 신경 쓰면 다음과 같이 작동합니다.

여기 설명 된대로 CapsLock을 도움말로 다시 매핑 하십시오 .

짧은 버전 : plutil 또는 이와 유사한 것을 사용하여 edit ~/Library/Preferences/ByHost/.GlobalPreferences*.plist시키십시오.

<key>HIDKeyboardModifierMappingDst</key>
<integer>6</integer>
<key>HIDKeyboardModifierMappingSrc</key>
<integer>0</integer>

재시작! 간단한 로그 아웃 및 로그인이 작동하지 않았습니다.

iTerm에서 도움말에 대한 새 키 매핑을 추가하십시오. 16 진수 코드 0x1b를 보내십시오. 이스케이프에 해당합니다.

나는 이것이 정확히 요구 된 것이 아니라는 것을 알고 있지만, 이와 같은 해결책을 찾는 많은 사람들의 의도는 실제로 이보다 전문화 된 변형이라고 가정합니다.


4

PCKeyboardHack과 KeyRemap4MacBook을 모두 사용하여 실제로 이스케이프 키를 Caps Lock 키 (하나만 매핑하는 것이 아니라)로 바꾸려면 이 스레드 의 지침을 따라야합니다 . 키보드이지만 KeyRemap4MacBook에 의해 설명됩니다 (예 : 110). 그런 다음 PCKeyboardHack에서 해당 키 코드를 이스케이프하도록 매핑하는 적절한 옵션을 선택하십시오 (110의 경우 "응용 프로그램 키에서 이스케이프"). KeyRemap4MacBook 환경 설정의 모양은 다음과 같습니다 ( "사용 가능"만 표시 확인란을 선택한 경우).

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

나는 원래이 정보 를 cwd의 우수 답변에 대한 편집 으로 게시하려고 시도했지만 거부되었습니다. 내가 설명하는 경로를 가고 싶은 사람은 먼저 자신의 답변을 읽도록 권장합니다.


2

Seil은 아직 macOS Sierra에서 작동하지 않으므로 Karabiner Elements를 사용 하고 있습니다 . https://pqrs.org/latest/karabiner-elements-latest.dmg 에서 다운로드 하십시오 .

GUI를 사용하거나 다음을 입력하십시오 ~/.karabiner.d/configuration/karabiner.json.

{
  "profiles" : [
    {
      "name" : "Default profile",
      "selected" : true,
      "simple_modifications" : {
        "caps_lock" : "escape"
      }
    }
  ]
}

Karabiner 요소가 터치 바와 fn 키를 끊습니다.
mperrin


1

키보드 환경 설정을 열고 수정 자 키를 클릭하십시오. 제어, 옵션, 이스케이프 또는 명령으로 Caps Lock 키를 변경할 수 있습니다.

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


9
그 중 어느 것도 "Esc"가 아니며, 포스터가 요구 한 것입니다. Vim 사용 가능성이 높습니다.
Rafi Jacoby

1
@RafiJacoby Esc과 의 차이점은 무엇입니까 Escape? (심각한 질문)
byxor

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