首页 > [求助] 关于 Vim 中 Vim Shell 配置的一些问题

[求助] 关于 Vim 中 Vim Shell 配置的一些问题

原题链接 :转自匠艺社区CodingStyle

在自己的Vim上好不容易安装上了Vim Shell,但是现在还是遇到了一些配置上的问题。特地来此请教大家,先谢过了!

可参考文档:vimshell.txt on Github

终止终端运行时快捷键有的时候会失灵

参考文档中说到了,<C-c>是终止正在运行的脚本的快捷键,这个快捷键会触发一个函数,这个函数会发送一个中断请求。但是,貌似这个快捷键只有在两种情况下有效:

如何将正在编辑的文本的路径与全名发送到Vim Shell

问题很简单,但是我无法解决。现在,我可以在Vim Command中输入VimShellInteractive python test.py来执行我正在编辑的test.py脚本。但是如果我想实现一键运行python脚本的快捷键,我应该如何配置vimrc呢?主要问题在于,我怎么才能把我正在编辑的文件的完整路径和文件名传给VimShell。

谢谢!
Weiming 20/5/2016


第二个问题:

下面窗口第47行有答案


补充:你可以试试这个 https://github.com/thinca/vim-quickrun
可以自动识别你的文件类型调用相应的解释器,
前提是不要在Windows 下写 #!shebang
5/22/2016


QuickRun 补图

嗯,刚刚试了,js 也可以 q 快速运行, Java 可以自动 javac Class.java 然后 java Class
都不需要自己写文件名,其他文件类型也可以自己定义

我自己改了一点点设置

    let g:quickrun_config = {}
    let g:quickrun_config._ = {
            \ 'outputter/buffer/split': ''
            \ }

    autocmd FileType quickrun resize 10
    map <Leader>q :QuickRun<CR>

5/24/2016


shebang 是指脚本文件第一行

    #!/bin/bash

这个样子的内容,比如我第一张截图 #!/usr/bin/env python,在Linux 下 shell 会调用这个程序,并将脚本文件作为第一个参数。
QuickRun 完美兼容 shebang
第一张截图那样的代码,QuickRun 会尝试运行 /usr/bin/env python /path/to/file.py
然而 Windows 没有env,也不认反斜杠路径分隔符

当然Windows 本身也不存在shebang 的概念
总之在Windows 下写脚本不需要加上#!shebang
PS: 你可以在Windows 下看看 Python\Scripts\ 目录下的 *.py, 这些文件都有加入 #!shebang

5/24/2016

【热门文章】
【热门文章】