TextMate 2.0-rc.10

TextMate is a text editor for MacOS X which binds common Unix tools and features and is useful as programming editor. It provides project sessions, regex search and replace, auto indentation, bracket pairing, a clipboard history, column selections, word completion, CSS-style selections, language grammars and syntax highlighting (50 langs), document outlines, shortcut words, code folding, visual file bookmarks. It's also plugin-extendable, allows macro recording, shell command invocation, SCM integration, and works together with Xcode.

Tags c++ objective-c text-editor macosx programmers
License GNU GPLv3
State beta

Recent Releases

2.0-rc.1012 Jun 2018 03:15 minor bugfix: It is now possible to scroll project/folder search results horizontally. Misclassification of file encoding for documents saved with TextEdit. * Ronald Wampler *. Potential deadlock when using T just after loading a new document. an where setting a mark (in the gutter) via `mate` could cause TextMate to crash. See all changes since v2.0-rc.9.
2.0-rc.901 May 2018 06:45 minor feature: TextMate s QuickLook plug-in no longer claims `public.data` (files without extension). The idea was to support previewing files like `README` but a side-effect was that TextMate s QuickLook plug-in became responsible for generating thumbnails for all binary files without a dedicated QuickLook plug-in (e.g. disk images or zip archives). There appears to be no way to dynamically opt out of thumbnail generation, therefor we ve had to remove support for previewing files without extension. See all changes since v2.0-rc.8.
2.0-rc.523 Dec 2016 05:25 minor feature: slowdown when editing files on high-latency file systems. Don t add non-existing files to Open Recent menu, as they will result in duplicates. * Ronald Wampler *. See all changes since v2.0-rc.4.
2.0-rc.102 Dec 2016 10:05 minor bugfix: Removed beta from version string (and miscellaneous /improvements). See all changes since v2.0-beta.12.26.
2.0-beta.12.2612 Nov 2016 03:15 minor feature: TextMate s bundle identifier has been changed to `com.macromates.TextMate` (previously it had a `preview` suf). This is the same bundle identifier as TextMate 1.x so if you still have TextMate 1.x installed then we recommend to simply delete it. The changed bundle identifier may cause a compatibility with third party software, particularly software that offers an Open in TextMate 2 , there is unfortunately no nice solution to this problem other than request that the software is updated to use the new (old) bundle identifier. The `mate` command line tool is among such software, but it should automatically update to version 2.11, if not, go to _Preferences Terminal_ and select to Uninstall and then Install `mate` (the automatic updating of `mate` only works if TextMate can figure out where it was previously installed). See all changes since v2.0-beta.12.23.
2.0-beta.12.2322 Oct 2016 07:05 minor feature: Bundles are no longer read from the Avian folder. You should have been prompted about moving them, if you had any. The reason we initially used the Avian folder was so that people could still use TextMate 1.x with bundles that did not rely on 2.0 features, so this move signals that we no longer think there is a reason to keep TextMate 1.x around. If you have a reason, please let us know (so that we can hopefully address it). The `volumeSettings` user defaults key has been replaced with `disableExtendedAttributes` that can be set in ` /.tm_properties`. If you had disabled extended attributes for specific volumes, your settings should automatically appear in ` /Library/Application Support/TextMate/Global.tmProperties`. See all changes since v2.0-beta.12.21.
2.0-beta.12.1301 Oct 2016 14:45 minor feature: The search dialog now has a _ File Browser Items _ in its pop-up. This refers to the selected items in the file browser, which can be files and folders (everything selected will be searched). If there is no selection, it will use the file browser s location. Speaking of file browser, searching _ Open Files _ now also work after session restore (where previously non-loaded tabs would be skipped). New `callback.document.did-change-scm-status` which is used by the SCM Gutter command to trigger after a commit/revert. See all changes since v2.0-beta.12.11.
2.0-beta.12.420 Aug 2016 17:05 minor bugfix: I normally do not mention in the release notes but since this is a regular release primarily meant to address some reported, I am making an exemption. New: Projects with a `Package.swift` file now get the `attr.project.swift` scope. * Ronald Wampler *. : Use en-space instead of em-space for estimating how many columns fits the screen (relevant when soft wrapping text using a proportional width font). : Specifying the same file multiple times via `mate` would cause an with the tab bar. : If a font was specified in `.tm_properties` and wasn t using the canonical name (e.g. spaces were inserted), TextMate would ignore it. : Doing a folder search for a CR character would throw an exception if any file was CRLF delimited. : Doing a folder search followed by Replace All would not do any replacements in inactive tabs. : Using the indented line movement actions when there was a column selection would not split the column selection into multiple carets (one per line). : Documents that caused the encoding dialog to show could cause TextMate to freeze. : Commands with tool tip output would sometimes cause the insertion point to temporarily stop blinking. See all changes since v2.0-beta.12.
2.0-beta.11.1030 Jul 2016 10:45 minor feature: When we lookup settings for untitled documents we compare the file pattern of targeted settings to the project (or target) folder including a trailing slash, that way, a file created in `folder` will be targeted by a `folder/` file pattern. The release version of the Emmet TextMate plug-in crashes on launch and has done so for years, so it is now blacklisted by default. There is a new version linked to from this GitHub which does work. If you are using that version, you can clear TextMate s blacklist by running this in a termina: defaults write com.macromates.TextMate.preview disabledPlugIns -array. TextMate no longer uses `FSRef` types for the ODBEditor protocol. This protocol is used by sftp browsers and similar to offer an Open in TextMate . If you see any with third party software using Open in TextMate then please let us know, preferably by using the mailing list. * Ronald Wampler *. See all changes since v2.0-beta.11.5.
2.0-beta.11.509 Jul 2016 06:05 minor documentation: The precedence of targeted settings (`.tm_properties`) has been changed, probably easiest to explain with an example, as there are 3 different types of ways to target a document: #.tm_properties setting = value # 1. Untargeted. text setting = value # 2a. Scope selector match. text.plain # 2b. More specific scope selector match setting = value . *.txt setting = value # 3. File type match. After the change, settings in the most local `.tm_properties` file will always take precedence over anything in a parent folder. So if you put: `tabSize = 4` in `/path/to/project` then all your project files will use a tab size of four (regardless of their type and more global settings). Within a `.tm_properties` file the settings are ranked in the order shown in the example above, i.e. a file type specific match will win over a scope selector match, and if there are multiple scope selectors, the one which is most specific will win, finally the untargeted settings will apply. It is worth mentioning though that all settings are actually evaluated, this is mainly useful for variables, for example we can do: #.tm_properties Foo = "This is Foo". text Foo = "a text file". source Foo = "source code". If you press R on a line containing `echo foo` it should show either _ This is a text file _ or _ This is source code _. Hint: To see the value of all settings for your current document you can either press R on a line containing `" TM_QUERY"` or you can use _Bundles Select Bundle Item _ ( T) and switch to _Settings_ ( ). The latter will show how the settings are ordered. : Document settings targeted at file types (e.g. ` *.md `) would not work (since 2.0-beta.11). See all changes since v2.0-beta.11.4.
2.0-beta.9.518 Jun 2016 03:15 minor feature: Improve folder search performance for large documents with few newlines and lots of matches. `mate`: If the mark argument given to `--clear-mark` has a trailing slash then all marks with this prewill be removed. The *Jump to Selection menu item has been moved to the Navigate menu and items in this menu are now using consistent naming. * Ronald Wampler *. Normally paragraph selection, as implicitly used by actions like *Reformat Paragraph*, will select lines up/down until there is an empty line. You can now indicate that a line should be a paragraph break by setting the `excludeFromParagraphSelection` scoped setting to `true`. The Source bundle sets it to `true` for the `comment.line` scope so that one can run paragraph actions on text with comments above/below and no separating empty line. * Adam Strzelecki *. If `git` is found in `/usr/bin` then we check if Xcode is installed and if not, we ignore git. This is because `/usr/bin/git` is a shim that prompts the user to install Xcode, which has lead to some user confusion. Note though that we do not call `git` unless we actually find a `.git` folder in your project. See all changes since v2.0-beta.9.3.
2.0-beta.9.229 May 2016 03:15 minor feature: You can now double click parentheses, braces etc. to select the contents. * Brian T. Kelley *. Optionally draw a vertical line for every tab stop (View Show Indent Guides). * Josh Bernitt *. Font size can now be selected in the print dialog. * Per Persson *. It was previously possible to open a document in a new project by supplying a project UUID not in use, e.g.: `mate --project (uuidgen) file.txt`. Now only a zero-UUID will trigger this behavior, e.g.: `mate --project (uuidgen tr -C ' n-' 0) file.txt`. Heuristic to detect line terminators has been changed: If a file contains any LF character (not part of a CRLF sequence) then the file is treated as LF delimited. This only affect files with mixed line terminators. Searching files on disk (Find in Folder) and selecting results from files with mixed line terminators could in rare situations bring you to the wrong line in the document. This should now be. The Jump to Next/Previous Mark shortcuts have been changed to F3/ F3 so as to not conflict with some keyboard layouts. See all changes since v2.0-beta.9.
2.0-beta.9.108 May 2016 06:45 minor feature: You can now double click parentheses, braces etc. to select the contents. * Brian T. Kelley *. The Jump to Next/Previous Mark shortcuts have been changed to F3/ F3 so as to not conflict with some keyboard layouts. See all changes since v2.0-beta.9.
2.0-beta.917 Apr 2016 04:25 minor feature: The Themes sub-menu will group themes based on second element in their semantic class, if the first element is `theme`. The managed themes all indicate light and dark in their semantic class. Added Jump to Next/Previous Mark menu items to the Navigate menu. This includes marks such as warnings and errors shown in the gutter (unlike next/previous bookmark which would not visit these marks) * Ronald Wampler *. The Spelling sub-menu now has an option to follow the spelling panel s language selection (and will show the current value of the spelling panel). Using Automatic by Language currently require setting TextMate to follow the spelling panel s value and then selecting this option in the spelling panel. * Adam Strzelecki *. Dictionary lookup could crash when used on an empty string. * Vincent Be nony *. See all changes since v2.0-beta.8.4.
2.0-beta.8.407 Dec 2015 03:15 minor feature: TextMate now supports Force Click to look up words. This requires setting Look up data detectors to Force Click with one finger in System Preferences Trackpad. Clicking the file browser with the mouse now always moves focus to the file browser. See commit message for further explanation. See all changes since v2.0-beta.8.1.
2.0-beta.8.129 Oct 2015 03:15 minor feature: Add _View Font Default Size_ menu action bound to 0 which works for both text and HTML output.. The _Last Tab_ action has been moved to 9. TextMate s QuickLook plug-in can now show compiled AppleScript files. New project scope for Cargo (Rust) projects (`attr.project.cargo`). Miscellaneous. See all changes since v2.0-beta.8.
2.0-beta.829 Sep 2015 07:05 minor feature: You can now export a bundle (merging potential delta files) by right-clicking the bundle in the bundle editor and selecting _Export Bundle _. Improved support for multiple carets/selections and commands, for example fallback units are now respected when there are multiple carets (and none have a selection). The file browser is now view-based (instead of cell-based). The main feature is that renaming an item should no longer be involuntarily aborted (when there are disk changes), though there are also some minor interaction changes and more animations plus labels are rendered r to how Finder has shown them since 10.9. You can now use V in the file browser to move the item on the clipboard to the current folder. This makes it possibly to copy files from Finder and move to the location in TextMate s file browser and thus the old way of moving files via keyboard ( X + V) is deprecated and will be removed. Double-tapping shift will now also leave freehanded mode . Support spell checking being automatic by language . This is set via the spelling panel. The line number scale factor can be set via the `lineNumberScaleFactor` user defaults key. It defaults to 0.8. If you want line numbers to be same size as main text, run the following in a terminal: `defaults write com.macromates.TextMate.preview lineNumberScaleFactor -float 1`. See all changes since v2.0-beta.7.4.
2.0-beta.7.908 Sep 2015 16:05 minor feature: You can now export a bundle (merging potential delta files) by right-clicking the bundle in the bundle editor and selecting _Export Bundle _. See all changes since v2.0-beta.7.7.
2.0-beta.7.706 Aug 2015 03:15 feature minor: You can now use V in the file browser to move the item on the clipboard to the current folder. This makes it possibly to copy files from Finder and move to the location in TextMate s file browser and thus the old way of moving files via keyboard ( X + V) is deprecated and will be removed. Improved support for multiple carets/selections and commands, for example fallback units are now respected when there are multiple carets (and none have a selection). The file browser is now view-based (instead of cell-based). The main feature is that renaming an item should no longer be involuntarily aborted (when there are disk changes), though there are also some minor interaction changes and more animations plus labels are rendered closer to how Finder has shown them since 10.9. See all changes since v2.0-beta.7.6.
2.0-beta.7.516 Jul 2015 09:25 minor feature: Support spell checking being automatic by language . This is set via the spelling panel. The line number scale factor can be set via the `lineNumberScaleFactor` user defaults key. It defaults to 0.8. If you want line numbers to be same size as main text, run the following in a terminal: `defaults write com.macromates.TextMate.preview lineNumberScaleFactor -float 1`. See all changes since v2.0-beta.7.2.
2.0-beta.7.214 Jun 2015 15:45 minor feature: If you do not want to be told that TextMate is outdated then go to _About TextMate Registration_ and add your license key. It is now possible to double-tap the shift key ( ) to either deselect the last discontinuous selection made, e.g. if you use W to find and select next and hit it once too many. Additionally, when there are multiple carets, double-tapping shift will remove all but the first caret. When playing a macro that uses the `findWithOptions:` command and there are no find or replace string (among its arguments), TextMate will now use values from the find/replace clipboards (i.e. current string). This is useful if your macro copies content to the find or replace clipboard. Using _Check Spelling_ ( ;) would previously find the next misspelled word (to the right of the caret). Now it will start with the word touched by the caret. This way, it is possible to type a word and immediately check it, without first moving to the beginning of the word. Alternatively one can press F2 to show the context menu for the word at the caret, which includes spelling suggestions, incase the word is misspelled. See all changes since v2.0-beta.7.
2.0-beta.729 Mar 2015 18:25 feature: Running a command that takes selection as input when there are discontinuous selections will now join the selections with LF and provide it all to the command. Furthermore, the result from the command will be split on LF and replace the respective selections. Most commands are not suited for this, but a useful scenario is enumerating items, for example use _Find All_ or similar to obtain multiple carets/selections, then use _Filter Through Command _ ( ) and run `seq 100` (assuming there are less than 100 carets/selections). When duplicating an item in the file browser ( D) we check if it contains a date string (`YYYY-MM-DD`), and if so, update that to today s date instead of adding copy to the name. When holding down command ( ) and clicking an existing selection, we now undo that selection. This is useful when creating discontinuous selections with the mouse. Clicking middle mouse button on a tab is now shorthand for closing the tab. Visual improvements for tabs and file browser on Yosemite. Increasing and decreasing font size ( + / -) now shows the current scale factor to make it easy to get back to 100 .
2.0-beta.6.729 Jan 2015 07:25 minor feature: You can have the recent projects / favorites list shown on startup and re-activation . To enable this behavior run: `defaults write com.macromates.TextMate.preview showFavoritesInsteadOfUntitled -bool YES` ** Improve heuristic that looks up actions based on key events. If you have a non-Latin keyboard and see unexpected behavior wrt. triggering actions via their key equivalents, let me now (e.g. via ). See
2.0-beta.5.231 Oct 2014 11:05 minor bugfix: Items in the bundle editor now have a context menu with Show in Finder . For items with local changes, this item turns into a submenu, showing all the location of the item. Closing stale tabs when the tab bar overflows can be disabled using defaults write com.macromates.TextMate.preview disableTabAutoClose --bool YES . Swapped key equivalents of New File and New Folder actions to make it somewhat consistent with Finder.