【问题标题】:VSCode Language ExtensionVSCode 语言扩展
【发布时间】:2017-06-23 02:19:19
【问题描述】:

我正在构建自定义语言扩展,并且在 language-configuration.json 中遇到 lineComment 问题。奇怪的是,我的语言使用“@@”作为注释行,我无法让它工作。

我试过@@、@@等等。

有什么建议吗?

(根据评论更新):

这是我的语言配置.json 的全部内容:

{
     "comments": {
         // single line comment
         "lineComment": "@@"
     },
     // symbols used as brackets
     "brackets": [
         ["{", "}"],
         ["[", "]"],
         ["(", ")"]
     ],
     "autoClosingPairs": [
         ["{", "}"],
         ["[", "]"],
         ["(", ")"]
     ],
     "surroundingPairs": [
         ["{", "}"],
         ["[", "]"],
         ["(", ")"]
     ] }

【问题讨论】:

    标签: visual-studio-code vscode-extensions tmlanguage


    【解决方案1】:

    这与传统的 C++ 行注释非常相似。这是我在语法存储库中使用的内容:

        {
          "name": "comment.line.double-slash",
          "match": "\/\/.*"
        }
    

    我猜你已经试过了:

        {
          "name": "comment.line.double-at",
          "match": "\@\@.*"
        }
    

    ?我不确定您是否甚至需要转义 @ 符号,因为它在 JS 正则表达式 AFAIK 中没有特殊含义。

    【讨论】:

    • 我试过了。不知道为什么它不能以两种方式之一工作。
    • 那么也许你有一个冲突的规则,所以这个规则永远不会匹配?尝试禁用所有其他规则,并在您的语言规范中添加此评论规则。那应该可以工作了。
    • 这是我的语言配置.json 的全部内容:{ "comments": { // symbol used for single line comment. Remove this entry if your language does not support line comments "lineComment": "@@" }, // symbols used as brackets "brackets": [ ["{", "}"], ["[", "]"], ["(", ")"] ], "autoClosingPairs": [ ["{", "}"], ["[", "]"], ["(", ")"] ], "surroundingPairs": [ ["{", "}"], ["[", "]"], ["(", ")"] ] }
    • 但是,我在回答中给你的不是语言配置,而是主题文件(经常使用.tmTheme,但也可以使用json文件)look here。跨度>
    • 啊,谢谢先生。我在 Yeoman 为我构建的结构中没有 .thTheme 文件,因此我正在研究如何构建一个以及将其放在我的扩展存在的文件结构中的位置。
    猜你喜欢
    • 1970-01-01
    • 2018-12-12
    • 1970-01-01
    • 2020-01-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-01-24
    相关资源
    最近更新 更多