「貼り付け」モードでテキストを挿入する関数をvimで作成しました。挿入モードを終了すると、スクリプトも貼り付けモードを終了します (nopaste を設定)。したがって、自動コマンド InsertLeave を使用しました。
問題は、「set paste」コマンドが関数を最初に呼び出したときにのみ機能することです。もう一度呼び出したい場合は、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>
私は何を間違えましたか?