使Sublime Text将<script type ="text/html">视为HTML

mob*_*emk 6 html sublimetext2 sublimetext3

我最近在Knockout模板上做了很多工作,而且我一直在使用Sublime来做这件事.我注意到的一件事是,当使用模板时,需要在这样的块中定义:

<script type="text/html"></script>
Run Code Online (Sandbox Code Playgroud)

它将内容视为Javascript,这意味着我错过了我安装的许多HTML工具.我想让它将内容视为HTML而不是Javascript; 我有什么设置可以用来做这个吗?

mob*_*emk 18

在这里找到了答案,感谢iamntz ; 诀窍很简单.对于Sublime Text 3:

  1. 在安装目录中打开Packages,然后找到HTML.sublime-package并在7zip(或您最喜欢的归档工具)中打开它
  2. 找到HTML.tmLanguage并将其打开以进行编辑
  3. 找到这一行:

    <string>(?:^\s+)?(&lt;)((?i:script))\b(?![^&gt;]*/&gt;)</string>
    
    Run Code Online (Sandbox Code Playgroud)

    并用这个替换它:

    <string>(?:^\s+)?(&lt;)((?i:script))\b(?!([^&gt;]*text/html[^&gt;]*|[^&gt;]*/>))</string>
    
    Run Code Online (Sandbox Code Playgroud)

好,易于; 第二个片段中的text/html可以替换为任何模板类型,现在它将被Sublime读取为HTML.此修复程序也适用于您安装的任何HTML包.

  • 在Ubuntu上,HTML.sublime-package发现于/ opt/sublime_text / (2认同)