小编nif*_*fty的帖子

在竖线 (|) 后跟一个空格后插入的隐藏字符

很多时候,在我的 Mac 上,当我使用管道 (|) 字符后跟一个空格字符时,会在中间插入一个不可见的字符。

这在使用终端时尤其烦人,因为它会使命令无效。

如果我在 iterm2 中输入以下内容,我经常会得到以下信息:

ls | cat
zsh: command not found:  cat
Run Code Online (Sandbox Code Playgroud)

如果我打的向上箭头键,让我以前的命令,然后取出并重新插入之间的空间|cat,该命令将正常工作。

当我将工作和非工作命令复制粘贴到文件中时,如下所示:

non-working: ls | cat
working: ls | cat
Run Code Online (Sandbox Code Playgroud)

并在Hex Fiend 中打开它显示以下内容:

non-working: ls | cat
working: ls | cat
Run Code Online (Sandbox Code Playgroud)

我也在 SublimeText2 中使用方括号 ( []) 后跟一个空格遇到了同样的问题。所以我不相信它是 iTerm2 的问题。

keyboard keyboard-shortcuts special-characters macos

14
推荐指数
1
解决办法
4426
查看次数

Zsh,带前缀的目录制表符补全

我有一个目录,我将所有项目都放在其中,假设它~/projects是一个示例。我创建了一个名为的命令s,它接受一个参数,并将我移动到该目录中。例如:s foo将我移至~/projects/foo

我想要的是某种类型的完成命令,它的作用就像cd这样我可以继续点击tab以进一步进入~/projects/...目录。

基本上,cd带有始终存在的前缀。

我在 中研究了 zstyle 完成man zshcompsys,但意识到我对它的了解还不够,无法正确理解它。

zsh prefix tab-completion

10
推荐指数
1
解决办法
3114
查看次数