将标记之间的所有内容匹配为评论
Match everythin between tag as comment
我想强调
之间的每一件事
!&
some explanation
&!
作为评论。
我知道评论符合
- name: comment.line.exclamation-mark.fortran
match: (?i)\!.*$
在我的 fortran.YAML-tmLanguage
.
但我不知道如何将其扩展到上述情况。
由于注释是多行的,所以需要将正则表达式拆分为两个表达式,一个称为begin,一个称为end。
这允许您解析多行。
我并没有真正使用 YAML,但是 C tmLanguage 中的这段代码应该可以帮助您入门(注释样式为 /* COMMENT */
):
<dict>
<key>begin</key> <string>\s*/\*</string>
<key>captures</key>
<dict>
<key>0</key> <dict> <key>name</key>
<string>punctuation.definition.comment.c</string> </dict>
</dict>
<key>end</key> <string>\*/</string>
<key>name</key> <string>comment.block.c</string>
</dict>
因此您可以使用 \s\!\&
作为开始标签,使用 \&\!
作为结束标签。
我找到了以下作品。谢谢@LinuxCC。
# order matter: this block comment syntax should be before the line comment syntax
- name: comment.block.fortran
begin: (?i)\!&
end: (?i)&\!
captures:
'0': {name: comment.line.exclamation-mark.fortran}
- name: comment.line.exclamation-mark.fortran
match: (?i)\!.*$
要使评论切换工作,您还需要在另一个文件中,
# [PackageDev] target_format: plist, ext: tmPreferences
---
name: Comments
uuid: 40e092f2-ee49-4cbd-8afb-4a5c4f581463
scope: source.fortran
settings:
shellVariables:
- name: TM_COMMENT_START
value: '! '
- name: TM_COMMENT_START_2
value: '!&'
- name: TM_COMMENT_END_2
value: '&!'
我想强调
之间的每一件事!&
some explanation
&!
作为评论。
我知道评论符合
- name: comment.line.exclamation-mark.fortran
match: (?i)\!.*$
在我的 fortran.YAML-tmLanguage
.
但我不知道如何将其扩展到上述情况。
由于注释是多行的,所以需要将正则表达式拆分为两个表达式,一个称为begin,一个称为end。 这允许您解析多行。
我并没有真正使用 YAML,但是 C tmLanguage 中的这段代码应该可以帮助您入门(注释样式为 /* COMMENT */
):
<dict>
<key>begin</key> <string>\s*/\*</string>
<key>captures</key>
<dict>
<key>0</key> <dict> <key>name</key>
<string>punctuation.definition.comment.c</string> </dict>
</dict>
<key>end</key> <string>\*/</string>
<key>name</key> <string>comment.block.c</string>
</dict>
因此您可以使用 \s\!\&
作为开始标签,使用 \&\!
作为结束标签。
我找到了以下作品。谢谢@LinuxCC。
# order matter: this block comment syntax should be before the line comment syntax
- name: comment.block.fortran
begin: (?i)\!&
end: (?i)&\!
captures:
'0': {name: comment.line.exclamation-mark.fortran}
- name: comment.line.exclamation-mark.fortran
match: (?i)\!.*$
要使评论切换工作,您还需要在另一个文件中,
# [PackageDev] target_format: plist, ext: tmPreferences
---
name: Comments
uuid: 40e092f2-ee49-4cbd-8afb-4a5c4f581463
scope: source.fortran
settings:
shellVariables:
- name: TM_COMMENT_START
value: '! '
- name: TM_COMMENT_START_2
value: '!&'
- name: TM_COMMENT_END_2
value: '&!'