GUI 에디터 등을 사용하던 유저가 Vim이나 Emacs의 커서 이동 단축키를 보면 질릴 수 밖에 없다. 직관적인 커서키를 놔두고 h/j/k/l 같은 키 혹은 C-n / C-p / C-f / C-b 를 이용해야 되니 당연히 어색할 수 밖에 없다. 물론 두 에디터 공히 기본적으로 커서키로 커서를 움직이는 것도 가능하지만... 하지만 Vim이나 Emacs를 사용한다면 최소한 커서 이동 키는 빨리 익숙해 지는 편이 좋다.
물론 이유야 당연히 존재한다.
1. 편하고 피로가 덜하다.
가장 큰 이유는 편하다는 점이다. h/j/k/l 이 4개의 키는 키보드에 오른손을 놓은 기준위치이기도 하고 하여간 아주 가깝다. 멀리 떨어져 있는 커서키로 손을 옮길 필요가 사라져서 커서 이동에 피로가 덜하다.
Emacs의 Ctrl키 기반의 이동키는 Vim 보다는 피로가 많이 느껴진다고 생각된다. 하지만 커서키로 손을 옮겨야 되는 것 보다는 덜 할 수도 있다.
2. Vim/Emacs의 각종 기능과도 관계가 있다.
아래 Vim 윈도우 관련 글에서도 언급했지만 이 커서이동키는 윈도우 커맨드(Ctrl-w)와 조합해서도 쓸 수 있고 Visual-mode에서도 쓰인다. vim을 편하게 쓰려면 역시 익숙해 지는게 좋다.
역시 Emacs에서도 이 커서 이동키는 다양한 버퍼에서 비슷한 기능을 제공하기 때문에 필수적으로 알아둬야 한다.
3. 대중적이다.
이건 좀 특별한 이야기지만, Vim의 커서 이동키는 생각보다 상당히 대중적이다. 어떤 의미냐 하면 많은 서비스에서 이 키를 이동키 개념으로 쓰고 있다는 것이다. 특히 j, k키가 특별하다.
가장 가까운 예가 트위터 웹 사이트. j, k 키로 트윗 포스트를 이동할 수 있다. (심지어 Emacs의 twittering-mode 조차 j, k키로 포스트를 이동한다 -_-)
Google Reader의 경우도 단축키를 알면 편하다. j, k키로 위/아래 포스트를 열어준다. 또한 Emacs의 키도 차용하고 있는데 n, p의 경우 Emacs의 C-n, C-p와 비슷하게 포스트의 포커스를 아래/위로 이동시켜 준다.
이 외에도 vim의 커서 이동키를 단축키로 이용하는 프로그램이나 서비스는 제법 많다. 대중적이란 의미는 여기서 오는 것이다.
Emacs 키의 경우는 쉘에서도 굉장히 많이 쓰인다. 기본 설정 상태의 bash 를 이용한다면 Emacs키맵을 거의 그대로 이용 가능하다.
ps. 좀 다른 이야기지만, Mac OS X에서는 텍스트필드 자체에서 Emacs와 거의 동일한 C-a, C-e 키도 지원하는 경우가 많다. 이 키는 문자열의 처음 혹은 끝으로 이동하는 키로써 당연히 Home/End키를 누르는 것 보다 피로도 덜 하다. Vim에서의 비슷한 키인 0, $ 도 의외로 많은 서비스에 쓰인다.
Popular Posts
-
준비 우선은 정보부터 수집. 도데체 부트캠프냐 뭔지 잘 이해가 되게 설명해 주는 곳이 잘 없다. 어쨌든 알아낸 바로는, 부트캠프는 일반적인 윈도우가 설치되는 PC의 BIOS를 에뮬레이션 해 주는 서비스 라는 것을 알게 되었다. 우선 ...
-
macOS를 모하비(Majave)로 올리고 난 뒤 얼마 후 타임머신 백업이 계속 실패하는 현상이 발생 했습니다. 당시 2TB 외장하드를 타임머신 백업용으로 세팅해서 수 년 간 아무 문제 없이 잘 써 왔었기 때문에 좀 이상하다는 점을 느꼈습니다. 이 글...
-
스위프트(Swift)의 옵셔널(Optional)은 '값이 없음(No Value)' 이라는 것을 심어주기 위한 기능이다. 단순하게 사용하려 한다면 그저 nil 초기화 여부를 조사하기 위한 용도로써 쓸 수 있겠지만, 액세스라던가 옵셔널 체인...
-
UIView와 NSView는 다르다는 것을 또다시 체험해 보는 시간(-_-). 편의상 이젠 Objective-C 코드 예제는 생략하고 Swift 코드 예제만 남긴다. 어차피 메소드나 프로퍼티 명은 거의 동일하니... [참고] 이 글은 NSView ...
-
Vim이 강력한 편집기로써 군림하게 된 건 편한 키맵, 정규표현식, 그리고 이 매크로 레코딩 기능이 있기 때문이라고 감히 주장하고 싶다. 레코딩 기능은 사용자가 입력하는 키를 그대로 녹화해서 매크로로 만들어 주는 기능이다. 이 기능에 대해 간단히...
-
병렬 프로그래밍(Concurrency Programming) 이란 멀티스레딩 혹은 멀티프로세싱이란 말과 비슷한 개념이다. 백그라운드(background) 혹은 비동기(Asynchronous)로 작업을 처리한다던가, 동시에 여러가지 일을 처리하도록 하려...
-
Q. 1.3과 1.12 중 어느 버전이 더 최신 버전인가요? A. 1.12가 더 최신버전입니다. 위의 같은 질문류를 커뮤니티에서 본 적이 있는데 놀랍게도 1.3을 1.12보다 더 높은 버전으로 생각하는 사람이 많은 것 같았다. 그래서 이번에는 버...
-
내 나이대도 이제는 젊다고 하기에는 힘든(?) 수준으로 치닫고 있다. 세월의 흐름이 너무 빨라서 아쉽고 벅차고 숨차기는 하지만, 이럴 때 일 수록 추억을 떠올려 보면 나름 재미있는 세월을 보냈구나 생각이 든다. 이참에 옛날 옛적에 쓰던 구식 컴퓨터...
-
Xcode 6 Beta 4에서 부터는 플레이그라운드(Playground)와 관련해 뭔가 변화가 생긴 것 같다. 공유 데이터를 처리할 목적으로 어떤 디렉토리가 필요한데 이걸 자동으로 만들지 못 하는건지 아니면 원래 정상인데 Xcode의 버그인지 잘은 모...
-
NSButton을 사용 할 때, 특히 코드로 버튼을 붙이거나 이벤트 핸들링을 할 때 필요한 기초적인 내용을 메모. 편의상 Objective-C 코드는 생략하고 Swift 코드 예제만 남긴다.
Tags
Blog Archive
-
▼
2011
(273)
-
▼
3월
(44)
- Mac OS X 에서 동영상 기본 플레이어 설정하기
- [Linux] Ubuntu 에서 키보드 입력 시 마우스 커서 숨기기
- GOM Player for Mac
- [Python] Arguments of Function
- [Emacs] Anything 두 번째 이야기
- [Python] Socket Programming
- [Emacs] re-builder: 정규표현식을 만들어 보자
- [Emacs] twittering-mode 스테이터스(타임라인) 모양 바꾸기
- [Emacs] Dropbox + Emacs + markdown-mode + org-mode...
- [Vim/Emacs] 커서 이동 키에 빨리 익숙해져야 한다.
- [Vim] Copy, Cut and Paste
- [Vim] 윈도우 관련 단축키
- [Emacs] vim-mode
- [Emacs] viper-mode
- [iOS] 웹페이지 긁어오기
- [Python] Retrieve over the HTTP/HTTPS
- [Emacs] Byte Compile
- [Emacs] color-theme
- [Ubuntu] Firefox4
- [Emacs] Auto Complete Mode
- [Emacs] Twitter for Emacs: twittering-mode
- [Emacs] simplenote with Emacs
- [Emacs] 쉘(shell) 버퍼의 글자나 색상이 깨지는 경우
- [iOS] Xcode4 도움말에 iOS SDK용 API레퍼런스 문서가 없다?!
- ssh 인증 관련 메모
- Mac App Store에 MPlayerX가?!
- [Emacs] Lisp error: (void-variable SYSTEM_WGETRC)
- [Emacs] rebound-mode, rebound.el
- 기술적인 관점에서 본 셧다운제(신데렐라법)
- [Emacs] How to build TAGS using ctags?
- [Python] logger로 syslog쓰기 삽질 실패기
- iVl - iTunes와 iMovie를 위한 컨버팅 툴?
- [Vim] Path of the Current File
- [Emacs] blank-mode
- Emacs 머그컵
- Blogspot(Blogger)에 Facebook Social Commentary 달아보기
- [Emacs] Auto Indentation, 자동 들여쓰기
- [Emacs] ido - Interactive Do Things
- [Emacs] ELPA - Emacs Lisp Package Archive
- iPad2 발표와 관련한 잡설
- [Emacs] auto-install.el
- [Unix/Linux] 링크만 찾기 / 깨진 링크 찾기
- goosh.org(구글쉘) 검색 이야기
- March 1 Independence Movement Ceremony of Korea
-
▼
3월
(44)
0 comments:
댓글 쓰기