comparison src/testdir/test_selectmode.vim @ 27263:93d4ee1e6113 v8.2.4160

patch 8.2.4160: cannot change the register used for Select mode delete Commit: https://github.com/vim/vim/commit/4ede01f18884961f2e008880b4964e5d61ea5c36 Author: Shougo Matsushita <Shougo.Matsu@gmail.com> Date: Thu Jan 20 15:26:03 2022 +0000 patch 8.2.4160: cannot change the register used for Select mode delete Problem: Cannot change the register used for Select mode delete. Solution: Make CTRL-R set the register to be used when deleting text for Select mode. (Shougo Matsushita, closes #9531)
author Bram Moolenaar <Bram@vim.org>
date Thu, 20 Jan 2022 16:30:04 +0100
parents 7a2a737dc6ec
children 9c4ee9389bb4
comparison
equal deleted inserted replaced
27262:f2056837b78a 27263:93d4ee1e6113
256 set selectmode& 256 set selectmode&
257 call test_override('no_query_mouse', 0) 257 call test_override('no_query_mouse', 0)
258 bwipe! 258 bwipe!
259 endfunc 259 endfunc
260 260
261 " Test for selecting a register with CTRL-R
262 func Test_selectmode_register()
263 new
264
265 " Default behavior: use unnamed register
266 call setline(1, 'foo')
267 call setreg('"', 'bar')
268 call setreg('a', 'baz')
269 exe ":norm! v\<c-g>a"
270 call assert_equal(getline('.'), 'aoo')
271 call assert_equal('f', getreg('"'))
272 call assert_equal('baz', getreg('a'))
273
274 " Use the black hole register
275 call setline(1, 'foo')
276 call setreg('"', 'bar')
277 call setreg('a', 'baz')
278 exe ":norm! v\<c-g>\<c-r>_a"
279 call assert_equal(getline('.'), 'aoo')
280 call assert_equal('bar', getreg('"'))
281 call assert_equal('baz', getreg('a'))
282
283 " Invalid register: use unnamed register
284 call setline(1, 'foo')
285 call setreg('"', 'bar')
286 call setreg('a', 'baz')
287 exe ":norm! v\<c-g>\<c-r>?a"
288 call assert_equal(getline('.'), 'aoo')
289 call assert_equal('f', getreg('"'))
290 call assert_equal('baz', getreg('a'))
291
292 " Use unnamed register
293 call setline(1, 'foo')
294 call setreg('"', 'bar')
295 call setreg('a', 'baz')
296 exe ":norm! v\<c-g>\<c-r>\"a"
297 call assert_equal(getline('.'), 'aoo')
298 call assert_equal('f', getreg('"'))
299 call assert_equal('baz', getreg('a'))
300
301 " use specicifed register, unnamed register is also written
302 call setline(1, 'foo')
303 call setreg('"', 'bar')
304 call setreg('a', 'baz')
305 exe ":norm! v\<c-g>\<c-r>aa"
306 call assert_equal(getline('.'), 'aoo')
307 call assert_equal('f', getreg('"'))
308 call assert_equal('f', getreg('a'))
309
310 bw!
311 endfunc
312
261 " vim: shiftwidth=2 sts=2 expandtab 313 " vim: shiftwidth=2 sts=2 expandtab