Vim Settings for Working With YAML [Snippet]
Let's take a look at a short tutorial that gives an explanation of the vim settings for working with YAML.
Join the DZone community and get the full member experience.
Join For FreeHaving managed to avoid YAML until quite recently, my vim installation wasn't well set up at all for working with it. It needs more config settings than plugins, so I thought I'd write down what I found helpful. I'm using it quite a lot now I'm working with OAS (used to be Swagger) API definitions.
Let's start with the easy bit: I'm using the yaml-vim plugin. This seems to do a decent job of syntax highlighting, really helping to spot mistakes!
I added a bunch of configuration to my .vimrc
also:
" add yaml stuffs
au! BufNewFile,BufReadPost *.{yaml,yml} set filetype=yaml foldmethod=indent
autocmd FileType yaml setlocal ts=2 sts=2 sw=2 expandtab
By setting the foldmethod
to indent, I get a fold on an increase in indentation levels, which really helps to just expand the bits I'm working on and generally be able to find my way around a file (Pythonistas may find this setting useful since Python works on a similar indentation basis).
Most of the rest of the configuration is around indentation. Yaml does not allow tabs, and indents are multiples of two spaces, so I've set the expandtab
value here and also set tabstop/soft tabstop ( ts
and sts
), and shiftwidth ( sw
) to 2.
Bonus pro tip: Try openapi-spec-validator
to check your OAS documents are making sense.
Published at DZone with permission of Lorna Mitchell, DZone MVB. See the original article here.
Opinions expressed by DZone contributors are their own.
Comments