현대 텍스트 에디터는 모두 찾기 기능을 갖고 있다. 윈도우 기준으로 보통 F3 이나, Ctrl + F 로 찾을 수 있고, 바꾸기는 Ctrl + R 단축키로 대부분 실행된다. Vim 에서도 찾기 기능을 제공한다. Vim 문자열 찾기 vim 에서 문자열을 찾는 방법은 2가지다. 커서 다음 부분을 찾아갈지, 커서 이전 부분을 찾아갈지에 따라 두 가지로 나뉜다. / - 다음 문자열 찾기 /{찾을 문자열} - / 키 입력 후 '찾을 문자열'을 입력하여 현재 커서 다음에 나타나는 '찾을 문자열'로 커서를 이동시킬 수 있다. Normal 모드에서 / 를 입력하면 하단 Status Bar 에 그대로 / 가 표시되는 것을 확인할 수 있다. 이 때, 찾기를 원하는 문자열을 써 넣으면 된다. 찾기를 수행하면 에디터는 해당 ..
Vim 특정 문자로 커서 이동하기 이번에는 f, F, 't', T' 키를 활용해서 한 줄 안에서 특정(지정한) 키로 이동할 수 있는 방법을 알아본다. 앞서 살펴보았듯, 문자 단위로 한 글자씩 좌, 우로 이동할 수 있었는데 h, l 로 가능했다. 단어 단위로 점프하고자 할 때는 w, W, b, B, e, E 등을 활용했다. 그러나 때로는 단어 단위가 아니라 '특정 문자까지'를 명령의 대상으로 삼고싶을 때가 있다. 다음 코드를 보자. Calculator c2 = new CalculatorDecoMinus(); // 주석만 남기고 싶다면? ↑ 커서는 C 위치에 있다고 가정 현재 커서가 맨 첫번째 문자 - C 에 있다고 가정하자. 이 때, 주석만 남기고자 한다면 어떻게 할 수 있을까? 한번 생각해보자. 다양한 ..
Vim Visual Mode Vim 에서 블록을 씌우고 싶을 때 사용하는 것이 Visual Mode 이다. Visual Mode 를 활용하면 다음 스크린샷과 같이, 텍스트에 블록을 씌울 수 있다. 이렇게 Visual Mode 로 블록을 씌운 뒤 특정 명령어를 통해 해당 문자열들을 컨트롤 할 수 있다. 블록을 씌운 뒤 해당 부분을 복사, 지우기, 대체하기 등 다양한 동작을 수행할 수 있는데, 이후에 배울 명령어들과 조합하면 사실상 수행할 수 있는 동작은 수백가지(어쩌면 수천가지)에 이를 수도 있겠다. Vim Visual Mode 는 다른 동작들과 조합되어 사용되는 경우가 많기에, 이 포스팅에서 소개한 Visual Mode 의 사용법은 한정적인 것임을 인지하고, 추후에 Vim Visual Mode 와 함께 ..
컴퓨터의 세계에서 Copy & Paste 의 개념만큼 대중적인 것도 없을테다. ctrl + c, ctrl + v 는 마치 대명사처럼 우리에게 흔한 일상이 되어버렸다. copy & paste 라는 개념이 래리 테슬러가 1973~1976 년 무렵에 발명했고, 이게 유명해진게 1978년 발매된 WordPerfect덕분이라고 한다(참조, 글에서 소개한 WordStar 는 복붙이 다른키인듯 하다). , Vim 의 아버지격인 Vi 에디터가 1976 년에 개발되었기에, ctrl + c, ctrl + v 를 활용한 복붙 개념이 대중화되지 않은 시점이라 왜 vi 에디터에서 ctrl + c, ctrl + v 가 복사-붙여넣기가 아닌지는 이해가 된다.아무튼, 궁금하지 않았을지도 모르지만 왜 vi 의 복사 붙여넣기는 괴상하..
Normal Mode 오퍼레이터(모션 지정 명령)에 대한 이해 앞서 Vim Normal Mode 에서 커서를 이동시키는 방법과, Vim Insert Mode 로 진입하는 방법을 알아보았다. 이번에는 Normal Mode 의 기본 명령들에 대해서 알아보도록 한다. 💡 이번 포스팅은 다분히 이론적일 수 있다. 하지만, Normal Mode 에서 명령어가 동작하는 원리를 이해하고 나면 훨씬 자유롭게 해당 명령어들을 응용할 수 있을 것이다. 이 포스팅이 [The Vim Way] 연재 중 가장 어려운 부분일 수 있지만, 당장은 본 포스팅의 스크린샷만 훑어보도록 하자. 구미가 당긴다면, 어렵더라도 꼭 이해하고 넘어가보도록 하자. 이 포스팅을 이해하고 나면 다음 명령어들을 활용할 수 있게 된다. c - 모션을 활용하..
한글 사용권 국가의 개발자(그래봤자 대한민국 한정이지만)는 참 고되다. 개발하는 순간에야 입력 소스가 영어이기 때문에 키보드의 왼쪽 위 끝에 위치하는 `(흔히 back quote 라고 부르는)를 입력하는 것은 간단한 일이다. 하지만, 한글 입력 모드에서는 해당 문자(`)를 입력할 수 없기 때문에, 신나게 한글을 입력하는 중에 `를 입력할 때에는 한영키로 입력소스를 바꾸어야 주여야 한다. 한글, 영어 알파벳이 아닌 이상에야 같은 키임에도 입력소스에 따라 다른 문자가 입력 된다는 것은 무척 헷갈리는 일이다. 이건 솔직히 키보드 설정에서 바꿀 수 있어야 한다고 생각한다. (듣고 있나 애플?) 이를 간단히 기본적인 설정에서는 변경할 수 없는 것 같아 보인다. 그래서 찾아보았다. 고맙게도 나와 같은 문제를 겪는 ..
[The Vim Way] 02 Vim 기본조작 - Vim 의 4가지 모드 Vim 의 네 가지 모드 Vim 에는 4가지 모드가 있다. 일단 4가지 모드가 있다는 사실만 인지하고 넘어가자. Normal Mode Insert Mode Command Mode Visual Mode 현재 어떤 모드인지는 에디터 하단 Status Bar 에서.. coldmater.tistory.com Vim 의 4가지 모드에서 살펴보았듯, Vim 에는 문서에 직접 타이핑을 해 넣을 수 있는 Insert 모드가 존재한다. 한국어로는 삽입모드라고 할 수 있겠다. Vim Insert Mode Vim Insert Mode에서 할 수 있는 일은 다음과 같다. 문서에 문자열을 타이핑하여 넣을 수 있다. 일반 워드프로세서와 Vim 이 다른 점 ..
이 포스팅에서는 GUI 환경에서 마우스를 활용하여 커서를 이동시킬 수 있는 동작들을, Vim 에서는 어떻게 수행할 수 있는지 알아본다. 당장 익혀서 실전에 적용할 수는 없겠지만, 여기서 이런 것들이 가능했다는 사실들을 인지해두고, 나중에 코딩을 하다가 '그런 기능이 있었지'라며 돌아와서 찾아보기에 유용한 포스팅이 되길 바란다. Vim 에서의 방향키 h, j, k, l Vim 은 마우스가 대중화되기 이전에 개발된 텍스트에디터인 Vi 를 모체로 한다. 아마도 당시 키보드에는 방향키가 없었던 모양인지, 일반 qwerty 배열 키보드의 h, j, k, l 키에 각각 좌, 하, 상, 우 를 할당했다. (Vim 과 자주 비교되는 emacs 의 경우에는 i, j, k, l 의 방향키와 비슷한 배열로 상하좌우를 움직일..
Vim 의 네 가지 모드 Vim 에는 4가지 모드가 있다. 일단 4가지 모드가 있다는 사실만 인지하고 넘어가자. Normal Mode Insert Mode Command Mode Visual Mode 현재 어떤 모드인지는 에디터 하단 Status Bar 에서 확인할 수 있다. 그럼 각 모드에 대해 필요한 내용만 신속히 알아보도록 하자. Normal Mode Vim 을 처음 켰을 때, 또는 IDE 에서 에디터를 처음 켰을 때의 모드이다. 이 상태에서는 주로 두 가지 일을 수행한다. 커서를 움직인다. 명령을 수행한다. 보통 IDE 에서는 Normal 모드인 경우 커서가 두껍게 반짝인다. 다음은 VSCode 에디터에서 Vim 플러그인을 실행한 모습이다. 대부분의 IDE 에서 비슷하게 표현된다. 도서 [Prac..
Vim 기본 조작법 Vimic(Vim 을 사용하기에 적절한) 상황을 보기에 앞서, 간단히 Vim 기본 조작법을 알아보고자 한다. Vim 실행하기 보통 IDE 에서는 Vim 플러그인을 설치하고, 'Vim 사용하기' 설정을 켜두면 에디터에서 Vim 으로 작동한다. 리눅스 또는 윈도우 커맨드라인 환경에서는 vi, vim 을 입력하여 vim 프로그램을 실행할 수 있다. Vim 강제 종료하기 의외로 많은 초심자들이 Vim 으로부터 빠져나가는 방법을 몰라 쩔쩔매는 상황이 많다고 한다. 이 명령어들을 먼저 배우는게 순서상으로 올바르진 않지만, 그래도 급한 분들을 위해 먼저 소개한다. 일단 다음을 그대로 따라서 Vim 을 종료해보자. 다음 각 순서에 명시된 키만 순서대로 입력하면 된다. ESC 를 연타한다. :(Shi..
The Vim Way 연재 시작 [The Vim Way] 이라는 이름으로 포스팅 연재를 시작하려고 한다. 각 편마다 Vim 을 사용하는 데 유용한 상황들을 설정하고, 그것을 직접 실습해보는 것이다. The Vim Way 에서 다룰 것 이 글이 Vim 조작법을 다루는 다른 글들과는 다르게 '주요하게 사용되는 Vim 기능'만을 다룰 것이다. 그 중에서도 '문서 편집 기능'에 집중하여 포스팅을 하려고 한다. 3년동안 Vim 을 써온 경험으로부터 추출한 일종의 꿀팁들이다. 필자는 약 3년정도 Vim 을 주 편집용 에디터로 사용해오면서, 자주 사용하게 되는 주요 기능들을 정리할 수 있는 수준에 이르게 되었다. 각 포스팅마다 Vim 이 특별히 유용한 상황들을 가정하고, Vim 을 통해 어떻게 원하는 동작(편집)을 ..
생각보다 많이 누르게 되는 백스페이스 어느날 문득 키보드 타건을 하면서 백스페이스를 누를 경우가 너무 많다는 걸 깨달았다. 열 손가락을 사용하여 타이핑을 하는 속도에 비해 한 손가락을 사용하여 작성했던 내용을 지우기 위해 백스페이스를 연타하는 것이 너무 지루하게 느껴졌다. 그래서 백스페이스가 양쪽에 두 개가 있으면 훨씬 빠른 교정을 할 수 있겠다고도 생각했다. 가령 백스페이스 키가 두 개로 나뉘어져있다면, 더욱 빠른 연타가 가능할 것이라고 말이다. 그렇다고 백스페이스 키의 갯수를 늘릴 수는 없기에, 어떻게 하면 백스페이스 키를 덜 누를 수 있을까를 고민하기 시작했다.(백스페이스 키를 늘릴 생각을 하기 전에 이걸 먼저 생각했어야 하는거 아닌가... 순서가 조금 이상하지만 아무튼) 효과적인 타건을 위한 제안..
💡 필자가 책을 읽고, 몰랐던 부분이나, 특별히 메모할만한 내용을 추출하여 기록한 포스팅입니다. 책 내용 외에 추가 설명을 덧붙인 부분들이 있습니다. [학교에서 알려주지 않는 17가지 실무 개발 기술] 구매하러 가기 ⬇ HTML 삽입 미리보기할 수 없는 소스 "이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다." 서문 지은이의 말 (스타트업에서는) 한 분야만 파고드는 개발자가 아닌, 주어진 일정 안에 최소한의 기능을 지닌 제품(MVP, Minimum Viable Product)을 빠르게 만드는 개발자를 필요로 했습니다. 실무에서 공통으로 사용하는 기술과 언젠가 한 번 이상 사용하게 될 기술을 알고 회사에 들어가면 좋을 것 같다는 걸 알게 되었습니다. 이러한 기술들은 소..
하이라이트 - 내 손 안의 독서 노트 - Google Play 앱 종이책과 디지털을 이어주는 하이라이트 당신의 책읽기가 달라집니다. play.google.com 내 삶의 일부가 될것처럼 찾아오는 첨단의 참신함 Highlight 책에 밑줄을 긋고, 카메라로 찍어둔다면, 언제 어디서나 폰만 가지고 있다면 해당 내용을 확인할 수 있다. highlight 앱은 책을 찍고, 밑줄 기능으로 특정 부분을 하이라이트 할 수 있게 도와주는 앱이다. 서비스의 DB 로부터 도서 정보를 불러와 어떤 책인지 간단히 표시할 수 있다. 내가 찍은 책 속의 밑줄을 다른 사람들과 공유할 수 있는 독서 SNS 기능도 제공한다. 다른 사람의 밑줄을 뉴스피드 형태로 열람해볼 수도 있다. (그러나 지금은 그 사용자가 많이 줄어든 것 같다.)..
백종원 선생님의 냉장고 파먹기 대한민국 자타공인 요리의 대가 백종원님은 '냉장고 파먹기'라는 신박한 식재료 관리법을 제시합니다. 맛있는 음식을 만들어먹는 것은 물론, 정리가 되지 않는 냉장고를 정리할 수 있는 신박한 방법이죠. 나도 책장을 파먹어본다 저의 책장에도 냉장고의 식재료처럼 나중에 봐야지라며 구매했던 책들이 쌓여만 가고 있습니다. 이제 더 이상 지켜볼 수가 없어, '책장 파먹기' 프로젝트를 시작합니다. 약 30여권의 책들을 다음의 기준을 우선하여 선정한 뒤 책장에 머무른 기간이 긴 나의 현재 기술 스택과는 조금 거리가 있는 핵심만 추출하여 정리한 다음, (여기서 핵심이란, 제가 몰랐던 개념이 위주가 될겁니다.) 책의 운명을 결정지을겁니다. 추출된 책의 내용은 [책장파먹기] 태그으로 기록될 예정입..