【问题标题】:How to respect indentation of original authors in vim?如何尊重vim中原作者的缩进?
【发布时间】:2015-05-09 11:12:41
【问题描述】:

有很多关于在vim 中为特定文件定义自己的缩进样式的问题和答案。例如,python 在 Ubuntu 上的默认设置是在 ftype/python.vim 中设置的,可以用自定义喜欢的内容覆盖,在 ~/.vimrc 中声明:

aug python
    au FileType python setlocal ts=3 sts=3 sw=3 noexpandtab
aug end

如果我正在编写自己的代码,这很好,但如果我正在编辑其他人的文件,我想使用他们的缩进样式。

如何自动应用~/.vimrc 中文件的现有缩进,同时对新文件使用我自己的缩进?

【问题讨论】:

标签: vim indentation auto-indent


【解决方案1】:

Vim 没有内置的自动缩进检测/调整。 vim-sleuthYAIFA 是两个运行良好的“安装后忘记”插件(还有一些其他插件)。

如果你不想要第三方插件或者不想自己写,你可以试试这样的:

command! -nargs=1 Spaces execute "setlocal shiftwidth=" . <args> . " softtabstop=" . <args> . " expandtab" | set shiftwidth? softtabstop? expandtab?
command! -nargs=1 Tabs   execute "setlocal shiftwidth=" . <args> . " softtabstop=" . <args> . " noexpandtab" | set shiftwidth? softtabstop? expandtab?

你可以这样使用:

:Space 4    " 4 spaces for indentation
:Tabs 3     " 3 chars-wide tabs for indentation

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-09-26
    • 1970-01-01
    • 2012-11-13
    • 1970-01-01
    • 2023-03-29
    • 2015-12-27
    • 1970-01-01
    相关资源
    最近更新 更多