Vim :set ignorecase
명령은 vim 구성의 “f”및 “t”모션 명령에 영향을 미치지 않습니다.
이 명령이 대소 문자를 무시하게 만드는 옵션이나 해킹이 있습니까?
답변
나는 다음과 같은 것을 제안 할 것이다 :
function! ForwardLookup()
" get next key pressed
let c = nr2char(getchar())
let old_search_pattern = @/
" Use of \V enables very-nonmagic pattern
exec 'normal /\c\V' . escape(c, '\/') . nr2char(0x0d)
let @/ = old_search_pattern
endfunction
nnoremap f :call ForwardLookup()<CR>
답변
이것의 기본 버전은 실제로 getchar()
함수 를 사용하는 방법의 예로써 참조 매뉴얼에 있습니다 :
이 예제는 대소 문자를 무시하기 위해 “f”를 재정의합니다.
:nmap f :call FindChar()<CR> :function FindChar() : let c = nr2char(getchar()) : while col('.') < col('$') - 1 : normal l : if getline('.')[col('.') - 1] ==? c : break : endif : endwhile :endfunction
참조하십시오 :help getchar()
.
반환 된 문자를 저장하고 비슷한 맵을 ;작성 v:count1
해야 작동하고 카운트로 작업 하려면 처리 할 코드를 작성 해야합니다.