📜
カーソル行のVim9 scriptを実行する
まずはLegacy Vim scriptから
私はg:
にマッピングしています
nnoremap g: <Cmd>.source<CR>
source
がレンジを受け付けてくれるので カーソル行を示す.
を指定すればOKです
Vim9 scriptを実行する
g9
にマッピングする場合、以下の通りです
nnoremap g9 <Cmd>vim9cmd :.source<CR>
単純に<Cmd>.vim9cmd source<CR>
のようにvim9cmd
にレンジを渡そうとすると以下のエラーになってしまいます
E481: No range allowed.
そこで:.
でsourceにレンジを渡しています
ビジュアルモードの選択範囲を実行する
ビジュアルモードでは以下のようにマッピングします
レンジに'<,'>
を渡すだけなので簡単!
xnoremap g: :source<CR>
xnoremap g9 :vim9cmd source<CR>
あ、:'<,'>vim9cmd source
はエラーになりません(なんで?)
まとめ
これでちょっとvenry!ฅ⊏'ꣲ'|ฅ
nnoremap g: <Cmd>.source<CR>
nnoremap g9 <Cmd>vim9cmd :.source<CR>
xnoremap g: :source<CR>
xnoremap g9 :vim9cmd source<CR>
Discussion