Vim 的 paste 模式




1、问题:Vim缩进混乱

最近用 Vim 写代码的时候,发现复制整段代码再粘贴的时候,缩进就全乱了,比如:
在这里插入图片描述




2、基本解法

这是因为 Vim 自动缩进了,按照如下设置可以解决该问题:

在 Vim 视图,输入如下命令,可以使 vim 进入 paste 模式,这时候再整段复制黏贴,就OK了:

:set paste

   
   

    进入paste模式执行 set paste,它做了以下这些事情:

    textwidth设置为0
    wrapmargin设置为0
    set noai set nosi softtabstop设置为0
    revins重置
    ruler重置
    showmatch重置
    formatoptions使用空值
    lisp 选项值不变,但被禁用
    indentexpr 选项值不变,但被禁用
    cindent 选项值不变,但被禁用

    在 Vim 视图,可以输入如下命令,退出 paste 模式:

    :set nopaste
    
       
       



      3、偷懒解法

      另外,有一个切换 paste 开关的选项叫 pastetoggle,
      可以通过用它来绑定一个快捷键,即可实现单键控制 激活/退出 paste模式:

      :set pastetoggle=<F5>
      
         
         



        参考文档:Toggle auto-indenting for code paste

        • 1
          点赞
        • 2
          收藏
          觉得还不错? 一键收藏
        • 0
          评论

        “相关推荐”对你有帮助么?

        • 非常没帮助
        • 没帮助
        • 一般
        • 有帮助
        • 非常有帮助
        提交
        评论
        添加红包

        请填写红包祝福语或标题

        红包个数最小为10个

        红包金额最低5元

        当前余额3.43前往充值 >
        需支付:10.00
        成就一亿技术人!
        领取后你会自动成为博主和红包主的粉丝 规则
        hope_wisdom
        发出的红包
        实付
        使用余额支付
        点击重新获取
        扫码支付
        钱包余额 0

        抵扣说明:

        1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
        2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

        余额充值