Fn 키를 이용한 리맵

 

원래 이런쪽으로는 생각이 없었는데, TE 키보드 홈피에서 프로그래머/이맥스용 키맵이라고 예시가 나온걸 보니 Fn 키를 이용해서 아예 2개의 키배열을 사용하는식으로 만들어놨더군요. 많이 움직이는게 귀찮기도 하고(사실 이게 가장 이유입니다. ;;) 생각해보니 그러지 말아야 이유가 전혀 없어서 시도해보게 되었습니다.

사실 일반 문서같은 경우는 거의 home-row 알파벳 한글키가 있는곳에서만 손이 움직이지만, 소스코드의 경우는 특수문자를 굉장히 많이 사용합니다. 그리고, 그런 키들은 보통 키보드 바깥쪽에 많이 위치해서 손가락뿐 아니라 전체를 자주 움직여야 하고 이게 귀찮기도 하고 종종 어깨피로로 이어지더군요. 다행히 TE 키보드는 펌웨어를 통한 리맵기능이 아주 막강하기때문에 이걸 이용해서 각종 특수문자들도 키보드 중앙에서 해결하기 위해 리맵을 단행해보았습니다.

리맵이라곤 하지만 그냥 특수문자를 키보드 중앙으로 몰아넣은게 전부입니다.

1.png

2.png


일단, 이맥스를 자주 쓰긴 하지만, 그래도 커서이동은 vi 방식을 선호합니다. 이맥스식의 C-f, C-b, C-p, C-n 정말 불편한거같아요. - _-; 다만, vi 방식은 손이 home row jkl; 아니라 hjkl 위치해야 하는데, 이걸 수정해서 jkl; 움직일 있도록 만들었습니다. 거기 더해서 좌측손 home row 에는 home, end, pgdn, pgup 배치해서 역시 커서이동을 좀더 편하게 있도록 만들어봤습니다.

참고로, Fn 키는 원래 OS 플랫폼을 타지 않고 TE 키보드의 리맵방식은 아예 펌웨어 자체를 덮어쓰는 방식이기때문에 한번 설정만 해두면 어디에서나 동일하게 사용이 가능합니다. , 저런식으로 커서키를 매핑하면vi 커서이동방식을 윈도우 노트패드부터 시작해서 웹브라우저 에디터, 검색창, 리눅스 파일매니저, 이맥스까지 어디에서나 있게 됩니다.

좌우측 상단 가장자리의 각각의 3개는 손가락이 닿기 힘든 위치라 그냥 배제하다시피 했습니다. 기존 펑션키 위치의 키들은 아예 손이 떠서 가야하므로 없는셈 칩니다. 1 부터 0 까지의 숫자들은 처음에 자연스럽게 위쪽에 배치했었는데 써보니 아래쪽에 배치하는게 손이 편하더군요. 그래서 아래로 내렸습니다. 적응문제를 걱정했는데 생각보다 적응은 쉽게 되는거같고요.(typing.io 에서 Perl Moose 정주행 한번 하면 되는거같네요.) 키배치도 이리저리 많이 바꾸다보니 키배치 자주 바꾸는거 자체에 적응을 해서 빠르게 적응되는듯 합니다. - _-;

당연히 Fn 키를 아주 많이 쓰게 되기때문에 키는 가장 편리한 위치에 있어야겠죠. 왼손 엄지가 따로 움직이지 않고 바로 누를 있도록 스페이스바 위치에 박아버렸습니다. 그리고, 왼손 엄지로 Fn Shift 동시에 눌러주기 쉽도록 바로 옆에 shift 배치했습니다.

가운데 ctrl 박아놨지만 좌우측에도 역시 ctrl 박아놨습니다. 가운데에만 경우, C-x C-s 같이 한쪽에서만 움직이는 명령은 문제가 없지만, C-x C-u 등과같이 좌측영역에서 x 치고, 우측영역에서 u 치는식의 경우는 손이 꼬이거나 양손이 같이 두번 움직여야 해서 불편하더군요. 천상 엄지나 새끼같이 바깥쪽 키밖에 선택권이 없는데, 엄지쪽은 죄다 선점되었고 해서 보험용으로 새끼손가락쪽에도 만들어놨습니다. Alt+tab 이나 ctrl+alt+del 같은걸 한손으로 쓰기 편하도록 하기 위한 목적도 있고요.

그리고, vi 사용시를 위해 esc 키도 비교적 쉽게 누를 있는곳에 배치했고요.

키맵 바꾸는게 워낙 쉬우니 나중에  바꾸게 될수도 있겠지만, 어쨋건 Fn 사용하니 정말 편하네요. 특히 어떤 상황에서도 home row 에서 vi 커서이동이 되는건 정말 편리한것같습니다.