Dear folks,
I have succeeded, a bit at least. I have been looking for a way to do two things:
1. create markup for the different heading types 2. create some kind of mechanism that lets me extend the latex grammar without the need to fiddle with the main latex grammar file (as I would like to keep my edits separate from those within the svn/ official version).
The following is just quick description, I will clarify later if there are questions… for now. And I will post some samples somewhere if anyone cares.
solution for #2: start the LaTeX language grammar with:
patterns = ( { include = 'text.latex.user'; },
and define overriding patterns as well as new, custom patterns such as stuff you would like for packages you use or macros you defined yourself (useful since right now everything starting with \ is colored, but in order to catch typos or whatever I like to have my custom commands colored in a certain way - thus recognizing them easier.)
solution for #1: add those lines (adapted to each heading that should be styled separately) before the main section recognition pattern:
{ name = 'meta.section.latex'; begin = '((\(?:chapter))(*?)(?:([)[^[]*?(]))??({))'; end = '(})'; captures = { 1 = { name = 'support.function.section.chapter.latex'; }; }; patterns = ( { include = 'source.tex'; } ); contentName = 'entity.name.section'; },
further notes: the includes may need to be adapted in the examples in order to correctly parse things in bracket within your custom definitions.
Lessons learned:
* You should not create a circular include structure. This will crash TextMate * and thus: save early and save often. Just when does TextMate save edited bundles? (I just quit TM, this does the job, but else? i.e. after that crash I lost the work of about 2h ;))
Dan
On Mar 25, 2006, at 1:40 PM, Daniel Käsmayr wrote:
- and thus: save early and save often. Just when does TextMate save
edited bundles? (I just quit TM, this does the job, but else? i.e. after that crash I lost the work of about 2h ;))
Closing the bundle editor window should save them. If it doesn't, then there is something going wrong.
Btw, did you manage to solve your problems with the commands with key +esc as shortcut?
Dan
Haris