[SVN] HTML/markup classes

Chris Thomas chris at m-audio.com
Tue Jan 18 18:52:37 UTC 2005


On Jan 18, 2005, at 9:22 AM, Eric Hsu wrote:

> At 1:12 PM +0100 1/18/05, Allan Odgaard wrote:
>
>> Here's a strawman chart for converting HTML.plist to the new scheme 
>> [...] Any thoughts?
>>
> Seems good... is there an easy way to describe why PHP is 
> embedded-language.php.html and server side includes are 
> keywords.preprocessor.html? Trying to figure out what's meta and 
> what's a keyword...
I see. It depends on your interpretation of "preprocessor."

When I've used SSI in the past, it's seemed more like a set of macro 
processing directives (akin to the C preprocessor, or m4) than like a 
real programming language. Obviously, most languages that one would 
embed (usually excluding JavaScript and whatever cruft Microsoft 
supports) work by having the server preprocess the pages. Perhaps 
"keywords.macro-processor.*" would be a better name than 
"keywords.preprocessor.*".

My assumption is that the top-level classes are the ones that most 
users who customize their environment will want to change. Here's a 
list of the classes at the top of the hierarchy right now:

meta.*
data related to the source document, but not _necessarily_ altering the 
processing of the document (in practice, this means DOCTYPE, XML 
version declarations, and little else)

keywords.*
language elements with special meaning to the language 
compiler/intepreter -- reserved words, built-in functions, built-in 
types

comments.*
data ignored by the interpreter

strings.*
inline strings

constants.*
catch-all for inline data not typically thought of as a "string" 
(CDATA; literals (raw numbers) in many languages; Lisp #constants)

embedded-language.*
embedded source code written in some other language -- should maybe 
shorten this to "embedded.*"

It may make sense to move macro processing to the top level:

macros.*
macro preprocessor instructions

Chris




More information about the textmate-dev mailing list