— один из самых популярных текстовых редакторов в OS X. Он настолько известен, что не дает покоя пользователям других операционных систем и предпринимаются попытки сделать его клоны под Windows и Linux, а издательство The Pragmatic Bookshelf посвятило ему небольшую книгу - TextMate: Power Editing for the Mac.
Основная целевая аудитория этого продукта - программисты. Он представляет широчайшие возможности по написанию кода на всех мыслимых языках программирования и разметки: C, Java, Ruby, HTML, CSS, LaTeX и т.д.
На мой взгляд, TextMate в полной мере использует подход к созданию программных продуктов, заложенный в самой основе OS X. Снаружи мы имеем красивый и эргономичный интерфейса, а в базе - всю мощь командной строки и множества скриптовых языков. Кроме того для TextMate было написано огромное количество дополнительных пакетов (bundles) реализующих поддержку самых экзотических языков программирования.
Когда мы говорим что редактор поддерживает какой-то язык, мы в первую очередь вспоминаем о подсветке синтаксиса. Но дело этим не ограничивается. Пакеты TextMate помимо подсветки предоставляют широкий выбор команд (многие из которых доступны через шорткаты) облегчающих работу с документом на данном языке и великолепную систему шаблонов (snippets). Наконец для большинства языков TextMate позволяет быстро переходить по функциям в текущем документе простым нажатием ⇧⌘T.
Шаблоны заслуживают отдельного внимания, это именно то, что позволяет писать программы в TextMate намного быстрее. Как правило, он вставляется набором связного короткого имени и нажатием Tab. Например, если в скреипте на языке руби набрать if⇥, то получим конструкцию if, причем курсор будет сразу стоять в позиции, где мы пишем условие. Еще раз нажимаем Tab и попадем в тело условия.
Шаблоны и команды редактора конечно хороши и сами по себе, но особый шик им придает поддержка областей видимости. Некоторые команды доступны только в исподниках на C++, другие во исподниках на любом языке, а некоторые во всех документах.
Помимо работы с отдельными файлами, TextMate может работать и с целыми проектами, для этого достаточно открыть всю папку проекта и voila, сбоку появляется панель со списком папок/файлов. Кроме того, вы можете выставить переменные среды (environment variables) которые будут действовать для скриптов запускаемых в рамках проекта.
В этом редакторе очень хорошо проработана система навигации. Если вы работаете с проектом, то ⌘T вызовет всплывающее окно, где бы можете начать ввод имени файла. Именно начать, заканчивать вовсе не обязательно. Система фильтрация настолько умная что найдет искомый файл даже если вы наберете его начало и конец. Навигация по функциям доступна через ⇧⌘T. Кроме того вы можете ставить на строки закладки и легко перемещаться между ними. Программистов, пишущих код на C/C++/Objective-C должна порадовать возможность переключаться между файлом реализации и заголовочным файлом по ⌥⌘↑.
Если же вы не уверены куда вам надо попасть, то окно поиска по открытым файлам или же по проекту к вашим услугам. Результаты будут разбиты на строки и сгруппированы по файлам. Поиск можно вести по регулярным выражениям. Из того же окна можно сделать замену. Пожалуй, единственным недостатком этой функции является то, что до окончания поиска редактор “лочится” и недоступен для работы, но поиск даже крупным проектам не занимает более несколько секунд.
Хотя TextMate не интегрируется с шеллом, он умеет выводить результат работы своих команд и скриптов в отдельное окно или даже в окно самого редактора. Это оказывается весьма удобным, учитывая, что запуск скриптов висит на горячих клавишах. Если же вы всю основную работу ведете в шелле, то вы сможете запускать от туда же и редактор. При первом запуске вам будет предложено создать симлинк /usr/bin/mate.

