Yes, it has to do with the possibility of more precise selections. The naming hierarchy is indenpendent of the scope system, of course. Rules match from right to left, so 'keyword.built-in' matches text.a.keyword.built-in and text.a.source.b.keyword.built-in. The extra language tag makes it possible to style those differently. -- Sune.