"paste"モードでテキストを挿入する関数をvimで作成しました。挿入モードを終了すると、スクリプトは貼り付けモードを解除します(nopasteを設定します)。したがって、私はオートコマンドInsertLeaveを使用しました。
問題は、「set paste」コマンドは、初めて関数を呼び出すときにのみ機能することです。もう一度呼びたい場合はvimを再起動する必要があります。vim関数は初めて正しく動作する
これは、vimの機能である:
function Paste_from_clipboard()
execute "normal! :set paste\<CR>\<Esc>o"
execute "startinsert"
autocmd InsertLeave * execute "normal! :set nopaste\<CR>"
endfunction
map <Leader>p :call Paste_from_clipboard()<CR>
は私が間違って何をしたのですか?
ありがとう!私はVimScriptの動作を誤解していました。 – mamiu