用这个奇怪的技巧掌握任何 CLI 工具
就像大多数开发人员一样,我生活在终端里,我享受着自动化的能力以及我可以用它做的无限的事情。
在开始之前,我想简要介绍一下我的设置;
我的设置👽
我曾经使用bash
并熟悉它作为我的默认 Shell,但我完全是zsh
因为它在 macOS 中成为默认 Shell 而切换到它的。我同样使用ohmyzsh作为我的框架。它的使用体验很好,并且易于管理提示符和插件。
我最近听说了prezto,它是 ohmyzsh 的一个分支,但我还没有尝试过(我使用的大多数插件都在 ohmyzsh 中)它比 ohmyzsh 更可定制且更不臃肿。
我使用iTerm2作为我的终端,它是默认 macOS 终端的绝佳替代品,并且具有许多功能 - 自定义。
编写完成规范📝
最近我为Fig做出了贡献,
特别是他们的自动完成功能,即 fig/autocomplete,这是一个旨在为 CLI 工具提供自动完成功能的开源项目。
这是 Fig 中自动完成功能的预览,我为工具taplo编写了完成规范。
工作原理❓
虽然需要一些头脑风暴和一些研究,但为这个项目做贡献的经历很顺利,我学到了很多东西。首先,我按照他们关于编写补全规范的文档(写得非常好)学习了很多基本的 CLI 术语(例如command
,,,,) 。根据subcommand
你选择编写补全规范的工具,你需要学习一些工具本身的知识,这很棒,因为你可以更好地了解这个工具。option
argument
Taplo 是一个用于处理TOML文件的 CLI 工具,它包含 linting、格式化和验证等功能。说实话,在开始使用 Taplo 之前,我对 TOML 了解不多,但这次我学到了很多关于这个工具和 TOML 本身的知识。
有些 CLI 工具有man pages
手动输入功能,在编写补全规范等情况下,人们通常会使用它们作为了解工具及其子命令选项等信息的来源(通常它们以最准确的信息来源而享有盛誉)。然而,我选择用来编写补全规范的工具taplo
却没有任何手动输入页面。更棒的是!我找到了他们的网站和文档,非常有帮助。
外卖💯
withfig/autocomplete的维护者们非常活跃,乐于助人。他们不断添加与编写全新补全规范和改进现有规范相关的问题。我认为,编写补全规范是深入了解 CLI 工具并为开源做出贡献的最佳途径之一。此外,如果您使用Fig,您实际上可以在终端中使用您编写的补全规范!
鏂囩珷鏉ユ簮锛�https://dev.to/batunpc/master-any-cli-tool-with-this-one-weird-trick-4gn2