Pull to refresh

TextMate средствами gedit

Reading time3 min
Views7.1K


Так вышло, что в офисе я работаю за Маком, а вот ноут — «17 MacBook Pro — не самый лучший, на мой взгляд, вариант в разрезе производительность/цена. Anyway, это тема другого разговора. Ноут под Ubuntu.
А теперь вопрос: если кодить на Ruby/RoR — кто ваш лучший ТекстовыйПриятель? Все верно, Textmate — Великий Фетиш и Идол всех программистов на Ruby под Mac. Итак задача была предельно проста — найти инструмент под Linux, максимально приближенный к Textmate по тому объему функционала который я использую в работе.


Мне было сложно определить, куда постить эту небольшую заметку потому что оно касается сразу трех тем: Linux, Ruby, юзабилити. По большому счету, все нижесказанное будет касаться приемов настройки и работы в Linux. Для пользователей Linux со стажем до 1 года :)

Как ни странно, после некоторых блужданий выбор пал на редактор лежащий „под носом“ — gedit. Плюсов прилично: входит в дефолтный комплект Ubuntu, легок на подъем, GTK, гибок за счет плагинов, бесплатен/opensource.

Итак, начнем подгонять под высокие стандарты :)



Прежде всего установил в дополнение к Monospace и два других не менее любимих шрифта:

MONACO.TTF — тот самый, который по дефолту в Textmate (качать отсюда, но я не уверен в легальности этого действа)

И CONSOLAS.TTF от MS. Тут немного сложнее:

1) Кчаем вьювер PowerPoint презентаций
2) Если не стоит, то ставим sudo apt-get install cabextract
3) Экстрактим: cabextract PowerPointViewer.exe
4) Еще экстрактим: cabextract ppviewer.cab

Все шрифты у нас должны лежать в ~/.fonts (если ее нет, то создаем такую директорию в домашней папке)

5) find -iname ‘*ttf’ -exec cp {} ~/.fonts/ \;

Далее в gedit: Правка — Параметры — Шрифт и Цвета

Теперь добавляем цветовые схемы и подсветку синтаксиса.

У gedit все это хозяйство должно лежать в:
/usr/share/gtksourceview-2.0/styles/

По этому идем на замечательный ресурс, качаем, следуем инструкциям и переписываем в целевую директорию под администраторскими правами. Конечно же, что бы добиться максимального сходства с Textmate, прежде всего качаем одну из темных тем — Darkmate



С цветом тоже разобрались, переходим к самому вкусному — к функционалу. Это плагины. Прежде всего, если раньше не делали, делаем:

sudo apt-get install gedit-plugins

(Правка — Параметры — Модули)
Что добавляет нам парочку вкусных вкусностей в лице:

1. Встроенного терминала (как-то привык все руками делать — вот почему я не люблю NetBeans Ruby и Aptana)
2. Снипетов (нажимаем CTRL-SPACE и получаем быстрый доступ ко вводу шаблонов конструкций, или набираем первый оператор конструкции + TAB и получаем то же самое)
3. Файловой структуры (о да!) в боковой панели. На самом деле комфортная работа без этого с Ruby/RoR не возможна по определению.
4. Структура классов в текущем открытом файле
5. Таблицу символов.

Это основные плагины. Много всего другого можно найти там же. По умолчанию, плагины к gedit должны лежать в:

~/.gnome2/gedit/plugins
(Если какой-то директории нет — создаем)
Вся прелесть плагинов в том что они могут копать, а могут не копать. Это я к тому, что вы для комфортной работы, скорее всего, найдете еще десятка два нужных именно вам надстроек. (Между прочим, можно и самому чего-то дописать)



Теперь почти все хорошо. Но. Если синтаксис .rb файлов gedit последних версий поддерживает „искаропки“, то с для работы с .rhtml и .rjs необходимо предпринять парочку телодвижений — как и все под Linux, это очень просто:

wget grigio.org/files/x-rhtml.xml
sudo mv x-rhtml.xml /usr/share/mime/packages
wget grigio.org/files/rhtml.lang
sudo mv rhtml.lang /usr/share/gtksourceview-1.0/language-specs/

В итоге, выходит очень мило и архиудобно для работы. Пользуйтесь на здоровье. Возможно я про что-то забыл или не учел… так напомните! Ведь, вроде, для этого и нужны комментарии, м?

P.S. Кстати. Если будет интересно, могу написать и про то как vim превращается в хардкорный и кроссплатформенный инструмент для Ruby-девелопера, девелопящего на не очень мощной машине или фанатеющего от vim как от такового. Let me know :)
Tags:
Hubs:
+33
Comments120

Articles