是否可以在vim中修改一个案例的cindent规则?

时间:2010-07-30 02:08:18

标签: vim d indentation

我目前正在使用vim作为D编程的编辑器。缩进规则几乎与C相同,但我遇到了vim默认不处理的情况。在D中,case语句可以采用cindent未正确处理的字符串。

例如,这有效:

switch(blah)
{
case 1:
    // something
case some_variable:
    // ...
}

但不是这样:

switch(blah)
{
    case "yark":
        case "flurb":
    // something
    case "...":
        // ...
}

是否有某种方法可以在自定义缩进文件中覆盖该单个规则,还是必须重新实现整个cindent规则集?

1 个答案:

答案 0 :(得分:4)

尝试Vim 7.3。此版本中引入的缩进规则主要针对JavaScript,也解决了这种特殊情况。

使用Vim 7.3,代码正确缩进为:

switch(blah)
{
    case "yark":
    case "flurb":
        // something
    case "...":
        // ...
}