Some features missing from TM2
Switch branches/tags
Nothing to show

Avian Missing


gem install tmbundle-manager --pre # sudo might be needed
tmb install elia/avian-missing


tmb update avian-missing


This is a collection of missing features from TextMate 2.0 Alpha. This bundle includes:

⌃⌘S Save Project

The save project command will now create a .tm_properties in the current file browser folder precompiled with projectDirectory set and an example windowTitle featuring the current scm-branch and the $projectDirectory basename


 application.rb     ☛master     [awesome-app]

This command also saves the project in the favorities (accessible with ⌘⇧O).

Character class indifferent completion

TextMate 2 introduced strict …err …clever completion, which will not cross boundaries between character classes anymore. For example in Ruby typing au and hitting for autocompletion will not pick :auto or @autocomplete since they have a leading : and @ and the belong to the symbol and instance variable character classes.

This bundle reintroduces the TM1 behavior.

⌃⎋ Cross tab completion

RubyAMP used to have this.

⌃⌥⌘T Open Project directory in terminal

NOTE: requires OSX Lion

Opens the current project directory in the terminal (not really present in TM1, but useful anyway).

By default will open Terminal, if you prefer anoter terminal app you can set in .tm_properties a variable: TM_TERMINAL_APP = ""

⌃⌥⌘L Keep current file as reference

…waiting for split panes

Outputs the current source into the bottom html pane, this makes the current file source visible while changing tabs.

Seems that most of the need for split panes is to keep one file as a reference, this solves this particular issue.

⌥⌘, Open the global .tm_properties

Tired of opening .tm_properties from the terminal or browsing to it by hand?

Now you can just hit ⌥⌘, and bring up your alternative preferences (from you the home folder).

⌃⌥⌘, Open the project .tm_properties

Now you can just hit ⌃⌥⌘, and bring up your alternative preferences (from the current project).

⌘S Strip trailing whitespace on save

Just add TM_STRIP_WHITESPACE_ON_SAVE = true to your .tm_properties. Ending newline fix is included.

BEWARE: The command strips whitespace before writing to disk but not in the editor window, this is a feature to me but I understand that some users would prefer to have the editor updated. If you're of that kind you'll have to modify the bundle manually and replace callback.document.export with callback.document.will-save (screenshot).

⌘S Add newline at end of file

Just add TM_ENSURE_TRAILING_NEWLINE_ON_SAVE = true to your .tm_properties.

This won't add a second newline if you also have TM_STRIP_WHITESPACE_ON_SAVE.

⌃⌘N New File⇧⌘N (builtin)

Removed as ⇧⌘N has been introduced as a builtin command.

⌥⏎ Insert new line above

This is like O (vs. o which is ⌘⏎) in vim.


  1. Fork it
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Added some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create new Pull Request


Copyright © 2012 Elia Schito. See MIT-LICENSE for details.