2 回答
TA貢獻(xiàn)1816條經(jīng)驗(yàn) 獲得超6個(gè)贊
找到答案了!
我通過制作簡單的自定義命令解決了這個(gè)問題。
python3 << EOL
import vim
def ExecuteSelectedLine(l1, l2):
for i in range(l1-1,l2):
print(">>" + vim.current.buffer[i])
exec(vim.current.buffer[i],globals())
EOL
command! -range Eval <line1>,<line2> python3 ExecuteSelectedLine(<line1>, <line2>)
如何使用
在 python 中僅運(yùn)行腳本的第一行到第三行
:1,3Eval運(yùn)行python中的當(dāng)前行
:Eval在 python 中運(yùn)行可視化選擇的腳本部分
:'<,'>Eval
范圍選擇與 -range 選項(xiàng)一起使用,并使用 python 的“exec”函數(shù)和 globals() 選項(xiàng),持久性保持不變(無需刷新)。
我想我的編碼風(fēng)格,在控制臺(tái)中嘗試不同的代碼片段并最終確定主腳本,是一種奇怪的編碼方式,因?yàn)槲以谏鐓^(qū)中找不到類似的嘗試。
TA貢獻(xiàn)2012條經(jīng)驗(yàn) 獲得超12個(gè)贊
我不明白這個(gè)問題。命令
:1,3w !python3
應(yīng)該可以解決這個(gè)問題,你說的“每次我使用該函數(shù)時(shí) python 控制臺(tái)都會(huì)刷新”到底是什么意思?如果你的意思是,它等待按下回車鍵才能返回 vim,這是很自然的。
您還可以使用:
:'<,'>w !python3
以前使用可視化模式來選擇某些代碼塊。您想在新的終端窗口中執(zhí)行代碼嗎?
添加回答
舉報(bào)
