我真的很想在子流程中运行Vim的实例,这样我就可以控制/查看Vim实例的输入/输出。现在我的计划是做以下事情:
proc = subprocess.Popen(['bash', '-c', 'vim'])
然后在用户正在键入的窗口和CCD_ 1中的某个模拟vim实例之间传输输出/输入。为了尽可能简单,我想我可以让proc
看起来与当前终端窗口中运行的bash进程尽可能相似,这样我就可以将运行的vim
进程的输出复制到某个curses
接口上。
我有两个问题。第一个问题是,有更好的方法吗?第二个问题是,如果这是最好的方法,我如何使proc
尽可能与当前终端窗口相似(例如,保持终端窗口的模拟高度/宽度)。
如果要将输入记录到vim
会话,只需启动vim -w file
即可。
-w {scriptout}
All the characters that you type are recorded in the file {scriptout},
until you exit Vim. This is useful if you want to create a script
file to be used with "vim -s" or ":source!". If the {scriptout}
file exists, characters are appended.