Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/wix/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sublimetext3 SublimiteText 3中使用.sublimite语法文件类型的多语法高亮显示_Sublimetext3_Syntax Highlighting_Zk_Zscript - Fatal编程技术网

Sublimetext3 SublimiteText 3中使用.sublimite语法文件类型的多语法高亮显示

Sublimetext3 SublimiteText 3中使用.sublimite语法文件类型的多语法高亮显示,sublimetext3,syntax-highlighting,zk,zscript,Sublimetext3,Syntax Highlighting,Zk,Zscript,我正在使用zk框架,我需要制作一个以XML语法突出显示的高级语法文件,但在zscript代码段中使用java语法突出显示,在样式上下文中使用CSS语法。 这是zk代码的一个示例: <zk> <style> .myClass{ width=300px; } </style> <div id="panel1" class="myClass" visible="true" >

我正在使用zk框架,我需要制作一个以XML语法突出显示的高级语法文件,但在zscript代码段中使用java语法突出显示,在样式上下文中使用CSS语法。 这是zk代码的一个示例:

<zk>
    <style>
        .myClass{
            width=300px;
        }
    </style>

    <div id="panel1" class="myClass" visible="true" >   
        <hlayout width="100px">
            <image id="icon1" src="/Desktop/image1.png" width="32px"></image>   
            <image id="icon2" src="/Desktop/image1.png" width="50px"></image>   
        </hlayout>
    </div>  

    <zscript><![CDATA[
        try{
            if (panel1.isVisible()) {
                //do something
            }
        }catch(Exception e){
            //catch exception
        }
    ]]></zscript>
</zk>

.myClass{
宽度=300px;
}
我看到最近有些事情发生了变化,目前在线解决方案不是很清楚,例如,我发现以下注意事项:

从Sublime Text Build 3084开始,一种新的语法定义格式已经发布 添加了.sublime语法扩展名

我们强烈建议使用它来支持传统格式 除非与旧版本兼容,否则在本文档中描述 这是需要的

文件可在以下位置获得:


因此,我需要一个关于如何使用SublimiteText3构建新的多语法文件的教程。

好的,我通过安装解决了我的问题(
Ctrl
+
Shift
+
p
,选择
PackageControl:Install Package
,键入并选择
PackageDev
,以便安装它),然后我选择了:
Tools
->
Packages
->
packagesdevelopment
->
新语法定义

我在这里写了以下代码:

%YAML 1.2
---
# See http://www.sublimetext.com/docs/3/syntax.html

name: zul
file_extensions:
 - zul
scope: text.zul

contexts:
  main:
    - match: ""
      push: "Packages/XML/XML.sublime-syntax"
      with_prototype:

        - match: '< *zscript *>'
          push: Packages/Java/Java.sublime-syntax
          with_prototype:
            - match: '(?=</ *zscript *>)'
              pop: true

        - match: '< *script *>'
          push: Packages/JavaScript/JavaScript.sublime-syntax
          with_prototype:
            - match: '(?=</ *script *>)'
              pop: true

        - match: '< *style *>'
          push: Packages/CSS/CSS.sublime-syntax
          with_prototype:
            - match: '(?=</ *style *>)'
              pop: true
%YAML 1.2
---
#看http://www.sublimetext.com/docs/3/syntax.html
姓名:zul
文件扩展名:
-祖尔
范围:text.zul
上下文:
主要内容:
-匹配:“
push:“Packages/XML/XML.sublime语法”
使用_原型:
-匹配:“<*zscript*>”
push:Packages/Java/Java.submite-syntax
使用_原型:
-匹配:“(?=)”
波普:没错
-匹配:“<*脚本*>”
push:Packages/JavaScript/JavaScript.sublime-syntax
使用_原型:
-匹配:“(?=)”
波普:没错
-匹配:“<*样式*>”
push:Packages/CSS/CSS.sublime-syntax
使用_原型:
-匹配:“(?=)”
波普:没错
  • 文件扩展名
    是使用此语法的扩展名列表
  • scope
    是编程语言的
    source
    ,是标记和其他一切的
    text
  • match
    是传递给
    push
    元素的正则表达式
  • with_prototype
    类似于语法突出显示中的一个例外,您可以使用不同的语法为不同的上下文定义代码段
此示例通常在标记
之间使用xml语法使用java语法突出显示,并在
上下文使用css语法


我在
C:\Users\username\AppData\Roaming\Sublime Text 3\Packages\User
中保存了这个文件,然后我在
视图中创建了这个语法文件
语法
用户
->
zul
(文件名)。

好的,我通过安装解决了我的问题(
Ctrl
+
Shift
+
P
,选择
包控制:安装包
,键入并选择
PackageDev
,以便安装它),然后我选择了:
工具
->
->
包开发
->
新语法定义

我在这里写了以下代码:

%YAML 1.2
---
# See http://www.sublimetext.com/docs/3/syntax.html

name: zul
file_extensions:
 - zul
scope: text.zul

contexts:
  main:
    - match: ""
      push: "Packages/XML/XML.sublime-syntax"
      with_prototype:

        - match: '< *zscript *>'
          push: Packages/Java/Java.sublime-syntax
          with_prototype:
            - match: '(?=</ *zscript *>)'
              pop: true

        - match: '< *script *>'
          push: Packages/JavaScript/JavaScript.sublime-syntax
          with_prototype:
            - match: '(?=</ *script *>)'
              pop: true

        - match: '< *style *>'
          push: Packages/CSS/CSS.sublime-syntax
          with_prototype:
            - match: '(?=</ *style *>)'
              pop: true
%YAML 1.2
---
#看http://www.sublimetext.com/docs/3/syntax.html
姓名:zul
文件扩展名:
-祖尔
范围:text.zul
上下文:
主要内容:
-匹配:“
push:“Packages/XML/XML.sublime语法”
使用_原型:
-匹配:“<*zscript*>”
push:Packages/Java/Java.submite-syntax
使用_原型:
-匹配:“(?=)”
波普:没错
-匹配:“<*脚本*>”
push:Packages/JavaScript/JavaScript.sublime-syntax
使用_原型:
-匹配:“(?=)”
波普:没错
-匹配:“<*样式*>”
push:Packages/CSS/CSS.sublime-syntax
使用_原型:
-匹配:“(?=)”
波普:没错
  • 文件扩展名
    是使用此语法的扩展名列表
  • scope
    是编程语言的
    source
    ,是标记和其他一切的
    text
  • match
    是传递给
    push
    元素的正则表达式
  • with_prototype
    类似于语法突出显示中的一个例外,您可以使用不同的语法为不同的上下文定义代码段
此示例通常使用xml语法,在标记
..
之间使用java语法突出显示,在
..
上下文中使用css语法


我在
C:\Users\username\AppData\Roaming\Sublime Text 3\Packages\User
中保存了这个文件,然后我在
视图中创建了这个语法文件
语法
->
用户
->
zul
(文件名).

我想你已经知道了,但要确定的是:Eclipse支持这一点。此外,谷歌搜索“升华多语法突出显示”出现了。这可能会起作用,因为有一个zscript标记可以用作开始和结束模式。这不是一回事,现在改变了它的方式,尽管官方的Eclipse插件对我来说做得不是很好,一般来说我不喜欢Eclipse我想你已经知道了,但只是要确定:在Eclipse中支持这一点。而且,谷歌搜索“升华多语法突出显示”出现。这可能会起作用,因为有一个zscript标记可以用作开始和结束模式。这不是一回事,现在改变了它的方式,尽管官方的Eclipse插件没有