gpt4 book ai didi

build-automation - Sublime Text 2 : build system custom selector

转载 作者:行者123 更新时间:2023-12-04 06:21:48 25 4
gpt4 key购买 nike

如何在没有可用选择器(如 *.ltx*.cmake 等)的自定义扩展(如 text.tex.latexsource.c++ 等)的构建系统中定义选择器?

是否可以?如果是 - 如何?

最佳答案

如果您定义新的语法定义(即新的 .tmLanguage 文件),则有可能。语法定义可以声明新的“范围名称”,然后您可以在新的自定义构建系统中使用这些名称。

新的语法定义文件实际上不必定义/匹配文件的语法,因为您可以简单地按文件扩展名进行匹配...!

看看here在 .tmLanguage 文件语法中。 “scopeName” 项允许您命名新范围(即“text.tex.latex”等)。下面我将通过一个例子。

我创建了一个定义新作用域的新语法——它非常简单(就像 Sublime 中的大多数东西一样):

  • 在命令面板中,选择“包控制:安装包”
  • 在包列表中,选择“PackageDev”
  • 通过选择 创建新的语法定义工具 > 包 > 包开发 > 新语法定义
  • 您的新语法定义将如下所示:

  • { "name": "语法名称",
    "scopeName": "source.syntax_name",
    “文件类型”: [””],
    “模式”:[
    ],
    "uuid": "..."
    }

    ... 将“语法名称”替换为描述性名称,将“source.syntax_name”替换为您的新范围名称,并填写“fileTypes”以包含一个或多个文件扩展名。例如:
    "fileTypes": ["tex", "ltx"]
  • 使用 Packages/User 下的“.JSON-tmLanguage”扩展名保存文件
  • 选择 工具 > 构建系统 > 选择 Json 到 tmLanguage
  • 选择 工具 > 构建

  • 你完成了!任何碰巧具有“fileTypes”中定义的扩展名之一的新文件都将激活“scopeName”范围。

    您现在可以在新的构建系统文件中使用此范围( 工具 > 构建系统 > 新构建系统... )

    干杯!

    关于build-automation - Sublime Text 2 : build system custom selector,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14136024/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com