forked from aniani/vim
patch 8.1.0553: it is not easy to edit a script that was sourced
Problem: It is not easy to edit a script that was sourced.
Solution: Add a count to ":scriptnames", so that ":script 40" edits the
script with script ID 40.
This commit is contained in:
26
src/testdir/test_scriptnames.vim
Normal file
26
src/testdir/test_scriptnames.vim
Normal file
@@ -0,0 +1,26 @@
|
||||
" Test for :scriptnames
|
||||
|
||||
func Test_scriptnames()
|
||||
call writefile(['let did_load_script = 123'], 'Xscripting')
|
||||
source Xscripting
|
||||
call assert_equal(123, g:did_load_script)
|
||||
|
||||
let scripts = split(execute('scriptnames'), "\n")
|
||||
let last = scripts[-1]
|
||||
call assert_match('\<Xscripting\>', last)
|
||||
let lastnr = substitute(last, '\D*\(\d\+\):.*', '\1', '')
|
||||
exe 'script ' . lastnr
|
||||
call assert_equal('Xscripting', expand('%:t'))
|
||||
|
||||
call assert_fails('script ' . (lastnr + 1), 'E474:')
|
||||
call assert_fails('script 0', 'E939:')
|
||||
|
||||
new
|
||||
call setline(1, 'nothing')
|
||||
call assert_fails('script ' . lastnr, 'E37:')
|
||||
exe 'script! ' . lastnr
|
||||
call assert_equal('Xscripting', expand('%:t'))
|
||||
|
||||
bwipe
|
||||
call delete('Xscripting')
|
||||
endfunc
|
||||
Reference in New Issue
Block a user