@@ -245,18 +245,23 @@ def update_dicts(
245
245
else :
246
246
raise
247
247
248
- # Convert result map back to result list
249
- lists : ListToSpokenForms = {res ["list" ]: {} for res in results_map .values ()}
250
- spoken_form_entries : list [SpokenFormEntry ] = []
251
- for list_name , id , spoken_forms in generate_spoken_forms (results_map .values ()):
252
- for spoken_form in spoken_forms :
253
- lists [list_name ][spoken_form ] = id
254
- spoken_form_entries .append (
255
- SpokenFormEntry (list_name = list_name , id = id , spoken_forms = spoken_forms )
256
- )
248
+ spoken_form_entries = list (generate_spoken_forms (results_map .values ()))
257
249
258
250
# Assign result to talon context list
259
- assign_lists_to_context (ctx , lists , pluralize_lists )
251
+ assign_lists_to_context (
252
+ ctx ,
253
+ {
254
+ ** {res ["list" ]: {} for res in results_map .values ()},
255
+ ** {
256
+ spoken_form_entry .list_name : {
257
+ spoken_form : spoken_form_entry .id
258
+ for spoken_form in spoken_form_entry .spoken_forms
259
+ }
260
+ for spoken_form_entry in spoken_form_entries
261
+ },
262
+ },
263
+ pluralize_lists ,
264
+ )
260
265
261
266
if handle_new_values is not None :
262
267
handle_new_values (spoken_form_entries )
@@ -286,7 +291,7 @@ def generate_spoken_forms(results_list: Iterable[ResultsListEntry]):
286
291
k = k [:- 3 ]
287
292
spoken .append (k .strip ())
288
293
289
- yield (
294
+ yield SpokenFormEntry (
290
295
obj ["list" ],
291
296
value ,
292
297
spoken ,
0 commit comments