Validation / Typecheck (push) Has been cancelled
Validation / Style (push) Has been cancelled
Validation / Test macos-latest (push) Has been cancelled
Validation / Test ubuntu-latest (push) Has been cancelled
Validation / Test windows-latest (push) Has been cancelled
Validation / Build (push) Has been cancelled
Validation / Required (push) Has been cancelled
1.8 KiB
1.8 KiB
Vipeye
Vipeye 是面向 Viper 语言的 VS Code 扩展,提供完整的语言服务支持。
Viper 是一门基于 CPython 语法的 AOT 静态类型语言(编译器为 TransPyC / TPV),与 Python 的语义完全不同。Vipeye 在 Pyright 基础上深度改造而来,现已全面切换为 Viper 语义。
功能特性
- 语法高亮:
.vp/.vpi文件的完整 Viper 语法高亮(关键字、类型、装饰器@、f-string、常量、未定义符号等语义化区分) - 语义高亮:基于 LSP 3.16 SemanticTokens 协议,区分已定义/未定义符号、类/函数/变量/模块/参数/常量
- 类型检查与诊断:遵循 Viper 语义的类型推断与静态检查
- 指针语义:
CPtr/CArray(数组名退化、形参调整、派生类指针 upcast) - 类型别名与 C 类型系统:
t.CInt/t.CTypedef/t.CDefine/t.CEnum等 - Viper 特有的
T | t.CPtr指针折叠表示 - 全局变量访问规则(读/写/global 声明判定)
- 指针语义:
- 项目支持:
.vpj项目配置文件、viperconfig.json配置 - 代码补全与悬停信息
- 导航:定义跳转、查找引用、重命名
项目架构
vscode-vipeye:LSP 客户端扩展(本包)vipeye:Viper 语言命令行类型检查器(pyright 命令行工具改造)vipeye-internal:核心分析引擎(类型推断、语义高亮、诊断)vipeye-typeserver:类型服务进程- Viper 核心扩展
vscode-viper-core:管理.vpj项目配置与工具链
配置
在 .vscode/settings.json 或 viperconfig.json 中配置:
{
"viper.analysis.typeCheckingMode": "standard",
"viper.analysis.extraPaths": ["d:/path/to/includes"],
"viper.analysis.diagnosticSeverityOverrides": {
"reportMissingImports": "warning"
}
}
License
MIT