比如说,有下面这样一段代码,使用bronson/vim-trailing-whitespace
可以看见每一行末尾都有两个空白字符,请问如何在vim中优雅的去除这些行末的空白字符?我现在的做法是d$
,然后.
,但是这种原始的做法中间还要加一些b|w
等move命令,显然不符合Vim的哲学。
list = [1, 2, 3, 4]
list = [1, 2, 3, 4, 5]
list = [1, 2, 3, 4, 5, 6]
list = [1, 2, 3]
...
关于在Vim中复制系统粘贴板的代码,使用前要触发pastetoggle
模式,否则indent会出现问题,我一般是这样设置的:
set pastetoggle=<F9>
但是这样还是有些繁琐,粘贴完之后又要重复按<F9>切换回来,请问有什么好的方法,可以粘贴系统粘贴板的代码的时候不用触发pastetoggle
模式,自动识别indent么?
补充
对于问题二,参考stackoverflow上这个精彩的回答。使用"+p
实际上比Ctrl+Shift+V
更加方便。
:nnoremap <silent> <F5> :let _s=@/ <Bar> :%s/s+$//e <Bar> :let @/=_s <Bar> :nohl <Bar> :unlet _s <CR>
Dengan cara ini anda boleh mengalih keluar ruang belakang dengan menekan F5. Dalam bahasa Inggeris, operasi ini dipanggil Remove Trailing Whitespace. Anda boleh mencari kata kunci ini
Bagi menyalin perkara pada papan keratan sistem, tambahkan
set clipboard=unnamed
pada vimrc dan ia akan berfungsi. .Sebenarnya, saya menggunakan Mac dan saya nampaknya tidak menyediakan tetapan yang anda nyatakan
pastetoggle
Selain itu, untuk memformat kod, hanya tekan
=
. . . Selepas menampal, tekan=
Untuk soalan pertama, saya selalunya buat begini,
adalah untuk memadam semua aksara kosong di hujung baris.