[TxMt] Improving SymbolPopup for LaTeX?

Horst Gutmann horst.gutmann at gmail.com
Sat Dec 3 14:20:59 UTC 2005


Allan Odgaard wrote:
> On 3/12/2005, at 1:00, Charilaos Skiadas wrote:
> 
>> 1) First of all, you need to create a new preferences item. WHY? I'd
>> really like to know that.
> 
> You don't. I made the current one: text.latex meta.section.latex and it
> works. But you have to make one edit to the document, before the symbol
> list is rebuilt, so maybe that's what threw you off.
> 
>> 2) Second, any changes you make only take effect after you closed the
>> bundle editor. Again, WHY? That's not the case for commands and
>> snippets and stuff.
> 
> I hope it will change real-time in the future, but a preference change
> affects a lot, so a lot of caches needs to be flushed, things needs to
> be re-parsed, a.s.o. -- so currently this only happens when you close
> the window.
> 
> Commands, snippets, etc. are special in that when you execute one of
> these, it “commits” the current changes in the bundle editor. But things
> like preferences, language grammars etc. are in use all the time, so you
> (currently) need to manually commit (by closing the window, or for the
> latter, using the Test button).
> 
>> 3) This is the code I used now [...] two questions on that:
>> a) Why don't the spaces that $1 catches being shown? They are in the
>> python thing.
> 
> Because meta.section match “\(sub)*section…” and not
> “(^\s*)?\(sub)*section…”. I.e. the leading spaces are not included in
> the scope.
> 
>> b) the \subsubsection rule gives me: \subsubsection{stuff} instead of
>> just "stuff".
> 
> You rule had a (closing) ' before the last subst. This works for me:
> 
>    symbolTransformation = '
>       s/^(\s*)\\section\{(.+)\}/$1 $2/;
>       s/^(\s*)\\subsection\{(.+)\}/$1\t $2/;
>       s/^(\s*)\\subsubsection\{(.+)\}/$1 \t \t $2/;
>    ';
> 
> Of course the “^(\s*)” part has no meaning unless the language grammar
> gets changed.
> 
>> Other than that, it works well. The tabs inserted by \t get
>> interpreted, even though spaces seem not to.
> 
> As for using \t, I use the em-space in the few transformation I've made
> (e.g. Markdown headings), this looks a little better. Though you'll have
> to copy/paste it, and with a fixed width font (bundle editor), it looks
> just like a regular space -- I'll add support for \x{nnnn} for these
> things.
> 
> 


Thanks Allan and Charilaos :-) Now everythings in the LaTeX bundle as I
want it to work :)

Horst



More information about the textmate mailing list