VIM : 커서 / 화살표 키 비활성화 (탐색 전용)
inoremap <Up> <NOP>
inoremap <Down> <NOP>
inoremap <Left> <NOP>
inoremap <Right> <NOP>
noremap <Up> <NOP>
noremap <Down> <NOP>
noremap <Left> <NOP>
noremap <Right> <NOP>
이것은 내가 hjkl을 고수하기 위해 커서 탐색을 비활성화하는 데 사용하는 것입니다. :)
그러나 그것은 또한 명령 모음의 커서를 비활성화합니다 ... 일반적으로 화살표 키를 사용하여 기록을 순환 할 수 있습니다.
내비게이션이 아닌 탐색 용으로 만 커서 키를 비활성화 할 수 있습니까?
.vimrc파일에 다음을 추가 하십시오.
" Disable Arrow keys in Escape mode
map <up> <nop>
map <down> <nop>
map <left> <nop>
map <right> <nop>
" Disable Arrow keys in Insert mode
imap <up> <nop>
imap <down> <nop>
imap <left> <nop>
imap <right> <nop>
C-n및 C-p(각각 Ctrl + n 및 Ctrl + p)를 사용하여 기록을 순환 할 수 있습니다 .
당신은 커맨드 라인 모드에서 해제 역사를 탐색, 당신은 당신이하지 않겠 안 게시 한 코드 cnoremap <Up> <Nop>또는 noremap! <Up> <Nop>어딘가에? 시도 verbose cmap <Up>여부가 당신을 보여 주어야 <Up>키가 명령 행 모드로 다시 정의됩니다.
«command bar»라고 말할 때 명령 줄 창을 의미했다면 다음을 시도해 볼 수 있습니다.
nnoremap <expr> <Up> ((bufname("%") is# "[Command Line]")?("\<Up>"):(""))
나를 위해 이것은 작동합니다.
map <Left> <Nop>
map <Right> <Nop>
map <Up> <Nop>
map <Down> <Nop>
출처 : https://github.com/garybernhardt/dotfiles/blob/master/.vimrc#L148
q:명령 줄의 분할 창을 여는 데 사용 합니다. 일반적인 vim 창과 hjkl다른 일반적인 vim 동작을 사용하여 일반적으로 탐색 하고 Enter 키를 눌러 커서 아래에서 명령을 실행할 수 있습니다.
화살표 키를 사용하여 명령 줄 기록을 탐색하지 마십시오.
또한 q/또는을 사용하여 검색 기록에 액세스 할 수도 있습니다 q?.
변경 noremap하려면 nnoremap, 그렇지 않으면있는 거 세계 모든 모드 매핑을 정상 모드로 매핑을 적용합니다.
분할 된 창 사이를 이동하기 위해 다시 매핑 할 수도 있습니다. 이렇게하면 파일 내에서 방향 이동에 대한 화살표 키가 비활성화되지만 분할 된 창 사이를 이동할 수 있습니다.
noremap <up> <C-w><up>
noremap <down> <C-w><down>
noremap <left> <C-w><left>
noremap <right> <C-w><right>
ReferenceURL : https://stackoverflow.com/questions/5367760/vim-disabling-the-cursor-arrow-keys-but-only-for-navigation
'Program Club' 카테고리의 다른 글
| Jython을 사용하여 Python 스크립트를 JAR 파일로 배포합니까? (0) | 2021.01.08 |
|---|---|
| CDN (콘텐츠 전송 네트워크) 사용의 장단점은 무엇입니까? (0) | 2021.01.08 |
| 2 단계 커밋 (0) | 2021.01.08 |
| Node.js의 "connect EMFILE"오류 (0) | 2021.01.08 |
| RESTful HTTP 대신 Websocket을 사용하면 어떤 함정이 있습니까? (0) | 2021.01.07 |