Mercurial > vim
view runtime/ftplugin/rrst.vim @ 34257:8a91d18f1789 v9.1.0069
patch 9.1.0069: ScreenLines may not be correctly initialized, causing hang
Commit: https://github.com/vim/vim/commit/fd472655a93fd539c731c8daf3adc4e65ddce341
Author: Olaf Seibert <rhialto@falu.nl>
Date: Thu Feb 1 21:11:16 2024 +0100
patch 9.1.0069: ScreenLines may not be correctly initialized, causing hang
Problem: ScreenLines may not be correctly initialized, causing hang
(Olaf Seibert, after 9.0.0220)
Solution: always initialize ScreneLines when allocating a screen
(Olaf Seibert)
ScreenLines and related structures could be left uninitialized
causing a screen update to run into an infinite loop when using latin1
encoding.
Partly caused because by patch 9.0.0220, which makes mb_ptr2len return
zero for NUL
related: #12671
closes: #13946
Signed-off-by: Olaf Seibert <rhialto@falu.nl>
Signed-off-by: Christian Brabandt <cb@256bit.org>
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Thu, 01 Feb 2024 21:30:02 +0100 |
parents | 8ae680be2a51 |
children | 02bd0fe77c68 |
line wrap: on
line source
" Vim filetype plugin file " Language: reStructuredText documentation format with R code " Maintainer: Jakson Alves de Aquino <jalvesaq@gmail.com> " Homepage: https://github.com/jalvesaq/R-Vim-runtime " Last Change: Mon Feb 27, 2023 07:16PM " 2024 Jan 14 by Vim Project (browsefilter) " Original work by Alex Zvoleff " Only do this when not yet done for this buffer if exists("b:did_ftplugin") finish endif " Don't load another plugin for this buffer let b:did_ftplugin = 1 let s:cpo_save = &cpo set cpo&vim setlocal comments=fb:*,fb:-,fb:+,n:> setlocal commentstring=#\ %s setlocal formatoptions+=tcqln setlocal formatlistpat=^\\s*\\d\\+\\.\\s\\+\\\|^\\s*[-*+]\\s\\+ setlocal iskeyword=@,48-57,_,. function FormatRrst() if search('^\.\. {r', "bncW") > search('^\.\. \.\.$', "bncW") setlocal comments=:#',:###,:##,:# else setlocal comments=fb:*,fb:-,fb:+,n:> endif return 1 endfunction " If you do not want 'comments' dynamically defined, put in your vimrc: " let g:rrst_dynamic_comments = 0 if !exists("g:rrst_dynamic_comments") || (exists("g:rrst_dynamic_comments") && g:rrst_dynamic_comments == 1) setlocal formatexpr=FormatRrst() endif if (has("gui_win32") || has("gui_gtk")) && !exists("b:browsefilter") let b:browsefilter = "R Source Files (*.R *.Rnw *.Rd *.Rmd *.Rrst *.qmd)\t*.R;*.Rnw;*.Rd;*.Rmd;*.Rrst;*.qmd\n" if has("win32") let b:browsefilter .= "All Files (*.*)\t*\n" else let b:browsefilter .= "All Files (*)\t*\n" endif endif if exists('b:undo_ftplugin') let b:undo_ftplugin .= " | setl cms< com< fo< flp< isk< | unlet! b:browsefilter" else let b:undo_ftplugin = "setl cms< com< fo< flp< isk< | unlet! b:browsefilter" endif let &cpo = s:cpo_save unlet s:cpo_save " vim: sw=2