0

0

怎么取消vscode的打开方式

霞舞

霞舞

发布时间:2026-03-15 20:51:58

|

198人浏览过

|

来源于php中文网

原创

VS Code 会通过修改系统注册表(Windows)、“全部更改”设置(macOS)或 MIME 类型关联(Linux)抢占文件类型默认打开权,需分别在系统默认应用设置、Finder简介或xdg-mime中手动重置;同时其后台进程可能持续拦截文件打开请求,须彻底退出并禁用相关选项。

怎么取消vscode的打开方式

VS Code 在 Windows 上抢注了文件类型关联

这是最常见的情况:双击某个文件(比如 .js.txt)直接用 VS Code 打开,而你其实想用记事本、Notepad++ 或其他编辑器。VS Code 安装时默认勾选“将 VS Code 添加到 PATH”和“将 VS Code 关联到常用文件类型”,它会静默修改系统注册表里的 HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExtsHKCR 下的键值。

实操建议:

  • 打开 VS Code → 设置(Ctrl+,)→ 搜索 “file associations” → 点击 “Clear All” 清空自定义关联(这仅影响 VS Code 内部行为,不改系统级默认)
  • 真正要改系统默认,得进 Windows 设置 → 应用 → 默认应用 → 按文件类型指定默认应用,找到 .js.py 等后缀,逐个点开,选回你想要的程序
  • 如果列表里没有目标程序,先用该程序打开一个对应文件(比如用 Notepad++ 打开 test.py),勾选“始终使用此应用打开 .py 文件”,它就会出现在默认应用列表里

macOS 上 VS Code 把自己设为所有文本文件的默认打开方式

VS Code 的 macOS 安装包(.zip 或 .dmg)不会自动注册全局默认,但如果你运行过 code --install-extension 或手动拖拽过 app 到 Applications,再通过 Finder 右键 → “显示简介” → “打开方式” 里选了 VS Code 并点了“全部更改”,那它就生效了。

