Vim 함수를 한 줄 매핑으로 다시 작성

Vim 함수를 한 줄 매핑으로 다시 작성

이것일하다:

nmap <silent> <S-t> :call InventTab()<CR>
function InventTab()
    set expandtab!
    if &expandtab
        retab
        echo 'spaces'
    else
        retab!
        echo 'tabs'
    endif
endfunction

나는 그것을 한 줄로 변경해 보았습니다.

nmap <silent> <S-t> :set expandtab!<CR>:if &expandtab<CR>:retab<CR>:echo 'spaces'<CR>:else<CR>:retab!<CR>:echo 'tabs'<CR>:endif<CR>

이제 문제는 나중에 "계속하려면 Enter 키를 누르거나 명령을 입력하세요"라는 인쇄를 요구한다는 것입니다. 다른 것을 추가하면 <CR>더 이상 이 작업이 수행되지 않지만 echo출력은 지워집니다.

출력은 표시되지만 추가 항목은 표시되지 않도록 하려면 어떻게 작성해야 합니까?

결과(보다수락된 답변세부):

nmap <silent> <S-t> :set expandtab! ^V| if &expandtab ^V| retab ^V| echo 'spaces' ^V| else ^V| retab! ^V| echo 'tabs' ^V| endif<CR>

답변1

<CR>명령 사이에 '를 ( ^V|입력하여 ^V텍스트가 삽입되는 위치)로 바꾸면 작동합니까 ?^VCtrl-vCtrl-v

관련 정보