TextMate alternatives and similar tools
Based on the "Editors" category.
Alternatively, view TextMate alternatives based on common mentions on social networks and blogs.
-
Brackets
An open source code editor for the web, written in JavaScript, HTML and CSS. -
VSCodium
binary releases of VS Code without MS branding/telemetry/licensing -
Lime
Open source API-compatible alternative to the text editor Sublime Text -
Atom Community
:atom: Community build of the hackable text editor -
KDevelop
Cross-platform IDE for C, C++, Python, QML/JavaScript and PHP
ONLYOFFICE Docs — document collaboration in your environment
* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest.
Do you think we are missing an alternative of TextMate or a related project?
README
TextMate
Download
You can download TextMate from here.
Feedback
You can use the TextMate mailing list or [#textmate][] IRC channel on freenode.net for questions, comments, and bug reports.
You can also contact MacroMates.
Before you submit a bug report please read the writing bug reports instructions.
Screenshot
Building
Setup
To build TextMate, you need the following:
- boost — portable C++ source libraries
- Cap’n Proto — serialization library
- multimarkdown — marked-up plain text compiler
- ninja — build system similar to
make
- ragel — state machine compiler
- sparsehash — a cache friendly
hash_map
All this can be installed using either Homebrew or MacPorts:
# Homebrew
brew install boost capnp google-sparsehash multimarkdown ninja ragel
# MacPorts
sudo port install boost capnproto multimarkdown ninja ragel sparsehash
After installing dependencies, make sure you have a full checkout (including submodules) and then run ./configure
followed by ninja
, for example:
git clone --recursive https://github.com/textmate/textmate.git
cd textmate
./configure && ninja TextMate/run
The ./configure
script simply checks that all dependencies can be found, and then calls bin/rave
to bootstrap a build.ninja
file with default config set to release
and default target set to TextMate
.
Building from within TextMate
You should install the Ninja bundle which can be installed via Preferences → Bundles.
After this you can press ⌘B to build from within TextMate. In case you haven't already you also need to set up the PATH
variable either in Preferences → Variables or ~/.tm_properties
so it can find ninja
and related tools; an example could be $PATH:/usr/local/bin
.
The default target (set in .tm_properties
) is TextMate/run
. This will relaunch TextMate but when called from within TextMate, a dialog will appear before the current instance is killed. As there is full session restore, it is safe to relaunch even with unsaved changes.
If the current file is a test file then the target to build is changed to build the library to which the test belongs (this is done by setting TM_NINJA_TARGET
in the .tm_properties
file found in the root of the source tree).
Similarly, if the current file belongs to an application target (other than TextMate.app
) then TM_NINJA_TARGET
is set to build and run this application.
Build Targets
For the TextMate.app
application there are two symbolic build targets:
ninja TextMate # Build and sign TextMate
ninja TextMate/run # Build, sign, and (re)launch TextMate
To clean everything run:
ninja -t clean
Or simply delete ~/build/TextMate
.
Legal
The source for TextMate is released under the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
TextMate is a trademark of Allan Odgaard.
*Note that all licence references and agreements mentioned in the TextMate README section above
are relevant to that project's source code only.