ARTICLE · INTELLIGENCE

战地情报 · 详情页

来自尧图项目组的一线实战观察与深度解析

3 分钟跑起来:GriddyCode 代码编辑器语法高亮与主题定制教程

3 分钟跑起来:GriddyCode 代码编辑器语法高亮与主题定制教程

3 分钟跑起来:GriddyCode 代码编辑器语法高亮与主题定制教程

【免费下载链接】griddycodeA code editor made with Godot. Code has never been more lit!项目地址: https://gitcode.com/GitHub_Trending/gr/griddycode

GriddyCode 是一款用 Godot 引擎写的代码编辑器,主打视觉化编码体验:语法高亮、自动补全、主题配色全部交给 Lua 脚本控制,帮 Linux 用户把编辑器调成自己想要的样子。

⚡ 三分钟跑起来

  1. 装 Godot 4.2:到 godotengine.org 下载 4.2 版(Godot 是开源游戏引擎,这里当作运行时用)。
  2. 拿代码:git clone https://gitcode.com/GitHub_Trending/gr/griddycode
  3. 装 NerdFont 字体:文件选择器靠它显示图标,缺了图标会变成一个一个 "□"。
  4. 启动:用 Godot 打开仓库里的project.godot,运行主场景 Scenes/editor.tscn。
  5. 验证:随便打开一个.py或.js文件,看到关键字被着色就说明跑通了。

🎨 核心功能实操

定制语法高亮

  • 入口:语言插件集中在 Lua/Plugins/ 目录,内置 c、cpp、js、py、go、html 等 15 个.lua文件;运行时实际加载的是系统 AppData 下的langs文件夹(Linux 路径~/.local/share/godot/app_userdata/Bussin GriddyCode/langs)。
  • 怎么改:新建以文件扩展名命名的脚本(如toml.lua),用highlight标注关键字、highlight_region标注字符串和注释区域,再实现detect_functions与detect_variables供补全调用。
  • 改完什么效果:打开对应扩展名的文件时,关键字、字符串、注释就按你定义的颜色渲染。

切换与自造主题

  • 入口:编辑器内按CTRL + T打开主题下拉框;内置 17 套主题放在 Lua/Themes/,如 Catppuccin、GitHub Dark、Tokyo Night、Nord、violet。
  • 怎么改:主题也是一个.lua文件,set_keywords调语法颜色、set_gui调背景与选区色;做浅色主题记得加disable_glow(),否则可能整屏发白。
  • 改完什么效果:切换后编辑器的背景、当前行、选区颜色整体更换。

自动补全与社区评论彩蛋

输入时引擎会回调当前语言脚本的detect_functions/detect_variables,把结果填进补全列表;按CTRL + L还能随机弹出一条别的语言脚本塞进来的社区评论,纯属乐子。

⌨️ 效率速查

快捷键作用
CTRL + I打开编辑器内置快速介绍,新手先看这个
CTRL + O打开文件选择器
CTRL + ,打开设置菜单(含字体、Shader 等选项)
CTRL + T打开 / 切换主题
CTRL + L随机弹出一条社区评论
CTRL + +/CTRL + -放大 / 缩小视图

🗺️ 项目地图

  • Lua/Plugins/ — 各语言语法高亮与补全脚本
  • Lua/Themes/ — 配色主题脚本
  • Scripts/ — 编辑器核心逻辑:文件管理、设置、主题加载等
  • Scenes/ — 界面场景:编辑器、设置、主题选择器、评论列表
  • Shaders/ — 屏幕特效,如 VHS & CRT、阳光、圆角
  • Fonts/ — 内置字体资源
  • definitions.lua — 给 Lua 扩展方法提供的类型提示

动手扩展

  • 自用:把自己写的.lua丢进 AppData 的langs或themes文件夹,编辑器即可加载。
  • 提交社区:发 Pull Request,把语言文件加到Lua/Plugins、主题文件加到Lua/Themes;合入后会随下一个版本一起发布。
  • 注意:Lua 脚本只在切换文件扩展名(如.md切到.ts)或重启时重新加载,改完记得触发一下。

排错速查

  • 图标显示成 "□"?→ 没装 NerdFont,装上即可。
  • 改了主题没生效?→ 换一下文件扩展名或重启,脚本才会重新加载。
  • 浅色主题整屏发白?→ 主题里加disable_glow()。
  • 文件超过约 1600 行光标飞出屏幕?→ 已知限制,官方标注待修,先留意一下。
  • 颜色突然变红?→ 你填的 HEX 非法,会被回退成#ff0000。

跑通之后,建议顺手把自己常用的主题和高亮脚本备份一份,方便回滚;平时留意仓库更新,有新版功能及时跟上;觉得哪套语言脚本不够用,直接照着Lua/Plugins里现有的改一份提交上去,比等官方排期更快。打开CTRL + I的那份内置介绍,就是你现在该做的第一件事。

【免费下载链接】griddycodeA code editor made with Godot. Code has never been more lit!项目地址: https://gitcode.com/GitHub_Trending/gr/griddycode

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

RELATED READING

延伸阅读

更多一线实战笔记与深度复盘,助您持续精进