我想将自己的语法(语言)添加到Sublime Text 2.我已经知道如何将它包含在语法列表中,所以我现在唯一的问题是语法高亮。但首先,我想了解用于匹配我想要突出显示的单词的Oniguruma语言,以便我可以自己制作。
这是我的代码
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>fileTypes</key>
<array>
<string>xmp</string>
</array>
<key>name</key>
<string>XMP</string>
<key>patterns</key>
<array>
<dict>
<key>match</key>
<string>??????????????????????????????????????????????</string>
<key>name</key>
<string>source.keyword.xmp</string>
</dict>
</array>
<key>scopeName</key>
<string>source.xmp</string>
<key>uuid</key>
<string>750d3b02-a1bc-4b09-a794-1b78c54a4e21</string>
</dict>
</plist>
就像其他编程语言(例如HTML或XML)一样,我不会使用<>
(在HTML中),而是使用[]
和/
来关闭该声明。所以基本上我只是将<>
替换为[]
,但我怎样才能将其翻译为 Oniguruma (正则表达式)?
这就是我想要的东西
<key>patterns</key>
<array>
<dict>
<key>match</key>
<string>[SIZE=""][/SIZE]</string>
<key>name</key>
<string>code.size.xmp</string>
</dict>
<dict>
<key>match</key>
<string>[BOLD][/BOLD]</string>
<key>name</key>
<string>code.bold.xmp</string>
</dict>
</array>
答案 0 :(得分:0)
replace: /<(\/)?(.*?)>/g
to: [\1\2]
答案 1 :(得分:0)
老实说,我无法理解你指的是什么......
也许我确实理解了你所说的替代[\1\2]
。根据解释,它只会匹配除换行符之外的任何字符(如果我错了请纠正我)但我想匹配确切的单词和符号[size=""]
而不是任何随机字符。我还想要一个自动列表功能......
就像,如果我打算输入[
,它会自动列出我的语言中包含的唯一可能的完全字,就像其他默认编程语言Sublime Text已经具有。 (例如Java)
是的,不仅是我想要翻译成正则表达式的代码,还有语法高亮(着色)和我正在谈论的自动列表功能......
这里只是我的代码示例
[SIZE=""]texts here[/SIZE] Will change the font size. (Usage [SIZE="integer"])
[BOLD]texts here[/BOLD] Will change the font weight.
[CENTER]texts here[/CENTER] Will align texts to center.
[ITALIC]texts here[/ITALIC] ...
[UNDERLINE]texts here[/UNDERLINE] ...
[STRIKE]texts here[/STRIKE] ...
....
感谢您的回答:)