Я не писал syntax файлов никогда, но string interpolation в js/ts может быть вложенным, по видимому это впринципе невозможно разпознать регексой. В пайтоне, к примеру, так нельзя, только разными кавычками
И причём тут regex-ы, казалось бы? Syntax files vim по выразительности — это DPDA "с примочками", т.е. они покрывают почти все контекстно-свободные грамматики.