新闻详情

新闻详情

首页 / 资讯中心 / 详情

Fallow 编辑器集成教程:如何用 VS Code、Zed 与 Neovim 实现 LSP 实时死代码诊断

发布时间:2026/9/25 13:59:33来源:尧图网络
Fallow 编辑器集成教程:如何用 VS Code、Zed 与 Neovim 实现 LSP 实时死代码诊断
Fallow 编辑器集成教程:如何用 VS Code、Zed 与 Neovim 实现 LSP 实时死代码诊断【免费下载链接】fallowCodebase intelligence for TypeScript and JavaScript. Free static analysis of code and styles: unused code, duplication, circular deps, complexity hotspots, architecture boundaries, design-system drift. Optional paid runtime layer (Fallow Runtime): hot-path review and cold-path deletion evidence from real production traffic.项目地址: https://gitcode.com/gh_mirrors/fa/fallowFallow 编辑器集成的核心只有一条:fallow-lsp语言服务器。它是 Fallow 的 LSP 协议端点,负责把 TypeScript/JavaScript 项目里的未使用代码、重复代码、循环依赖、复杂度热点等发现,以编辑器诊断的形式实时推到你的屏幕上。无论你用 VS Code、Zed 还是 Neovim,接入的其实是同一个服务——这也是本教程最省心的地方:配置一次思路,三个编辑器通吃。三大编辑器集成的共同原理Fallow 对编辑器的态度是薄客户端:分析逻辑全部留在fallow-lsp二进制里,编辑器端只做协议转发。三个集成共同支持的能力:✅实时诊断:未使用文件/导出/类型/依赖、未解析导入、重复导出、循环依赖、代码重复✅Hover 悬停信息:导出是否被使用、重复块所在位置✅Quick Fix 快速修复:一键删除未使用导出和文件✅Code Lens:在导出声明上方显示引用计数(视编辑器而定) 想深入理解诊断发布、文档版本防过期等机制,可阅读官方 LSP 内部文档:docs/reference/lsp-internals.mdVS Code:一条命令安装 Fallow 扩展VS Code 扩展是三个集成中功能最全的,推荐首选。一键安装步骤在扩展面板搜索 Fallow,或命令行执行:code --install-extension fallow-rs.fallow-vscode扩展会自动查找并自动下载fallow-lsp与fallowCLI 二进制(查找顺序:配置项 → 项目node_modules/.bin→PATH→ 扩展存储 → 自动下载),通常零配置即可开工。你会得到什么能力说明实时诊断未使用代码、重复代码波浪线直接显示在编辑器Code Lens每个导出上方显示引用次数,点击跳转 Peek References侧边树视图按问题类型浏览未使用代码,按克隆家族浏览重复代码Health 健康视图项目 0–100 健康分与等级,复杂度热点候选状态栏总问题数 重复率 健康分(如health: B (82))自动修复一条命令移除未使用导出与依赖,支持 Dry Run 预览审计判定Fallow: Audit Changed Files在状态栏给出 pass/warn/fail快速降噪技巧:静音特定诊断重复代码诊断可能跨很多行,淹没 TypeScript/ESLint 的信息。Fallow 提供四种本地静音方式,其中最快的两种:右键任意 Fallow 波浪线 → Quick Fix →Mute Fallow 某类 findings in this workspace给命令fallow.toggleMuteDuplicates绑一个快捷键,一键静音静音只是本地视图过滤,不会改变项目配置,CI 和fallow dead-code仍会报告全部发现。完整设置表见 editors/vscode/README.md。Zed:用原生扩展接入 fallow-lspZed 扩展故意做得很薄:它只负责启动现成的fallow-lsp,不重复实现任何分析逻辑。最快接入方法在 Zed 中执行zed: install extension,选择Fallow确保fallow-lsp可被找到:扩展按以下顺序解析二进制——lsp.fallow.binary.path→ 工作区node_modules/.bin/fallow-lsp→PATH→ 已签名的托管下载若 Zed 以 Restricted Mode 打开项目,先信任工作区(受限模式会整体屏蔽语言服务器)如果你定制过language_servers列表,记得保留fallow:{ languages: { TypeScript: { language_servers: [fallow, ...] } } }想给团队统一一套更安静的编辑器基线,可以在.zed/settings.json里用mutedCategories提交精确的诊断码(如unused-export),这样静音状态随仓库走、全员一致。修改initializationOptions后,记得在命令面板执行editor: restart language server使其生效。⚠️ 完整的 Health/Security 项目级报告请在 Zed 终端里用npx fallow health等 CLI 命令运行——当前 Zed 扩展 API 不提供侧边树贡献点,这是当前 API 下的最佳对齐方案,详见 editors/zed/README.md。Neovim:最小化 Fallow 语言服务器配置Neovim 集成同样刻意很薄。两步上手:第 1 步:全局安装,让fallow-lsp出现在 PATHnpm install -g fallow fallow-lsp --version # 确认 Neovim 能看到第 2 步:在 Neovim 配置中挂上语言服务器vim.lsp.config(fallow, { cmd { fallow-lsp }, filetypes { javascript, typescript, javascriptreact, typescriptreact }, root_markers { .fallowrc.json, package.json, .git }, }) vim.lsp.enable(fallow)可选地在init_options.issueTypes中只列出要关掉的类型(如[circular-dependencies] false),其余默认全开。若fallow-lsp不在 PATH,把cmd指向绝对路径即可。验证是否生效:打开一个 TS/JS 项目,执行:lua vim.print(vim.lsp.get_clients({ name fallow }))。完整说明见 editors/nvim/README.md。LSP 诊断实战:这些细节能帮你少踩坑诊断什么时候刷新?Neovim 等拉取式客户端走 LSP 3.17 pull 模型,保存时刷新。首次分析在服务挂接时启动,所以新打开的缓冲区可能在首轮分析完成(或下次保存)后才出现发现——这不是 bug。静音 ≠ 关闭规则所有编辑器里,静音都只影响编辑器内显示。真正的开关在 Fallow 项目配置(.fallowrc.json等)和服务端issueTypes初始化选项。想全局关掉某类问题,改项目配置;只想自己眼前清净,用编辑器侧静音。安全候选诊断默认是关的security-sink与security-client-server-leak两条诊断默认off,且以 information 级别发布——它们是待验证的候选,不是确认的漏洞。需要时在.fallowrc.json的rules里设为warn即可。常见问题速查问题解答装好扩展但没反应?确认fallow-lsp二进制可解析;VS Code 可开Fallow: Show Output Channel排查改了初始化选项没生效initialize只读一次,改后必须重启语言服务器退出码 1 是不是报错?不是。0 和 1 都表示运行成功(1 有发现),2 才是真正的错误想用完整项目报告编辑器内以诊断为主,完整 Health/Security 报告用fallowCLI 运行延伸阅读VS Code 扩展完整功能与设置:editors/vscode/README.mdZed 扩展说明与配置:editors/zed/README.md、editors/zed/extension.tomlNeovim 配置指南:editors/nvim/README.mdLSP 协议行为与诊断不变式:docs/reference/lsp-internals.md项目总览与 CLI 命令表:README.md三条命令、一份 LSP 服务,你的编辑器从此自带死代码雷达。建议从 VS Code 起步体验全功能,再按同一套issueTypes/mutedCategories思路迁移到 Zed 和 Neovim——配置心智完全一致,迁移成本趋近于零。【免费下载链接】fallowCodebase intelligence for TypeScript and JavaScript. Free static analysis of code and styles: unused code, duplication, circular deps, complexity hotspots, architecture boundaries, design-system drift. Optional paid runtime layer (Fallow Runtime): hot-path review and cold-path deletion evidence from real production traffic.项目地址: https://gitcode.com/gh_mirrors/fa/fallow创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
网站建设高端定制企业官网
RELATED

