0

0

Sublime如何启用保存时自动移除空行?(代码精简)

穿越時空

穿越時空

发布时间:2026-03-09 11:29:03

|

219人浏览过

|

来源于php中文网

原创

sublime text 保存时自动删除末尾空行依靠原生设置 trim_trailing_whitespace_on_save,启用后清理行尾空白及文件末尾连续空行,但不影响中间空行;需正确配置用户设置、避免语法错误,并注意项目级配置覆盖。

sublime如何启用保存时自动移除空行?(代码精简)

Sublime Text 保存时自动删除末尾空行,靠的是 trim_trailing_white_space_on_save

这个设置不是插件功能,是 Sublime 原生支持的开关。默认关闭,启用后会在每次保存时自动清理每行末尾的空格和制表符,同时也会删掉文件末尾的连续空行(注意:只删“末尾”的空行,不是全文所有空行)。

常见错误现象:trim_trailing_white_space_on_save 设为 true 后,保存文件没反应——大概率是因为你改错了配置文件位置,或者被项目级配置覆盖了。

  • 必须修改用户偏好设置(Preferences → Settings – User),不是默认配置(Settings – Default
  • 确保 JSON 格式合法:逗号不能多、引号不能少、最后一项后面不能有逗号
  • 如果项目根目录有 .sublime-project,它里面的 settings 会优先于用户设置,需同步检查

想删「所有」空行?trim_trailing_white_space_on_save 不行,得手动或用插件

原生设置只处理“行尾空白”和“文件末尾空行”,对函数中间、段落之间的空行完全无感。比如这段代码:

Midjourney
Midjourney

当前最火的AI绘图生成工具,可以根据文本提示生成华丽的视觉图片。

下载
def foo():
    pass


def bar():
    pass

保存后中间那两个空行依然存在。

  • 临时解决:选中全部(Ctrl+A),执行 Ctrl+Shift+P → 输入 Remove Empty Lines(需安装插件 TrailingSpacesAdvancedRename 等才带此命令)
  • 全自动方案:装 TrailingSpaces 插件后,在用户设置里加 "trailing_spaces_modified_only": false,再配合保存钩子(需额外写 Python 插件或用 EventListener
  • 更轻量做法:用正则替换 \n\s*\n\n\n 手动压缩,但容易误删缩进空行,慎用

ensure_newline_at_eof_on_save 的关系要理清

这两个设置常一起出现,但职责完全不同:ensure_newline_at_eof_on_save 是保证文件末尾一定有且只有一个换行符;trim_trailing_white_space_on_save 是清理行尾空白和末尾空行。两者可共存,互不干扰。

  • 如果关了 ensure_newline_at_eof_on_save,而开了 trim_trailing_white_space_on_save,可能造成文件末尾既没换行、也没空行——Git 会标为 no newline at end of file
  • 推荐组合:"trim_trailing_white_space_on_save": true + "ensure_newline_at_eof_on_save": true
  • 部分团队规范要求末尾无空行但必须有换行符,此时两个都开刚好满足

Mac / Windows 路径和配置热加载细节

Sublime 不会实时监听配置文件变化,改完 Preferences.sublime-settings 后必须重启 Sublime 或用 Preferences → Settings – User 窗口右下角的重载按钮(小刷新图标)。

  • Mac 用户配置路径:~/Library/Application Support/Sublime Text/Packages/User/Preferences.sublime-settings
  • Windows 用户路径:%APPDATA%\Sublime Text\Packages\User\Preferences.sublime-settings
  • 改完别忘了检查左下角状态栏——保存时若看到 “Trimming trailing whitespace” 提示,说明生效了
实际用下来,最易忽略的是项目级配置覆盖和 JSON 语法错误。哪怕只多一个逗号,整个设置就静默失效,连报错都不给。

热门AI工具

更多
DeepSeek
DeepSeek

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

豆包大模型
豆包大模型

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

通义千问
通义千问

阿里巴巴推出的全能AI助手

腾讯元宝
腾讯元宝

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

文心一言
文心一言

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

讯飞写作
讯飞写作

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

即梦AI
即梦AI

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

ChatGPT
ChatGPT

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

相关专题

更多
json数据格式
json数据格式

JSON是一种轻量级的数据交换格式。本专题为大家带来json数据格式相关文章,帮助大家解决问题。

454

2023.08.07

json是什么
json是什么

JSON是一种轻量级的数据交换格式,具有简洁、易读、跨平台和语言的特点,JSON数据是通过键值对的方式进行组织,其中键是字符串,值可以是字符串、数值、布尔值、数组、对象或者null,在Web开发、数据交换和配置文件等方面得到广泛应用。本专题为大家提供json相关的文章、下载、课程内容,供大家免费下载体验。

546

2023.08.23

jquery怎么操作json
jquery怎么操作json

操作的方法有:1、“$.parseJSON(jsonString)”2、“$.getJSON(url, data, success)”;3、“$.each(obj, callback)”;4、“$.ajax()”。更多jquery怎么操作json的详细内容,可以访问本专题下面的文章。

331

2023.10.13

go语言处理json数据方法
go语言处理json数据方法

本专题整合了go语言中处理json数据方法,阅读专题下面的文章了解更多详细内容。

82

2025.09.10

default gateway怎么配置
default gateway怎么配置

配置default gateway的步骤:1、了解网络环境;2、获取路由器IP地址;3、登录路由器管理界面;4、找到并配置WAN口设置;5、配置默认网关;6、保存设置并退出;7、检查网络连接是否正常。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

235

2023.12.07

自建git服务器
自建git服务器

git服务器是目前流行的分布式版本控制系统之一,可以让多人协同开发同一个项目。本专题为大家提供自建git服务器相关的各种文章、以及下载和课程。

978

2023.07.05

git和svn的区别
git和svn的区别

git和svn的区别:1、定义不同;2、模型类型不同;3、存储单元不同;4、是否拥有全局版本号;5、内容完整性不同;6、版本库不同;7、克隆目录速度不同;8、分支不同。php中文网为大家带来了git和svn的相关知识、以及相关文章等内容。

579

2023.07.06

git撤销提交的commit
git撤销提交的commit

Git是一个强大的版本控制系统,它提供了很多功能帮助开发人员有效地管理和控制代码的变更,本专题为大家提供git 撤销提交的commit相关的各种文章内容,供大家免费下载体验。

275

2023.07.24

JavaScript浏览器渲染机制与前端性能优化实践
JavaScript浏览器渲染机制与前端性能优化实践

本专题围绕 JavaScript 在浏览器中的执行与渲染机制展开,系统讲解 DOM 构建、CSSOM 解析、重排与重绘原理,以及关键渲染路径优化方法。内容涵盖事件循环机制、异步任务调度、资源加载优化、代码拆分与懒加载等性能优化策略。通过真实前端项目案例,帮助开发者理解浏览器底层工作原理,并掌握提升网页加载速度与交互体验的实用技巧。

59

2026.03.06

热门下载

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

精品课程

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

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