TextMate
General-purpose text editor
Quick Take: TextMate
TextMate remains an excellent choice for macOS users who want a fast, free, and reliable text editor that respects the platform's native conventions. While it lacks the IDE features of VS Code or the AI integrations of newer editors, its bundle system, snippet capabilities, and legendary performance make it ideal for config editing, script writing, and focused coding sessions. The fact that it pioneered the grammar format that powers syntax highlighting across the industry is a testament to its lasting influence. For users who value simplicity, stability, and zero cost, TextMate earns a strong recommendation.
Best For
- •Developers who value speed and stability over IDE features
- •System administrators editing config files
- •Academic writers using LaTeX or Markdown
- •Users seeking a completely free, open-source editor
- •Developers maintaining legacy codebases
What is TextMate?
TextMate is a free, open-source general-purpose text editor for macOS that has served as a trusted companion for developers, writers, and power users since 2004. Created by Danish developer Allan Odgaard, TextMate pioneered the concept of bundles — extensible language support packages that have since become an industry standard, influencing editors like VS Code, Sublime Text, and Atom. In 2026, TextMate 2.0 remains a lean, focused tool that excels at opening instantly, staying out of your way, and providing powerful text manipulation capabilities when you need them. What makes TextMate distinctive in 2026 is its philosophy of doing one thing exceptionally well: editing text. Unlike modern editors that aspire to be full IDEs with built-in terminals, git GUIs, and AI chat panels, TextMate focuses on the core editing experience. It handles multiple carets for simultaneous edits, recordable macros for repetitive tasks, and a powerful snippet system for code expansion. The bundle ecosystem provides syntax highlighting for over 100 programming languages, markup formats, and domain-specific workflows. For macOS users who value native performance, keyboard-driven workflows, and a distraction-free interface, TextMate remains a compelling choice — especially at its price point of completely free.
Install with Homebrew
brew install --cask textmateDeep Dive: TextMate's Enduring Legacy and Technical Architecture
TextMate's influence on the text editor landscape extends far beyond its user base. Understanding its history and technical decisions explains why this 20-year-old editor remains relevant today.
Key Features
Bundle System
TextMate's revolutionary bundle architecture provides language-specific functionality through modular packages. Each bundle contains syntax definitions (TextMate grammars that power highlighting in many other editors), snippets with tab-triggered expansion, macros for repetitive tasks, and shell commands for external tool integration. The default installation includes bundles for Ruby, Python, JavaScript, HTML, CSS, LaTeX, Markdown, and dozens more. Users can install additional community bundles or create custom ones through the Bundle Editor. This system is so influential that the TextMate grammar format (.tmLanguage) became the de facto standard for syntax highlighting across the editor ecosystem.
Multiple Carets
Make simultaneous edits across multiple locations with TextMate's multiple caret support. Hold Command and click to place multiple insertion points, or use keyboard shortcuts to select matching words, lines, or scopes. Once multiple carets are active, every keystroke — typing, deleting, pasting — applies to all positions simultaneously. This feature is invaluable for renaming variables across multiple lines, adding prefixes or suffixes to lists, or making any repetitive structural change. Combined with column selection (Alt-drag), TextMate provides precise multi-point editing capabilities that rival dedicated code editors.
Snippets and Tab Triggers
Snippets are intelligent text templates that expand when you type a trigger word and press Tab. For example, typing 'for' then Tab in a Python file expands into a complete for-loop structure with placeholders for the iterator, range, and body. Snippets support dynamic variables (like selected text, current date, or clipboard contents), tab stops for sequential navigation, and shell script interpolation for complex transformations. The snippet system transforms repetitive coding patterns into lightning-fast typing exercises, reducing boilerplate code entry from minutes to seconds.
Recordable Macros
Eliminate repetitive editing tasks with TextMate's macro recorder. Press Command+F8 to start recording, perform a sequence of edits (searches, replacements, cursor movements, selections), then press Command+F8 again to stop. The macro can be replayed immediately with Command+F5, saved for later use, or bound to a keyboard shortcut. For data cleaning, log file analysis, or any repetitive text transformation, macros provide automation without requiring scripting knowledge. Scratch macros are perfect for one-off tasks, while saved macros become part of your permanent workflow arsenal.
Open Quickly and File Search
Navigate projects with speed using Open Quickly (Command+T), which fuzzy-matches filenames as you type. Unlike heavy indexing systems, TextMate's file search uses the filesystem directly, making it instant even on large codebases. The file browser sidebar provides a project overview with customizable file filtering, while the Find in Project feature (Command+Shift+F) searches across all files with regex support, showing results in a navigable list with context lines. You can even filter search results by file type or glob patterns to narrow results precisely.
Version Control Integration
TextMate provides built-in support for Git, Subversion, and other version control systems. The file browser shows version status with color-coded badges (modified, added, conflicted). The gutter displays change markers showing added, modified, and deleted lines. Press Command+Shift+G to view a diff of current file changes, or use the commit window to stage files, write commit messages, and push changes — all without leaving the editor. While not as visually elaborate as dedicated git GUIs, the integration is fast and unobtrusive, perfect for developers who prefer command-line git but want visual diffs.
Shell Command Integration
TextMate includes the 'mate' command-line tool that integrates with Terminal. Use 'mate filename' to open files, 'mate .' to open entire directories as projects, or pipe command output directly into TextMate for inspection (e.g., 'ls -la | mate'). The rmate variant supports editing files on remote servers over SSH. Shell commands within bundles can execute external scripts in any language (Ruby, Python, Bash), process selected text through Unix filters, or display HTML output in a dedicated window. This tight Unix integration makes TextMate feel like a natural extension of the command line.
Who Should Use TextMate?
1The Config File Editor
A system administrator who spends their day editing YAML configuration files, shell scripts, and property files. They don't need an IDE — they need an editor that opens instantly from the terminal, provides syntax highlighting for every config format they encounter, and lets them make precise edits with multiple cursors. TextMate launches in under a second via 'mate ~/.zshrc', provides immediate visual feedback with proper highlighting, and its snippets help them write repetitive Ansible or Kubernetes configs efficiently. The lack of project setup overhead means they can edit any file on any system instantly.
2The Academic Writer
A graduate student writing their thesis in LaTeX who needs a stable, distraction-free editor. They use TextMate's LaTeX bundle for syntax highlighting, snippet expansion for common environments (equations, figures, citations), and the built-in PDF preview integration. The multiple caret feature helps them reformat bibliography entries, while macros handle repetitive citation formatting. TextMate's reliability means they never lose work to crashes, and the clean interface helps them focus on writing rather than fighting with the editor. Best of all, it's free — perfect for a student budget.
3The Legacy Code Archaeologist
A developer maintaining older Ruby on Rails or PHP applications who needs a fast, stable editor that handles large log files and legacy codebases. TextMate's excellent Ruby bundle (one of the original inspirations for the editor) provides superior syntax highlighting for older Ruby versions, while the ability to open multi-gigabyte log files without choking is essential for debugging production issues. The macro system helps them reformat legacy code to modern standards, and the grep-style search helps them navigate massive codebases efficiently.
How to Install TextMate on Mac
TextMate is available as a free download from the official website or via Homebrew. It requires macOS 10.12 (Sierra) or later, making it compatible with macOS Sonoma, Sequoia, and beyond.
Install via Homebrew
Run 'brew install --cask textmate' in Terminal. This installs TextMate 2.0 and sets up the 'mate' command-line tool automatically.
Set Up Shell Integration
Add 'export EDITOR="mate -w"' to your ~/.zshrc to set TextMate as your default editor for git commits and other command-line operations.
Install Additional Bundles
Open TextMate > Bundles > Bundle Editor to browse available bundles. Install any language-specific bundles you need that aren't included by default.
Pro Tips
- • Use 'mate -w' for git commits: The -w flag tells TextMate to wait until you close the file before returning control to the terminal — essential for git commit messages.
- • Enable the 'mate' CLI tool: Go to Preferences > Terminal and click 'Install Shell Support' to ensure the mate command is available system-wide.
- • Configure rmate for remote editing: Install rmate on remote servers to edit files via SSH directly in your local TextMate instance.
Configuration Tips
Customize Tab Triggers
Open Bundles > Bundle Editor to view and modify snippet triggers. Shorten common snippets to single letters (e.g., 'h1' for HTML headings) to speed up your workflow. You can also add custom snippets for project-specific boilerplate.
Set Up Project Templates
Create .tm_properties files in project directories to define project-specific settings like tab width, soft wrap, and file encodings. This ensures consistent formatting across team members using TextMate.
Master the Command Palette
Press Control+Command+T to open the Select Bundle Item palette. This provides instant access to all snippets, commands, and macros across all bundles — faster than remembering individual keyboard shortcuts.
Alternatives to TextMate
While TextMate pioneered the modern macOS text editor, several alternatives offer different trade-offs between features, performance, and pricing.
Sublime Text
BBEdit
Visual Studio Code
CotEditor
Zed
Pricing
TextMate is completely free — no paid tiers, no subscriptions, no feature restrictions. The full application, including all bundles and features, is available at no cost. The source code is available on GitHub under an open-source license. While the original TextMate 1.x was a paid application (~$39), TextMate 2.0 was open-sourced in 2012 and has remained free ever since. Users who want to support development can contribute to the project via GitHub sponsorships or by contributing code, documentation, or bundles.
Pros
- ✓Completely free with no feature restrictions or paid tiers
- ✓Native macOS performance — starts instantly, minimal memory usage
- ✓Bundle system provides excellent language support for over 100 languages
- ✓TextMate grammar format became the industry standard for syntax highlighting
- ✓Multiple carets and powerful snippet system for efficient editing
- ✓Excellent command-line integration with mate and rmate tools
- ✓Stable and reliable — rarely crashes or loses work
- ✓Clean, distraction-free interface that stays out of your way
- ✓Strong LaTeX and Markdown support for academic writing
- ✓Active open-source development with regular updates
Cons
- ✗No built-in LSP (Language Server Protocol) support for modern IDE features
- ✗No integrated terminal or git GUI compared to VS Code
- ✗Smaller extension ecosystem than VS Code or Sublime Text
- ✗No built-in AI coding assistance or Copilot integration
- ✗UI design feels dated compared to modern editors
- ✗Limited debugging capabilities compared to full IDEs
- ✗Some bundles for newer languages may be less maintained than older ones
- ✗Learning curve for bundle customization and snippet creation
Community & Support
TextMate has a dedicated community that has persisted for two decades. The GitHub repository (github.com/textmate/textmate) hosts the source code and issue tracker, with active contribution from both the original author Allan Odgaard and community members. The TextMate mailing list and IRC channel provide user support, while the TextMate wiki and manual offer comprehensive documentation. The bundle ecosystem is community-maintained, with the textmate organization on GitHub hosting official bundles. Support is primarily community-driven through GitHub issues — there is no paid support tier, which is consistent with the free, open-source nature of the project. Updates are released periodically as new macOS versions require compatibility adjustments.
Frequently Asked Questions about TextMate
Our Verdict
TextMate remains an excellent choice for macOS users who want a fast, free, and reliable text editor that respects the platform's native conventions. While it lacks the IDE features of VS Code or the AI integrations of newer editors, its bundle system, snippet capabilities, and legendary performance make it ideal for config editing, script writing, and focused coding sessions. The fact that it pioneered the grammar format that powers syntax highlighting across the industry is a testament to its lasting influence. For users who value simplicity, stability, and zero cost, TextMate earns a strong recommendation.
About the Author
Related Technologies & Concepts
Related Topics
macOS Text Editors
macOS Text Editors — related to TextMate
Developer Tools
Developer Tools — related to TextMate
Open Source Software
Open Source Software — related to TextMate
Sources & References
Fact-CheckedLast verified: May 7, 2026
Key Verified Facts
- TextMate 2.0.23 is the current stable version, compatible with macOS 10.12 (Sierra) and later.[cite-tm-official, cite-tm-github]
- TextMate is free and open-source under the GPL license, released on GitHub in 2012.[cite-tm-github, cite-wikipedia]
- TextMate was created by Allan Odgaard and first released in October 2004.[cite-wikipedia]
- The TextMate grammar format (.tmLanguage) became an industry standard for syntax highlighting, adopted by VS Code, Sublime Text, and GitHub.[cite-tm-manual, cite-wikipedia]
- TextMate 1.x was previously a paid application (~$39) before version 2.0 was open-sourced.[cite-wikipedia]
- 1TextMate Official Website
Accessed May 7, 2026
- 2TextMate GitHub Repository
Accessed May 7, 2026
- 3TextMate 2.0 Manual
Accessed May 7, 2026
- 4TextMate - Wikipedia
Accessed May 7, 2026
- 5TextMate Bundles Manual
Accessed May 7, 2026
- 6TextMate Homebrew Cask
Accessed May 7, 2026
Research queries: TextMate 2.0.23 macOS text editor 2026; TextMate bundles syntax highlighting features; TextMate Allan Odgaard open source GitHub