搜索

首页  >  问答  >  正文

[求助] 关于 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

曾经蜡笔没有小新曾经蜡笔没有小新2778 天前627

全部回复(1)我来回复

  • 高洛峰

    高洛峰2017-05-16 16:38:51

    第二个问题:

    下面窗口第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 会调用这个程序,并将脚本文件作为第一个参数。#!/usr/bin/env python,在Linux 下 shell 会调用这个程序,并将脚本文件作为第一个参数。
    QuickRun 完美兼容 shebang
    第一张截图那样的代码,QuickRun 会尝试运行 /usr/bin/env python /path/to/file.pyQuickRun 完美兼容 shebang
    第一张截图那样的代码,QuickRun 会尝试运行 /usr/bin/env python /path/to/file.py

    然而 Windows 没有env,也不认反斜杠路径分隔符


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

    PS: 你可以在Windows 下看看 PythonScripts 目录下的 *.py, 这些文件都有加入 #!shebang

    5/24/2016🎜

    回复
    0
  • 取消回复