# HG changeset patch # User Christian Brabandt # Date 1693251907 -7200 # Node ID 5c220cf30f1fbf90b238521d30601ecc1e4ade24 # Parent 02939ae3aacad2ec2c1265b6840028c26853dacc runtime: Set b:undo_indent where missing (#12944) Commit: https://github.com/vim/vim/commit/0382f05dbd659d8e39ee4e71c1e5062ac5c0a8fd Author: dkearns Date: Tue Aug 29 05:32:59 2023 +1000 runtime: Set b:undo_indent where missing (https://github.com/vim/vim/issues/12944) Signed-off-by: Christian Brabandt diff --git a/runtime/indent/ch.vim b/runtime/indent/ch.vim --- a/runtime/indent/ch.vim +++ b/runtime/indent/ch.vim @@ -3,6 +3,7 @@ " Maintainer: SoftIntegration, Inc. " URL: http://www.softintegration.com/download/vim/indent/ch.vim " Last change: 2006 Apr 30 +" 2023 Aug 28 by Vim Project (undo_indent) " Created based on cpp.vim " " Ch is a C/C++ interpreter with many high level extensions @@ -16,3 +17,5 @@ let b:did_indent = 1 " Ch indenting is built-in, thus this is very simple setlocal cindent + +let b:undo_indent = "setlocal cindent<" diff --git a/runtime/indent/dune.vim b/runtime/indent/dune.vim --- a/runtime/indent/dune.vim +++ b/runtime/indent/dune.vim @@ -3,6 +3,7 @@ " Maintainers: Markus Mottl " URL: https://github.com/ocaml/vim-ocaml " Last Change: 2021 Jan 01 +" 2023 Aug 28 by Vim Project (undo_indent) if exists("b:did_indent") finish @@ -11,3 +12,5 @@ let b:did_indent = 1 " dune format-dune-file uses 1 space to indent setlocal softtabstop=1 shiftwidth=1 expandtab + +let b:undo_indent = "setl et< sts< sw<" diff --git a/runtime/indent/fish.vim b/runtime/indent/fish.vim --- a/runtime/indent/fish.vim +++ b/runtime/indent/fish.vim @@ -3,6 +3,7 @@ " Maintainer: Nicholas Boyle (github.com/nickeb96) " Repository: https://github.com/nickeb96/fish.vim " Last Change: February 4, 2023 +" 2023 Aug 28 by Vim Project (undo_indent) if exists("b:did_indent") finish @@ -12,6 +13,8 @@ let b:did_indent = 1 setlocal indentexpr=GetFishIndent(v:lnum) setlocal indentkeys+==end,=else,=case +let b:undo_indent = "setlocal indentexpr< indentkeys<" + function s:PrevCmdStart(linenum) let l:linenum = a:linenum " look for the first line that isn't a line continuation diff --git a/runtime/indent/go.vim b/runtime/indent/go.vim --- a/runtime/indent/go.vim +++ b/runtime/indent/go.vim @@ -2,6 +2,7 @@ " Language: Go " Maintainer: David Barnett (https://github.com/google/vim-ft-go) " Last Change: 2017 Jun 13 +" 2023 Aug 28 by Vim Project (undo_indent) " " TODO: " - function invocations split across lines @@ -19,6 +20,8 @@ setlocal autoindent setlocal indentexpr=GoIndent(v:lnum) setlocal indentkeys+=<:>,0=},0=) +let b:undo_indent = "setl ai< inde< indk< lisp<" + if exists('*GoIndent') finish endif diff --git a/runtime/indent/hare.vim b/runtime/indent/hare.vim --- a/runtime/indent/hare.vim +++ b/runtime/indent/hare.vim @@ -2,6 +2,7 @@ " Language: Hare " Maintainer: Amelia Clarke " Last Change: 2022 Sep 22 +" 2023 Aug 28 by Vim Project (undo_indent) if exists("b:did_indent") finish @@ -40,6 +41,8 @@ setlocal cinwords=if,else,for,switch,mat setlocal indentexpr=GetHareIndent() +let b:undo_indent = "setl cin< cino< cinw< inde< indk<" + function! FloorCindent(lnum) return cindent(a:lnum) / shiftwidth() * shiftwidth() endfunction diff --git a/runtime/indent/jsonc.vim b/runtime/indent/jsonc.vim --- a/runtime/indent/jsonc.vim +++ b/runtime/indent/jsonc.vim @@ -4,6 +4,7 @@ " Acknowledgement: Based off of vim-json maintained by Eli Parra " https://github.com/elzr/vim-json " Last Change: 2021-07-01 +" 2023 Aug 28 by Vim Project (undo_indent) " 0. Initialization {{{1 " ================= @@ -20,6 +21,8 @@ setlocal nosmartindent setlocal indentexpr=GetJSONCIndent() setlocal indentkeys=0{,0},0),0[,0],!^F,o,O,e +let b:undo_indent = "setlocal indentexpr< indentkeys< smartindent<" + " Only define the function once. if exists("*GetJSONCIndent") finish diff --git a/runtime/indent/julia.vim b/runtime/indent/julia.vim --- a/runtime/indent/julia.vim +++ b/runtime/indent/julia.vim @@ -3,7 +3,8 @@ " Maintainer: Carlo Baldassi " Homepage: https://github.com/JuliaEditorSupport/julia-vim " Last Change: 2022 Jun 14 -" Notes: originally based on Bram Molenaar's indent file for vim +" 2023 Aug 28 by Vim Project (undo_indent) +" Notes: originally based on Bram Moolenaar's indent file for vim " Only load this indent file when no other was loaded. if exists("b:did_indent") @@ -21,6 +22,8 @@ setlocal indentkeys-=0{ setlocal indentkeys-=0} setlocal nosmartindent +let b:undo_indent = "setl ai< inde< indk< si<" + " Only define the function once. if exists("*GetJuliaIndent") finish diff --git a/runtime/indent/logtalk.vim b/runtime/indent/logtalk.vim --- a/runtime/indent/logtalk.vim +++ b/runtime/indent/logtalk.vim @@ -1,5 +1,6 @@ " Maintainer: Paulo Moura " Revised on: 2018.08.04 +" 2023 Aug 28 by Vim Project (undo_indent) " Language: Logtalk " This Logtalk indent file is a modified version of the Prolog @@ -16,6 +17,8 @@ setlocal indentexpr=GetLogtalkIndent() setlocal indentkeys-=:,0# setlocal indentkeys+=0%,-,0;,>,0) +let b:undo_indent = "setlocal indentexpr< indentkeys<" + " Only define the function once. if exists("*GetLogtalkIndent") finish diff --git a/runtime/indent/ocaml.vim b/runtime/indent/ocaml.vim --- a/runtime/indent/ocaml.vim +++ b/runtime/indent/ocaml.vim @@ -4,7 +4,8 @@ " Mike Leary " Markus Mottl " URL: https://github.com/ocaml/vim-ocaml -" Last Change: 2017 Jun 13 +" Last Change: 2023 Aug 28 - Add undo_indent (Vim Project) +" 2017 Jun 13 " 2005 Jun 25 - Fixed multiple bugs due to 'else\nreturn ind' working " 2005 May 09 - Added an option to not indent OCaml-indents specially (MM) " 2013 June - commented textwidth (Marc Weber) @@ -24,6 +25,8 @@ setlocal indentkeys+=0=and,0=class,0=con setlocal nolisp setlocal nosmartindent +let b:undo_indent = "setl et< inde< indk< lisp< si<" + " At least Marc Weber and Markus Mottl do not like this: " setlocal textwidth=80 diff --git a/runtime/indent/php.vim b/runtime/indent/php.vim --- a/runtime/indent/php.vim +++ b/runtime/indent/php.vim @@ -4,6 +4,7 @@ " URL: https://www.2072productions.com/vim/indent/php.vim " Home: https://github.com/2072/PHP-Indenting-for-VIm " Last Change: 2020 Mar 05 +" 2023 Aug 28 by Vim Project (undo_indent) " Version: 1.70 " " @@ -128,7 +129,7 @@ setlocal nolisp setlocal indentexpr=GetPhpIndent() setlocal indentkeys=0{,0},0),0],:,!^F,o,O,e,*,=?>,= " Hinrik Örn Sigurðsson " @@ -47,6 +48,8 @@ if !b:indent_use_syntax setlocal indentkeys+=0=EO endif +let b:undo_indent = "setlocal indentexpr< indentkeys<" + let s:cpo_save = &cpo set cpo-=C diff --git a/runtime/indent/rst.vim b/runtime/indent/rst.vim --- a/runtime/indent/rst.vim +++ b/runtime/indent/rst.vim @@ -4,6 +4,7 @@ " Maintainer: Marshall Ward " Previous Maintainer: Nikolai Weibull " Latest Revision: 2020-03-31 +" 2023 Aug 28 by Vim Project (undo_indent) if exists("b:did_indent") finish @@ -14,6 +15,8 @@ setlocal indentexpr=GetRSTIndent() setlocal indentkeys=!^F,o,O setlocal nosmartindent +let b:undo_indent = "setlocal indentexpr< indentkeys< smartindent<" + if exists("*GetRSTIndent") finish endif diff --git a/runtime/indent/rust.vim b/runtime/indent/rust.vim --- a/runtime/indent/rust.vim +++ b/runtime/indent/rust.vim @@ -2,6 +2,7 @@ " Language: Rust " Author: Chris Morgan " Last Change: 2017 Jun 13 +" 2023 Aug 28 by Vim Project (undo_indent) " For bugs, patches and license go to https://github.com/rust-lang/rust.vim " Only load this indent file when no other was loaded. @@ -24,6 +25,8 @@ setlocal indentkeys=0{,0},!^F,o,O,0[,0] setlocal indentexpr=GetRustIndent(v:lnum) +let b:undo_indent = "setlocal cindent< cinoptions< cinkeys< cinwords< lisp< autoindent< indentkeys< indentexpr<" + " Only define the function once. if exists("*GetRustIndent") finish diff --git a/runtime/indent/scala.vim b/runtime/indent/scala.vim --- a/runtime/indent/scala.vim +++ b/runtime/indent/scala.vim @@ -4,6 +4,7 @@ " Modifications By: Derek Wyatt " URL: https://github.com/derekwyatt/vim-scala " Last Change: 2016 Aug 26 +" 2023 Aug 28 by Vim Project (undo_indent) if exists("b:did_indent") finish @@ -14,6 +15,8 @@ setlocal autoindent setlocal indentexpr=GetScalaIndent() setlocal indentkeys=0{,0},0),!^F,<>>,o,O,e,=case, +let b:undo_indent = "setl ai< inde< indk<" + if exists("*GetScalaIndent") finish endif diff --git a/runtime/indent/tex.vim b/runtime/indent/tex.vim --- a/runtime/indent/tex.vim +++ b/runtime/indent/tex.vim @@ -67,7 +67,8 @@ " 2020/04/26 by Yichao Zhou " (*) Fix a bug related to \[ & \]. Thanks Manuel Boni for " reporting. -" +" 2023/08/28 by Vim Project +" (*) Set b:undo_indent. " }}} " Document: {{{ @@ -167,6 +168,7 @@ setlocal indentexpr=GetTeXIndent() setlocal indentkeys& exec 'setlocal indentkeys+=[,(,{,),},],\&' . substitute(g:tex_items, '^\|\(\\|\)', ',=', 'g') let g:tex_items = '^\s*' . substitute(g:tex_items, '^\(\^\\s\*\)*', '', '') +let b:undo_indent = "setlocal autoindent< indentexpr< indentkeys< smartindent<" " }}} function! GetTeXIndent() " {{{ diff --git a/runtime/indent/typescript.vim b/runtime/indent/typescript.vim --- a/runtime/indent/typescript.vim +++ b/runtime/indent/typescript.vim @@ -2,6 +2,7 @@ " Language: TypeScript " Maintainer: See https://github.com/HerringtonDarkholme/yats.vim " Last Change: 2019 Oct 18 +" 2023 Aug 28 by Vim Project (undo_indent) " Acknowledgement: Based off of vim-ruby maintained by Nikolai Weibull http://vim-ruby.rubyforge.org " 0. Initialization {{{1 @@ -20,6 +21,8 @@ setlocal indentexpr=GetTypescriptIndent( setlocal formatexpr=Fixedgq(v:lnum,v:count) setlocal indentkeys=0{,0},0),0],0\,,!^F,o,O,e +let b:undo_indent = "setlocal formatexpr< indentexpr< indentkeys< smartindent<" + " Only define the function once. if exists("*GetTypescriptIndent") finish diff --git a/runtime/indent/verilog.vim b/runtime/indent/verilog.vim --- a/runtime/indent/verilog.vim +++ b/runtime/indent/verilog.vim @@ -1,6 +1,7 @@ " Language: Verilog HDL " Maintainer: Chih-Tsun Huang " Last Change: 2017 Aug 25 by Chih-Tsun Huang +" 2023 Aug 28 by Vim Project (undo_indent) " URL: http://www.cs.nthu.edu.tw/~cthuang/vim/indent/verilog.vim " " Credits: @@ -28,6 +29,8 @@ setlocal indentkeys+==endmodule,=endfunc setlocal indentkeys+==endconfig,=endgenerate,=endprimitive,=endtable setlocal indentkeys+==`else,=`elsif,=`endif +let b:undo_indent = "setlocal indentexpr< indentkeys<" + " Only define the function once. if exists("*GetVerilogIndent") finish diff --git a/runtime/indent/vhdl.vim b/runtime/indent/vhdl.vim --- a/runtime/indent/vhdl.vim +++ b/runtime/indent/vhdl.vim @@ -3,6 +3,7 @@ " Maintainer: Gerald Lai " Version: 1.62 " Last Change: 2017 Oct 17 +" 2023 Aug 28 by Vim Project (undo_indent) " URL: http://www.vim.org/scripts/script.php?script_id=1450 " only load this indent file when no other was loaded @@ -19,6 +20,8 @@ setlocal indentkeys+==~if,=~then,=~elsif setlocal indentkeys+==~case,=~loop,=~for,=~generate,=~record,=~units,=~process,=~block,=~function,=~component,=~procedure setlocal indentkeys+==~architecture,=~configuration,=~entity,=~package +let b:undo_indent = "setlocal indentexpr< indentkeys<" + " constants " not a comment let s:NC = '\%(--.*\)\@