맵 캡 잠금 키 키 또는 Windows 시스템의 키를 이스케이프합니다.
Windows에서 UNCAP의 작동 방식을 문서화하는 것 외에도이 readme에는 Linux 및 Mac에서 키를 다시 매핑하는 방법에 대한 자세한 설명서가 포함되어 있습니다.
다음 목록은 UNCAP의 일부 기능을 간단히 설명합니다.
Windows에는 하나의 키를 다른 키를 매핑하기 위해 사용할 수있는 몇 가지 다른 방법과 도구가 있습니다. 그러나 그들 중 어느 것도 위에 5 개의 기능을 열거 한 것 같습니다. 예를 들어, Scancode Map Registry 값을 편집하려면 모든 변경 후에 Windows 시스템을 재부팅해야합니다. 반면에 AutoHotkey는 추가 스크립트 파일을 작성해야합니다. 따라서 UNCAP는 위에서 설명한 5 가지 기능을 모두 지원하도록 작성되었습니다.
UNCAP는 단일 파일 실행 파일 : uncap.exe 입니다.
실행하는 가장 간단한 방법은 다운로드하고 두 번 클릭하는 것입니다. 출력 창이 표시되지 않습니다. 그것은 백그라운드에서 실행됩니다. 일단 실행되면 Caps Lock 키를 누르면 UNCAP에 의해 Escape 키로 번역됩니다.
사용자 정의 매핑을 지정하여 캡의 기본 매핑 키를 비난 할 수 있지만, UNCAP는 명령 프롬프트 또는 Windows 실행 대화 상자의 인수와 함께 실행되어야합니다. 다음 단계는 UNCAP.exe를 사용하여 캡을 왼쪽 제어 키에 매핑하는 데 사용될 수있는 방법을 보여줍니다.
uncap.exe Windows PATH 변수에 지정된 디렉토리로 복사하십시오. C:Windows 이 파일을 복사하기에 매우 편리한 위치입니다.
Windows Logo Key + R 을 눌러 Windows 실행 대화 상자를 시작합니다.
다음 명령을 입력하십시오.
uncap 0x14:0xa2
확인 버튼을 누릅니다. 이것은 UNCAP를 시작합니다. 출력 창이 표시되지 않습니다. UNCAP는 백그라운드에서 실행됩니다. Caps Lock 키가 지금 누르면 UNCAP가 왼쪽 컨트롤 키로 번역됩니다.
UNCAP을 종료하려면 다음 명령을 실행하십시오.
uncap -k
위의 단계에서 캡스 잠금 키는 0x14:0xa2 UNCAP의 인수로 지정하여 왼쪽 제어 키에 매핑됩니다. 캡스 잠금 장치의 가상 키 코드는 0x14 이고 가상 키 제어 코드 키는 0xa2 입니다. 따라서 인수 0x14:0xa2 는 캡을 맵핑하여 키를 제어합니다.
모든 키에 대한 Virtual-Key 코드 목록은 https://msdn.microsoft.com/library/windows/desktop/dd375731.aspx에서 찾을 수 있습니다.
인수없이 UNCAP가 실행되면 캡 잠금 키를 매핑하여 키를 탈출합니다. 캡 캡 잠금 키를 모든 키에 맵핑하는 인수로 실행되거나 키의 키를 키우거나 키를 비활성화 할 수 있습니다.
각 인수는 https://msdn.microsoft.com/library/windows/desktop/dd375731.aspx에서 콜론 분리 된 가상 키 코드 쌍입니다.
가상 키 코드는 위 URL에 언급 된 바와 같이 16 진수 또는 해당 소수점 표기법으로 지정 될 수 있습니다. 이러한 세부 사항은 아래 예제 목록에 설명되어 있습니다.
맵 캡 잠금 키를 탈출하려면 키.
uncap
Escape Key와 함께 캡 잠금 키를 스왑하십시오.
uncap 0x1b:0x14
Caps Lock 키는 이미 기본적으로 키를 탈출하기 위해 맵핑되었습니다. 위의 명령은 캡스 잠금 키에 키를 탈출하여 두 키를 효과적으로 교환합니다.
16 진수 정수는 사례에 민감하지 않으므로 다음 명령은 이전 명령과 동일합니다.
uncap 0x1B:0x14
가상 키 코드는 십진 표기법으로 지정 될 수 있으므로 다음 명령은 이전 명령과 동일합니다.
uncap 27:20
맵 캡 잠금 키로 왼쪽 제어 키.
uncap 0x14:0xa2
캡 캡 잠금 키 및 왼쪽 제어 키를 스왑합니다.
uncap 0x14:0xa2 0xa2:0x14
이 예제는 여러 키를 다른 키에 매핑하기 위해 둘 이상의 인수를 지정할 수 있음을 보여줍니다.
다음은 여러 키를 다른 키에 매핑하는 또 다른 예입니다. 다음 명령 매핑 캡 캡 잠금 키는 왼쪽 제어 키, 왼쪽 제어 키, 탈출 키 및 캡스 잠금 키를 탈출합니다.
uncap 0x14:0xa2 0xa2:0x1b 0x1b:0x14
키가 자체에 매핑되면 매핑이 발생하지 않습니다. 이는 매핑 캡 잠금 키의 기본 동작을 무시하기 위해 키를 피하고 키를 감지하지 않고 다른 키를 맵핑하는 동안 맵핑되지 않도록하는 데 사용될 수 있습니다. 다음은 Unmaps가 캡을 잠그고 F1 키를 맵핑하여 키를 탈출한다는 예입니다.
uncap 0x14:0x14 0x70:0x1b
키가 다른 키에 매핑되고 해당 키가 눌려지면 UNCAP는 새로운 키 스트로크를 합성하여 시스템에 주입하여 매핑 된 키로 변환합니다. 그러나 키가 자체에 매핑되고 그 키가 눌려지면 무시되므로 새로운 키 스트로크의 번역 또는 합성이 발생하지 않습니다.
키가 0에 매핑되면 키가 비활성화됩니다. 다음은 Caps Lock 키를 완전히 비활성화하는 예입니다.
uncap 0x14:0
UNCAP는 기본적으로 콘솔을 표시하지 않고 실행됩니다. 실행 중일 수있는 UNCAP의 다른 인스턴스를 종료하려면 -k 또는 --kill 옵션을 사용하십시오.
uncap -k
위의 명령은 콘솔의 유무에 관계없이 실행중인 UNCAP의 다른 모든 인스턴스를 죽입니다.
콘솔로 UNCAP을 실행하려면 -c 또는 --console 옵션을 사용하십시오.
uncap -c
UNCAP가 이와 같은 콘솔에서 실행될 때 Ctrl + C 누르면 종료 될 수 있습니다.
디버그 모드에서 UNCAP을 실행하려면 -d 또는 --debug 옵션을 사용하십시오.
uncap -d
디버그 출력에는 키의 모든 프레스 또는 키 릴리스에 대한 세부 사항이있는 한 줄의 출력이 포함되어 있습니다.
키 스트로크 세부 정보를 파일에 로그인하려면 -f 또는 --file 옵션을 사용하십시오.
uncap -f C:keys.txt
이 옵션만으로 UNCAP는 백그라운드에서 실행되며 KeyStroke 세부 사항을 지정된 파일에 로그인합니다. 이 옵션은 -c 또는 -d 와 결합하여 콘솔에서 UNCAP를 실행하거나 콘솔에서 각각 인쇄 디버그 출력을 실행할 수 있습니다.
지원되는 옵션과 함께 완전한 사용법 세부 사항을 참조하십시오.
uncap -h
Windows 10의 Microsoft Edge 웹 브라우저를 사용하여 UNCAP가 다운로드되면 때때로 키를 매핑하지 못합니다.
다음 조치는이 문제를 해결하는 데 실패한 것으로 밝혀졌습니다.
uncap.exe 마우스 오른쪽 버튼으로 클릭 한 다음 속성을 선택한 다음 차단 해제를 선택한 다음 확인을 클릭해도 문제가 해결되지 않습니다.
uncap.exe 마우스 오른쪽 버튼으로 클릭 한 다음 속성을 선택한 다음 보안 탭으로 이동 한 다음 편집을 클릭 한 다음 다음 두 계정을 제거하면 문제가 해결되지 않습니다.
Unknown Account(S-1-15-2-3624051433-2125758914-1423191267-1740899205-1073925389-3782572162-737981194)
Unknown Account(S-1-15-3-3624051433-2125758914-1423191267-1740899205-1073925389-3782572162-737981194)
이 계정은 Microsoft Edge로 다운로드 한 파일에 자동으로 추가됩니다.
다음 해결 방법은 문제를 성공적으로 해결하는 것으로 밝혀졌습니다.
uncap.exe 동일한 디렉토리의 새 파일로 복사하십시오. 실행시 새 파일은 키를 성공적으로 재발합니다. 마지막으로 다운로드 된 uncap.exe 삭제 한 다음 새 파일을 uncap.exe 로 바꾸고 정상적으로 사용하십시오.
uncap.exe 다른 디렉토리로 복사하십시오. 실행이 성공적으로 재발 할 때 새 복사 파일.
이 문제는 Windows 10 Pro의 Microsoft Edge Microsoft Edge 44.17763.1.0에서 관찰되었습니다.
Windows, Linux 및 Mac에서 하나의 키를 다른 키에 매핑하는 데 사용할 수있는 다른 도구와 방법이 있습니다. 이 섹션에서는 이러한 도구와 방법에 대해 설명합니다.
추가 소프트웨어를 사용하지 않고 Windows의 다른 키에 키를 매핑하는 한 가지 방법은 "HKLM System CurrentControlset Control Keyboard Layout"에서 "Scancode Map"이라는 값을 추가하기 위해 레지스트리를 편집하는 것입니다.
예를 들어, 캡스 잠금 키를 맵핑하기 위해 키를 탈출하려면 키를 탈출하려면 등록 항목 파일 (즉, reg가있는 파일) (uncap.reg)는 다음 내용이 포함되어 있습니다.
REGEDIT4
[HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlKeyboard Layout]
"Scancode Map"=hex:00,00,00,00,00,00,00,00,02,00,00,00,01,00,3a,00,00,00,00,00
그런 다음 파일을 저장하십시오. 그런 다음이 파일을 두 번 클릭하여 Windows 레지스트리에 추가하십시오. 그런 다음 Windows 시스템을 재부팅하십시오. 재부팅 후 Caps Lock 키를 누르면 Escape 키와 같은 기능을합니다.
명령 프롬프트에서 다음 명령을 실행하여 동일한 레지스트리 값을 추가 할 수 있습니다.
reg add "HKLMSYSTEMCurrentControlSetControlKeyboard Layout" /v "Scancode Map" /t REG_BINARY /d 00000000000000000200000001003a0000000000
레지스트리 값의 16 진 코드는 스캔 코드 맵입니다. 스캔 코드 맵의 형식은 https://msdn.microsoft.com/library/windows/hardware/jj128267.aspx#scan_code_mapper_for_keyboards에 자세히 설명되어 있습니다.
다음 명령은이 레지스트리 값을 보는 데 사용될 수 있습니다.
reg query "HKLMSYSTEMCurrentControlSetControlKeyboard Layout" /v "Scancode Map"
다음 명령을 사용 하여이 레지스트리 값을 제거 할 수 있습니다.
reg delete "HKLMSYSTEMCurrentControlSetControlKeyboard Layout" /v "Scancode Map"
이 방법은 추가 소프트웨어가 필요하지 않다는 장점이 있지만,이 방법의 단점은 레지스트리의 모든 변경 후에 시스템을 재부팅해야한다는 것입니다.
이 레지스트리 값을 관리하기위한 그래픽 사용자 인터페이스와 함께 제공되는 SharpKeys라는 도구가 있습니다. 그러나 Sharpkeys로 변경 한 후에는 다시 부팅이 필요합니다.
AutoHotkey라는 Windows 용 상당히 정교한 스크립팅 언어가 있으며, 이는 다른 많은 것 중 하나를 다른 키에 매핑하는 데 사용할 수 있습니다.
AutoHotkey를 사용하여 하나의 키를 다른 키에 매핑하는 것은 매우 간단합니다. 예를 들어, AutoHotkey를 설치 한 후 캡을 맵핑하기 위해 키를 탈출하여 autohotkey 스크립트를 만듭니다. 즉, AHK가있는 파일은 다음 내용이 포함 된 uncap.ahk라고합니다.
CapsLock::Esc
그런 다음 파일을 저장하십시오. 그런 다음이 파일을 두 번 클릭 하여이 스크립트로 AutoHotKey를 실행하십시오. 이 작업이 완료되면 Caps Lock 키를 누르면 Escape 키로 번역됩니다. AutoHotKey 아이콘이 알림 영역 (시스템 트레이)에 나타납니다. 중지하려면 아이콘을 마우스 오른쪽 버튼으로 클릭하고 '종료'를 선택하십시오.
이 방법은 시스템을 재부팅 할 필요가 없다는 이점이 있습니다. 그러나 AutoHotkey는 핫키 (단축키 키), 핫스트 링 (자동 재 위치), 매크로 (스크립트 액션) 등과 같은 여러 가지 다른 작업을 수행하는 데 사용할 수있는 스크립팅 언어입니다. 이는 다른 열쇠에 열쇠를 맵핑하기를 원한다면 슬레 지머로 파리를 죽이는 것과 비슷할 수 있습니다.
Linux에서 setxkbmap 명령을 사용하여 X Window 시스템의 다른 키에 하나의 키를 매핑 할 수 있습니다. 예를 들어, 다음 명령 매핑 캡 캡 잠금 키가 키를 이스케이프합니다.
setxkbmap -option caps:escape
각각에 대한 간단한 설명과 함께 옵션 목록은/usr/share/x11/xkb/규칙에서 현재 XKB 규칙과 동일한 이름의 .lst 파일에서 찾을 수 있습니다. 현재 XKB 규칙과 현재 매핑 옵션은이 명령의 출력에서 찾을 수 있습니다.
setxkbmap -query
예를 들어, 'evdev'가 현재 규칙으로 표시되면 각 옵션에 대한 간단한 설명과 함께 사용 가능한 옵션 목록은 /usr/share/x11/xkb/rules/evdev.lst를 참조하십시오.
위 명령의 출력에서 위의 명령의 출력에서 '규칙 :'로 시작하는 줄은 현재 XKB 규칙을 보여줍니다. 키 매핑 옵션은 위의 명령의 출력에서 '옵션 :'로 시작하는 라인에 표시됩니다. 그러한 라인이 없으면 키 매핑 옵션이 설정되지 않습니다.
다음 명령은 모든 키 매핑 옵션을 제거합니다.
setxkbmap -option
Linux에는 xmodmap 이라는 또 다른 명령이 있습니다. X Window 시스템에서 하나의 키를 다른 키에 매핑하는 데 사용될 수 있습니다. 그러나이 명령은 이제 쓸모없는 것으로 간주됩니다. 특히 키 매핑을 제거하는 동안 사용하는 것도 약간 서투른 것입니다. 이전 섹션에 설명 된 setxkbmap 명령은 X 창 시스템에서 키를 선호하는 방법입니다. 그러나이 섹션에서는 xmodmap 사용하여 하나의 키를 다른 키를 매핑하는 방법에 대해 설명합니다.이 방법은 여전히 사용 중이지만 점차적으로 사라지지만 여전히 사용 중이기 때문입니다. 예를 들어,이 섹션에서는 캡을 맵핑하여 키를 탈출하는 방법에 대해 설명합니다.
키 매핑을 수행하기 전에 X 윈도우 시스템에서 캡의 키 코드 잠금 키를 찾아야합니다. 키 매핑을 되돌리는 동안 유용합니다. Caps Lock 키의 키 코드를 얻는 명령은 다음과 같습니다.
xmodmap -pke | grep Caps_Lock
PC 키보드의 경우 키 코드는 일반적으로 66 입니다.
다음 명령은 캡 캡 잠금 키를 맵핑합니다.
xmodmap -e "remove Lock = Caps_Lock" -e "keysym Caps_Lock = Escape"
다음은 캡 잠금의 키 코드가 66 인 경우 캡 캡 잠금 키를지도하는 또 다른 명령입니다.이 명령은 keysym 대신 keycode 를 사용합니다.
xmodmap -e "remove Lock = Caps_Lock" -e "keycode 66 = Escape"
다음 두 명령에는 현재 세부 사항이 표시됩니다.
xmodmap -pm -pke
다음 명령은 매핑을 취소합니다.
xmodmap -e "keycode 66 = Caps_Lock" -e "add Lock = Caps_Lock"
keycode 는 위 명령에 사용됩니다. keysym Escape = Caps_Lock 위 명령에서 대신 사용되는 경우 캡 잠금과 같은 기능을 수행하기 위해 캡 잠금 키를 되 돌리는 것과 함께 Escape 키의 동작을 캡 잠금 장치와 같은 기능으로 변경합니다. keycode 66 = Caps_Lock 사용하면 캡 잠금 키의 동작 만 복원되도록합니다.
Linux에서 loadKeys 명령을 사용하여 하나의 키를 콘솔에서 다른 키에 매핑 할 수 있습니다. 이 섹션에서는 캡을 맵핑하여 키를 탈출하는 방법에 대해 설명합니다. 이 섹션의 모든 명령은 루트 또는 슈퍼업자로 실행해야합니다.
키 매핑을 수행하기 전에 콘솔에서 캡의 키 코드 잠금 키를 찾아야합니다. 이는 키 매핑을 되 찾는 동안 유용 할 것입니다.
다음은 콘솔에서 캡의 키 코드 잠금 키를 찾는 빠른 방법입니다.
dumpkeys | grep -E "CtrlL_Lock|Caps_Lock"
이 섹션에서는 Caps Lock 키의 키 코드가 58 이며 Caps_Lock 키에 매핑되어 있으며 대부분의 시스템에서 사실입니다. 데비안 기반 시스템에서 키 코드 58 CtrlL_Lock 에 매핑되어 데비안 버그 514464 및 커널 버그 7746을 중심으로 작업 할 수 있습니다.
다음 명령은 캡 캡 잠금 키를 맵핑합니다.
(dumpkeys | grep keymaps; echo keycode 58 = Escape) | loadkeys
다음 명령은 매핑을 취소합니다.
(dumpkeys | grep keymaps; echo keycode 58 = Caps_Lock) | loadkeys
MacOS Sierra 버전 10.12.1이므로 시스템 환경 설정을 통해 캡 잠금을 쉽게 맵핑 할 수 있습니다. 그렇게하려면 다음 단계를 수행하십시오.
OS X에서는 시스템 환경 설정을 통해 사용 가능한 매핑 옵션이 매우 제한적입니다. 예를 들어, 캡 잠금 장치가 탈출하기 위해 매핑 될 수 없습니다. 따라서 일반적으로 OS X에 키를 매핑하기 위해 추가 소프트웨어를 설치해야합니다.
OS X에서 하나의 키를 다른 키에 매핑하는 인기있는 도구는 SEIL입니다. 다음은 내 아름다운 여자 친구와 아내의 기사입니다. SEIL을 사용하여 OS X에서 탈출하기 위해 캡 잠금을 맵핑하는 방법을 설명하는 기사가 있습니다.
다음은이 프로젝트에 대한 유용한 링크 목록입니다.
이것은 무료 및 오픈 소스 소프트웨어입니다. MIT 라이센스의 조건에 따라 사본을 사용, 복사, 수정, 병합, 출판, 배포, 서브 리센스 및/또는 판매 할 수 있습니다. 자세한 내용은 License.md를 참조하십시오.
이 소프트웨어는 어떤 종류의 보증없이 "그대로"제공됩니다. 자세한 내용은 License.md를 참조하십시오.
버그를보고하거나 개선 사항을 제안하거나 질문을하려면 https://github.com/susam/uncap/issues를 방문하십시오.