【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>>
我正在努力学习Vim。
当我从剪贴板将代码粘贴到我的文档中时,我会在每个新行的开头添加额外的空格:
line
line
line
我知道你可以关闭自动缩进,但我无法让它工作,因为我有一些其他设置冲突或某事(在我的.vimrc中看起来非常明显,但是当我把它们取出时似乎并不重要)。
当我粘贴代码时如何关闭自动缩进但在编写代码时仍然有自动缩进? 这是我的.vimrc
文件:
set expandtab
set tabstop=2
set shiftwidth=2
set autoindent
set smartindent
set bg=dark
set nowrap
#1楼
这适用于我(+寄存器的情况,我使用的像aps之间的交换缓冲区):
imap <silent> <S-Insert> <C-O>:set noai<CR><C-R>+<C-O>:set ai<CR>
#2楼
把它粘在你的〜/ .vimrc中并开心:
" enables :Paste to just do what you want
command Paste execute 'set noai | insert | set ai'
编辑:反思, :r !cat
是一个更好的方法,因为它很短,语义,并且不需要自定义vimrc。 改用它!
#3楼
Mac用户可以通过以下方式直接从粘贴板中读取来避免自动格式化:
:r !pbpaste
#4楼
以下是有人发现如何重新映射粘贴事件以自动打开粘贴模式然后退出的帖子 。 适用于MacOSX上的tmux / iTerm。
#5楼
如果你在Mac上,macvim似乎无需切换粘贴就可以很好地处理它。
brew install macvim --override-system-vim
来源:oschina
链接:https://my.oschina.net/stackoom/blog/3142132