The young man knows the rules, but the old man knows the exceptions.
–Oliver Wendell Holmes
The young man knows the rules, but the old man knows the exceptions.
–Oliver Wendell Holmes
UPDATE
Since writing this post, there has indeed been a textmate 2 released! It’s in Alpha and available here
For those interested in updating and skinning textmate 1 please read on:
I love Textmate and use it everyday but sadly version 2 doesn’t appear to be coming soon, so lets add some more awesome to Textmate in the meantime.
The first thing we can do to give it the feel of a Textmate 2.0 is to give it a bit of a facelift. See the screenshot below:

If you like what you see then you can get the Subtle Gradient Leopard Dark Skin which has a simple install procedure.
I’ve tried to move away from Textmate because it is showing its age in certain areas or at least I’ve used it so much I have discovered its limitations. My biggest gripe is the way it indexes files in the project draw. For local files (files on your machine) its fine but if you’re connected to a network drive or “cloud” storage and that location has more than a few hundred files then you will notice how long it takes to read those files.
It will appear to hang when Textmate looses focus and then regains focus because each time you refocus to Textmate it re-indexes the files checking for any changes. Re-indexing happens a lot to me because I’m a front-end developer and I’m constantly switching between Photoshop, the browser(s), terminal and Textmate when building the site I’m working on.
So the first little addition to at least limit these issues is to download a plug-in called ”ReMate” by Ciaran Walsh. ReMate can be used to disable the automatic project tree refresh when the application regains focus. Generally this will be a massive help to most people. You can refresh at your own pace if you’ve changed files in another editor or overwritten them externally. You will still have the initial load time when first opening your project but bear with it because 99% of the time Textmate has not crashed, its simply dragging its feet. I find in the time it takes to make an espresso its loaded whatever project I was trying to open. To make it faster always try to be connected via Ethernet and not over a wireless connection.
Another thing you can do is to update the “Folder Pattern” expression from within Textmate’s preferences. Open Textmate Preferences and goto the Advanced section. Then click on Folder References and paste the following snippet:
!.*/(\.[^/]*|log|system|CVS|_darcs|_MTN|\{arch\}|blib|.*~\.nib|.*\.(framework|app|pbproj|pbxproj|xcode(proj)?|bundle))$
I’ve always throught the UI and basic functions of the project drawer in Textmate could be better and with “Project Plus” again from the life saver Ciaran Walsh we get something a little neater and with a few handy features. Firstly the drawer becomes a more lean and modern “panel” then it has the following nice little tricks up its sleeve:
You can download the latest version from Ciaran’s site but please do read the three blog posts detailing installation and the changes.
If you haven’t seen Zen Coding and particularly in Textmate then you’re in for a real treat. The native Textmate editing features and tab triggers combined with the default HTML bundle is a powerful tool-set but combined with Zen Coding its like getting an upgrade from a Nissan to a Porsche.
Zen Coding is a plugin for high-speed HTML, XML, XSL (or any other structured code format) coding and editing. The core of this plugin is a powerful abbreviation engine which allows you to expand expressions—similar to CSS selectors—into HTML code. For example:
div#page>div.logo+ul#navigation>li*5>a
Becomes:
<div id="page">
<div class="logo"></div>
<ul id="navigation">
<li><a href=""></a></li>
<li><a href=""></a></li>
<li><a href=""></a></li>
<li><a href=""></a></li>
<li><a href=""></a></li>
</ul>
</div>
There is so much more to it than just that but from this simple example hopefully you see how quick it could make things for you. I uploaded a ZenCoding screencast I recorded a few months ago that might help and there is a slightly outdated demo video.
If you’re doing any JavaScript coding in Textmate you need JSTools bundle. It has a front-end to JSLint and can minify your scripts with a number of popular services such as YUI, Closure Compiler and more.
Duke Nukem eventually got made and lets hope a textmate upgrade does too. If you’ve installed the above then you should have an upgraded coding experience while we wait. Thank you to all the very smart people that created these plug-ins and bundles.
Discipline is the bridge between goals and accomplishment.
–Jim Rohn
This is the archive page for all entries published: March 2011

© Airfront Media Limited 2008 – 2011. Powered by ExpressionEngine & Hosted by Layershift. Credits & Acknowledgements.