【问题标题】:How do I open http://localhost in my web browser from Vim?如何在 Vim 的 Web 浏览器中打开 http://localhost?
【发布时间】:2010-01-11 03:58:08
【问题描述】:

基本上,我想告诉 Vim:

  1. 打开我的网络浏览器(例如,Firefox)
  2. 打开这个文件(比如 index.php),想到这个地址:http://localhost
  3. 换句话说:http://localhost/index.php

PS:不幸的是我使用的是 Windows XP

【问题讨论】:

  • 基本上 Vim 是一个编辑器,我认为你必须编写一个 shell 脚本来做到这一点。谢谢

标签: vim localhost


【解决方案1】:

如果你在 Windows 上运行 Vim,那么这将起作用:

:! start http://localhost/index.php

这将使用默认浏览器,如果您想启动特定浏览器,那么您将需要可执行文件的显式路径(而不是启动)。

来自 Vim help cmd

:!{cmd}

执行 {cmd} 贝壳。另见“外壳”和 'shelltype' 选项。

显然,如果您在其他系统上,您只需要使用适当的命令在该平台上启动浏览器。

【讨论】:

  • 感谢它成功了:start "localhost/index.php" "file:///"%:p"(在 localhost 中打开了我当前的文件)
【解决方案2】:

在mac上你可以

:!open http://localhost/index.php

【讨论】:

    【解决方案3】:

    在 Unix/Linux 上,使用

    :! firefox http://localhost/%:p

    %:p 是当前缓冲区的路径和文件名

    【讨论】:

    • 如果当前 Firefox 实例已经打开,它会在当前实例中打开吗?
    【解决方案4】:

    您需要使用适合您环境的方法来启动网络浏览器but you already asked a question about that

    所以,请使用:!start cmd /c ...!d:\path\to\firefox ... 或其他。重要的一点:您需要使用"http://localhost/" . expand("%:t") 作为传递给浏览器的参数。所以,做类似的事情

    :exec ":!start cmd /c ... " . "http://localhost/" . expand("%:t")
                             ^- leave a trailing space here
    

    编辑: 澄清:expand("%:t") 是一个 Vim 脚本表达式,它扩展为当前文件名的最后一个组成部分。在 Windows 上,这意味着如果当前文件名是 C:\a complicated path\to\index.htmlexpand("%:t") 将返回 index.html

    HTH。

    【讨论】:

    • 另外,您可以在 ex 命令(以冒号开头的命令)中使用 %:t 来表示“正在编辑的文件的最后一个路径组件”,即文件的基本名称(如index.htmlC:\path\to\index.html)。
    猜你喜欢
    • 2020-05-15
    • 1970-01-01
    • 2014-07-22
    • 2013-08-11
    • 2017-11-11
    • 2013-05-27
    • 2011-01-03
    • 1970-01-01
    • 2012-08-11
    相关资源
    最近更新 更多