制表符转空格、空格转制表符,按真实 tab 位对齐,可只转行首也可整行,全程浏览器本地
- 本地处理
- 分类 开发运维
- 适合 格式化、校验、压缩或检查和代码相关的文本。
tab 补到下一个是 tab 宽度整数倍的列,代码排版跟编辑器里看到的一致。
这个工具能做什么
一个精确的制表符转空格、空格转制表符工具,专门用来规范代码缩进。 把文件粘进来,tab 宽度选 2、4、8 或任意自定义值,两个方向都能转。 tab 转空格走的是正确算法:不是把每个 tab 死板换成固定几个空格,而是 补到下一个 tab 位,所以落在第 2 列的 tab 只补到第 4 列,代码排得跟 编辑器里渲染出来的一模一样。要是你就想要扁平替换,还有一种模式把每个 tab 都换成 N 个空格。反过来,空格转 tab 会把行首每满一组空格合成一个 tab,不够一组的零头原样留着。你可以选只动行首缩进(代码场景的稳妥 默认,字符串里或行尾对齐用的 tab 都不碰),也可以整行都转。所有运算都 在浏览器本地跑,一键复制结果,分享链接能原样打开同一次转换。不上传, 不经服务器。
工具细节
- 输入
- 文本 + 数值
- 页面会根据工具类型展示文本框、数值控件、文件选择或结构化输入。
- 输出
- 即时结果 + 复制 + 预览
- 结果区优先给出可操作结果,支持项会显示复制、下载或可视化预览。
- 隐私
- 浏览器本地处理
- 主工具逻辑未发现外部 API 调用,输入通常留在当前标签页内处理。
- 保存 / 分享
- 可分享链接状态
- 关键设置会进入 URL,复制链接后别人能复现同一组参数。
- 性能预算
- 首屏 JS ≤ 9 KB
- 没有声明 WASM 依赖,适合快速打开和移动端使用。
- 适用场景
- 开发运维 · 程序员
- 分类和职业标签用于推荐相关工具、组织内链,并帮助用户快速判断是否适合当前任务。
怎么用
-
1. 输入
把内容粘贴或拖入工具面板。
-
2. 处理
点击按钮,在浏览器内本地处理,文件不上传。
-
3. 复制 / 下载
一键复制结果或下载到本地。
制表符转空格工具 适合怎么用
适合穿插在写代码、查问题、做 Review、上线前的小任务里。
适合开发场景
- 格式化、校验、压缩或检查和代码相关的文本。
- 把片段整理好再放进文档、工单、提交或交接材料。
- 不切换工具,快速检查一个小 payload。
开发检查项
- 压缩、混淆这类不可逆处理,先对副本操作。
- 除非确认工具本地处理,不要粘贴密钥和敏感片段。
- 转换后的代码上线前,仍要跑自己的测试或 lint。
下一步可以接着做
这些入口会把当前任务接到更完整的工具链里。
真实使用场景
提交前把项目的缩进规矩落实到位
仓库风格指南写的是 2 空格,可同事的编辑器自动塞 tab。推之前,把改过 的文件粘进来,tab 宽度设 2,用只转行首模式把 tab 转成空格,再把结果 复制回去。这下 diff 里只剩你真正动过的行,不再是一大片空白噪声, pre-commit 的 linter 一次就过。
不用逐行排查就修掉 Python 的 TabError
脚本抛出 "inconsistent use of tabs and spaces in indentation",出问题 那行肉眼根本看不出来。把整个文件粘进来,宽度 4,tab 转空格,只转 行首。每一层都变成纯空格,歧义没了,解释器顺利跑起来。不用再眯着 眼盯列号找那个混进来的 tab。
给博客或 Markdown 里的代码片段做准备
Markdown 和很多网页代码块按浏览器默认的 8 列渲染 tab,会把你精心 缩进的示例撑变形。先把 tab 按宽度 2 或 4 转成空格,这个片段不管粘到 哪都长一个样,从 CMS 编辑器到 GitHub README 再到 Slack 消息都一致。
给以 tab 为准的代码库把空格转回 tab
你在给一个 Go 项目或 Makefile 提交代码,那里必须用 tab,可你生成的 文件用的是空格。切到空格转 tab,设上匹配的 tab 宽度,行首每满一组 空格就合成一个 tab。Makefile 尤其挑剔,配方行只认真正的 tab,这一步 决定了构建是能跑还是报 "missing separator"。
常见踩坑
给文件选错了 tab 宽度。原代码本来按宽度 8 的 tab 缩进,你却按宽度 4 转,每个缩进层级就缩了一半,嵌套块全错位。转之前先对齐到文件实际是怎么写的,而不是按你个人喜好。
该用对齐到 tab 位时却用了固定 N 空格。固定模式处理纯行首缩进没问题,但文件里有文字后面的 tab(列对齐、行内表格)时,固定模式补过头,排版就乱了。只要 tab 不止用来缩进,就用对齐到 tab 位。
只该改缩进却整行都转了。整行模式会毫不客气地把字符串字面量里的 tab、你用来对齐行尾注释的空格一并重写。源码场景就开着只转行首,把转换限定在缩进上。
隐私说明
每一次转换都是浏览器标签页里运行的纯 JavaScript。你的代码不离开页面, 什么都不上传,也不记录你粘了什么。唯一要注意:分享链接会把输入和选项 写进查询字符串,所以把"分享链接"粘到聊天里,对方服务器的访问日志会 留下那段文本。涉及私有或专有代码,请用复制按钮粘贴处理好的文本,而不是 分享网址。
常见问题
类似工具组合
做你这行的人, 还会一起用这些。