Just a Blog

최근 설정한 Karabiner Element 세팅 본문

IT, Computer

최근 설정한 Karabiner Element 세팅

wehong 2018. 11. 21. 08:09

예전에 Happy Hacking Pro 2 type-s의 구매를 고려했지만, 최종적으로는 Realforce R2 PFU Limited Edition을 구매했다. 결정의 가장 큰 이유는, Happy Hacking에서 방향키나 기타 특수키의 입력에는 Fn키와 조합으로 사용해야 하는데 그게 편할 것 같지가 않았기 때문이다. 방향키,  Insert/Delete, Home/End, PageUp/Down, F1~F12키가 별도의 키로 배치되어 있어야 마음이 놓였다.


그런데 최근에는 반대로, 이러한 키가 별도의 공간을 가지고 배치되어 사용시에 손이 많이 움직여야 한다는 점이 불편하게 느껴졌다. 영문이든 한글이든 한참 타이핑하다가 커서를 움직여야 하면 오른손을 키보드의 오른쪽 공간으로 크게 움직여 조작해야 하는데 이것이 귀찮게 느껴졌다. 사실 이런 것을 극복하자고 만들어진 것이 Happy Hacking이니 Happy Hacking 키보드의 철학을 공감하게 된 것이나 다름없다.


Happy Hacking을 다시 구매한다는 것은, 그것에 필적하는 가격의 Realforce를 이미 구매했기에 여려웠다. 그래서 Realforce에서 부분적으로나마 이를 해결할 방법을 모색해 봤고, macOS를 사용하는 개인적 환경에서는 Karabiner Elements를 사용해 비슷한 환경을 꾸며보는 방법을 떠올렸다.


방향키를 영문 캐릭터 키 안으로 가져오기 위해서는 별도의 키와의 조합이 필요한데, 이전에 어떤 영상에서 본 Hyper key를 고려했다. Hyper Key는 일반적인 Application과 OS에서는 도저히 쓸 것 같지 않은 키의 조합으로 macOS에서는 'left Shift + left Ctrl + left Command + left Option'의 조합이다. 이렇게 4개의 키와 다른 키와의 조합은 일반적으로 사용되지 않을 것임으로 할당하기 편하긴 한데, 이런 조합으로 타이핑하는 것이 쉽지 않다. 그래서 보통 Caps Lock에 이 키를 할당하는데, 이번에 Karabiner에서 이렇게 바인딩해 보았다.


그리고 이 키와 i, j, k, l 키가 눌렸을 때 방향키의 역할을 하도록 했다. 많은 사람들은 VIM 처럼 h, j, k, l 키가 방향키의 역할을 하도록 하는데, 일렬의 배치보다는 텐키리스 키보드의 방향키 배치와 비슷한 배치를 선택했다.


설정할 키 배치의 구상은 다음과 같다.



다음은 ~/.config/karabiner.json 파일 안에, complex_modifications 세팅 안의 rules에 포함한 내용이다.

우선 Caps Lock 키를 Hyper Key로 세팅하는 부분이다.


아래의 배치는 메뉴얼이나 다른 사람의 설정 예제를 참조하여 작성한 것인데, 이제 보니 Karabiner Elements의 'Preferences'에서 'Complex Modifications' 탭을 누르고 하단의 'Add Rule' 버튼을 누르면, 이미 작성된 예제로 들어 있어 선택만 하면 된다. 상세한 내용은 https://www.nadeau.tv/configure-hyper-key-osx/ 의 글 전반부에서 볼 수 있다.


{
"description": "Caps_lock -> Hyperkey",
"manipulators": [
{
"from": {
"key_code": "caps_lock",
"modifiers": {
"optional": [
"any"
]
}
},
"to": [
{
"key_code": "left_shift",
"lazy": true,
"modifiers": [
"left_command",
"left_control",
"left_option"
]
}
],
"to_if_alone": [
{
"hold_down_milliseconds": 100,
"key_code": "caps_lock"
}
],
"type": "basic"
}
]
}


Caps Lock이 다른 키와 눌리면 4개 키의 조합으로, 단독으로 눌리면 Caps Lock 자체로 움직이게 하는 설정 내용이다.


다음은 i, j, k, l 키와 함께 입력되면 방향키로 동작하도록 설정하는 내용이다.


{
"description": "Hyperkey + j -> Left arrow",
"manipulators": [
{
"from": {
"key_code": "j",
"modifiers": {
"mandatory": [
"left_shift",
"left_command",
"left_control",
"left_option"
]
}
},
"to": [
{
"key_code": "left_arrow"
}
],
"type": "basic"
}
]
},
{
"description": "Hyperkey + l -> Right arrow",
"manipulators": [
{
"from": {
"key_code": "l",
"modifiers": {
"mandatory": [
"left_shift",
"left_command",
"left_control",
"left_option"
]
}
},
"to": [
{
"key_code": "right_arrow"
}
],
"type": "basic"
}
]
},
{
"description": "Hyperkey + i -> Up arrow",
"manipulators": [
{
"from": {
"key_code": "i",
"modifiers": {
"mandatory": [
"left_shift",
"left_command",
"left_control",
"left_option"
]
}
},
"to": [
{
"key_code": "up_arrow"
}
],
"type": "basic"
}
]
},
{
"description": "Hyperkey + k -> Down arrow",
"manipulators": [
{
"from": {
"key_code": "k",
"modifiers": {
"mandatory": [
"left_shift",
"left_command",
"left_control",
"left_option"
]
}
},
"to": [
{
"key_code": "down_arrow"
}
],
"type": "basic"
}
]
}


이 외에 추가로 u키와 o키를, macOS에서는 command+좌우방향키로, Parallels에서는 Home/End 키로 할당했다. 이렇게 설정하고 나니 타이핑 중에 잠깐 커서를 이동할 때 편안하다고 느꼈다.


Comments