13 个版本
0.3.11 | 2024 年 6 月 7 日 |
---|---|
0.3.9 | 2024 年 3 月 27 日 |
0.3.6 | 2023 年 9 月 17 日 |
0.3.3 | 2023 年 5 月 4 日 |
0.2.0 | 2023 年 3 月 17 日 |
10 在 文本编辑器 中排名
每月 303 次下载
86KB
2K SLoC
Pest IDE 工具
通过 LSP 为 Pest 提供IDE支持。
该仓库包含 Pest 解析器生成器的 Rust 实现 语言服务器协议。
功能
- 错误报告。
- 未使用规则的警告。
- 可用的语法高亮定义。
- 重命名规则。
- 转到规则声明、定义或引用。
- 内置规则和文档规则的光标悬停信息。
- 规则名称的自动完成。
- 内联和提取规则。
- 完全支持 Unicode。
- 格式化。
- 更新检查。
请参阅 问题页面 提出功能建议或查看以前的建议。
使用方法
您可以在 DOCS.md
文件中找到设置服务器的文档。
支持的 IDE
- Visual Studio Code
- VSCode 有一个预构建的扩展程序,可以编译、更新并启动语言服务器。它还包括语法高亮定义。
- 扩展程序也可在 OpenVSX 上找到。
- Sublime Text
- 您可以从 最新版本 获取 Sublime Text 包。
- Vim
- Vim 支持是通过 pest.vim 包提供的。
- Zed
- Zed 支持是通过 Zed Pest 扩展 提供的。
由于本项目使用 LSP,添加对新 IDE 的支持应该比为每个编辑器定制实现更容易实现。请参阅 跟踪问题 请求对其他 IDE 的支持或查看 IDE 支持的当前状态。
开发
该仓库使用 Taskfile;安装 task
命令以获得更好的开发体验。
可以使用任务 fmt-and-lint
来检查代码格式并进行代码检查,以确保代码与仓库中的其他代码保持一致。
在 VSCode 中,按 F5
键构建和调试 VSCode 扩展。这是我们预先设置好的唯一调试方法。
架构
服务器本身使用 Rust 语言通过 tower-lsp
实现。它通过标准输入/输出与编辑器进行 JSON-RPC 通信,遵循语言服务器协议。
贡献
我们欢迎贡献!建议在贡献之前先在 Discord 上联系我们(邀请链接可在 pest.rs 找到),以确保我们对此有所了解。
鸣谢
- OsoHQ,感谢他们的 博客文章 和开源代码,这些内容为我们提供了灵感。
- Stef Gijsberts,感谢他们的 Pest 语法高亮 TextMate bundle,该 bundle 在本扩展中使用了 MIT 许可。
依赖
约 15–29MB
约 435K SLoC