新闻详情

新闻详情

首页 / 资讯中心 / 详情

TypeScript 7 新增工作区符号搜索范围:用 `workspaceSymbols.scope` 把符号搜索限定到当前项目

发布时间:2026/9/25 14:55:34来源:尧图网络
TypeScript 7 新增工作区符号搜索范围:用 `workspaceSymbols.scope` 把符号搜索限定到当前项目
文档教程【免费下载链接】typescript-bookThe Concise TypeScript Book: A Concise Guide to Effective Development in TypeScript. Free and Open Source.项目地址https://gitcode.com/gh_mirrors/typ/typescript-book点击查看免费下载本指南基于本仓库 TypeScript News 新闻栏目含 捷克语版编写介绍 TypeScript 7 原生语言服务新增的workspaceSymbols.scope偏好设置在多项目工作区中如何把工作区符号搜索即编辑器里按符号名全局跳转、如Go to Symbol in Workspace的结果集从所有已打开项目收敛到当前项目。读完本文你将理解该设置的两个取值及其语义、VS Code 原生扩展如何配合传递上下文文档以及为何这一变更被设计为显式开启opt-in的行为。背景TypeScript 7 的原生语言服务与 LSP要理解这项变更先要回到 TypeScript 7.0。据本仓库新闻栏目记载TypeScript 7.0 已发布TypeScript 7 是首个基于 Go 编写的原生编译器与语言服务的稳定版本并且把语言服务迁移到了Language Server ProtocolLSP之上——支持 LSP 的编辑器可以共享同一个原生底座获得更快的项目加载、诊断、补全与导航能力。工作区符号搜索正是 LSP 提供的一项经典导航能力客户端编辑器向服务端发送workspace/symbol请求按名称在工作区范围内查找类、函数、变量等符号。当 VS Code 中同时打开多个 TypeScript/JavaScript 项目时该请求默认会跨越所有已打开项目检索这是旧行为也是本次变更想要提供收敛选项的原因。核心变更workspaceSymbols.scope偏好设置Microsoft 已将工作区符号搜索范围合入 TypeScript 原生语言服务。新增的语言服务偏好preferenceworkspaceSymbols.scope有两个取值取值含义是否默认allOpenProjects在所有已打开的项目中搜索符号是默认currentProject仅搜索包含传入文档的项目否需显式开启关键语义在于第二行的传入文档语言服务需要知道当前上下文是哪个文件才能据此判断当前项目到底是哪一个。这正是原生 VS Code 扩展配合改动的地方。VS Code 原生扩展如何配合向workspace/symbol请求注入文档原文明确指出原生 VS Code 扩展现在会在每次workspace/symbol请求中附加一个受支持的 TypeScript 或 JavaScript 文档优先使用当前活动active文档——即光标所在、正在编辑的.ts/.js文件若没有活动文档则回退到某个已打开的受支持文档。语言服务只有在workspaceSymbols.scope为currentProject时才使用这个附加文档来限定搜索范围否则继续执行跨所有已打开项目的旧式搜索。换句话说客户端侧VS Code 扩展总是携带文档上下文成本很低是纯附加信息服务端侧原生语言服务是否利用该上下文完全由workspaceSymbols.scope决定。这种客户端无条件上报、服务端按偏好消费的设计让旧行为在默认状态下保持不变也避免了为每个客户端单独做兼容分支。为什么重要多项目工作区中的同名符号歧义在真实开发中一个 VS Code 工作区往往同时挂着多个项目例如 monorepo 中的多个子包、或同时打开的前后端仓库。这些项目里经常出现相似命名的符号比如多个包都导出createClient、config、useStore之类的通用名称。默认的allOpenProjects会把所有项目中的同名符号混在一个结果列表里开发者必须靠路径前缀手工分辨该进哪个文件。而切到currentProject后结果集被收敛到包含当前编辑文件的那个项目同名符号的歧义大幅减少跳转命中率更高、心智负担更低。由于默认值保留了既有行为这一改进需要显式开启才生效——对不想改变习惯的用户零侵入。实操如何在多项目工作区启用与验证workspaceSymbols.scope是语言服务的偏好设置通过编辑器的设置机制下发VS Code 中对应偏好/设置层具体设置键名以你所安装的 TypeScript 7 原生 VS Code 扩展提供的设置说明为准但语义与取值如下将workspaceSymbols.scope设置为currentProject并确保使用 TypeScript 7 及之后的原生语言服务/原生 VS Code 扩展打开至少两个包含同名符号的 TypeScript 或 JavaScript 项目在一个项目的文件中触发工作区符号搜索按符号名全局查找对应 LSP 的workspace/symbol对比切换前后allOpenProjects→currentProject的结果集切换后结果应仅来自包含当前编辑文档的项目。判断依据currentProject限定的是包含传入文档的项目因此验证时务必让活动文档位于你希望限定搜索的那个项目中——扩展会优先采用活动文档作为上下文。可用性与注意事项合并时机该变更在 TypeScript 7.0 之后才合入原生代码库因此并非 7.0 自带的能力版本确认官方来源未指明包含该设置的具体稳定 npm 版本在依赖该设置之前请先查看你已安装 TypeScript 版本的发布说明release notes确认其是否包含此特性不影响默认用户未显式配置时allOpenProjects行为与以往完全一致。相关阅读本主题英文原文typescript-7-workspace-symbol-search-scope.md本主题捷克语版本cs-cz 版原文新闻列表索引TypeScript News 索引英文 与 捷克语版索引同一批次的原生语言服务改进TypeScript 7 改进 Go to Implementation 内存占用、TypeScript 7 在文件变更后刷新配置诊断背景铺垫TypeScript 7.0 发布公告赞分享文档教程【免费下载链接】typescript-bookThe Concise TypeScript Book: A Concise Guide to Effective Development in TypeScript. Free and Open Source.项目地址https://gitcode.com/gh_mirrors/typ/typescript-book点击查看免费下载相关推荐TypeScript 7 工作区符号搜索范围用 workspaceSymbols.scope 将符号搜索限定在当前项目TypeScript 7 工作区符号搜索范围用 workspaceSymbols.scope 将符号搜索限定在当前项目 导读 TypeScript 7 的原生文档教程TypeScript 7 工作区符号搜索范围详解用 workspaceSymbols.scope 将符号搜索限定到当前项目TypeScript 7 工作区符号搜索范围详解用 workspaceSymbols.scope 将符号搜索限定到当前项目 本文基于 typescript 7文档教程TypeScript 7 工作区符号搜索范围详解用 workspaceSymbols.scope 限定当前项目TypeScript 7 工作区符号搜索范围详解用 workspaceSymbols.scope 限定当前项目 本指南基于 The Concise TypeS文档教程上一篇3分钟上手Magic UI为设计工程师量身打造的开源动画组件库下一篇CS Demo Manager完整指南从游戏录像到战术洞察的终极分析工具创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
网站建设高端定制企业官网
RELATED

