分享个自己做的工具 - initx
imba97 11天前 · IP已记录 383

initx 是个脚本引擎,运行环境是 node.js,核心是通过插件完成各种脚本功能,简化原本的操作

 

如果你有 node 环境,你可以试试

npx initx -v
npx initx plugin list

全局安装后可以省略 npx

 

功能

 

比如之前配置 git 的用户名、邮箱,要这么写

git config --global user.name "foo"
git config --global user.email "foo@example.com"

而现在通过 @initx-plugin/git 插件,你只需要这样写

initx user foo foo@example.com

(用户名、邮箱没有先后顺序)

 

再比如你想复制 SSH 公钥,就要打开用户目录下的 .ssh,找到公钥文件打开复制

现在通过 @initx-plugin/cp 插件,你只需要

initx cp ssh

除此之外还可以快速复制当前目录路径、GPG 公钥

initx cp cwd
initx cp gpg

 

还有一些功能像项目管理、导入导出 GPG 公私钥、开启关闭 git GPG 签名等

主要逻辑是通过一个匹配器去匹配用户输入字符对应的插件,再调用插件的处理函数

 

开发背景

 

本来是觉得重装的电脑后各种东西配置起来麻烦,想做个简化原有命令的小玩意儿

每种不同的功能分离出来,就成了插件

后面又把匹配器抽离出来作为一个单独的项目

 

开源

 

initx 相关:https://github.com/initx-collective

匹配器:https://github.com/imba97/matchinitx


8 条回复