我开发了一个包含可执行脚本的 gem(在 rubygems 术语中为 application file)。调用时,我想在给定目录(不是当前工作目录)中完成文件名,如下所示:
foo edit my<tab>
扩展为:
foo edit myfile
我能做的是包含一个安装 shell 补全的脚本。如果那是唯一的解决方案——很好。但我想知道是否有一种方法可以让用户从额外的步骤中解放出来,并直接在我的 gem 中包含完成。
那么:有没有办法让 gem 自带 tab 补全?
最佳答案
当您键入启动脚本的命令时,您的脚本尚未运行。当它们仍在被键入时,它不能干预对它自己的参数的处理。如果可能,您可以让 gem
文件安装一个 bash 完成文件并修改用户的 ~/.bashrc
文件以在安装过程中加载它们。
关于ruby - gem 二进制文件可以自带制表符补全吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11625229/