相关资讯

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

较早相关资讯

最新相关资讯

从SQL Server2008数据库迁移、转换到Oracle 19c数据库 ,Oracle SQL Developer+spoon_kettle组合使用迁移步骤 2026/9/25 15:25:17

从SQL Server2008数据库迁移、转换到Oracle 19c数据库 ,Oracle SQL Developer+spoon_kettle组合使用迁移步骤

1. 迁移目标 本文档用于指导将原 CS 架构体检系统使用的 SQL Server 2008 数据库,迁移并转换到 BS 架构系统使用的 Oracle 19c 数据库。 迁移方式: 使用 Oracle SQL Developer 负责表结构、索引、约束、视图、部分对象的迁移转换。使用 Spoon/Kettle 负责…

阅读更多 →
基于SpringBoot的小香葱种植管理系统设计与实现 2026/9/25 15:25:04

基于SpringBoot的小香葱种植管理系统设计与实现

温馨提示:本人主页置顶文章(点我)开头有 CSDN 平台官方提供的学长联系方式的名片! 一、 项目背景与意义 随着现代农业向精细化、智能化方向发展,传统的小香葱种植管理模式在数据记录、生长监控、成本核算和销售追溯等方面面临诸多挑战。种植…

阅读更多 →
多智能体协同实战:从单模型到工程级AI研发的落地指南 2026/9/25 15:24:51

多智能体协同实战:从单模型到工程级AI研发的落地指南

1. 从单兵作战到团队协作:多智能体协同到底在解决什么问题如果你最近一年在关注 AI 研发领域,大概率已经被“多智能体”这个词反复刷屏了。但很多人第一次听到“多智能体协同”的时候,脑子里浮现的画面可能是几个聊天窗口并排开着&#xff0c…

阅读更多 →
寒武纪PyTorch理事会席位背后:AI芯片软件栈适配与算子实现全解析 2026/9/25 15:24:44

寒武纪PyTorch理事会席位背后:AI芯片软件栈适配与算子实现全解析

1. 从“同桌”这个词说起:一个信号背后的技术分量“寒武纪拿下PyTorch最高席位,与英伟达同桌”——这个标题我第一次看到的时候,正在调一个模型训练脚本,手边跑着的是一台装了消费级显卡的机器。说实话,第一反应不是兴…

阅读更多 →
基于SpringBoot的工业生产计划管理系统设计与实现 2026/9/25 15:24:37

基于SpringBoot的工业生产计划管理系统设计与实现

温馨提示:本人主页置顶文章(点我)开头有 CSDN 平台官方提供的学长联系方式的名片! 一、 项目背景与意义 在制造业数字化转型浪潮下,传统的生产计划管理方式(如Excel表格、纸质单据)已难以满足现代企业对于生产敏捷性…

阅读更多 →
智谱清言Agent实战:从零构建可落地的智能体系统 2026/9/25 15:24:18

智谱清言Agent实战:从零构建可落地的智能体系统

1. 什么是智谱清言Agent智能体?它到底能干什么 “智谱清言Agent智能体”不是某个现成App里的按钮,也不是点开就能用的网页小工具——它是一套可定义、可编排、可落地的 自主决策执行系统 。我第一次在客户现场部署它时,客户原话是&#xf…

阅读更多 →

今日资讯

本周资讯

本月资讯

看完文章仍有疑问?

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

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