Re: Replace v:val by v:key in a list if patter matches

2018-02-14 Thread Ni Va
Le mercredi 14 février 2018 11:53:11 UTC+1, tyru a écrit : > Hi Ni Va, > > You can choose what you like. > > let list = ['foo', 'bar'] > let pattern = 'oo' > > echo map(copy(list), 'v:val =~# pattern ? v:key : v:val') > " or > echo map(copy(list), 'v:val =~# '.string(pattern).' ? v:key :

Re: Replace v:val by v:key in a list if patter matches

2018-02-14 Thread tyru
Hi Ni Va, You can choose what you like. let list = ['foo', 'bar'] let pattern = 'oo' echo map(copy(list), 'v:val =~# pattern ? v:key : v:val') " or echo map(copy(list), 'v:val =~# '.string(pattern).' ? v:key : v:val') " or (Vim 8 or higher) echo map(copy(list), {i,v -> v =~# pattern ? i : v})

Replace v:val by v:key in a list if patter matches

2018-02-08 Thread Ni Va
Hi, How can I change list item's value by list index using map(. let list = ['foo', 'bar'] let pattern = 'oo' let mappedlist = [0, 'bar'] map(copy(s:xml), '(stridx(v:val,'.pattern.')>-1) ? v:key : v:val ') Thank you -- -- You received this message from the "vim_use" maillist. Do not