summaryrefslogtreecommitdiffstats
path: root/runtime/pack
diff options
context:
space:
mode:
authorshane.xb.qian <shane.qian@foxmail.com>2023-11-08 21:44:48 +0100
committerChristian Brabandt <cb@256bit.org>2023-11-08 21:46:30 +0100
commit7fbbd7fdc6df9dc198b3735cfbe8dbe8afd646f9 (patch)
tree61573840649a9ae1f64665ff63f0dbb223c4d54c /runtime/pack
parent6a650bf696f1df3214b3d788947447c5bbf1a77d (diff)
runtime(termdebug): handle buffer-local mappings properly
closes: #13475 Signed-off-by: shane.xb.qian <shane.qian@foxmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
Diffstat (limited to 'runtime/pack')
-rw-r--r--runtime/pack/dist/opt/termdebug/plugin/termdebug.vim31
1 files changed, 21 insertions, 10 deletions
diff --git a/runtime/pack/dist/opt/termdebug/plugin/termdebug.vim b/runtime/pack/dist/opt/termdebug/plugin/termdebug.vim
index e6126ee6f3..144d083fa8 100644
--- a/runtime/pack/dist/opt/termdebug/plugin/termdebug.vim
+++ b/runtime/pack/dist/opt/termdebug/plugin/termdebug.vim
@@ -2,7 +2,7 @@
"
" Author: Bram Moolenaar
" Copyright: Vim license applies, see ":help license"
-" Last Change: 2023 Aug 23
+" Last Change: 2023 Nov 02
"
" WORK IN PROGRESS - The basics works stable, more to come
" Note: In general you need at least GDB 7.12 because this provides the
@@ -990,7 +990,9 @@ func s:InstallCommands()
endif
if map
let s:k_map_saved = maparg('K', 'n', 0, 1)
- nnoremap K :Evaluate<CR>
+ if !empty(s:k_map_saved) && !s:k_map_saved.buffer || empty(s:k_map_saved)
+ nnoremap K :Evaluate<CR>
+ endif
endif
let map = 1
@@ -999,7 +1001,9 @@ func s:InstallCommands()
endif
if map
let s:plus_map_saved = maparg('+', 'n', 0, 1)
- nnoremap <expr> + $'<Cmd>{v:count1}Up<CR>'
+ if !empty(s:plus_map_saved) && !s:plus_map_saved.buffer || empty(s:plus_map_saved)
+ nnoremap <expr> + $'<Cmd>{v:count1}Up<CR>'
+ endif
endif
let map = 1
@@ -1008,7 +1012,9 @@ func s:InstallCommands()
endif
if map
let s:minus_map_saved = maparg('-', 'n', 0, 1)
- nnoremap <expr> - $'<Cmd>{v:count1}Down<CR>'
+ if !empty(s:minus_map_saved) && !s:minus_map_saved.buffer || empty(s:minus_map_saved)
+ nnoremap <expr> - $'<Cmd>{v:count1}Down<CR>'
+ endif
endif
@@ -1080,26 +1086,29 @@ func s:DeleteCommands()
delcommand Winbar
if exists('s:k_map_saved')
- if empty(s:k_map_saved)
+ if !empty(s:k_map_saved) && !s:k_map_saved.buffer
nunmap K
- else
call mapset(s:k_map_saved)
+ elseif empty(s:k_map_saved)
+ nunmap K
endif
unlet s:k_map_saved
endif
if exists('s:plus_map_saved')
- if empty(s:plus_map_saved)
+ if !empty(s:plus_map_saved) && !s:plus_map_saved.buffer
nunmap +
- else
call mapset(s:plus_map_saved)
+ elseif empty(s:plus_map_saved)
+ nunmap +
endif
unlet s:plus_map_saved
endif
if exists('s:minus_map_saved')
- if empty(s:minus_map_saved)
+ if !empty(s:minus_map_saved) && !s:minus_map_saved.buffer
nunmap -
- else
call mapset(s:minus_map_saved)
+ elseif empty(s:minus_map_saved)
+ nunmap -
endif
unlet s:minus_map_saved
endif
@@ -1774,3 +1783,5 @@ call s:InitAutocmd()
let &cpo = s:keepcpo
unlet s:keepcpo
+
+" vim: sw=2 sts=2 et