如何删除行上的最后一个空白字符

时间:2013-06-21 23:43:59

标签: vim

我有:

  int x = 1;______

(下划线表示空格) 我想得到:

  int x = 1;

我天真的解决方案是$bld$,有最快捷的方法吗?

在Emacs中,我使用M-\ (delete-horizontal-space)

3 个答案:

答案 0 :(得分:2)

对于当前行:

:s/\s\+$

对于所有行:

:%s/\s\+$

如果空白,可以省略替换文本,因此我们不需要编写s/\s\+$//

答案 1 :(得分:1)

我通过搜索和替换映射执行此操作:

map <leader>W :%s/\s\+$//<CR>:let @/=''<CR>

:%s/\s\+$//删除所有尾随空格,然后:let @/=''清除搜索寄存器。

答案 2 :(得分:0)

:%s/\s\+$//

它的作用是在行尾搜索空格并将其替换为空格。

来源:http://vim.wikia.com/wiki/Remove_unwanted_spaces