Viml functional: Difference between revisions
From wikinotes
(Created page with "= Filter = <blockquote> <syntaxhighlight lang="vim"> mylist = ["ditch", "KEEP", v:null, "KEEP"] let filtered = filter(copy(mylist), 'v:val == "KEEP"') </syntaxhighlight> </blockquote><!-- Filter -->") |
(→Filter) |
||
(2 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
= Map = | |||
<blockquote> | |||
<syntaxhighlight lang="vim"> | |||
let mylist = ["foo", "bar", "baz"] | |||
echom map(mylist, {item -> item . "!"}) " [foo!, bar!, baz!] | |||
echom map(mylist, 'v:val . "!"') " [foo!, bar!, baz!] | |||
</syntaxhighlight> | |||
</blockquote><!-- Map --> | |||
= Filter = | = Filter = | ||
<blockquote> | <blockquote> | ||
<syntaxhighlight lang="vim"> | <syntaxhighlight lang="vim"> | ||
mylist = ["ditch", "KEEP", v:null, "KEEP"] | let mylist = ["ditch", "KEEP", v:null, "KEEP"] | ||
let filtered = filter(copy(mylist), 'v:val == "KEEP"') | let filtered = filter(copy(mylist), 'v:val == "KEEP"') | ||
</syntaxhighlight> | </syntaxhighlight> | ||
</blockquote><!-- Filter --> | </blockquote><!-- Filter --> |
Latest revision as of 01:02, 8 April 2023
Map
let mylist = ["foo", "bar", "baz"] echom map(mylist, {item -> item . "!"}) " [foo!, bar!, baz!] echom map(mylist, 'v:val . "!"') " [foo!, bar!, baz!]
Filter
let mylist = ["ditch", "KEEP", v:null, "KEEP"] let filtered = filter(copy(mylist), 'v:val == "KEEP"')