可以根据文件扩展名更改选项卡的长度吗?

时间:2011-05-16 01:32:00

标签: vim vi

  

可能重复:
  Changing Vim indentation behavior by file type

您好。 所以,我经常在标签'2'和'4'之间切换。通常我使用2个空格作为HTML文件的选项卡,使用4个空格作为编程选项卡。有没有配置VIM,所以它会根据文件扩展名自动调整? 另外,为什么VIM有时会缩进8个空格,就像我进入开放式支撑后?我把它设置为4个空格。 感谢。

2 个答案:

答案 0 :(得分:20)

set sw=4 ts=4 sts=4                             " Defaults: four spaces per tab "
autocmd FileType html :setlocal sw=2 ts=2 sts=2 " Two spaces for HTML files "

以下是三个不同的选项:'shiftwidth'('sw')控制自动缩进的空格数和一些移位命令(如普通模式下的<<),'tabstop'('ts')控制视觉实际制表符的长度,您可能希望保留默认值(8个可视单元格),'softtabstop'('sts')控制按<Tab><CR>时插入/删除的内容。我建议您将其设置为'tabstop'的值,或者将其设置为'expandtab',因为在其他情况下,它会产生丑陋的标签+空格缩进。

答案 1 :(得分:1)

在vim中输入:help syntax。这将打开一个帮助文件,概述后续页面/文件,向您展示如何将文件扩展名绑定到语法文件,您可以:set shiftwidth=2:set tabstop=2。 G。 HTML文件。我猜你的安装语法文件也是你的大括号缩进症状的原因。