Sublimetext3 关于Sublime Text 3中的范围:Text.something vs source.something及其特性

Sublimetext3 关于Sublime Text 3中的范围:Text.something vs source.something及其特性,sublimetext3,Sublimetext3,因此,为了进一步了解ST3的内部结构,我正在为一个存储库制作一个新的包,用于Laravel的刀片模板制作 在.sublime语法文件中,作用域当前设置为作用域:text.blade,除了我无法为我的代码片段显示自动完成弹出窗口外,它工作正常。为此,我需要将范围更改为source.blade。但是这样做会破坏使用div.foo+选项卡将其扩展到的能力 我知道我可以根据自己的喜好将自动完成选择器更改为包含文本,但这只是我的解决方案。我们不希望有一个软件包要求你改变你的偏好,我们希望它只是工作 在我的

因此,为了进一步了解ST3的内部结构,我正在为一个存储库制作一个新的包,用于Laravel的刀片模板制作

.sublime语法文件
中,作用域当前设置为
作用域:text.blade
,除了我无法为我的代码片段显示自动完成弹出窗口外,它工作正常。为此,我需要将范围更改为
source.blade
。但是这样做会破坏使用
div.foo
+
选项卡将其扩展到
的能力

我知道我可以根据自己的喜好将
自动完成选择器
更改为包含
文本
,但这只是我的解决方案。我们不希望有一个软件包要求你改变你的偏好,我们希望它只是工作


在我的语法文件中,是否有一种方法可以使自动完成弹出窗口在仍处于
文本范围内时激活,并保留这两个功能(用于自动完成的弹出窗口和要展开的选项卡)?

我不确定哪一个是最佳解决方案。
auto_complete\u selector
的默认设置在
text
范围内不起作用,这可能是有道理的,但我不明白为什么它在
text.html
中不起作用。无论如何,在我看来,你有两个选择,每个都有自己的缺点

  • 不要弄乱用户的设置,但要传达调整自动完成选择器的需要,例如使用软件包控制提供的系统。缺点:用户可能会忽略自述或安装消息

  • 通过在
    自动完成选择器中添加
    文本.blade
    .sublime settings
    来覆盖用户设置(我见过这样做!)Con:干扰用户设置


  • 另一方面,我想知道使用
    text.html.blade
    作为作用域是否更合适。

    我的第一个想法是只使用
    scope:text.blade source.blade
    。然而,这并不是一个好的风格。@ R.Stand是的,不,我也尝试过<代码>范围:T.St.S刀片,Soo.Scor 没有用:(是RePo,偶然的吗?@ MattDo:这是最受欢迎的一个,但是,我要感谢你们这两个途径,我一定会考虑它们!!),也用于<代码> TeX.html。
    source.blade
    上的主要内容是什么?(看看这些文件,因为我不是主要的贡献者,似乎
    text.html
    被推到了主上下文部分。我想这可能与在文件中首先声明它是一样的!)我对Blade不太熟悉,但简单看一下,我觉得它看起来很像html。那么,如果用户可以使用
    text.html
    范围内的所有其他补全,他们会不会感激呢?当然。但是,是的,它们稍后会在语法文件中推送;)