实操建议:

  • 在 Finder 中右键任一目标文件(如 README.md)→ “显示简介” → 展开“打开方式” → 在下拉菜单中选择你真正想用的 App(比如 TextEdit)→ 点击“更改所有…”
  • 若想批量重置,终端执行:defaults write com.apple.LaunchServices LSHandlers -array-add '{LSHandlerContentType=public.plain-text;LSHandlerRoleAll=com.apple.TextEdit;}',然后重启 Finder(killall Finder
  • 注意:macOS 13+ 对第三方 App 的默认设置更严格,部分类型(如 public.source-code)可能无法被普通 App 声明支持,这时 VS Code 仍可能“赢”——得靠终端命令强制覆盖

Linux(尤其是 GNOME)里 VS Code 覆盖了 text/plain MIME 类型

Linux 桌面环境靠 MIME 类型决定默认打开方式,VS Code 安装时会往 /usr/share/applications/~/.local/share/applications/code.desktop,并声明它支持 text/plaininode/directory 等通用类型。GNOME 的 xdg-mime 机制会优先匹配最宽泛的类型,于是所有没明确绑定的文本文件都落到 VS Code 头上。

B12
B12

B12是一个由AI驱动的一体化网站建设平台

下载

实操建议:

  • 查当前默认:xdg-mime query default text/plain
  • 改回 gedit:xdg-mime default gedit.desktop text/plain
  • 若想让不同后缀走不同程序,分别设置:xdg-mime default mousepad.desktop text/x-shellscript(对应 .sh
  • 别直接删 code.desktop 文件——下次 VS Code 自动更新会重建;而是用 xdg-mime 显式覆盖,更稳定

VS Code 启动时自动接管当前目录的终端行为

这不是“打开方式”问题,但用户常混淆:你在终端里输入 code . 后,VS Code 启动并聚焦,接着你关掉窗口,再双击文件资源管理器里的文件,结果还是跳回 VS Code ——因为 VS Code 在后台进程(Code Helper (Renderer))仍驻留,且监听了系统级的文件打开事件(尤其 Windows/macOS)。

实操建议:

  • 彻底退出 VS Code:Windows/macOS 按 Cmd/Ctrl+Q,别只关窗口;Linux 检查 ps aux | grep code,杀掉残留进程
  • 禁用“继续运行后台进程”:VS Code 设置里搜 remote.restoreWorkspaceswindow.closeWhenEmpty,关掉相关选项
  • 关键点:即使你清空了系统默认打开方式,只要 VS Code 进程活着,它就可能拦截本应发给系统默认程序的打开请求——这点容易被忽略

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

WorkBuddy
WorkBuddy

腾讯云推出的AI原生桌面智能体工作台

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
js正则表达式
js正则表达式

php中文网为大家提供各种js正则表达式语法大全以及各种js正则表达式使用的方法,还有更多js正则表达式的相关文章、相关下载、相关课程,供大家免费下载体验。

531

2023.06.20

js获取当前时间
js获取当前时间

JS全称JavaScript,是一种具有函数优先的轻量级,解释型或即时编译型的编程语言;它是一种属于网络的高级脚本语言,主要用于Web,常用来为网页添加各式各样的动态功能。js怎么获取当前时间呢?php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

576

2023.07.28

js 字符串转数组
js 字符串转数组

js字符串转数组的方法:1、使用“split()”方法;2、使用“Array.from()”方法;3、使用for循环遍历;4、使用“Array.split()”方法。本专题为大家提供js字符串转数组的相关的文章、下载、课程内容,供大家免费下载体验。

761

2023.08.03

js是什么意思
js是什么意思

JS是JavaScript的缩写,它是一种广泛应用于网页开发的脚本语言。JavaScript是一种解释性的、基于对象和事件驱动的编程语言,通常用于为网页增加交互性和动态性。它可以在网页上实现复杂的功能和效果,如表单验证、页面元素操作、动画效果、数据交互等。

6309

2023.08.17

js删除节点的方法
js删除节点的方法

js删除节点的方法有:1、removeChild()方法,用于从父节点中移除指定的子节点,它需要两个参数,第一个参数是要删除的子节点,第二个参数是父节点;2、parentNode.removeChild()方法,可以直接通过父节点调用来删除子节点;3、remove()方法,可以直接删除节点,而无需指定父节点;4、innerHTML属性,用于删除节点的内容。

494

2023.09.01

js截取字符串的方法
js截取字符串的方法

js截取字符串的方法有substring()方法、substr()方法、slice()方法、split()方法和slice()方法。本专题为大家提供字符串相关的文章、下载、课程内容,供大家免费下载体验。

221

2023.09.04

Js中concat和push的区别
Js中concat和push的区别

Js中concat和push的区别:1、concat用于将两个或多个数组合并成一个新数组,并返回这个新数组,而push用于向数组的末尾添加一个或多个元素,并返回修改后的数组的新长度;2、concat不会修改原始数组,是创建新的数组,而push会修改原数组,将新元素添加到原数组的末尾等等。本专题为大家提供concat和push相关的文章、下载、课程内容,供大家免费下载体验。

240

2023.09.14

js截取字符串的方法介绍
js截取字符串的方法介绍

JavaScript字符串截取方法,包括substring、slice、substr、charAt和split方法。这些方法可以根据具体需求,灵活地截取字符串的不同部分。在实际开发中,根据具体情况选择合适的方法进行字符串截取,能够提高代码的效率和可读性 。

303

2023.09.21

TypeScript类型系统进阶与大型前端项目实践
TypeScript类型系统进阶与大型前端项目实践

本专题围绕 TypeScript 在大型前端项目中的应用展开,深入讲解类型系统设计与工程化开发方法。内容包括泛型与高级类型、类型推断机制、声明文件编写、模块化结构设计以及代码规范管理。通过真实项目案例分析,帮助开发者构建类型安全、结构清晰、易维护的前端工程体系,提高团队协作效率与代码质量。

69

2026.03.13

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
go语言零基础开发内容管理系统
go语言零基础开发内容管理系统

共34课时 | 2.7万人学习

第二十三期_前端开发
第二十三期_前端开发

共98课时 | 8.4万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号