问题标签 [zsh-completion]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
186 浏览

git - 如何修补缺少 difftool 命令的 git 完成

我的系统的 git 自动补全非常好,但缺少至少git difftoolgit diffmerge. 我的意思是,如果我git diff<TAB>在提示符下输入,我会得到以下内容:

看?没有difftooldiffmerge那里。我必须将它们全部输入到最后才能使用它们,或者创建一些我不想要的 git 别名。

有没有办法修补默认的 git 完成配置以添加对这两个命令的支持?默认的 git 完成脚本在哪里?我可以修改它,或者更好的是,用我自己的.zshrc或其他东西修补它,这样我就不必弄乱系统原来的东西了?

如果有人想知道,我在 Mac Lion 上使用 zsh 4.3.11 并安装了最新的 oh-my-zsh。我的 git 是从 homebrew 安装的,它的版本是 1.8.0.1。

0 投票
1 回答
1226 浏览

zsh - Zsh 制表符补全为目录添加正斜杠,如何避免这种情况?

目前我正在使用 zsh ,每次我对目录使用制表符完成时,它都会在末尾添加一个正斜杠。这在使用诸如 rsync 之类的命令时会产生问题,该命令会区分具有正斜杠的目录参数。所以每次我使用制表符完成时,我都需要返回并删除正斜杠。

0 投票
2 回答
2973 浏览

zsh - 从文件中生成 zsh 完整参数

zsh很棒,但它的完成系统非常多样化。而且文档缺乏很好的例子。是否有用于完成特定应用程序的模板。完成将从文件中获取其匹配数据,用换行符分隔?

我尝试修改我的一个旧示例,该示例采用“实时”匹配数据:

我可以cat my_file在那里提供而不是mpc调用等等,但是会有更优雅的方式来完成这个简单的任务吗?并且该完成是特定于放置的:您能否提供一个示例,在该示例中 zsh 将在程序名称被识别后的任何时候尝试完成?

匹配数据将有空格等,完成应该转义 WS。例子:

现在,如果要为命令配置完成Say,我们应该得到这种行为zsh

0 投票
1 回答
2586 浏览

zsh - 编写 ZSH 自动完成功能

我最近写了一个方便的 Zsh 函数,它可以创建一个不带参数的新 tmux 会话。如果提供了参数并且会话已经存在,则附加它。否则,将使用提供的名称创建一个新会话。

这很好用,但我想为它添加自动完成功能,所以当我点击 tab 键时,它会为我列出当前会话。这是我到目前为止所拥有的:

当我点击选项卡时,它会列出会话名称,但它不允许我在它们之间切换。我错过了什么?

0 投票
1 回答
121 浏览

zsh - 完成:多个类似的选项

--with-PROG=我想为一个接受和--PROG-options作为可选参数的程序编写完成。PROG可能是不同的程序之一。有许多不同的程序,所以我想避免手动为每个程序写出一个选项。我确实尝试了以下方法:

输出:

但是,我希望将每个单独的选项放在单独的行上,并替换PROG为程序名称。最好的方法是什么?

0 投票
1 回答
481 浏览

shell - zsh 根据一个参数补全

我是一个非常高兴的 zsh 用户,特别感谢它的完成子系统。最近我正在尝试增强一些完成命令,尤其是那些我经常使用的命令(例如 rm)。在 zsh 中执行以下命令:

使 zsh 按预期完成当前目录的文件。我想要做的是让 zsh 完成以下变体:

只有目录。

任何知道如何参数完成以考虑(-r)参数的zsh Guru?

0 投票
1 回答
1208 浏览

bash - 在 zsh 中使用 bash complete -C

zsh bash 完成是否支持complete -C 'custom command for completion' command


我之前在脚本中编写了一个 bash 完成功能,我使用

我希望使用 zsh 的同事能够使用补全,因此我尝试使用这样的 .zshrc 文件进行测试,以实现 bash 补全兼容性:

当我尝试使用此完成时,看起来 zsh 正在调用完成脚本而没有参数 bash 使用(firstword、current_word、previous_word)调用它。

我在 Mac 上使用自制安装的 zsh:

0 投票
2 回答
1205 浏览

macos - Git别名参数完成在Zsh中不起作用

对于某些特定的 git 命令(涉及远程和分支的命令),我遇到了 Zsh 自动完成的问题,但仅限于使用别名时。

这是一个例子push

pull和也会出现同样的问题fetch

.zshrc可以在这里找到,但我不认为它是相关的,因为我能够在不使用它的情况下重现问题(只需使用 启用自动完成autoload -U compinit && compinit)。

我正在使用以下软件版本运行 OSX 10.9(它们都通过 安装brew):

自从我进行了 OSX 10.9 全新安装后,就出现了这个问题。所以我认为它来自 Zsh 或 Git 的最新更新。

0 投票
1 回答
279 浏览

shell - zsh 函数参数的标准 zsh 补全

如果我键入以下内容,recordzsh 函数在哪里

record ls

record如果我写,我该如何写一个 zsh 完成

record ls -

它将使用 zsh 完成 ls 例如

记录功能:

编辑 time/usr/bin/time似乎这样做,例如

如果我这样做time ls -<tab>会给我ls完成,我如何为我自己的功能做到这一点?

0 投票
1 回答
267 浏览

shell - 我该怎么用!ZSH 脚本中的扩展?

我想写一个函数,让它更容易使用上一个命令的参数,比如!:1. 我在 bash 中读过这可以通过以下方式完成:

那么我怎样才能编写一个可以访问的 zsh 函数!:1呢?