vim를 좋은 편집기로 바꾸려면 몇 줄의 코드가 필요합니까?
Warning: this is entirely based on my own config and experience. Don't take this too seriously.
빠른 편집
만약vim를 사용하여 빠른 편집을 하고 싶다면, 설정 파일, 메시지 제출, 기본적으로 셸
EDITOR
변수를 사용하는 것들 중 하나일 수도 있습니다.난 이걸 선택할 거야." Don't include vi compatibility
set nocompatible
" Sensible backspace
set backspace=indent,eol,start
" Don't like temp files
set noswapfile
set nobackup
" preserve state (undo, marks, etc) in non visible buffers
set hidden
" enable incremental search
set incsearch
" Disable search highlight
set nohlsearch
" ignore the case when the search pattern is all lowercase
set ignorecase
set smartcase
" mouse support
set mouse=a
" enable line numbers
set relativenumber
" Disable syntax highlight
syntax off
" Use spaces to indent
set tabstop=2
set shiftwidth=2
set softtabstop=2
set expandtab
" Disable line wrapping
set nowrap
" Set Leader key
let mapleader = "\<Space>"
" Write file
nnoremap <Leader>w :write<CR>
" Begin search & replace
nnoremap <Leader>r :%s///gc<Left><Left><Left><Left>
xnoremap <Leader>r :s///gc<Left><Left><Left><Left>
" Scroll half page and center
noremap <C-u> <C-u>M
noremap <C-d> <C-d>M
만약 당신이vim의 초보라면, 나는 너무 많은 세부 사항을 누설하지 않아서 매우 죄송합니다.나는 이 때문에 다시 한 편의 댓글을 올릴 것이다.나는 현재의 평론이 충분하기를 바란다.나도 너희들이 기억하길 바란다.i
: 삽입 모드로 들어갑니다Esc
또는Ctrl + c
: 삽입 모드에서 정상 모드로 돌아갈 수 있습니다.ZZ
: 즉 shift + z + z
정상적인 모드에서vim에서 벗어날 수 있다는 것이다.:q
:: + q + Enter
정상적인 모드에서vim에서 벗어날 수 있습니다.syntax off
에서 나와 겨루고 싶을 수도 있지만, 나는vim의 기본 문법 하이라이트를 정말 좋아하지 않는다.나는 차라리 그것을 끄고 싶다.어쨌든, 23줄의 코드가 생기면, 우리는 그렇게 짜증나지 않는vim가 생겼다.
더 좋아지게 해주세요.
현재,vim에서 더 많은 시간을 소비하고, 여러 파일을 편집하고 있는 것을 발견하면, 더 많은 기능을 사용해야 할 수도 있습니다.
" Autosave when navigating between buffers
set autowrite
" Automatically re-read file if a change was detected outside of vim
set autoread
" Enable cursorline
set cursorline
" Better color support
if (has("termguicolors"))
set termguicolors
endif
" Enable syntax highlight
syntax enable
" When opening a window put it right or below the current one
set splitright
set splitbelow
" Keep lines below cursor when scrolling
set scrolloff=2
set sidescrolloff=5
우리는 34줄이 있습니다. (색 배열을 선택하면 35줄입니다.)현재vim는 더욱 다채로워 보이며'자연스럽게'균열을 열어줍니다.하지만 우리가 집에 있고 싶다면, 열쇠 그림이 더 필요하다.이것은 당신의 첫 번째 옵션입니다.vim에 대한 이해는 매우 큰 역할을 합니다.나는vimrc에 몇 개의 버튼 그림을 넣어서 편안하게 해야 합니까?this에 따르면 답은 29이다.이 파일을 기반으로 26줄 설정이 있으며 29줄은 키맵과 관련이 있습니다.전반적으로 말하자면, 우리는 55줄 코드를 하나의 체면치레로 삼은 경험이 있다.
더 넓은 범위
더 나아가, 만약 우리가 지금vim을 사용하여 여러 파일 사이를 내비게이션하고 변경을 한다면 어떻게 될 것인가.그래도 좀 어색하네.
디렉터리를 탐색하기 위해서,vim에는 Netrw라는 내장 플러그인이 있습니다.지금, 이것은 세계에서 가장 좋은 일이 아니지만, 이것은 희망이 있다.만약 우리가 투자52-ish lines한다면 우리는 그것을 우리가 원하는 방식으로 운영할 수 있다(내가 말한'우리'는 나를 가리킨다).
여러 파일에 대한 변경 사항을 일반적으로 "찾기 및 바꾸기"라고 부른다.며칠 전에 나는 플러그인이 있는 것과 없는 상황에서 어떻게 이 점을 할 수 있는지 확실히 알게 되었다.그것은 기본적으로
:vimgrep
(또는 :grep
)와 빠른 복구 창:cdo s/{your-query}/{the-replacement}/
의 혼합이다.그리고 효과가 좋아요...필터:vimgrep
의 결과가 필요할 때까지.빠른 복구 목록을 수정하려면 이 줄을 추가해야 합니다.set errorformat+=%f\|%l\ col\ %c\|%m
이것은vim에게 자신의 빠른 복구 목록을 읽는 방법을 알려 줍니다.이 예에서 :vimgrep
의 오류 형식은 약간 다르다.궁금한 분들께 제가 시범을 보여 드릴게요.이것은 플러그인이 없는 상황에서vim에서 '찾기, 필터, 바꾸기' 방식 (초장거리 경로) 이다.
see in asciinema
개인적으로 나는 플러그인을 사용해서 그것을 더욱 간단하게 만들었다.하지만 우리는 그것들을 뛰어넘어 자신의 핵심 지도를 만들 수 있습니다
" Go to previous location
nnoremap [q :cprev<CR>
" Go to next location
nnoremap ]q :cnext<CR>
" Manage the quickfix window
nnoremap <Leader>cc :cclose<CR>
nnoremap <Leader>co :copen<CR>
function! QuickfixMapping()
" Go to next location and stay in the quickfix window
nnoremap <buffer> K :cprev<CR>zz<C-w>w
" Go to previous location and stay in the quickfix window
nnoremap <buffer> J :cnext<CR>zz<C-w>w
" Make the quickfix list modifiable
nnoremap <buffer> <leader>u :set modifiable<CR>
" Update quickfix window
nnoremap <buffer> <leader>w :cgetbuffer<CR>:cclose<CR>:copen<CR>
endfunction
augroup quickfix_mapping
autocmd!
" Setup keymaps
autocmd filetype quickfix call QuickfixMapping()
augroup END
이것이 있으면 우리의 코드 줄 수는 125줄로 증가할 수 있습니다
이제 예뻐지게 해주세요.
가장 중요한 것은.좋은 배색 방안은 몇 줄이 될 수 있습니까?약 100명.만약 내가 현재 사용하고 있는 주제의 가장 기본적인 것만 남긴다면, 그것은 대략 108줄
플러그인이 없는 총 개수
230 여러 줄.그렇게 지도 모른다, 아마, 아마...만약 네가 평론을 덧붙인다면 더욱 많은 수확이 있을 것이다.날 못 믿어?다음은 내가 줄곧 구축하고 있는 것들: complete-rc.vim
플러그인을 원하십니까?
업무 중에 전업으로vim를 사용하고 싶을 수도 있으니까요.지금 일이 매우 까다롭게 변했다.지금 우리는 당신의 구체적인 업무 절차를 고려해야 합니다
나 자신만을 위해 말할 수 있습니다.전업으로vim를 사용하기 위해vimrc에서 800여 줄 코드를 사용했습니다.30개의 플러그인을 사용하려면 약 28400줄이 필요합니다.흥미로운 것은 내가 큰 플러그인을 많이 사용하지 않았다는 것이다.LSP가 없고, 화려한 자동 보완이 없고, linter나formatters가 없습니다.그래서 만약 당신이 정말 필요하다면 줄 수가 더 높을 수 있습니다
결론
vim를 좋은 편집기로 만드는 데 몇 줄의 코드가 필요합니까
나에게 있어서 대략 23에서 29200 사이이다.:grep
, fzf
, ripgrep
등 외부 도구를 잊지 마세요.단지 그것을 더욱 좋아지게 하기 위해서
Reference
이 문제에 관하여(vim를 좋은 편집기로 바꾸려면 몇 줄의 코드가 필요합니까?), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/vonheikemen/how-many-lines-of-code-does-it-take-to-turn-vim-into-a-nice-editor-10ni텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)