nif*_*fty 14 keyboard keyboard-shortcuts special-characters macos
很多时候,在我的 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 的问题。
slh*_*hck 15
发生的情况是您一直按?空格键,这会插入一个不间断的空格,在 HTML 中通过 参考已知。这个不间断的空格在文本处理中很有用,你希望某些单词粘在一起,比如“OS X”中的“OS”和“X”。
显然,这是一个 unicode 字符 ( 00A0),因此大多数命令行实用程序都会失败,例如 bash 看到_cat(_不间断空格在哪里),以及 Hex Fiend 只是使用了错误的表示法。另一方面,一些编辑器会默默地将它删除(例如,这里的这个编辑器),而其他编辑器甚至有一个特殊的表示(例如 TextMate 显示一个点而不是空格)。
有两种解决方案:
?按下空格键时要多注意松开按键。顺便说一句:它也经常发生在我身上。
完全禁用组合:如何禁用不间断空格的 Option-Space 组合键?
| 归档时间: |
|
| 查看次数: |
4426 次 |
| 最近记录: |