[TxMt] Language Grammar for LaTeX log files

Daniel Käsmayr daniel at kaesmayr.net
Mon Apr 10 10:06:23 UTC 2006


Hey folks,

I just hacked together a quick language grammar for LaTeX log files  
to better see where things are odd ;)

Dan

PS: I am not really sure if the naming below makes sense from the  
naming convention's viewpoint, but it does the job of generating markup.

{	scopeName = 'source.log.error.latex';
	fileTypes = ( 'log' );
	foldingStartMarker = '/\*\*|\(\s*$';
	foldingStopMarker = '\*\*/|^\s*\)';
	patterns = (
		{	name = 'invalid.deprecated';
			match = '.*Warning:';
		},
		{	name = 'invalid.illegal';
			match = '.*Error';
		},
		{	name = 'entity.name.function';
			match = '.*\.sty';
		},
		{	name = 'entity.name.class';
			match = '.*\.cls';
		},
		{	name = 'entity.name.tag.configuration';
			match = '.*\.cfg';
		},
		{	name = 'entity.name.tag.definition';
			match = '.*\.def';
		},
		{	name = 'comment.documentation';
			match = '.*Info.*';
		},
		{	name = 'meta.log.latex.fixme';
			match = '.*FiXme:';
		},
		{	name = 'meta.log.latex.hyphenation';
			begin = '(Overfull|Underfull)';
			end = '(\[\]\n)';
			captures = { 1 = { name = 'keyword.control.hyphenation.latex'; }; };
			patterns = (
				{	name = 'variable.parameter.hyphenation.latex2';
					match = '[0-9]+\-\-[0-9]+';
				}
			);
		},
		{	name = 'meta.log.latex.filename';
			begin = '(<)';
			end = '(>)';
			captures =
			{	1 = { name = 'string'; };
				2 = { name = 'storage'; };
				3 = { name = 'string'; };
			};
			patterns = (
				{	name = 'support.function.with-arg.latex';
					match = '(.*/.*.pdf)';
					captures = { 1 = { name = 'entity.name'; };};
				}
			);
		},
	);
}



More information about the textmate mailing list