资讯动态

fixmyjs 编辑器集成终极指南:Atom、Brackets、Sublime 一键自动修复 JavaScript

发布时间:2026/10/23 5:59:22 来源:尧图企业网站定制
开发工具【免费下载链接】fixmyjsAutomatically fix silly lint errors.项目地址https://gitcode.com/gh_mirrors/fi/fixmyjs点击查看免费下载fixmyjs 是一个专门用来自动修复愚蠢 JavaScript lint 错误的开源命令行工具它能按 JSHint 规则一键修复代码中的低级问题并且通过 Atom、Brackets、Sublime Text 等编辑器插件实现一键修复让新手告别手动改错。fixmyjs 是什么自动修复 JavaScript 错误的瑞士军刀很多新手写 JavaScript 时都遇到过这种场景JSHint 报了一堆 should be 、curly braces required、undefined is not defined之类的错误每一条都要手动去改烦不胜烦。fixmyjs 的定位就是把这些规则明确、修复方式唯一的 lint 错误自动化。它的核心特点⚡非破坏性修复只改写明显写错的地方不重排你的代码逻辑规则驱动每条修复规则独立实现位于 lib/rules/ 目录规则开关由配置决定️多编辑器生态官方已支持 Atom 插件、Brackets 插件、Gulp/Grunt 插件和 Sublime Text 插件⌨️CLI 友好支持--dry-run先预览 diff确认无误再真正落盘 简单理解JSHint 负责挑错fixmyjs 负责认错就改。30 秒上手安装 fixmyjs 命令行工具fixmyjs 通过 npm 全局安装一条命令搞定npm install fixmyjs -g安装后终端输入文件路径即可原地修复fixmyjs your_file.js如果你只是想先看看它会改什么而不希望文件被直接改动加上--dry-run或--diff参数终端会输出红绿配色的 difffixmyjs --dry-run your_file.jsCLI 的完整实现位于 lib/cli.js常用参数一览参数作用-c, --config指定自定义.jshintrc配置文件-r, --dry-run只做预演输出 diff 不写文件-d, --diff同 dry-run显示差异-p, --patch输出 patch 文件到标准输出-n, --indent-pref指定缩进风格tabs或spaces-l, --legacy使用 legacy 修复模式它还会自动读取目录下的.jshintrc作为规则配置并用.jshintignore跳过不想处理的文件参见 lib/cli.js。fixmyjs 自动修复的 14 类 JavaScript 常见问题fixmyjs 内置规则分为三组全部注册在 lib/rules/index.js 中。① 内置规则默认总是生效这 6 条规则无需配置开箱即修delete移除对变量的delete操作 —— lib/rules/delete.jsemptyStatement清理多余的空语句如孤立的分号—— lib/rules/emptyStatement.jsinitUndefined把var a undefined重写为var a—— lib/rules/initUndefined.jsinvalidConstructor禁止用new初始化原生基本类型构造器 —— lib/rules/invalidConstructor.jsisNaN把x NaN的写法替换为isNaN(x)—— lib/rules/isNaN.jsuseLiteral把new String(x)之类的写法改回字面量 —— lib/rules/useLiteral.js② 可选规则配置项为 true 时启用规则效果源码camelcase标识符统一转成 camelCaselib/rules/camelCase.jssnakecase标识符统一转成 snake_caselib/rules/snake_case.jscurly为 if/for 等语句补上花括号lib/rules/curly.jses3给parseInt自动补第二个 radix 参数lib/rules/parseInt.jsnonew移除仅为副作用而写的newlib/rules/newSideEffects.jsmultivar合并多个单行var声明lib/rules/multiVar.jsplusplus把i改写为i 1lib/rules/updateExpression.jseqeqeq强制严格相等→lib/rules/eqeqeq.js⚠️ 注意camelcase和snakecase互斥同时开启会直接报错见 lib/index.js 的校验逻辑。③ 反向规则配置项为 false 时生效debug移除debugger调试语句 —— lib/rules/debugger.jssub把obj[key]转为点号访问obj.key—— lib/rules/dotNotation.js编辑器一键修复把 fixmyjs 接进你的工作流命令行固然方便但日常写代码时谁也不想中途切去终端。fixmyjs 官方维护了一套编辑器生态README 的 Tools 一节README.md列出了全部官方集成Atom 插件Atom 用户可以通过包管理器搜索atom-fixmyjs插件安装在编辑器内直接调用 fixmyjs 修复当前文件无需离开 Atom。集成步骤先按上文全局安装 fixmyjs 命令行工具在 Atom 中打开 Settings → Install搜索 fixmyjs 并安装插件打开任意.js文件使用插件提供的命令触发修复Brackets 插件Brackets 用户同样可以搜索安装brackets-fixmyjs扩展。Brackets 本身主打代码编辑体验装上这个插件后保存前自动按 JSHint 规则清理低级错误非常顺滑。Sublime Text 插件Sublime 用户可安装sublime-fixmyjs插件由 Addy Osmani 维护。安装后在命令面板中运行对应命令即可对当前打开的文件执行 fixmyjs 修复。Gulp / Grunt 插件补充如果你习惯用构建工具链还可以选择gulp-fixmyjs在 Gulp 任务流中接入修复步骤grunt-fixmyjs在 Grunt 流程中一键批量修复 小贴士编辑器插件本质上是替你调用底层的 fixmyjs CLI 或 API所以先用命令行跑一次--dry-run预览改动是养成肌肉记忆的好习惯。两种修复模式非 legacy 与 legacy 模式怎么选fixmyjs 提供两种引擎位于 lib/index.js 和 lib/legacy.js非 legacy 模式默认推荐基于 esprima 解析出 AST逐节点应用规则再用 escodegen 重新生成代码。支持上文全部 14 条规则。legacy 模式先用 JSHint 报出错误再用正则和字符串替换逐行修复。CLI 中加--legacy启用fixmyjs --legacy your_file.js官方说明README.mdlegacy 模式更保守、不易破坏代码但支持的规则更少非 legacy 模式规则覆盖更广但因为是整树重写理论上破坏性略高。对新手而言先用默认模式 --dry-run预览是最稳的路径。以编程方式调用不想跑命令行的话fixmyjs 也可以作为 Node.js 模块引入lib/index.js 导出了fix方法var fixmyjs require(fixmyjs) var stringFixedCode fixmyjs.fix(stringOfCode, objectOfOptions)这也是各编辑器插件能一键修复的底层原理。最佳实践清单让自动修复更省心✅先 dry-run后落盘fixmyjs --dry-run看 diff确认无意外再执行✅用.jshintrc统一管理规则把camelcase、curly、eqeqeq等开关写进配置团队共享✅配合.jshintignore把third_party/、vendor/这类目录排除掉✅修复后跑一遍测试fixmyjs 目标是非破坏性但任何批量改写都值得用测试兜底⚠️camelCase 与 snake_case 二选一两者同时开启会直接抛错属于设计上的保护机制⚠️提交前看 diff编辑器插件的一键修复改完后建议快速扫一眼 git diff 再提交常见问题 FAQQfixmyjs 会破坏我的业务逻辑吗A设计上它只做规则唯一解的改写如补成、补花括号并保留了 shebang 行和注释位置lib/index.js 中有专门处理。但批量改写仍建议配合版本控制使用。Q支持 ES6/ES2015 吗A该版本1.0.3见 package.json基于较早期的 esprima/escodegen 解析对现代语法支持有限。处理新项目前建议先在单文件上 dry-run 验证。Q如何只修复某个目录A直接把目录路径传给 CLIfixmyjs 会递归遍历其中所有.js文件并应用该目录下的.jshintrc见 lib/cli.js 的目录遍历逻辑。Q修复完成后终端输出什么A每个文件处理完会打印✓ 文件名 done.如果有--diff/--dry-run则会额外输出红绿 diff。写在最后fixmyjs 把改错这件重复劳动压缩成了一条命令全局安装、接入 Atom / Brackets / Sublime 插件、配置.jshintrc剩下的交给它。规则源码全部开放在 lib/rules/ 中想理解某条修复的具体行为直接打开对应文件阅读即可。项目说明README.md编码规范CONTRIBUTING.md核心 APIlib/index.jsCLI 入口lib/cli.js赞分享开发工具【免费下载链接】fixmyjsAutomatically fix silly lint errors.项目地址https://gitcode.com/gh_mirrors/fi/fixmyjs点击查看免费下载相关推荐一条命令跑起双容器电商网站Tutorials 带你掌握 Docker Compose 核心用法一条命令跑起双容器电商网站Tutorials 带你掌握 Docker Compose 核心用法 本文基于 Tutorials 开源项目Jake Wright终极Lebab编辑器插件使用指南在VSCode、Atom和Sublime中一键升级代码终极Lebab编辑器插件使用指南在VSCode、Atom和Sublime中一键升级代码 Lebab是一个强大的JavaScript代码转换工具能够将ES5代开发工具编译器emilianJR/chilloutmix_NiPrunedFp32Fix社区影响分析AI创作民主化emilianJR/chilloutmix_NiPrunedFp32Fix社区影响分析AI创作民主化 emilianJR/chilloutmix_NiPrun基础模型计算机视觉大模型模型推理服务上一篇如何成为LittleFS核心贡献者完整开源贡献指南下一篇如何将Openblocks页面嵌入React应用替代iFrame的完整方案创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价 →
↑