小编Oli*_*ler的帖子

在 bash 或 zsh 中设置路径的制表符补全以类似于 tcsh

我\xe2\x80\x99m是tcsh的长期用户,但现在所有的酷孩子似乎都在使用bash或zsh(也就是说,git或其他东西的完成模式可用于bash和zsh,很少用于tcsh)。

\n\n

我的问题是,两个 shell 都有关于路径制表符补全的行为,这让我发疯,而且 I\xe2\x80\x99m 很难找到如何将它们更改为我喜欢的方式。

\n\n

这里\xe2\x80\x99s 是我\xe2\x80\x99m 过去在 tcsh 中所做的一些与其他人不同的操作的示例:

\n\n
    \n
  • /u<TAB>完成到/usr/
  • \n
  • 然后选项卡列出的内容/usr/
  • \n
  • /usr/li<TAB>完成/usr/lib并列出lib/libexec/
  • \n
  • 第二次按 Tab 键完成/usr/lib/
  • \n
  • 第三次按 Tab 键会列出以下内容/usr/lib/
  • \n
\n\n

在 bash 中,无论我点击多少次 tab,它都不会过去/usr/lib,需要我输入斜杠,而我不想这样做。

\n\n

在 zsh 中,/usr/li<TAB>首先完成 to /usr/lib,然后另一个选项卡列出lib/libexec/,第三次选项卡完成 to /usr/lib/,所有后续选项卡在/usr/lib/和 之间循环/usr/libexec/。我不知道如何度过这一点。我只想从/usr/li/usr/lib,然后/usr/lib/,然后列出其内容。

\n\n

对于Python来说也是如此。在 tcsh 中,我输入pyt<TAB>,它完成 …

bash zsh tcsh tab-completion

5
推荐指数
1
解决办法
1830
查看次数

标签 统计

bash ×1

tab-completion ×1

tcsh ×1

zsh ×1