我在JADE文件中编码一些html模板。我想用空格而不是制表符自动缩进代码。我尝试过shiftwidth=2tabstop=2,但是无论如何,它仍然使用制表符而不是空格键来缩进,这会导致JADE编译抛出错误。

如何使用空格而不是空格来自动缩进大部分代码标签?

#1 楼

您正在寻找expandtab选项。设置此选项后,将始终使用空格。您可以将set expandtab放入vimrc中,以便在vim启动时始终设置此选项。如果只想为特定语言启用此选项,请参阅此问题。有关此选项的帮助,请参阅:help 'expandtab'

评论


谢谢:set expandtab允许我使用空格而不是制表符进行缩进

–约翰
15年8月2日在23:45

设置et时ts是没有用的吗?

– iBug
19年8月8日在12:59

@iBug如果您自己创建文件,则不是,但是如果要编辑其中包含选项卡的现有文件,则设置它可能会很有用。有关缩进的更多信息,请参见vim.fandom.com/wiki/Indenting_source_code,我发现它比vim的帮助文件更清晰。

–EvergreenTree
19年8月13日19:00



#2 楼

您需要expandtab。

,但是通常通常要同时设置几个选项。

如果将以下内容添加到〜/ .vimrc文件中

" tabstop:          Width of tab character
" softtabstop:      Fine tunes the amount of white space to be added
" shiftwidth        Determines the amount of whitespace to add in normal mode
" expandtab:        When this option is enabled, vi will use spaces instead of tabs
set tabstop     =4
set softtabstop =4
set shiftwidth  =4
set expandtab


或者,您也可以通过在普通模式下使用':'来手动执行这些操作:

评论


这应该是公认的答案

– Roel Van de Paar
20 Apr 17'23:03在