AsyncRun 新增:在内置终端内执行命令,调试程序更加方便

2020-02-10 03:17:37 +08:00
 skywind3000

最新版 AsyncRun 除了在 quickfix 窗口里运行程序外,还增加了对内置终端的支持,有几个目的:

:AsyncRun 命令后面追加:-mode=terminal-mode=term 参数来在内置终端内运行命令:

:AsyncRun -mode=term [-pos=?] [-rows=N] [-cols=N] [-focus=0] {cmd}

上面命令运行后,AsyncRun 将会打开一个终端窗口来运行你的命令:

参数 -pos=? 可以指定终端的打开位置,可以设置为:tab, curwin, left, right, top 以及 bottom 的其中之一,你还可以指定 -rows=?-cols=? 来确定内置终端的大小。

如果当前 tab 内已经有一个运行结束的终端窗口,那么将会复用它,其他 AsyncRun 的参数,比如 -cwd=? 设定运行目录,-save=? 设定是否保存文件等参数同样有效,这样比你直接运行 :term xxx 来用内置终端运行程序方便不少。

另外,如果当前 tab 已经有一个终端窗口了,但是里面的程序还没有结束,那么就不会被复用,AsyncRun 将会建立一个新的终端窗口。

如果你屏幕很小,分屏终端不够爽,那么可以用一个新的 tab 打开终端:

:AsyncRun -mode=term -pos=tab ls -la /usr

运行效果:

整个 tabpage 都能用于显示内置终端,上面所说的窗口复用仅对 split 切分有效,对 -pos=tab 无效。

更多用法见: [AsyncRun 中文文档]

2717 次点击
所在节点    Vim
2 条回复
jdhao
2020-02-10 21:04:59 +08:00
赞,一直在用这个插件运行 Python 程序
skywind3000
2020-02-11 04:23:11 +08:00
@jdhao 欢迎尝试我基于 asyncrun 的新插件: https://github.com/skywind3000/asynctasks.vim

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/643342

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX