aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorzeertzjq <zeertzjq@outlook.com>2024-04-11 18:49:10 +0800
committerGitHub <noreply@github.com>2024-04-11 18:49:10 +0800
commit4459e0cee8b6d043ab2b06cbd89545c45a76a612 (patch)
tree9b10c41429f7f51ed5c46ea570538f0e127f5f3a
parent1746b9234c2d38ff7db98eb8c71f1fa5e8d47616 (diff)
parent55ffca2f9f8317a5e3ab6e625fcb02e8bcd5dbcf (diff)
downloadrneovim-4459e0cee8b6d043ab2b06cbd89545c45a76a612.tar.gz
rneovim-4459e0cee8b6d043ab2b06cbd89545c45a76a612.tar.bz2
rneovim-4459e0cee8b6d043ab2b06cbd89545c45a76a612.zip
Merge pull request #28277 from zeertzjq/vim-556c62165963
vim-patch: runtime file updates
-rw-r--r--runtime/ftplugin/asm.vim14
-rw-r--r--runtime/ftplugin/gdb.vim12
-rw-r--r--runtime/indent/asm.vim28
3 files changed, 50 insertions, 4 deletions
diff --git a/runtime/ftplugin/asm.vim b/runtime/ftplugin/asm.vim
index f6a92d57d7..0ae1610394 100644
--- a/runtime/ftplugin/asm.vim
+++ b/runtime/ftplugin/asm.vim
@@ -1,13 +1,23 @@
" Vim filetype plugin file
" Language: asm
" Maintainer: Colin Caine <cmcaine at the common googlemail domain>
-" Last Change: 23 May 2020
+" Last Change: 2020 May 23
" 2023 Aug 28 by Vim Project (undo_ftplugin)
+" 2024 Apr 09 by Vim Project (add Matchit support)
if exists("b:did_ftplugin") | finish | endif
let b:did_ftplugin = 1
+setl include=^\\s*%\\s*include
setl comments=:;,s1:/*,mb:*,ex:*/,://
setl commentstring=;%s
-let b:undo_ftplugin = "setl commentstring< comments<"
+let b:undo_ftplugin = "setl commentstring< comments< include<"
+
+" Matchit support
+if !exists('b:match_words')
+ let b:match_skip = 's:comment\|string\|character\|special'
+ let b:match_words = '^\s*%\s*if\%(\|num\|idn\|nidn\)\>:^\s*%\s*elif\>:^\s*%\s*else\>:^\s*%\s*endif\>,^\s*%\s*macro\>:^\s*%\s*endmacro\>,^\s*%\s*rep\>:^\s*%\s*endrep\>'
+ let b:match_ignorecase = 1
+ let b:undo_ftplugin ..= " | unlet! b:match_ignorecase b:match_words b:match_skip"
+endif
diff --git a/runtime/ftplugin/gdb.vim b/runtime/ftplugin/gdb.vim
index 2473b13af0..7c10633be4 100644
--- a/runtime/ftplugin/gdb.vim
+++ b/runtime/ftplugin/gdb.vim
@@ -1,12 +1,20 @@
" Vim filetype plugin file
" Language: gdb
" Maintainer: Michaƫl Peeters <NOSPAMm.vim@noekeon.org>
-" Last Changed: 26 Oct 2017
+" Last Changed: 2017-10-26
+" 2024-04-10: - add Matchit support (by Vim Project)
if exists("b:did_ftplugin") | finish | endif
let b:did_ftplugin = 1
setlocal commentstring=#%s
+setlocal include=^\\s*source
" Undo the stuff we changed.
-let b:undo_ftplugin = "setlocal cms<"
+let b:undo_ftplugin = "setlocal cms< include<"
+
+" Matchit support
+if !exists('b:match_words')
+ let b:match_words = '\<\%(if\|while\|define\|document\)\>:\<else\>:\<end\>'
+ let b:undo_ftplugin ..= " | unlet! b:match_words"
+endif
diff --git a/runtime/indent/asm.vim b/runtime/indent/asm.vim
new file mode 100644
index 0000000000..7f848c7b5f
--- /dev/null
+++ b/runtime/indent/asm.vim
@@ -0,0 +1,28 @@
+" Vim indent file
+" Language: asm
+" Maintainer: Philip Jones <philj56@gmail.com>
+" Upstream: https://github.com/philj56/vim-asm-indent
+" Latest Revision: 2017-07-01
+
+if exists("b:did_indent")
+ finish
+endif
+let b:did_indent = 1
+
+setlocal indentexpr=s:getAsmIndent()
+setlocal indentkeys=<:>,!^F,o,O
+
+let b:undo_ftplugin .= "indentexpr< indentkeys<"
+
+function! s:getAsmIndent()
+ let line = getline(v:lnum)
+ let ind = shiftwidth()
+
+ " If the line is a label (starts with ':' terminated keyword),
+ " then don't indent
+ if line =~ '^\s*\k\+:'
+ let ind = 0
+ endif
+
+ return ind
+endfunction