On 16/01/2012, at 16.01, Martin Kühl wrote:
[…] I like the fact that TM is missing any "tight" integration. All commands are basically (more or less glorified) executable scripts that get fed some input from TM and feed some output back to TM for interpretation (i.e. filters), making TM the most UNIXy editor available on the Mac.
And I consider that a plus, but then again I'm a bit weird :-)
It’s definitely a big plus — makes the commands simpler and allow them to be used in new ways, for example there is nothing preventing them from being run on a file browser selection, perhaps having the user specify a glob (like *.php) before running the “Strip Whitespace” command recursively on selected folders or similar.
Sort of same principle with grammars and snippets; the less the customizations know about the host environment, the more we can extend the way they are used in the future. The minute we do the two-way tight integration, we paint ourself into a corner and often also raise the barrier to entry because users have to learn about TextMate API to make even simple things.
So definitely I want to pursue the current decoupled/declarative/unixy approach whenever possible — tight integration I think is more likely to happen via a plug-in API — this also avoids having to favor a particular scripting language (but instead do C bindings).