@@ -8,6 +8,20 @@ export def Echowarn(msg: string)
88 echohl WarningMsg | echom $ ' [markdown_extras] {msg}' | echohl None
99enddef
1010
11+ export def DictToListOfDicts (d : dict <any> ): list <dict<any> >
12+ # Convert a dict in a list of dict .
13+ #
14+ # Dor example, {a: ' foo' , b: ' bar' , c : ' baz' } becomes
15+ # [{a: ' foo' }, {b: ' bar' }, {c : ' baz' }]
16+ #
17+ var list_of_dicts = []
18+ for [k , v ] in items (d )
19+ add (list_of_dicts, {[k ]: v })
20+ endfor
21+ return list_of_dicts
22+ enddef
23+
24+
1125export def ZipLists (l1: list <any> , l2: list <any> ): list <list<any> >
1226 # Zip function , like in Python
1327 var min_len = min ([len (l1), len (l2)])
@@ -164,15 +178,8 @@ export def Surround(open_delimiter: string,
164178 unlet close_delim_leftovers[close_string]
165179
166180 # We need a list - of- dicts [{a: ' foo' }, {b: ' bar' }, {c : ' baz' }]
167- var open_delim_leftovers_list = []
168- for [k , v ] in items (open_delim_leftovers)
169- add (open_delim_leftovers_list, {[k ]: v })
170- endfor
171- var close_delim_leftovers_list = []
172- for [k , v ] in items (close_delim_leftovers)
173- add (close_delim_leftovers_list, {[k ]: v })
174- endfor
175- echom " close_delim_leftovers_list: " .. string (close_delim_leftovers_list)
181+ var open_delim_leftovers_list = DictToListOfDicts (open_delim_leftovers)
182+ var close_delim_leftovers_list = DictToListOfDicts (close_delim_leftovers)
176183
177184 # Check if A falls in an existing interval
178185 var found_delimiters_interval = []
0 commit comments