51 lines
1.7 KiB
Markdown
51 lines
1.7 KiB
Markdown
# tsl-devkit 项目简介
|
||
|
||
## 项目定位
|
||
|
||
**核心目标**:为 TSL 提供稳定、可扩展的语言服务与编辑器集成能力。
|
||
|
||
**一句话描述**:以 C++23 LSP 服务器为核心,配套 VSCode 与 Vim 支持的
|
||
TSL 开发套件。
|
||
|
||
## 项目边界
|
||
|
||
### 做什么
|
||
|
||
- 实现 TSL 的 LSP 服务器,提供补全、跳转、引用、符号等语言能力
|
||
- 维护 Tree-sitter 解析、AST、语义与符号链路,保障编辑时反馈质量
|
||
- 提供 VSCode 扩展与 Vim 语法支持,覆盖主要编辑器接入场景
|
||
- 维护 Linux / Windows 的构建、测试与发布路径
|
||
|
||
### 不做什么
|
||
|
||
- 不实现 TSL 编译器、解释器或运行时
|
||
- 不实现调试器或独立 IDE 产品
|
||
- 不把 playbook 同步内容扩展到产品 README 范围
|
||
|
||
### 约束条件
|
||
|
||
- 对外行为必须保持 LSP 3.17+ 兼容
|
||
- 解析链路必须支持增量更新,避免编辑场景响应退化
|
||
- C++ 服务器代码以 C++23 Modules 组织,依赖现代编译器工具链
|
||
- `docs/standards/playbook/` 作为 vendored 快照维护,更新流程固定
|
||
|
||
## 核心概念
|
||
|
||
| 术语 | 说明 |
|
||
| --- | --- |
|
||
| **TSL** | TinySoft Language,天软公司的领域脚本语言 |
|
||
| **LSP** | Language Server Protocol,编辑器与语言服务的标准协议 |
|
||
| **Tree-sitter** | 增量解析器,用于语法树构建和局部更新 |
|
||
| **Provider** | 处理具体 LSP 请求的能力模块 |
|
||
| **Manager** | 管理文档、解析结果、符号等共享状态的核心组件 |
|
||
|
||
## 参考资料
|
||
|
||
- [LSP 规范](https://microsoft.github.io/language-server-protocol/specifications/lsp/3.17/specification/)
|
||
- [Tree-sitter 文档](https://tree-sitter.github.io/tree-sitter/)
|
||
- [VSCode Extension API](https://code.visualstudio.com/api)
|
||
|
||
---
|
||
|
||
**最后更新**:2026-05-24
|