Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/oop/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sublimetext3 将URL添加到升华文本3菜单项不会';如果文件路径中有空格,则无法工作。如何在ST3中转义文本?_Sublimetext3_Customization_Sublimetext - Fatal编程技术网

Sublimetext3 将URL添加到升华文本3菜单项不会';如果文件路径中有空格,则无法工作。如何在ST3中转义文本?

Sublimetext3 将URL添加到升华文本3菜单项不会';如果文件路径中有空格,则无法工作。如何在ST3中转义文本?,sublimetext3,customization,sublimetext,Sublimetext3,Customization,Sublimetext,我不知道如何用一种简洁的方式来表达,所以这里是一种复杂的方式。很明显,我在玩弄并试图定制Sublime Text 3。我想我应该尽快解决这个问题 无论如何,我遇到了一个示例,它允许您将一个菜单项添加到ST3菜单列表中,该列表本质上是一个URL。我把它添加到“帮助”菜单中 代码段: { "caption": "Help", "mnemonic": "H", "id": "help", "children": [ { "command"

我不知道如何用一种简洁的方式来表达,所以这里是一种复杂的方式。很明显,我在玩弄并试图定制Sublime Text 3。我想我应该尽快解决这个问题

无论如何,我遇到了一个示例,它允许您将一个菜单项添加到ST3菜单列表中,该列表本质上是一个URL。我把它添加到“帮助”菜单中

代码段:

  {
    "caption": "Help",
    "mnemonic": "H",
    "id": "help",
    "children": [
      {
        "command": "open_url",
        "caption": "Twitter",
        "args": {"url": "https://twitter.com/WhatsTrending"}
      },
    ],
  },
然后,我想,如果它还可以打开一些本地文件,那不是很酷吗,所以我添加了以下内容:

  { 
    "caption" : "Local File",
    "command" : "open_url",
      "args" : { "url": "file:///Users/<username>/me.html" },
  },
  {
    "caption":"ST3 Custom File",
    "command" : "open_url",
      "args": {"url": "file:///Users/<username>/Library/Application Support/Sublime Text 3/Packages/User/me.html"}
     },
  },
我本来想工作,但没有,所以我很困惑。我的猜测是,路径中的空间需要逃逸,但我尝试的一切都失败了,有人知道如何正确逃逸吗


显然,这样做是行不通的file:///Users//Library/Application Support/Sublime\Text\3/Packages/User/me.html“,因为字符串没有计算或插值。

当然,在发布后30分钟,我尝试了一些最终有效的方法。因为我想不出还有什么别的办法,所以我尝试了URL编码,结果真的成功了。我所要做的就是将“”(空格)替换为“%20”和中提琴!它按预期工作

最后一个,现在看起来像这样:

  {
    "caption":"ST3 Custom File",
    "command" : "open_url",
      "args": {"url": "file:///Users/<username>/Library/Application%20Support/Sublime%20Text%203/Packages/User/me.html"}
   },
{
“标题”:“ST3自定义文件”,
“命令”:“打开url”,
“args:{“url”:”file:///Users//Library/Application%20Support/Sublime%20Text%203/Packages/User/me.html"}
},

它ST3会在默认浏览器中打开html文件。无论如何,我希望这能帮助一些人。

出于好奇,另一个答案(\)中的方法也有效吗?@Cerberus我试图使用问题最后几行描述的“\”方法逃避。我认为原因是,用于ST3设置的JSON风格不允许字符串发生变化,因此不能进行任何插值或转义。