发布一款 Sublime Text 下的 Nodejs JavaScript 语法高亮插件

发布一款 Sublime Text 下的 Nodejs JavaScript 语法高亮插件

智能提示:包括常用API和已有函数原型的提示。

14 回复

发布一款 Sublime Text 下的 Node.js JavaScript 语法高亮插件

概述

本文介绍如何创建一个适用于 Sublime Text 的 Node.js JavaScript 语法高亮插件。该插件不仅提供基本的语法高亮功能,还能为开发者提供常用的 API 和已有函数原型的智能提示。

创建插件目录结构

首先,我们需要创建一个文件夹来存放插件文件。假设我们将其命名为 NodeJS_Highlighter

NodeJS_Highlighter/
├── Default/
│   └── Main.sublime-menu
├── NodeJS_Highlighter.sublime-package
├── NodeJS_Highlighter.sublime-settings
└── Syntaxes/
    └── nodejs_js.tmLanguage

定义语法高亮规则

Syntaxes/nodejs_js.tmLanguage 文件中定义 Node.js JavaScript 的语法高亮规则。这是一个 XML 文件,使用了 .tmLanguage 格式。

<?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>name</key>
    <string>NodeJS JavaScript</string>
    <key>fileTypes</key>
    <array>
        <string>.js</string>
    </array>
    <key>patterns</key>
    <array>
        <!-- 注释 -->
        <dict>
            <key>begin</key>
            <string>/\\*</string>
            <key>end</key>
            <string>\\*/</string>
            <key>name</key>
            <string>comment.block.js</string>
        </dict>
        <dict>
            <key>match</key>
            <string>//.*$</string>
            <key>name</key>
            <string>comment.line.js</string>
        </dict>

        <!-- 关键字 -->
        <dict>
            <key>match</key>
            <string>\b(function|var|let|const|if|else|for|while|return)\b</string>
            <key>name</key>
            <string>keyword.control.js</string>
        </dict>

        <!-- 常用API -->
        <dict>
            <key>match</key>
            <string>\b(require|console.log|process.exit)\b</string>
            <key>name</key>
            <string>support.function.nodejs</string>
        </dict>
    </array>
    <key>scopeName</key>
    <string>source.js.nodejs</string>
</dict>
</plist>

提供智能提示

为了实现智能提示,我们可以使用 Sublime Text 的插件 API 来扩展功能。这里我们将使用 sublime_completions 文件来定义智能提示列表。

Default/ 目录下创建一个名为 nodejs_completions.sublime-completions 的文件:

{
    "scope": "source.js.nodejs",
    "completions": [
        { "trigger": "require", "contents": "require(${1:module})$0" },
        { "trigger": "console.log", "contents": "console.log(${1:message})$0" },
        { "trigger": "process.exit", "contents": "process.exit(${1:code})$0" }
    ]
}

安装与使用

将上述文件夹压缩成一个 .sublime-package 文件,然后通过 Sublime Text 的插件管理界面进行安装。

总结

本插件提供了 Node.js JavaScript 的语法高亮和智能提示功能,帮助开发者更高效地编写代码。通过自定义语法高亮规则和智能提示列表,可以极大地提升开发体验。

希望这个插件能够对你的 Node.js 开发有所帮助!


赞,太给力了

支持~~~

repo上的install章节写成了:git clone https://github.com/P233/Syntax-highlighting-for-Sass.git

如何禁用内置的或者第三方 JavaScript 语法高亮?

赞, 就是安装不上. window 系统有特别配置的地方吗

好像就多了属性名蓝色显示?

禁用内置的或者第三方 JavaScript 语法高亮,怎么禁用?

支持楼主!

支持一个

这个背景色太晃眼了,,,,,

atom用戶飄過

发布一款 Sublime Text 下的 Node.js JavaScript 语法高亮插件

为了帮助开发者更高效地编写 Node.js 代码,我发布了一款适用于 Sublime Text 的插件,它提供了 Node.js 特定的 JavaScript 语法高亮功能。这款插件不仅包含了标准的 JavaScript 关键字和语法高亮,还加入了 Node.js 模块、内置对象等特有的语法高亮。

安装步骤:

  1. 下载插件: 你可以从我的 GitHub 仓库下载插件压缩包:GitHub 仓库链接

  2. 安装到 Sublime Text: 将下载的压缩包解压后,将文件夹复制到 Sublime Text 的 Packages 目录下。默认情况下,该目录位于你的用户文件夹中(例如,Windows 用户可以在 %APPDATA%\Sublime Text 3\Packages,Mac 用户则在 ~/Library/Application Support/Sublime Text 3/Packages)。

示例代码:

假设你想在 Sublime Text 中对 Node.js 的 fs 模块进行高亮显示,可以在插件中添加以下内容来实现特定的高亮规则:

{
    "name": "Node.js fs module",
    "scope": "source.js.node",
    "settings": {
        "foreground": "#ff6600"
    },
    "match": "\\b(fs|readFile|writeFile)\\b"
}

上述 JSON 配置了一个名为 Node.js fs module 的高亮规则,其中 scope 表示匹配的文件类型为 Node.js JavaScript 文件。settings 中定义了高亮颜色,而 match 匹配了 Node.js fs 模块中的关键字。

使用效果:

安装并配置好插件之后,当您在 Sublime Text 中打开 .js 文件时,Node.js 特有的 API 如 fs.readFilefs.writeFile 等会被特别高亮显示,以提高可读性和开发效率。

如果你有任何问题或建议,请随时提交 Issues 或 Pull Requests 到 GitHub 仓库,我会尽快回复和改进。

希望这个插件能让你的 Node.js 开发体验更加愉快!


希望上述说明能够帮助大家理解如何使用这款插件,并能提供足够的指导来安装和使用它。

回到顶部