template/snippet/global variables can be empty and names can contain hyphens