これ働く:
nmap <silent> <S-t> :call InventTab()<CR>
function InventTab()
set expandtab!
if &expandtab
retab
echo 'spaces'
else
retab!
echo 'tabs'
endif
endfunction
1行に変更してみました。
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
テキストが挿入される場所)に置き換えると機能しますか?^V
Ctrl-vCtrl-v