view runtime/ftplugin/rst.vim @ 31235:7fb4e244b16e v9.0.0951

patch 9.0.0951: trying every character position for a match is inefficient Commit: https://github.com/vim/vim/commit/01105b37a108022515d364201767f7f111ec4222 Author: Bram Moolenaar <Bram@vim.org> Date: Sat Nov 26 11:47:10 2022 +0000 patch 9.0.0951: trying every character position for a match is inefficient Problem: Trying every character position for a match is inefficient. Solution: Use the start position of the match ignoring "\zs".
author Bram Moolenaar <Bram@vim.org>
date Sat, 26 Nov 2022 13:00:05 +0100
parents 1908e92b02fd
children d46f974fd69e
line wrap: on
line source

" reStructuredText filetype plugin file
" Language: reStructuredText documentation format
" Maintainer: Marshall Ward <marshall.ward@gmail.com>
" Original Maintainer: Nikolai Weibull <now@bitwi.se>
" Website: https://github.com/marshallward/vim-restructuredtext
" Latest Revision: 2020-03-31

if exists("b:did_ftplugin")
    finish
endif
let b:did_ftplugin = 1

let s:cpo_save = &cpo
set cpo&vim

"Disable folding
if !exists('g:rst_fold_enabled')
  let g:rst_fold_enabled = 0
endif

let b:undo_ftplugin = "setl com< cms< et< fo<"

setlocal comments=fb:.. commentstring=..\ %s expandtab
setlocal formatoptions+=tcroql

" reStructuredText standard recommends that tabs be expanded to 8 spaces
" The choice of 3-space indentation is to provide slightly better support for
" directives (..) and ordered lists (1.), although it can cause problems for
" many other cases.
"
" More sophisticated indentation rules should be revisted in the future.

if exists("g:rst_style") && g:rst_style != 0
    setlocal expandtab shiftwidth=3 softtabstop=3 tabstop=8
endif

if g:rst_fold_enabled != 0 && has('patch-7.3.867')  " Introduced the TextChanged event.
  setlocal foldmethod=expr
  setlocal foldexpr=RstFold#GetRstFold()
  setlocal foldtext=RstFold#GetRstFoldText()
  augroup RstFold
    autocmd TextChanged,InsertLeave <buffer> unlet! b:RstFoldCache
  augroup END
endif

let &cpo = s:cpo_save
unlet s:cpo_save