如何创建映射以从 Vim 执行 python 代码?
How to create a mapping to execute python code from Vim?
这是我从 Vim 执行 python 代码所遵循的步骤:
- 我使用 Vim
编写了 python 源代码
- 我通过
:w !python
执行
而且我想要一个更短的方式来执行代码,所以我在网上搜索了一个快捷键,比如这张图:
autocmd FileType python nnoremap <buffer> <F9> :exec '!python' shellescape(@%, 1)<cr>
并将其添加到 _vimrc
文件中。但是当我点击 F9 时,会出现以下错误消息:
上图中的相关文字如下:
python: can't open file ''D:/py2.py'': [Errno 22] Invalid argument
shell returned 2.
我已经在互联网上搜索过了,但我没有得到任何结果。
我在 Windows 10 中使用 gVim 8.0,如果有帮助的话。
通过 vim 与命令行交互,最好的方式是感叹号。
而不是:
:exec '!python' shellescape(@%, 1)<cr>
尝试简单的方法:
:update<bar>!python %<CR>
在上面的代码中:
update
修改后保存文件(首选)或者也可以使用w
.
<bar>
管道命令。
!python %
将 运行 文件作为 python filename
.
所以基本上,将其放入您的 .vimrc
文件中,就可以了:
autocmd FileType python nnoremap <buffer> <F9> :update<bar>!python %<CR>
这是我从 Vim 执行 python 代码所遵循的步骤:
- 我使用 Vim 编写了 python 源代码
- 我通过
:w !python
执行
而且我想要一个更短的方式来执行代码,所以我在网上搜索了一个快捷键,比如这张图:
autocmd FileType python nnoremap <buffer> <F9> :exec '!python' shellescape(@%, 1)<cr>
并将其添加到 _vimrc
文件中。但是当我点击 F9 时,会出现以下错误消息:
上图中的相关文字如下:
python: can't open file ''D:/py2.py'': [Errno 22] Invalid argument
shell returned 2.
我已经在互联网上搜索过了,但我没有得到任何结果。
我在 Windows 10 中使用 gVim 8.0,如果有帮助的话。
通过 vim 与命令行交互,最好的方式是感叹号。
而不是:
:exec '!python' shellescape(@%, 1)<cr>
尝试简单的方法:
:update<bar>!python %<CR>
在上面的代码中:
update
修改后保存文件(首选)或者也可以使用w
.
<bar>
管道命令。
!python %
将 运行 文件作为 python filename
.
所以基本上,将其放入您的 .vimrc
文件中,就可以了:
autocmd FileType python nnoremap <buffer> <F9> :update<bar>!python %<CR>