// A = S or Snippet
static L snippetsWithTitles(L l) {
ifclass Snippet
if (first(ids) instanceof Snippet)
ret map snippetWithTitle_cached((L) l);
endif
L ids = cast l;
final SS map = getSnippetTitles_cached(ids);
ret map(func(S id) { fsI(id) + " - " + map.get(fsI(id)) }, ids);
}
static S snippetsWithTitles(S... ids) {
ret join(", ", snippetsWithTitles(asList(ids)));
}