gpt4 book ai didi

python - python 片段的 vim 正确缩进

转载 作者:太空宇宙 更新时间:2023-11-04 01:33:34 25 4
gpt4 key购买 nike

在编辑 Python 代码时,我很难使用 vim 智能 缩进 vim 功能。总的来说我喜欢:set nocompatible vim 中的选项,连同 :set autoindent (和/或 :set smartindent )。一切都很好,除了一个非常烦人的行为。假设您编写了一些代码,然后想插入您从其他地方获取的 Python 代码片段。 python 代码片段可能包含注释,例如

# comment1
a=1
# comment2
b=1

在 vim 中,当你进入插入模式时,例如输入 o,然后粘贴代码,vim 会做太多缩进代码的工作,而不是代码片段,您会得到

# comment1
# a=1
# # comment2
# b=1

因此它会在第一条评论之后插入额外的评论(井号),并将其保留用于代码片段的其余部分。现在想象一下你有很长的代码片段和不同的标识,你可以想象你的粘贴操作看起来有多难看(代码将被不正确地缩进和注释)

有什么办法可以解决吗?

我解决这个问题的唯一方法是将 vim 兼容模式与 noautoindent 一起设置。选项,然后粘贴代码片段。这样做会将其正确插入(按原样)。但是在模式之间切换(nocompatible vs compatible)太多了(叫我懒惰,但它应该是一种在 nocompatible 模式下正确插入带有评论的片段的方法)。设置noautoindentnocompatilbe模式没有任何区别(问题依然存在),所以它与兼容/不兼容模式有关。

最佳答案

你想要的选项是

set paste

这会将您想要的内容作为原始内容粘贴。

关于python - python 片段的 vim 正确缩进,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11905705/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com