作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试解决在 Vim 脚本中使用 ^@(即 <ctrl-@>
)字符的问题。我可以将它们插入到脚本中,但是当脚本运行时,该行似乎在 ^@ 所在的位置被截断了。
到目前为止,我的笨拙解决方案是将 ^@ 存储在变量中,然后每当我引用文字 ^@ 时在脚本中引用该变量。有人能告诉我这里发生了什么吗?有没有更好的方法来解决这个问题?
最佳答案
这就是我从不在脚本中使用原始特殊字符值的原因之一。虽然 ^@
不起作用,字符串 <C-@>
在映射中按预期工作,因此您可以使用其中之一
nnoremap <C-@> {rhs}
nnoremap <Nul> {rhs}
<Char-0x0>
这里。关于字符串中空字节的一些注意事项:
setline
非常快,因为缓冲区表示为行列表)。 readfile
、 getline(start, end)
)或获取字符串列表(如 writefile
、 setline
、 append
)的函数处理 \n
(NL) 为空。也是缓冲线的内部表示,见:h NL-used-for-Nul
. \n
字符进入命令行,你会得到 Null 显示(但这实际上是一个换行符)。如果要编辑具有 \n
的文件在文件名中(在 *nix 上是可能的),您需要在换行符前加上反斜杠。 关于special-characters - 如何在 Vim 脚本中使用 '^@'?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4187499/
我是一名优秀的程序员,十分优秀!