如何正确缩进 vim 中的 flow/cadence 文件

How to indent flow/cadence files in vim correctly

cadence中,资源接口可以包含需要实现的状态和方法。但是,当我尝试在 vim 中缩进一个节奏文件时,它会缩进错误的代码。

pub resource interface INFT {
    pub let id: UInt64
    pub fun getName(): String
    pub fun getSchemas() : [String]
    pub fun resolveSchema(_ schema:String): AnyStruct
}

gg=G后得到的结果

 pub resource interface INFT {
        pub let id: UInt64
            pub fun getName(): String
                               pub fun getSchemas() : [String]
                                                       pub fun resolveSchema(_ schema:String): AnyStruct
                                                                           
    }

我不太熟悉 vim 的缩进规则,有人可以帮我吗?有一个 https://github.com/Cian911/vim-cadence 项目有一些语法规则,但目前还不完整。

更新:在我们讨论解决了我的很多问题后,维护者合并了一个请求。