xref: /vim-8.2.3635/runtime/ftplugin/rst.vim (revision d1caa941)
191f84f6eSBram Moolenaar" reStructuredText filetype plugin file
242eeac35SBram Moolenaar" Language: reStructuredText documentation format
391f84f6eSBram Moolenaar" Maintainer: Marshall Ward <[email protected]>
491f84f6eSBram Moolenaar" Original Maintainer: Nikolai Weibull <[email protected]>
591f84f6eSBram Moolenaar" Website: https://github.com/marshallward/vim-restructuredtext
6*d1caa941SBram Moolenaar" Latest Revision: 2020-03-31
7071d4279SBram Moolenaar
8071d4279SBram Moolenaarif exists("b:did_ftplugin")
9071d4279SBram Moolenaar    finish
10071d4279SBram Moolenaarendif
11071d4279SBram Moolenaarlet b:did_ftplugin = 1
12071d4279SBram Moolenaar
13e37d50a5SBram Moolenaarlet s:cpo_save = &cpo
14e37d50a5SBram Moolenaarset cpo&vim
15e37d50a5SBram Moolenaar
164c05fa08SBram Moolenaar"Disable folding
174c05fa08SBram Moolenaarif !exists('g:rst_fold_enabled')
184c05fa08SBram Moolenaar  let g:rst_fold_enabled = 0
194c05fa08SBram Moolenaarendif
204c05fa08SBram Moolenaar
210dc065eeSBram Moolenaarlet b:undo_ftplugin = "setl com< cms< et< fo<"
22071d4279SBram Moolenaar
2342eeac35SBram Moolenaarsetlocal comments=fb:.. commentstring=..\ %s expandtab
240dc065eeSBram Moolenaarsetlocal formatoptions+=tcroql
25e37d50a5SBram Moolenaar
2691f84f6eSBram Moolenaar" reStructuredText standard recommends that tabs be expanded to 8 spaces
2791f84f6eSBram Moolenaar" The choice of 3-space indentation is to provide slightly better support for
2891f84f6eSBram Moolenaar" directives (..) and ordered lists (1.), although it can cause problems for
2991f84f6eSBram Moolenaar" many other cases.
3091f84f6eSBram Moolenaar"
3191f84f6eSBram Moolenaar" More sophisticated indentation rules should be revisted in the future.
3291f84f6eSBram Moolenaar
334c92e75dSBram Moolenaarif exists("g:rst_style") && g:rst_style != 0
3491f84f6eSBram Moolenaar    setlocal expandtab shiftwidth=3 softtabstop=3 tabstop=8
3591f84f6eSBram Moolenaarendif
3691f84f6eSBram Moolenaar
37*d1caa941SBram Moolenaarif g:rst_fold_enabled != 0 && has('patch-7.3.867')  " Introduced the TextChanged event.
3891f84f6eSBram Moolenaar  setlocal foldmethod=expr
3991f84f6eSBram Moolenaar  setlocal foldexpr=RstFold#GetRstFold()
4091f84f6eSBram Moolenaar  setlocal foldtext=RstFold#GetRstFoldText()
4191f84f6eSBram Moolenaar  augroup RstFold
4291f84f6eSBram Moolenaar    autocmd TextChanged,InsertLeave <buffer> unlet! b:RstFoldCache
4391f84f6eSBram Moolenaar  augroup END
4491f84f6eSBram Moolenaarendif
4591f84f6eSBram Moolenaar
46e37d50a5SBram Moolenaarlet &cpo = s:cpo_save
47e37d50a5SBram Moolenaarunlet s:cpo_save
48