tab-completion

zsh 补全( compctl)不会触发包含破折号的命令名称
tab-completion

zsh 补全( compctl)不会触发包含破折号的命令名称

我从很久以前(90 年代末或 00 年代初)就一直在使用 zsh compctl,但奇怪的是以前从未遇到过这种情况。今天我意识到,当我打算进行一些 compctl 配置时,update-alternatives我的完成根本没有触发,它只是使用了我的标准后备完成(文件)... 因此,一个非常精简的简单示例来展示问题: 这很好用: zshprompt% compctl -k '(arg1 arg2 arg3)' nodash # typing 'nodash ' and hitting [Tab] once: zshprompt% nodash arg # ...

Admin

完成功能在 /root 目录中停止工作
tab-completion

完成功能在 /root 目录中停止工作

如果我在根终端su,那么一切都很好:到处都可以完成。 如果作为普通用户,我尝试使用sudo来访问/root/目录,例如,如果我想打开类似的文件,则会出现问题/root/.selected_editor。 当我达到 /ro 完成时,它仍然可以正常工作并写入/root/,但随后它停止工作。如果我完成了要手动执行的 Linux Bash 命令的编写,那么此命令就可以正常工作。 root@Xfce:~# cat .se(lected_editor) ---> completion is OK xxx@Xfce:~$ sudo cat /ro(ot/) ---...

Admin

PhpStorm 函数名称建议与变量
tab-completion

PhpStorm 函数名称建议与变量

如何使 PHPStorm 代码完成提示带有变量的函数名称,而不仅仅是其名称?例如,我有下一个函数: function sample1($understandable_variable_name1, &$some_Heavy_variable_name2) { // ... } 比如,我开始输入sampl,它建议sample1,但是打开Enter(或其他热键),它会自动输入以下内容:sample1($understandable_variable_name1, $some_heavy_variable_name2) ...

Admin

运行 python3 脚本时的 Tab 补全
tab-completion

运行 python3 脚本时的 Tab 补全

在 Ubuntu 中,我希望能够在运行 Python 时使用制表符补全功能。例如,如果我想使用 vim 编辑文件“myscript.py3”,我会输入“vim my”,然后按制表符即可补全文件名,因为它是唯一以“my-”开头的文件。但是,当我想运行脚本时,相同的制表符功能不起作用:我必须手动输入“python3 myscript.py3”。 关于如何激活 python3 命令的制表符补全有什么建议吗? ...

Admin

如果目录很大,文件补全的 Tab-Tab 体验会更好(Bash)
tab-completion

如果目录很大,文件补全的 Tab-Tab 体验会更好(Bash)

我~/tmp/在命令行上工作时存储了一些文件。 ❯ ls ~/tmp/ [TAB-TAB] Display all 119 possibilities? (y or n) 通常我想要处理具有最近 ctime 的文件。 有没有办法增强 bash-shell,以便我获得该目录的最近文件列表,以便我可以轻松选择几秒钟前复制到那里的文件? 例如,按下 TAB-TAB 后,我想查看最近的 10 个文件的列表。 ...

Admin

Git 无法使用 switch 命令自动完成
tab-completion

Git 无法使用 switch 命令自动完成

我正在尝试将我的行为改为使用switch和restore而不是checkout,但是在尝试使用 切换分支时遇到了一个大问题git switch。我的公司对我们的分支有一个命名约定,该约定是分支的名称与票证的名称相同。所以我们的一些分支有非常长的名称,如feature/ISSUE-123-really-long-title-of-the-issue-which-is-a-pain-to-copy-and-paste-like-this。使用 ,git checkout我只需键入git checkout feature/ISSUE-123然后按 Tab 键即可自...

Admin

如何解决 vim 与 coc 的键绑定冲突?
tab-completion

如何解决 vim 与 coc 的键绑定冲突?

只是作为前言,我不是一名程序员,但是我编写了一些 shell 来实现自动化。 这是在 MacOS Mojave 上,但它不应该产生太大的差别,因为 neovim 的配置应该可以延续。 我注意到,当我尝试使用 coc 的自动完成功能时,按 Enter 只会返回下一行,而不是选择自动完成。我怀疑它与 vimwiki 或 markdown 有关。我查看了此主题尝试找到冲突的键绑定,并:verbose imap <cr>在尝试自动完成后在输出中得到了此信息: i <CR> &@<C-]><Esc&gt...

Admin

为 bash/zsh 完成设置环境变量
tab-completion

为 bash/zsh 完成设置环境变量

