개요
VIM으로 Python 개발 시 사용하는 PyMode, NERDTree 등의 단축키를 정리하여 공유한다.
Jedi
Ctrl+Space: 자동완성leader+g: code로 jumpleader+d: definition으로 jumpshift+K: 관련 PyDoc 출력leader+n: usage search:Pyimport OS: 파이썬 패키지 소스코드로 이동
PyMode
Ctrl+c->g: 코드 jumpshift+K: Document\+r: 파이썬 코드 실행Ctrl+c->rd: documentationCtrl+c->ro: organize importCtrl+c->rr: refactoring rename\+n: usage
NERDTree
NerdTree는 트리구조로 현재 디렉토리 기준 파일 리스트를 File Explorer형식으로 보여주는 플러그인이다.
아래와 같이 Trigger한다.
o: open in prev windowgo: previewt: open in new tabT: open in new tab silentlyi: open splits: open vsplitcd: pwd위치 바꾸기C: 파일 브라우저에서 root 경로 바꾸기q: NERDTree 종료R: refresh

vim-gutter
vim-gutter는 git과의 Integration으로 HEAD 리비전 대비 바뀐 코드를 간단하게 표시해준다.
:GitGutterDisable: 비활성화:GitGutterEnable: 활성화[c: jump to prev change]c: jump to next change
fastfold
fastfold는 메서드/클래스 단위로 코드를 fold/unfold 할 수 있게 만드는 플러그인이다.
- visual mode 에서 selection 후
zf - unfold는
zd
Pydocstring
Pydocstring은 파이썬에서 document를 손쉽게 할수 있는 주석을 Generation 해주는 플러그인이다.
def나 class line에서 :Pydocstring

sonictemplate
soictemplate은 간단하게 예약어를 통해 코드 스니펫을 생성해내는 플러그인이다.
:Template 이후 Tab

airline
vim 하단에 passive로 statur bar 표시하는 플러그인이다. 알록달록한게 이뻐서 개발감성을 올려준다.

FZF-VIM
FZF-VIM을 파일검색/코드검색 등을 빠르게, Fuzzy하게 찾아주는 플러그인으로써 주요기능은 아래와 같다.
)
이중에서 쓸만하다고 생각되는 기능은 아래에서 소개한다.
Files
VIM에서 Fuzzy File Search를 해줌
ctrl+por:Files: 파일 Fuzzy 검색

Buffers
Buffers: 버퍼 리스트

Ag 코드검색
Ag 패턴: ag로 코드검색
)
Rg 코드검색
Rg 패턴: RigGrep으로 코드검색
Lines 검색
Lines 쿼리: 버퍼에서 line검색

히스토리
History: 입력한 커맨드 히스토리

Colors
colors: Syntax Highlight 색상선택

Surround
커서를 Hello에 위치하고 ysiw" 입력 하면 아래로 바뀜
반대로 없앨때는 ds"

Tagbar
:Tagbar 입력

북마크
북마크 하기
사용시에는 대문자 B 입력
VI Window Split
- Ctrl + W, S : 수평 Split
- Ctrl + W, v : 수직 Split
- Ctrl + W, Q : 창 하나 닫기
- Ctrl + W, Ctrl+W : Window간 전환
- Ctrl + W, J (xor K, H, L) : 인접한 창으로 전환
Window resize
리사이즈를 아래와 같이 수행하면 된다.