新建的no name文件,有办法直接运行脚本么
vim吧
全部回复
仅看楼主
level 8
misguilder 楼主
如果是保存在磁盘上的脚本文件,如lua,可以通过函数执行 exec "!lua %"来运行脚本。
但一个新建的文件可以通过某种方法实现相似的功能么?
我觉得难点在于此时这个文件是存在于内存缓冲中的。
是否在执行脚本解释前,先vim自动保存该文件到一个默认文件中?
2016年11月28日 02点11分 1
level 12
大部分诞生于 Linux 的脚本语言解释器都支持从 stdin(标准输入)获取脚本内容,比如 Python, Ruby 以及你说的 Lua 。这样就不需要临时文件了
执行一个外部程序,并往它的stdin里写入缓冲区内容的命令是:
:[range]w[rite] [++opt] !{cmd}
比如在缓冲区里打
print("hello world")
然后 :w !lua
就会输出
hello world
2016年11月28日 09点11分 2
level 8
misguilder 楼主
[太开心]学习了,去试试
2016年11月28日 11点11分 3
level 12
刚刚又看了一下 Vim 帮助,发现其实用这个方法 Vim 在默认情况也是会创建临时文件的
具体可以 :help 'stmp'
帮助里说了创建和不创建临时文件各有优点,感觉一般情况下还是创建临时文件比较好吧
2016年12月02日 04点12分 4
1