【问题标题】:Sublime Text - Extend HTML Syntax Inside New "HTML (Custom)" SyntaxSublime Text - 在新的“HTML(自定义)”语法中扩展 HTML 语法
【发布时间】:2015-08-27 16:09:20
【问题描述】:

背景

我正在使用一种名为Webclerk 的语言,它使用自定义标签来查询4D database。它的工作原理与 PHP 类似。这不是使用处理成 HTML 的 .php 文件,而是使用处理成 HTML 的“.wc”文件。

而不是类似:<?php echo $variable; ?>,它看起来像 _jit_ echo $variable; jj

<?php = _jit_, ?> = jj

In Sublime Text, when PHP is selected as the Syntax, PHP is highlighted a different block color, on top of the HTML highlighting.我想对这些特殊标签做同样的事情。

我真的不在乎在括号内突出显示文本。我会完全满足于使用标签开始和停止的高亮/背景颜色。

我做了什么

我已经安装了包管理器和包资源查看器,然后提取了 PHP 和 HTML 包来检查它们。我也一直在学习教程。我遇到了两种不同类型的语法突出显示(.tmLanguage 与 .sublime-syntax)的问题。第一种方式有很多信息,第二种方式很少。我觉得基于两个标签开始和停止突出显示并没有那么困难。


当我打开 HTML 包时,我得到:

Comments.tmPreferences
HTML.sublime-syntax
Miscellaneous.tmPreferences
Symbol List - ID.tmPreferences
encode_html_entities.py
html.sublime-snippet
html_completions.py

教程中几乎没有提到这些。我尝试将 HTML 的名称更改为 Webclerk,并且确实设法在列表中获得了新的语法。但是当我编辑标签时,突出显示的内容没有任何变化。

问题

我想知道我是否可以获得一些关于从哪里开始、这些文件的含义以及人们以前扩展 HTML 的示例的指针。

【问题讨论】:

    标签: sublimetext3 sublimetext 4d-database


    【解决方案1】:

    基本上,您正在尝试使用开始和结束正则表达式选择器定义自定义范围 这是记录在这里: http://sublimetext.info/docs/en/extensibility/syntaxdefs.html#begin-end-rules

    我也在 sublime 文本板上遇到了这个有趣的讨论,有人试图完全按照你想做的事情 http://www.sublimetext.com/forum/viewtopic.php?f=6&t=6207 里面有一些有用的信息和提示。

    我将从第 598 行的 HTML.tmLanauage 包内的 HTML.sublime-package 包开始(在我的设置中)有一个 php 开始和结束标签的定义,它看起来像一个识别标签并突出显示它们的正则表达式

    BTW .sublime-package 只是压缩文件,你可以重命名它们并解压。 然后把解压出来的文件夹放到%APPDATA%\Sublime Text 3\Installed Packages里面运行

    【讨论】:

    • 我一直在查看这些链接。还没有让它完全发挥作用,但我会奖励你赏金,这样它就不会消失。
    • 这个答案有几个问题:首先,OP 使用 ST3 的 dev build,这意味着所有默认的 .tmLanguage 文件都已替换为新的基于 YAML 的 .sublime-syntax 文件.其次,关于 zip 文件和HTML.sublime-package 的所有业务都是完全没有必要的——OP 已经在使用 PackageResourceViewer,它可以无缝地完成所有这些工作。最后,你不要把解压的包放在Installed Packages,它们放在Packages,否则它们不会覆盖压缩版本。
    猜你喜欢
    • 2013-08-10
    • 2018-09-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-04-03
    • 1970-01-01
    • 2013-02-19
    • 1970-01-01
    相关资源
    最近更新 更多