相关资讯

更多精彩内容,欢迎继续阅读

较早相关资讯

最新相关资讯

BentoML 部署打包指南:从定义运行时环境到构建 Bento 与容器化发布 2026/9/25 14:36:12

BentoML 部署打包指南:从定义运行时环境到构建 Bento 与容器化发布

模型推理服务人工智能后端大模型MLOpsLLMOps 【免费下载链接】BentoML The easiest way to serve AI apps and models - Build Model Inference APIs, Job queues, LLM apps, Multi-model pipelines, and more! 项目地址: https://gitcode.com/gh_mirrors/be/BentoM…

阅读更多 →
Wireless_Toolkit:用浏览器操控 Kali 无线安全测试工具(Wi-Fi + 蓝牙) 2026/9/25 14:36:06

Wireless_Toolkit:用浏览器操控 Kali 无线安全测试工具(Wi-Fi + 蓝牙)

目录1. 整体架构2. 硬件与任务槽3. 安全约束3.1 绝不碰 wlan03.2 提权白名单3.3 子进程安全4. 硬件检测页5. Wi-Fi 功能5.1 扫描5.2 抓握手5.3 抓 PMKID最近把平时做无线安全测试用的那堆命令行工具,整合成了一个浏览器可操控的控制台,叫 Wireless_Toolk…

阅读更多 →
Atlas 300V 24G推理卡实战:从ONNX到OM跑通YOLOv5/YOLOv8 2026/9/25 14:35:39

Atlas 300V 24G推理卡实战:从ONNX到OM跑通YOLOv5/YOLOv8

先说个最近的真实场景。手里有一个YOLO检测项目要上线,常规思路是直接买GPU,结果一看价格和功耗,人直接麻了。后来同事问了一句:“Atlas 300V 24G那张卡能不能跑YOLO?”我查了一圈资料、拿卡实测了几周,发现…

阅读更多 →
AI与机器学习如何辅助硬件设计:从器件选型到PCB布局的实战指南 2026/9/25 14:35:33

AI与机器学习如何辅助硬件设计:从器件选型到PCB布局的实战指南

1. 硬件设计为什么需要AI和机器学习介入干了十几年硬件设计,从最早的51单片机最小系统,到后来DDR4的布线、ESP32-C6-WROOM-1的射频接口设计,我最大的感受就是:硬件设计本质上是一个“在约束条件里找最优解”的过程,而人…

阅读更多 →
Themida/WinLicense 1.8-2.x 脱壳与调试辅助:从识别版本到拿到原始 OEP 2026/9/25 14:35:26

Themida/WinLicense 1.8-2.x 脱壳与调试辅助:从识别版本到拿到原始 OEP

简介:这是一套面向逆向分析人员的Themida WinLicense脱壳与调试辅助工具集,覆盖1.8.X至2.X版本保护程序,适合具备一定Windows逆向基础、需要开展加壳识别、特征提取与脱壳流程验证的从业者。包内共292个文件,约2.23MB,…

阅读更多 →
工业Agent与实时控制:概念辨析、落地层次与工程实践 2026/9/25 14:35:26

工业Agent与实时控制:概念辨析、落地层次与工程实践

1. 先搞清楚“工业Agent”和“实时控制”到底在说什么1.1 两个被混为一谈的概念“工业Agent”这个词最近两年被炒得很热,但很多人把它和“实时控制”绑在一起讲,其实这俩压根不是一回事。我先把定义掰开揉碎说清楚。工业Agent,通常指部署在工…

阅读更多 →

今日资讯

本周资讯

本月资讯

看完文章仍有疑问?

联系尧图顾问,获取一对一建站咨询

立即免费咨询 📞 400-888-8888
📞 ✉