On 19 Sep 2013, at 0:06, Stephen Bannasch wrote:
[…] I wanted a similar indentation behavior when pressing return
after an open square brace followed by content as I get when I enter
return after an open curly brace followed by content.
[…] How do I find the code that produces the indentation after
entering return when my cursor is after an opening curly brace […]
By default, no bundle item is executed when you press return at random
places. How much indent is inserted is estimated via the indent rules,
this is explained here:
http://manual.macromates.com/en/appendix#indentation_rules
So if you want only a change to indent, then it’s the indentation
rules that should be changed.
If however you want more complex behavior, you can overload the key
binding with a snippet or command.
For JavaScript, square brackets are assigned the
“meta.brace.square.js” scope.
If we work with the grammar as-is, then we can make a snippet fire on
return only when a square bracket is to the left of the caret by using a
scope selector of:
(L:meta.brace.square.js)
Here the scope selector targets the “left scope” via the (L:…)
syntax, meaning the scope to the left of the caret. You can view the
scope to the right of the caret by pressing ⌃⇧P (so move it one to
the left to view the left scope).
But if your desire is simply to increase the indent, when pressing
return after ‘[’, then it should be enough to edit the indent
patterns (which already target squigly braces).
_______________________________________________
textmate-dev mailing list
textmate-dev@lists.macromates.com
http://lists.macromates.com/listinfo/textmate-dev