V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
karashoukpan
V2EX  ›  程序员

Typo 修正终端的拼写错误(想了想,还是决定发一下 👀

  •  
  •   karashoukpan · 2 小时 52 分钟前 · 80 次点击

    Github 地址: https://github.com/deigmata-paideias/typo

    和 thefuck 类似,但是目标是比 thefuck 更智能和好用一些(目前还在 dev 阶段。

    解决 thefuck 库的几个问题:

    • 不继续维护了,Python 3.12+ 安装报错;
    • 不支持自定义的 alias 配置;
    • 多级命令时引号会丢失: https://github.com/nvbn/thefuck/issues/1543
    • 依赖 python 的运行库,低版本会出现运行失败问题;
    • thefuck 有时候可能返回错误的修复命令,没有候选。

    实现方式

    实现方式挺简单的:扫描系统的 man 指令然后保存到 sqlite ,对比 thefuck 用的是文件配置; 同时扫描 alias 指令,也保存到数据库;因此在执行的时候需要先扫描命令,也可以对数据库做修改,只保留常用的就行,提高匹配准确度。

    然后获取 history 文件的最新一行,截取对比,按相似度排序。最后输出选择执行。

    LLM 集成用的是 openai 的 go sdk 。但是对比 local (数据库方式)会慢一点。

    效果预览

    使用了 oh-my-zsh 框架插件集成,两次 esc 就可以修复了。

    AB5E9F0B-9BED-4E30-A3A7-57BD35E05C4E

    差不多就是这个样子。

    其他功能

    目前只扫描了 man 的 1 和 8 指令集,基于相似度匹配,还可以模糊搜索( fzf 会更好用些)

    遇到的问题

    git 和 gti 的相似度只有 33.3 % ?

    我可能不是喜欢 coding ,而是 building 🤣

    目前尚无回复
    关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   Solana   ·   1883 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 16:14 · PVG 00:14 · LAX 08:14 · JFK 11:14
    ♥ Do have faith in what you're doing.