Чтобы описать все имеющиеся шорткаты и шаблоны потребовалась бы целая книга, поэтому я расскажу, где вы можете узнать о доступных действиях. Помимо обычного меню наиболее интересные нам опции находятся в статусной строке. Вот что мы тут видим (слева направо):
- Номер строки и колонки - весьма полезно при отладке программ.
- Текущий тип файла. TextMate попытается определить его самостоятельно по расширению, но вы можете сделать это и самостоятельно. Тип файла определят загруженый bundle и доступные команды.
- Доступ к командам всех bundles (текущий выбран по умолчанию). Это и есть наш главный справочник. Здесь есть все доступные шорткаты и шаблоны! Чтобы добиться наибольшей производительности, изучите это меню для нужных вам языков и запомните сокращения. Тогда вы почувствуете всю мощь TextMate
- Далее находится меню настройки отступов для текущего файла
- Последним в строке стоит меню символов (т.е. функций) текущего файла.
Как и любой инструмент, TextMate нужно подробно изучить, чтобы добиться максимума производительности. Начать, пожалуй, стоит с . Ну, и конечно, не забывайте заглядывать в меню шорткатов и шаблонов и со временем вы запомните то, что вам действительно нужно в повседневной работе.
Читайте также:
- [TextMate] Блоггинг в geek–стиле или прощайте Ecto и MarsEdit. Часть 1
- [TextMate] Блоггинг в geek–стиле или прощайте Ecto и MarsEdit. Часть 2
- [TextMate] Создаем сниппеты своими руками
Скачать 30-дневную демо-версию можно с . Стоимость одной лицензии $52.
P.S. у меня было 5 лицензий для раздачи, но я вынужден отдать их всем, кто написал для меня статьи, в том числе и Сергею — автору этого поста. Даже себе не осталось.
Популярность: unranked




Возможно для не профессиональной работы годятся подобные ухищрения. Но с IDE (Integrated Development Environment) им не сравнится. Например, для Java использую IntelliJ IDEA – Mac среди Java IDE.
ИМХО, для тех же профессионалов больше подойдет Vim (или Emacs)
P.S. UNIX – это способ жизни
Зависит от того на чем вы пишете. Для Java, абсолютно согласен, IDEA незаменима. Для Objective-C может быть XCode и подойдет лучше. А вот для работы с ruby, perl, python, php и многими другими вполне хватает такого редактора.
Vim я использовал много лет. Использую и сейчас, если работаю по SSH. Но все же он не столь эргономичен, даже после длительной настройки.
Сразу после установки любого UNIX Vim абсолютно безконкурентен, возможно за исключением OS X (они почемуто ставят модифицированные утилиты GNU). Мышь в нем нужна только для копирования, а это мегаплюс
Для языков аля PHP больше Vim ничего не нужно, потому как даже Zend не может показать методы собственных класов 2-го уровня, о чем тут еще говорить?
Великолепный текстовый редактор, работая с который просто забываешь о том что он есть – сосредатачиваясь целиком и полностью на своей задаче.
А как там с лицензиями на PathFinder?
через 15 минут про это будет пост
В несколько заходов пытался начать пользоваться этим редактором (задачи: PHP, XML, XSLT, CSS), но так и не подружился с ним. Видимо, его концепция мне не близка. Не хватает, например, прямого редактирования файлов на FTP, не нашёл встроенной поддержки SVN. В результате пришёл к тому, что для моих задач лучше всего подходит Coda.
SVN (а также CVS, Git и другие) поддерживаются после установки Project+
А что насчёт просмотра FTP-директорий и редактирования файлов?
К сожалению, Gedit намного удобнее. Хотели сделать что-то простое, а получился неудобный перегруженный комбайн. Обидно.
жаль что лицензии закончились
Блоггерам и журналистам интернет-изданий на заметку: кроме всего прочего и далёкого от не-программистов, TextMate поддерживает синтаксис Markdown, разработанный Джоном Грубером. Вся его прелесть в том, что текст, написанный с использованием элементов этого языка очень легко читать и править. Чем-то похоже на язык, который используется для разметки статей в Википедии. Если на блоге стоит соответствующий плагин, он потом эти символы преобразует в самый правильный и валидный html.
Вот вам ссылочка:
пльзую его – всё нравится, вот только явно не хватает ему функции split =(
А где можно купить или может бесплатно скачать сие чудо для программиста?
Автор статьи явно не использует его в повседневной работе, для работы с проектами на 10 файлов он подходит, но когда проект большой и большие по размеру файлы, textmate – тормозит жутко, особенно при переключении между рабочими столами.
Это редактор по типу нотпада – да с кучей бандлов – но смысл в них теряется когда все начинает тормозить.
Очень удивлен вашим коментарием! Я использую trxmatr в работе ккждый день и многие проекты насчитывают сотни фйлов. Тормозов я не наблюдал ни разу хотя машинка моя не самая далеко крутая.
Конкчно это нк полноценная IDE и как замену Jetbrain IDEA его нельзя рассматривать но все же это куда больше чем нотпад с бандлами.