:sign place
vimモジュールを使用してPythonでスクリプトを作成し、Vimコマンド()の出力をキャプチャしたいと思います。
でコマンドを実行できますがvim.command(...)
、コマンドの出力が返されません。でvimLコマンドを評価できますがvim.eval(...)
、これは変数と関数でのみ機能し、コマンドでは機能しません。
このコマンドの出力をキャプチャする唯一の方法は、レジスタにリダイレクトしてから、レジスタの内容を評価することでした。
vim.command('redir @a')
vim.command('silent sign place')
vim.command('redir END')
command_output = vim.eval('@a')
しかし、これは明らかに単純なタスクには多くの作業のように思えます。これを行うためのより良い方法はありますか?
注:これはサンプルコマンドに固有の質問ではありませんsign place
。どのコマンドにも有効です。