게으른 사람들을위한 최소 침습적 솔루션 :
레지스터는 0
항상 마지막 양크를 포함합니다 ( Rafael , alex2k8 및 idbrii 는 이미 언급했듯이). 불행히도 0
항상 레지스터를 선택 하면 상당히 성 가실 수 있으므로 기본적으로 p
사용 하면 좋을 것 "0
입니다. 다음과 같은 줄을 넣어서 얻을 수 있습니다 .vimrc
.
noremap p "0p
noremap P "0P
for s:i in ['"','*','+','-','.',':','%','/','=','1','2','3','4','5','6','7','8','9','a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z']
execute 'noremap "'.s:i.'p "'.s:i.'p'
execute 'noremap "'.s:i.'P "'.s:i.'P'
endfor
첫 번째 선은 각 p
획을에 매핑 합니다 "0p
. 그러나 이렇게하면 p
다른 레지스터에 액세스 할 수 없습니다. 따라서 p
명시 적으로 선택된 레지스터가있는 모든 스트로크는 for-loop 내의 해당 명령 줄 식에 매핑됩니다. 에 대해서도 마찬가지입니다 P
.
이렇게하면 기본적으로 레지스터 를 사용 하는 암시 적 p
및 P
획을 제외하고 표준 동작이 유지 0
됩니다.
힌트 1 : 잘라 내기 명령은 이제 "0d
그냥 대신에 있습니다 d
. 그러나 게으 르기 때문에 너무 길다.) 따라서 다음 매핑을 사용하고 있습니다.
noremap <LEADER>d "0d
noremap <LEADER>D "0D
리더 키는 \
쉽게 입력하여 텍스트를 절감 할 수 있도록 기본적으로 \d
나 \D
.
힌트 2 : 다중 키 매핑의 기본 시간 제한은 매우 짧습니다. 레지스터를 선택할 때 더 많은 시간을 갖도록 늘리기를 원할 수 있습니다. 자세한 내용은 다음 :help timeoutlen
을 사용하고 있습니다.
set timeout timeoutlen=3000 ttimeoutlen=100