gpt4 book ai didi

vim - 如何告诉 Vim 在保存前自动缩进

转载 作者:行者123 更新时间:2023-12-04 04:55:21 28 4
gpt4 key购买 nike

我最近开始在我的研究生项目中使用 Vim。我面临的主要问题是有时我会 checkin 未缩进的代码。我觉得如果我能以某种方式创建自动缩进+保存+关闭的快捷方式,那应该可以解决我的问题。
我的 .vimrc 文件:

set expandtab
set tabstop=2
set shiftwidth=2
set softtabstop=2
set pastetoggle=<F2>
syntax on
filetype indent plugin on
有没有办法创建这样的命令快捷方式并用 :x 覆盖? (保存+退出)。
请告诉我。

最佳答案

我建议打开 autoindent首先要避免这个问题。在开发的每个阶段使用正确缩进的代码要容易得多。

set autoindent

通过 :help autoindent 阅读文档.

但是,= 命令将根据文件类型的规则缩进行。您可以创建 BufWritePre autocmd 对整个文件执行缩进。

我没有对此进行测试,也不知道它的实际效果如何:
autocmd BufWritePre * :normal gg=G

阅读 :help autocmd有关该主题的更多信息。 gg=g分解为:
  • :normal作为普通模式编辑命令执行,而不是 :ex命令
  • gg 移至文件顶部
  • = 缩进直到...
  • G ...文件的结尾。

  • 不过我真的不推荐这种策略。习惯使用 set autoindent反而。定义这个 autocmd 可能是不明智的。在所有文件上(与 * 一样)。它只能在某些文件类型上完成:
    " Only for c++ files, for example
    autocmd BufWritePre *.cpp :normal gg=G

    关于vim - 如何告诉 Vim 在保存前自动缩进,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15992163/

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