如何使用 Vim 和 Yaml 获得出色的自动缩进?

发布于 2024-10-15 12:14:04 字数 168 浏览 3 评论 0原文

现在我正在使用 设置自动缩进 当我在 Vim 中编辑 Yaml 文件时,只需在开始新行时复制上一行的缩进即可。不过,我忍不住觉得它可以更聪明一点。如果在之后开始新的一行那就太好了 foo:“酒吧” 可以保持相同的缩进级别,但在之后开始一行 富: 将添加额外的缩进级别。

Right now I am using
set autoindent
when I edit Yaml files in Vim, and it works okay by just copying the previous line's indent when you start a new line. I can't help but feel like it could be a little smarter, though. What would be great is if starting a new line after
foo: "bar"
could keep the same indent level, but starting a line after
foo:
would add an additional level of indent.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

空心↖ 2024-10-22 12:14:04

Xavier 启发我对此进行了一些修改,我想出了我自己的 Yaml 缩进脚本。它不处理任何更高级的 Yaml 功能,但它可以满足我最初的要求。

要使用它,您只需将其放入 ~/.vim/after/ftplugin/yaml.vim (假设您正在使用 set ftplugin on)。

Xavier inspired me to hack at this a bit, and I came up with my own little indent script for Yaml. It doesn't handle any of the more advanced Yaml features, but it does what I originally asked for.

To use this, you can just drop it into ~/.vim/after/ftplugin/yaml.vim (assuming you are using set ftplugin on).

天气好吗我好吗 2024-10-22 12:14:04

具体的缩进规则按语言存储在:
$VIMRUNTIME\indent\foo.vim 表示语言 foo

在我的默认安装中,我有 ruby.vimhaml.vim 和许多其他文件,但没有 yaml.vim

您可以创建一个 indent\yaml.vim 来获取您想要的缩进规则。我很快尝试在网上搜索是否有类似的东西,但我没有找到任何东西。

Specific indentation rules are stored on a language basis in :
$VIMRUNTIME\indent\foo.vim for language foo.

On my default installation, I have got ruby.vim, haml.vim and many other but no yaml.vim.

You could create an indent\yaml.vim to get the indentation rules you want. I have quickly tried to search online if something similar was available but I have not find anything.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文