Archive for TextMate

7 things TextMate lacks that Emacs has

I bought TextMate license recently. I wasn’t able to evaluate it thoroughly, but when the trial period has expired I paid. Mainly because I’ve read a lot of good reviews, and I liked its simplicity, elegance, and extensibility. The projects I was going to work on in TextMate were in Ruby, PHP, HTML, CSS, and JavaScript.

However I like Emacs very much, and I have Aquamacs installed on my MacBook together with Ruby on Rails programming mode. This mode is designed very well and turns any work with Rails projects a pleasure. Unfortunately I noticed that the legacy of Emacs architecture makes extensibility of programming modes quite difficult. So here I come with features from Emacs that I would like to see in TextMate based on my Rails development experience. In hope that some day they will be implemented, as TextMate bundles are easy to modify.

1. Rails project navigation. Emacs has shortcuts to show a menu of available controllers, models, stylesheets, and helpers. In TextMate I have to use Project Drawer, or Find in Project form, or Go To Alternate file command. Use of shortcuts is faster and more convenient. I think it’s possible to create commands in TextMate that will expand and focus on corresponding folder in Project Drawer.

2. Open partial. Emacs can show a list of partials for current controller or view. It is very convenient especially when you work with AJAX views that depend mainly on partials.

3. Find files. In Emacs you can find files within particular project areas, while TextMate by default searches all files in a project. It is a popular request to make Command-T in TextMate to work with predefined folders and/or filters.

4. Incremental search. Although TextMate implements incremental search it doesn’t highlight found occurrences as Emacs and Vim do.

5. Snippets. Rails mode for Emacs comes with many well thought out snippets, while TextMate has fewer of them and not that convenient.

6. Tools support. I can start server or run a console right from Emacs. TextMate wraps rake commands and generator script nicely, but I have to open Terminal to run a console.

7. Contextual menus. TextMate has sophisticated scope selectors, but when it comes to menus it doesn’t use them. For example right click on a code brings the same menu for all modes. The status bar menu could also change depending on active bundle.

Comments (1)