mirror of
https://github.com/vim/vim.git
synced 2025-09-23 03:43:49 -04:00
patch 8.1.0020: cannot tell whether a register is executing or recording
Problem: Cannot tell whether a register is being used for executing or recording. Solution: Add reg_executing() and reg_recording(). (Hirohito Higashi, closes #2745) Rename the global variables for consistency. Store the register name in reg_executing.
This commit is contained in:
@@ -923,3 +923,28 @@ func Test_trim()
|
||||
let chars = join(map(range(1, 0x20) + [0xa0], {n -> nr2char(n)}), '')
|
||||
call assert_equal("x", trim(chars . "x" . chars))
|
||||
endfunc
|
||||
|
||||
" Test for reg_recording() and reg_executing()
|
||||
func Test_reg_executing_and_recording()
|
||||
let s:reg_stat = ''
|
||||
func s:save_reg_stat()
|
||||
let s:reg_stat = reg_recording() . ':' . reg_executing()
|
||||
return ''
|
||||
endfunc
|
||||
|
||||
new
|
||||
call s:save_reg_stat()
|
||||
call assert_equal(':', s:reg_stat)
|
||||
call feedkeys("qa\"=s:save_reg_stat()\<CR>pq", 'xt')
|
||||
call assert_equal('a:', s:reg_stat)
|
||||
call feedkeys("@a", 'xt')
|
||||
call assert_equal(':a', s:reg_stat)
|
||||
call feedkeys("qb@aq", 'xt')
|
||||
call assert_equal('b:a', s:reg_stat)
|
||||
call feedkeys("q\"\"=s:save_reg_stat()\<CR>pq", 'xt')
|
||||
call assert_equal('":', s:reg_stat)
|
||||
|
||||
bwipe!
|
||||
delfunc s:save_reg_stat
|
||||
unlet s:reg_stat
|
||||
endfunc
|
||||
|
Reference in New Issue
Block a user