Mercurial > vim
comparison src/testdir/test_vim9_cmd.vim @ 24498:bfa495227ac6 v8.2.2789
patch 8.2.2789: Vim9: using =expr in :substitute does not handle jumps
Commit: https://github.com/vim/vim/commit/8238f08838c0b481d0b14a741bc03f2e45c211d3
Author: Bram Moolenaar <Bram@vim.org>
Date: Tue Apr 20 21:10:48 2021 +0200
patch 8.2.2789: Vim9: using \=expr in :substitute does not handle jumps
Problem: Vim9: using \=expr in :substitute does not handle jumps.
Solution: Start with instruction count zero. (closes https://github.com/vim/vim/issues/8128)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Tue, 20 Apr 2021 21:15:04 +0200 |
parents | 08050e45bd06 |
children | 53871095bb65 |
comparison
equal
deleted
inserted
replaced
24497:b444a9f9b467 | 24498:bfa495227ac6 |
---|---|
1186 setline(1, 'one from two from three') | 1186 setline(1, 'one from two from three') |
1187 var also = 'also' | 1187 var also = 'also' |
1188 s/from/\=to .. '_' .. also/g#e | 1188 s/from/\=to .. '_' .. also/g#e |
1189 assert_equal('one repl_also two repl_also three', getline(1)) | 1189 assert_equal('one repl_also two repl_also three', getline(1)) |
1190 | 1190 |
1191 setline(1, 'abc abc abc') | |
1192 for choice in [true, false] | |
1193 :1s/abc/\=choice ? 'yes' : 'no'/ | |
1194 endfor | |
1195 assert_equal('yes no abc', getline(1)) | |
1196 | |
1191 CheckDefFailure(['s/from/\="x")/'], 'E488:') | 1197 CheckDefFailure(['s/from/\="x")/'], 'E488:') |
1192 CheckDefFailure(['s/from/\="x"/9'], 'E488:') | 1198 CheckDefFailure(['s/from/\="x"/9'], 'E488:') |
1193 | 1199 |
1194 bwipe! | 1200 bwipe! |
1195 enddef | 1201 enddef |