法线贴图不起作用

时间:2011-01-22 21:32:37

标签: vim macvim

由于某种原因,以下地图无效:

nmap ,u :.g/./t.|s/./=/g<CR>

一旦我在这样的一行上键入,u,就打算这样做了:

lorem ipsum

它应该变成:

lorem ipsum
===========

结果:我在窗口底部看到:.g/./t.。然后我尝试转义|,现在一旦我使用映射,我只是在底部看到:.g/./t.|s/./=/g,没有任何反应。

可能有更好的,没有错误的方法,我还是初学者。

谢谢!

1 个答案:

答案 0 :(得分:2)

您需要在映射中转义栏:使用\|<bar>。现在它被解析为两个命令:nmap ,u :.g/./t.s/./=/g<CR>

请勿使用nmap,请使用nnoremap

更新:虽然映射的转义变体有效,但我会将其写为yyp:s/./=/g<CR>:call append('.', repeat('=', strdisplaywidth(getline('.'))))<CR>(vim-7.3,最佳变体)或{ {1}}(vim-7.2,与:call append('.', repeat('=', len(split(getline('.'), '\zs'))))<CR>变体的制表符和全角字符有同样的问题,但不会覆盖任何寄存器。)