我最近一直在使用 Knockout 模板做很多工作,而且我一直在使用 Sublime 来完成它。我注意到的一件事是,在使用模板时,需要在这样的 block 中定义它:
<script type="text/html"></script>
它将内容视为 Javascript,这意味着我错过了很多已安装的 HTML 工具。我想让它把内容当作 HTML 而不是 Javascript;有什么设置可以用来执行此操作吗?
最佳答案
我设法找到了答案 thanks to iamntz here ;诀窍很简单。对于 Sublime Text 3:
- 在您的安装目录中打开 Packages,然后找到 HTML.sublime-package 并在 7zip(或您最喜欢的存档工具)中打开它
- 找到 HTML.tmLanguage 并打开它进行编辑
找到这一行:
<string>(?:^\s+)?(<)((?i:script))\b(?![^>]*/>)</string>
并用这个替换它:
<string>(?:^\s+)?(<)((?i:script))\b(?!([^>]*text/html[^>]*|[^>]*/>))</string>
漂亮又简单;第二个片段中的 text/html 可以替换为任何模板类型,现在 Sublime 会将其读取为 HTML。此修复程序也适用于您已安装的任何 HTML 包。
关于html - 使 Sublime Text 将 <script type ="text/html"> 视为 HTML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17156810/