【问题标题】:Sublime Text toggleNeoVintageous pluginSublime Text toggleNeoVintageous 插件
【发布时间】:2018-10-15 01:22:32
【问题描述】:

我安装了用于 sublime 文本的切换新复古插件并将键设置为 ctrl+Alt+t,以切换新复古。当我切换它时它可以工作,但是当我切换它时我收到以下错误消息:

加载语法文件时出错 “Packages/NeoVintageous/res/Command-linemode.sublime-syntax”:无法 阅读 Packages/NeoVintageous/res/Command-linemode.sublime-syntax

有谁知道这是什么意思,虽然它仍然会在出现错误消息后关闭,但我不知道为什么每当我尝试这样做时它总是弹出来

【问题讨论】:

  • 这不应该在最新版本的 NeoVintageous 中发生,因为命令行模式语法已被删除。 @OdatNurd 是正确的,因为在关闭 NeoVintageous 时打开 ex 模式面板时会出现问题。同样,这不会在较新的版本中发生,因为语法已过时。

标签: sublimetext3


【解决方案1】:

加载语法文件“Packages/NeoVintageous/res/Command-linemode.sublime-syntax”时出错:无法读取Packages/NeoVintageous/res/Command-linemode.sublime-syntax

一般来说,这个错误信息告诉你 Sublime 中的某个地方(打开的文件或其他小部件)认为它应该使用特定的语法定义,但找不到该语法定义。命名的语法文件是导致错误的文件。

如果我们检查它提到的文件名 (Packages/NeoVintageous/res/Command-linemode.sublime-syntax),我们可以确定语法文件在 NeoVintageous 包本身中。

在 Sublime 中,任何已安装的软件包总是“打开”并处于活动状态,除非它的名称出现在 ignored_packages 设置中,这告诉 Sublime 即使该软件包存在,它也应该假装它不存在。

该软件包的 README 中的任何地方都没有明确说明,但它所做的只是代表您修改该设置,以在该设置中添加或删除 NeoVintageous 插件。

当你将一个已经加载的包添加到被忽略的包列表中时,Sublime 会通过从内存中卸载该包并表现得好像它不存在来响应。

所以,总的来说,你在这里遇到的问题是你打开了 NeoVintageous,Sublime 中的某些东西正在使用该包中的语法定义,然后当你关闭包时,语法定义是卸载并且 Sublime 抱怨,因为它想要使用的语法不再可用。

我个人不使用这两个包中的任何一个,但基于 Command-linemode.sublime-syntax 的语法名称,我猜测该语法正在用于ex 命令输入中,您可以使用它来提供@ 987654325@ 包的命令(可能允许自动完成或类似的东西)。

如果是这种情况,您可以通过在切换包状态之前关闭命令窗口来停止显示错误。我想一旦关闭命令输入,错误弹出窗口就会消失并且不会再次出现,因此该错误很烦人,但或多或​​少是无害的。

可能值得向包作者提出问题,让他们知道发生了什么,如果没有其他原因,他们可以记录这将发生或修改此包以无法关闭包的状态而语法当前正在使用中。

【讨论】:

    猜你喜欢
    • 2014-02-13
    • 1970-01-01
    • 1970-01-01
    • 2013-11-16
    • 2013-02-17
    • 2014-10-11
    • 1970-01-01
    • 2018-02-09
    • 2018-03-18
    相关资源
    最近更新 更多