我使用 gnu pass 和 bash/zsh 补全功能。这意味着当我输入时,pass a[TAB]shell 会建议我可以使用哪些以 开头的密码a。 我有两个 gnu-pass 目录,当我想使用非默认目录时,我需要设置PASSWORD_STORE_DIR。要获得 shell 完成,我需要export PASSWORD_STORE_DIR=~/.password-store-non-default然后像平常一样使用 pass。 这很麻烦,因为我经常需要在两个目录之间切换。 有没有办法可以创建一个别名或 shell 命令来设置该变量、提供完成操作,然后将该变量...

Admin

如何在整个系统中使用 Tab 键自动完成文本?
tab-completion

如何在整个系统中使用 Tab 键自动完成文本?

Mac OS 在某些情况下会建议完成某些文本。一个特定的例子就是撰写电子邮件时。选择建议文本的默认方式是使用向下箭头突出显示建议的文本,然后按“返回”键将其选中。这种行为不符合直觉。 有办法改变这种情况吗? 我更喜欢使用“tab”来接受建议的文本。 ...

Admin

出现歧义时禁用 Bash 的星号补全
tab-completion

出现歧义时禁用 Bash 的星号补全

我的 bash 以意想不到的方式自动完成文件名。我有一个包含 2 个文件的目录: $ ls ssh-8ZwoymYvfDSu ssh-ha7JCIFmjUKR 当输入名称的某些前缀并按下 时<tab>,bash 将完成直到两个名称不同的点(这是预期的): $ ls ss $ ls ssh- 但是,当我在前缀后添加一个星号并按下时<tab>,bash 会完成其中一个文件名(即使前缀不明确,bash 也会忽略所有其他文件): $ ls ss* $ ls ssh-8ZwoymYvfDSu 我查看了文档,但没有找到任何有用的...

Admin

通过使用参数运行现有的补全功能,将 shell(bash/zsh)制表符补全添加到自定义命令
tab-completion

通过使用参数运行现有的补全功能,将 shell(bash/zsh)制表符补全添加到自定义命令

在我们的代码库中,我们有几个方便的可执行文件,它们会自动加载到环境中,供任何克隆代码的人使用(使用迪伦夫)。 这是一个普遍性的问题,但为了回答这个问题,我们用kubectl一个例子来说明。 我们有一个名为的可执行文件kl: #!/usr/bin/env bash STACK="$1" exec kubectl --context=our_cluster_name --namespace="$STACK" "$@" 然后,我们对 prod、staging 和 dev 命名空间(分别为 和klp)进行了变体,例如:klskldkls #!/us...

Admin

使用 $_ 访问先前输入的路径时,Tab 不会扩展路径
tab-completion

使用 $_ 访问先前输入的路径时,Tab 不会扩展路径

请考虑以下情形: 我曾经ls列出目录的内容,也曾经Tab找到正确的目录,所以我不知道完整路径。而且路径可能很长,所以我不想再输入一次。现在我试图选择并复制单个文件,例如,从该目录复制到另一个目录。但是要选择文件,在Tab我输入后,该功能不起作用$_。 举个例子, 我尝试使用 来Tab显示目录内容,但在我输入 后它不起作用cp $_/。我该怎么做? ...

Admin

zsh:按一次 Enter/Return 即可选择菜单自动完成
tab-completion

zsh:按一次 Enter/Return 即可选择菜单自动完成

一旦找到我想从完成菜单中选择的自动完成,我目前需要按<Enter>两次 - 一次将选择添加到终端,一次执行命令。 有没有办法只需<Enter>按一次即可完成两项操作? 我也尝试过 bindkey -M menuselect '^M' .accept-line 从https://superuser.com/a/817451/1012390, 但每次启动新终端时都会出现错误: /home/kipras/.zshrc:bindkey:32: no such keymap `menuselect' ...

Admin

Tab 补全关闭 SSH 连接
tab-completion

Tab 补全关闭 SSH 连接

我正在使用 SSH 连接登录我的 Raspberry Pi。我之前使用过 SSH 上的 Tab 补全功能,效果很好。但现在,每当我尝试使用 SSH 上的 Tab 补全功能时,都会收到“连接已关闭”消息。 ...

Admin

了解 zsh blobing、别名和 tab 补全
tab-completion

了解 zsh blobing、别名和 tab 补全

由于显而易见的原因,我刚刚开始zsh并刚刚离开。csh 奇怪的是,移植大量我广泛使用的别名所花的时间比我预期的要长一些。这是其中之一。 在我的 csh 中我有一个“cd 测试用例”如下 alias cdtc 'cd $TOP/\*/\*/tests/!*' complete cdtc 'p#1#`/bin/ls -1 $TOP/*/*/tests | perl -lne '"'"'print if $_!~m/\// && $_!~m/^$/'"'"'`#' 我猜想,当我按下 Tab 键时,完整的命令会打印出我层次结构中所有测试...

Admin