서브라임 텍스트에서 언급했듯 이 글은 VIA의 사용법을 다루는데에 그 목적이 있지 않다. 굳이 따지자면 이 글은 HHKB 이상의 배열에서 서브라임 텍스트의 key binding을 어떻게 적용할지에 대한 글이며, 앞선 글의 설계원칙 1에 의하여 Tap dance 등의 기능은 (적어도 Sublime Text의 key binding에 대한 것에서는) 사용하지 않을 것이므로 VIAVIAL나 이 글에서는 UI만 다른 똑같은 것으로 취급할 것이다.

서브라임 텍스트에서 정의한 key binding의 핵심은 snippet opener로 작용하는 키코드 Ctrl+Super+Shift+]이다. Sofle이나 Charybdis 같은 키보드라면 만만한 thumb cluster에 이 키코드를 넣으면 되겠지만 그 외의 경우에는 딱히 만만한 키가 있는 것이 아닌지라 가장 직관적인 \ 키를 비슷한 역할로 사용하기로 하였다. 사실 VIAVIAL은 기본적으로 GUI가 있어서 별로 기능설명이 필요없으니, 이 글은 결국

  • Any 키코드를 이용하면 VIA에서 Mod-Tap 기능을 넣을 수 있다.
  • 따라서 KC_BSLS 자리에 MT(MOD_LCTL|MOD_LGUI|MOD_LSFT, KC_BSLS)를 넣자

두 줄로 요약할 수 있다.

VIA

어쨌든 이 글의 제목이 VIA이므로 키보드를 연결하는 것부터 시작하자. 나는 PL87W 기준으로 시작한다. VIA 홈페이지에 들어가면 다음과 같이 큼지막한 Authorize device 버튼이 있다.

starting

이 버튼을 누르면 HID 기기를 선택하는 창이 나온다. VIA 지원 키보드라면 이렇게 했을 때 목록에 키보드 이름이 뜰 것이다.

selection

그러나 대부분의 경우 여기에서 키보드를 연결했다 해서 바로 설정이 가능해지는 것은 아닌데, 설정을 위해서는 VIA 레포지토리에 키보드가 등록되어 있어야 하지만 여기에 등록된 키보드 자체가 별로 없는 탓이다. 때문에 VIA에게 이 키보드가 무엇인지 알려줘야 하는데, 이를 위해 상단의 톱니모양 아이콘을 클릭해 설정으로 들어간 후, 설정 탭에서 Show design tab을 활성화하면 상단 탭이 하나가 추가된다.

design_tab

추가된 Design 탭에 가 보면, 다음과 같이 Load Draft Definition항목에서 json파일을 업로드할 수 있게 된다.

json_upload

이제 구글링을 통해 본인의 키보드의 설정 파일을 찾은 후, 이를 업로드해주면 드디어 키보드 설정을 할 수 있게 된다.

키 설정

내가 보편적으로 키보드들에 공통적으로 적용해주는 것은 다음과 같다.

  1. CapsLock 키를 Right Alt 키로 바꾸기.
    그 역할에 비해 CapsLock 키가 과도하게 좋은 자리를 차지하고 있다는 것은 잘 알려진 사실이다. 이 좋은 위치에 있는 키를 잘 사용하기 위해 HHKB에서는 이를 Ctrl 키로 활용하기도 하고, macOS에서는 이를 한/영 전환키로 사용하기도 한다. 나는 본격적으로 키보드 취미를 갖기 전에 macOS에서 문서 작성을 오래 해 와서 이 키를 한/영 전환 키로 사용하는 것이 익숙하다.
    한편 Windows 환경에서는 별다른 설정이 없을 경우 Right Alt 키를 한/영 전환키로 사용한다. Windows에서 키맵을 수정하는 것보다는 macOS에서 수정하는 것이 더 편하므로 우선 키보드의 CapsLock 키를 Right Alt 로 바꿔주었다.
  2. Left ShiftMT(MOD_LSFT, KC_CAPS)로 바꾼다.
    MT(mod,kc)는 탭에 kc를, 홀드에 mod를 내놓는다. (QMK Manual) 따라서, 이렇게 지정해주면 Left Shift 키는 누르고 있을 때는 Shift로, 짧게 눌렀을 때는 CapsLock으로 작동한다. 이는 VIA에서 별도로 제공하는 키는 아니지만, Special 탭의 Any 키를 사용하면 넣어줄 수 있다.
  3. Automator에서 설정한 빠른동작 단축키를 위해 Ctrl+Alt+Super+C,J,N을 지정해준다.
    여기에는 당연히 여러가지 방법이 있을 것이지만, 나는 이를 키는 보조 레이어의 C,J,N 자리에 두어 MO(1)키와 이들을 조합하여 누르는 것을 선호한다. 이들은 modifier가 적용된 일반 키코드로서, 굳이 매크로를 사용하지 않아도 LCAG(KC_C), LCAG(KC_J), LCAG(KC_N)를 사용하여 해당 자리에 넣어주면 잘 작동하는 것을 확인할 수 있다.
  4. BackslashMT(MOD_LSFT|MOD_LGUI|MOD_LCTL, KC_BSLS)로 바꾼다.
    그럼 Backslash 키는 이제 짧게 누를 때는 원래와 같이 Backslash를 주지만, 누르고 있는 동안은 Ctrl+Shift+Super로 작동한다. 따라서 서브라임 텍스트에서 정의한 key binding을 불러오기 위해서는 Backslash+]를 한 번 또는 두 번 누른 후 snippet에 해당하는 약자를 눌러주면 된다.

이제 여기까지의 과정을 마치면 대충 다음과 같은 형태가 된다.

modified

댓글남기기