Dev
-
[vim] 입력모드에서 일반모드로 이동Dev/vim 2020. 12. 6. 00:11
기본적으로 입력모드에서 esc 키를 누르면 일반모드로 전환이 된다. 그런데 esc 키가 왼쪽 상단에 있어서 새끼손가락이 위로 이동해야 하고, 반복하다 보면 손이 쉽게 피로해진다. 일부 과거의 맥북 프로 터치바 모델은 esc키 마저 터치로 되어있어 누르는 느낌도 없다. (현재 내 노트북) 다행이 vim 에서는 esc 키 외에도 입력모드 → 일반모드로 전환할 수 있는 단축키가 2개 더 있다. 바로, Ctrl + [ Ctrl + c 이다. (좀 생둥맞긴 하다...) esc 키 까지 포함해서 총 3가지 방법이 있으니 편한걸로 골라서 사용해보자. 참고로 나는 Ctrl + c 가 제일 편하다. 오늘의 요약 : 입력모드 → 일반모드 전환방법 esc Ctrl + [ Ctrl + c
-
[vim] VimGolf로 타수를 줄여라Dev/vim 2020. 12. 1. 22:28
vim으로 문서를 편집하다보면 내가 쓸데없는 키를 너무 많이 누르는 것 같다는 생각이 들 때가 있다. 다른 사람들은 이 상황에서 어떻게 편집을 할까? 오늘 소개할 VimGolf 는 특정 문제를 최소한의 타수로 편집하는 일종의 퀴즈 사이트이다. www.vimgolf.com/ VimGolf - real Vim ninjas count every keystroke! Simple things we do all the time should be able to be done with very few keystrokes, but sometimes I find something I need to do makes me go, "There MUST be a better way." This challenge is just a..
-
[vim] 비주얼 모드(복사/붙여넣기)Dev/vim 2020. 11. 29. 22:32
비주얼 모드는 일반 편집기에서 텍스트를 마우스로 드래그하듯이 선택할 수 있는 모드이다. 일반모드에서 비주얼 모드로 진입하는 방법은 크게 3가지이다. v : 칸 단위 선택 (-- VISUAL --) V : 줄 단위 선택(-- VISUAL LINE --) ctrl + v : 블록 단위 선택 (-- VISUAL BLOCK --) 칸 단위 비주얼 모드에 진입 후, 일반모드에서 처럼 커서를 이동하면 아래처럼 텍스트를 선택하게 된다. 이 상태에서 y 를 누르면 선택된 텍스트가 복사(yank)되고, p를 눌러 복사된 내용을 붙여넣기 할 수 있다. y 대신 d키로 자르기도 가능하다. 줄 단위 모드는 선택을 라인단위로 하고, 블록단위는 Ultraedit의 열모드와 유사하게 종단위로 텍스트를 선택할 수 있다. 복사/붙여넣..
-
[vim] 일반모드에서 커서이동Dev/vim 2020. 11. 28. 13:54
일반모드에서는 기본적으로 h,j,k,l 이 화살표를 대신한다. 한 페이지씩 이동하는 방법은 다음과 같다. ctrl + f : 다음페이지 ctrl + b : 이전페이지 또한 특정 줄로 이동할 수도 있다. gg : 문서 첫줄로 이동 G : 문서 마지막 줄로 이동 50G : 50번째 줄로 이동 (원하는 줄 + G) ctrl + g 로 내가 현재 문서의 어디쯤 있는지 확인할 수 있다. 마지막으로 현재 보이는 화면에서의 이동이다. H : 현재 화면의 맨 윗줄로 이동 M : 현재 화면의 중간으로 이동 L : 현재 화면의 맨 아랫줄로 이동 이외에도 여러 단축키가 있지만 오늘은 여기까지 정리해본다.
-
ApplicationContext에 등록된 스프링 빈 모두 출력하기Dev/Spring 2020. 11. 27. 00:23
스프링으로 개발을 하다보면 어떤 객체가 스프링 빈으로 등록됬는지 확인하고 싶을 때가 있다. 특히 클래스가 많아질수록 헷갈릴 때가 있는데, ApplicationContext.getBeanDefinitionNames() 를 호출하여 등록된 빈의 이름을 문자열 배열로 받아올 수 있다. package main; import config.AppCtx; import org.springframework.context.ApplicationContext; import org.springframework.context.annotation.AnnotationConfigApplicationContext; public class MainApplication { public static void main(String[] args..
-
[vim] 공식 튜토리얼 : VIM TutorDev/vim 2020. 11. 24. 02:05
앞선 글에서 VI의 진입장벽이 높다고 이야기했는데, 어려운 만큼 튜토리얼 문서가 존재한다. 오늘의 주인공 빔 길잡이(VIM Tutor) 라는 문서이다. 터미널에서 다음과 같이 입력하면 VIM Tutor 문서가 열린다. > vimtutor VIM의 기본 사용방법에 대해 배울 수 있다. 1시간 정도 투자하면 어느정도 감이 올 것이다. 튜토리얼을 따라하다 보면 파일 내용을 편집하게 되는데, 원본을 보관하고 싶으면 다른 파일로 저장하도록 하자. :wq vimtutor.txt 위 명령은 현재 vim이 오픈한 VIM Tutor 문서를 vimtutor.txt로 저장하고 편집을 종료한다. 다시 문서를 열고 싶으면 vi 실행 시 파라미터로 파일명을 지정해주면 된다. > vi vimtutor.txt 이 튜토리얼이 vim의..
-
[vim] 모드 정리Dev/vim 2020. 11. 22. 21:42
vim에는 다음과 같이 여러 모드가 존재한다. 간단히 설명하자면.. Normal mode : 처음 문서를 열었을때의 모드. 텍스트 안에서 빠르게 이동할 수 있다. 화살표 대신 hjkl 키로 이동한다. Insert mode : 키보드를 입력하면 해당 문자가 문서에 추가된다. (한글이나 MS Word 의 편집방식) Visual mode : 텍스트를 블럭단위로 선택해 조작하는 모드. (마우스 드래그와 유사하다.) Command mode : 저장, 종료, 치환 등 부가적인 명령을 수행하는 모드. 모드 간 전환은 위의 그림에 나와있는 키를 입력하면 된다. ex) Normal -> Insert mode 전환 시 i 키 입력 처음 vim을 접하면 내가 어느 모드에 있는지 헷갈릴텐데, 어느 모드에서든지 esc 키를 누..
-
[vim] Linux(Unix) 에서 피해갈 수 없는 편집기Dev/vim 2020. 11. 22. 21:36
VI 혹 VIM(VI Improved)은 리눅스 환경에서 피해갈 수 없는, 반드시 배워야 하는 텍스트 편집기이다. Visual Editor 에서 유래했다고 하는데, 왜 VE가 아닌건지? ;ㅁ; 누군가가 이 편집기로 처음 문서를 편집하려고 한다면 단 한 글자도 수정하기 어려울 것이다. 여러가지 이유가 있는데, 가장 큰 이유는 커서가 있는곳에 단순히 타자를 입력한다고 글자가 입력되지 않는다(..!) 모드라는 것이 존재하기 때문에.. 또한 키보드 조작으로 편집하는 컨셉이기 때문에 마우스 사용도 어렵다. 입문 허들이 높기 때문에 익숙해지기 위해서는 많은 시간을 투자하다. 하지만 리눅스 환경에서 작업을 해야 한다면 결코 피해갈 수 없다. (단호) 필자도 몇년째 개발을 하고 있지만 아직도 버벅일 때가 많아서 이 카..