comparison src/testdir/test_vim9_script.vim @ 24150:4919f2d8d7fd v8.2.2616

patch 8.2.2616: Vim9: if 'cpo' is change in Vim9 script it may be restored Commit: https://github.com/vim/vim/commit/3e1916947d5b29f67af554ce3b874b03a84c9093 Author: Bram Moolenaar <Bram@vim.org> Date: Wed Mar 17 17:46:00 2021 +0100 patch 8.2.2616: Vim9: if 'cpo' is change in Vim9 script it may be restored Problem: Vim9: if 'cpo' is change in Vim9 script it may be restored. Solution: Apply the changes to 'cpo' to the restored value.
author Bram Moolenaar <Bram@vim.org>
date Wed, 17 Mar 2021 18:00:04 +0100
parents 0edc315f2d0c
children 93e69703a290
comparison
equal deleted inserted replaced
24149:68189fc87087 24150:4919f2d8d7fd
1248 delete('Ximport.vim') 1248 delete('Ximport.vim')
1249 delete('Ximport3.vim') 1249 delete('Ximport3.vim')
1250 delete('Xexport.vim') 1250 delete('Xexport.vim')
1251 1251
1252 # Check that in a Vim9 script 'cpo' is set to the Vim default. 1252 # Check that in a Vim9 script 'cpo' is set to the Vim default.
1253 set cpo&vi 1253 # Flags added or removed are also applied to the restored value.
1254 var cpo_before = &cpo 1254 set cpo=abcd
1255 var lines =<< trim END 1255 var lines =<< trim END
1256 vim9script 1256 vim9script
1257 g:cpo_in_vim9script = &cpo 1257 g:cpo_in_vim9script = &cpo
1258 set cpo+=f
1259 set cpo-=c
1260 g:cpo_after_vim9script = &cpo
1258 END 1261 END
1259 writefile(lines, 'Xvim9_script') 1262 writefile(lines, 'Xvim9_script')
1260 source Xvim9_script 1263 source Xvim9_script
1261 assert_equal(cpo_before, &cpo) 1264 assert_equal('fabd', &cpo)
1262 set cpo&vim 1265 set cpo&vim
1263 assert_equal(&cpo, g:cpo_in_vim9script) 1266 assert_equal(&cpo, g:cpo_in_vim9script)
1267 var newcpo = substitute(&cpo, 'c', '', '') .. 'f'
1268 assert_equal(newcpo, g:cpo_after_vim9script)
1269
1264 delete('Xvim9_script') 1270 delete('Xvim9_script')
1265 enddef 1271 enddef
1266 1272
1267 def Test_import_as() 1273 def Test_import_as()
1268 var export_lines =<< trim END 1274 var export_lines =<< trim END