2014-11-03 4 views
1

vim의 복사하여 붙여 넣기 기능이 약간 일관성이없는 것처럼 보입니다. yy, ddcc 명령은 전체 행을 삭제/삭제합니다. DC 명령은 커서에서 줄 끝까지 삭제하지만 Y은 전체 줄을 대신 잡습니다. YDC과 동일하게 작동합니다. 그래서 나는 다음 줄을 내 안에 넣었다. .vimrc :vim에서 "Y"를 다시 매핑

nmap Y y$ 

그래도 작동하지 않는 것 같습니다. 내 첫 번째 아이디어는 일부 플러그인 간섭 때문입니다. 명령을 내 .vimrc의 시작과 끝 모두에 넣으려고했으나 아무런 도움이되지 않았습니다. 그러나 수동으로 명령을 입력하면 (.vimrc이 아님) 작동합니다. 왜 이런거야? 이 작업을 어떻게 수행합니까?

+2

'의 출력이 무엇 : 자세한지도의 Y'? btw,'nnoremap Y y $'사용을 고려하십시오. – Kent

답변

4

플러그인이로드되기 전에 vimrc가로드되기 때문에 플러그인이 플러그인을 무시하고 있다는 사실을 배제하지 않습니다. .vim/after/에 .vim 파일을 두는 것은 플러그인 이후에로드되므로 플러그인을 하나씩 제거하는 경로를 피하려는 경우 해당 방법을 테스트 할 수 있습니다.

켄트 (Kent)가 언급 한 것처럼 nnoremapnmap 이상으로 사용하는 것이 좋습니다.

+0

실제로, 키는 YankRing 플러그인에 의해 덮어 써졌습니다. '.vim/after'에서 매핑하는 것이 효과적 이었지만,'nnoremap' 대신에'nmap'이 정말로 필요합니다. 명령 내에서'y'를 사용할 때 YankRing이 실제로 그것을 잡아두기를 바랍니다. – petersohn

+0

YankRing 문서에는 다음 기능을 추가 할 수 있다고 나와 있습니다. 기능! YRRunAfterMaps() nnoremap Y : YRYankCount 'y $' endfunction 매핑보다 YankRing이 우선합니다. – piro

2

새로운 답변을 코드로 붙여 넣는 방법은 위의 대답에 설명되어 있지 않습니다. 충돌은 당신이 사용할 수있는

을 YankRing 경우 :

function! YRRunAfterMaps() 
    nnoremap Y :<C-U>YRYankCount 'y$'<CR> 
endfunction 
nnoremap Y y$ 

출처 : 당신의 vimrc의 끝에 그 라인 :help yankring-custom-maps

관련 문제