返回
对 Prettier 使出“盲眼怪”战术,让同事陷入疯狂
前端
2024-01-06 21:53:18
前言
Prettier 是一个深受喜爱的代码整理工具,可以确保代码格式一致且易于阅读。然而,它也为办公室恶作剧提供了完美的媒介。想象一下,你的同事每次保存代码时,import 语句的顺序都会随机变化,而他们却无法找出原因。
准备工作
要完成这项恶作剧,你需要:
- Node.js 和 npm
- Prettier CLI
- 一些耐心和恶作剧精神
编写插件
- 创建一个新目录并导航到其中:
mkdir random-import-plugin
cd random-import-plugin
- 初始化一个新的 npm 包:
npm init -y
- 安装 Prettier CLI:
npm install prettier --save-dev
- 创建一个插件文件(例如
index.js
):
const prettier = require('prettier');
function transform(code) {
// 获取 import 语句
const imports = code.match(/import .+ from .+;/gm);
// 如果没有 import 语句,则返回代码
if (!imports) {
return code;
}
// 打乱 import 语句的顺序
imports.sort(() => Math.random() - 0.5);
// 将打乱的 import 语句放回代码中
return code.replace(/import .+ from .+;/gm, () => imports.shift());
}
module.exports = {
parsers: {
typescript: {
transform,
},
javascript: {
transform,
},
},
};
安装插件
- 在同事的
.prettierrc
文件中添加你的插件:
{
"plugins": ["random-import-plugin"]
}
- 将你的插件安装到同事的项目中:
cd ~/your-colleagues-project
npm install ../random-import-plugin --save-dev
见证混乱
现在,你的同事每次保存代码时,import 语句的顺序都会随机变化。他们会挠头抓耳,不知所措,而你只需要坐在一边偷笑。
注意事项
- 确保在使用前备份同事的
.prettierrc
文件。 - 如果你的同事正在使用版本控制,请提交你的插件更改并提交合并请求。
- 为同事准备一些解药,比如恢复他们原始
.prettierrc
文件的副本。