Многим людям очень нравится редактор кода Sublime Text 2. Некоторые просто фанатеют от него, другие не очень хвалят. В этой статье я попробую оценить полезность данного инструмента для Drupal разработчика со своей субъективной точки зрения.
- Установим Sublime. Для этого перейдем на http://www.sublimetext.com/2, выберем подходящий для нас дистрибутив, скачаем и установим. Здесь вроде все стандартно
- Далее установим Sublime Package Control. Это менеджер пакетов для нашего редактора. Он позволяет устанавливать, удалять, обновлять необходимые пакеты. Для установки Sublime Package Control нажимаем комбинацию клавиш "ctrl+`" и вводим в появившуюся консоль следующую python строку:
import urllib2,os; pf='Package Control.sublime-package'; ipp = sublime.installed_packages_path(); os.makedirs( ipp ) if not os.path.exists(ipp) else None; urllib2.install_opener( urllib2.build_opener( urllib2.ProxyHandler( ))); open( os.path.join( ipp, pf), 'wb' ).write( urllib2.urlopen( 'http://sublime.wbond.net/' +pf.replace( ' ','%20' )).read()); print( 'Please restart Sublime Text to finish installation')
Возможно, для Вашей OS команда будет иметь немного другой вид. Более подробно Вы можете ознакомиться с установкой Sublime Package Control на https://sublime.wbond.net/installation#st2
- Обновим настройки для поддержки Drupal Coding Standards (что это такое читаем здесь). Для этого идем в настройки, в секцию Settings - User и вставляем следующее (не забывая добавить запятую между этим и существующими правилами, но проверяем, что нету запятой в последней строке) :
"bold_folder_labels": true,
"caret_style": "wide",
"default_line_ending": "unix",
"draw_white_space": "all",
"ensure_newline_at_eof_on_save": true,
"fade_fold_buttons": false,
"fallback_encoding": "UTF-8",
"find_selected_text": true,
"font_options":
[
"subpixel_antialias"
],
"highlight_line": true,
"line_padding_bottom": 1,
"open_files_in_new_window": false,
"rulers":
[
80
],
"shift_tab_unindent": true,
"tab_size": 2,
"translate_tabs_to_spaces": true,
"trim_automatic_white_space": true,
"trim_trailing_white_space_on_save": true,
"use_tab_stops": true,
"word_separators": "./\\()\"'-:,.;<>~!@#%^&*|+=[]{}`~?" - О плагинах (пакетах) и как их устанавливать. Sublime чем-то похож на сам Drupal. Весь функционал можно наращивать с помощью расширений. Для установки плагинов нажимаем следующую комбинацию клавиш: CMD+SHIFT+P (актуально для Mac OS X, если Вы под Windows или Linux, то просто замените CMD на CTRL). В появившемся списке набираем pi и нажимаем Enter. После этого набираем название пакета (вернее его сокращенное название) и снова Enter для его установки. То есть пакеты можно ставить без мышки
-
Плагины и их краткое описание
AdvancedNewFile (сокращение: and)
Создает новые файлы и директории. Вызывается нажатием CMD+ALT+n . Более подробно здесьAuto Semi-Colon (сокращение: asc)
Этот плагин автоматически перемещает ";" за границу последних скобок, если нажали ";" внутри одной или более пар скобок. Более подробно здесьBracket Highlighter (сокращение: bhi)
Делает подсветку парных скобок [], (), {}, "", '', , а также многих других. Более подробно здесьDocBlockr (сокращение: db)
Упрощает написание PHPDoc. Для вызова набираете /** и жмете <>. Более подробно здесьDrupal Project Autocomplete (сокращение: dpa)
Этот плагин делает автокомплит для всех Drupal функций проекта. Более подробно здесьGoto Documentation (сокращение: gd)
Этот плагин дает возможность переходить к документации относящейся к текущему слову. Он поддерживает не только php, но и много других языков. Для вызова можете воспользоваться комбинацией cmd-shift-p, после чего выберите "Goto Documentation". Конечно же проще настроить комбинацию клавиш для вызова данного плагина. Для этого добавляем в "Key Bindings - User" (куда мы попадаем через меню preferences) следующую строчку:
{ "keys": ["super+shift+h"], "command": "goto_documentation" }
Более подробно здесьGoto Drupal API (сокращение: gda)
Аналогично предыдущему, этот плагин дает возможность переходить к документации, только в данном случае - это документация по Drupal API. Как и в случае с предыдущим плагином, намного проще настроить комбинацию клавиш для вызова данного плагина. Для этого добавляем в "Key Bindings - User" (куда мы попадаем через меню preferences) следующую строчку:
{ "keys": ["super+shift+a"], "command": "goto_drupalapi" }
Более подробно здесьGit (сокращение: git)
Интеграция с git. Более подробно здесьMacTerminal (сокращение: mt)
Работа с терминалом. По ctrl+command+t открывает терминал в папке, где находиться текущий редактируемый файл. здесьSASS (сокращение: sass)
Поддержка SASS в Sublime. здесьSideBarEnhancements (сокращение: sbe)
Улучшает возможности сайдбара в Sublime. здесьSublimerge (сокращение: sumge)
Плагин позволяет сравнивать и делать merge файлов прямо в редакторе Sublime Text 2. здесьSublimeLinter (сокращение: suli)
Подсветка потенциально возможных ошибок.. здесь
Часто используемые горячие клавиши
Выделение
⌘ + D – Выделить слово
⌘ + L – Выделить строку
⌘ + Shift + A – Выделить содержимое тага
Control + Shift + M – Выделить контент между скобками
Просмотр
⌘ + K, ⌘ + B – Показать/скрыть сайдбар
Shift + ⌘ + F - Полноэкранный режим
Control + Shift + ⌘ + F - Дистракционный режим
Редактирование
⌘ + Shift + D — Клонировать строку
⌘ + Shift + K - Удалить строку
⌘ + ] - Увеличить отступ, ⌘ + [ - Уменьшить отступ
⌘ + J – Соединить строки
⌘ + Option + [ - Свернуть блок
⌘ + Option + ] - Развернуть блок
⌘ + K, ⌘ + T - Свернуть атрибуты тагов
⌘ + K, ⌘ + J - Развернуть атрибуты тагов
Утилиты
Shift + ⌘ + P – Sublime коммандная панель
Control + ` – Консоль
⌘ + Option + P - Показать тип исходников
Навигация
⌘ + P – Показать быстрое переключение между файлами
⌘ + P, # – Перейти к слову
⌘ + R – Перейти к функции или классу
Control + G = ⌘ + P, : - Перейти к строке
⌘ + F2 – Добавить закладку. Для перехода между закладками используется F2
⌘ + I - Инкрементальный поиск
⌘ + G - Следующий результат поиска
⌘ + Shift + G - Предыдущий результат поиска
Настройки
⌘ + , – Settings - User
Выделение столбцов (OS X)
Левая кнопка мыши + Option
Или: Средняя кнопка мыши
Добавить к выделению: ⌘
Убрать из выделения: ⌘ + Shift
Используя клавиатуру
Ctrl + Shift + Up
Ctrl + Shift + Down
Оригинал статьи на stillfinder.net
Комментарии
Скажите пожалуйста, как ведет себя подсветка кода внутри разных файлов ? Не возникает ли проблем с перемешанным кодом ?
Хотелось бы сразу получить готовую сборку, готовы ли вы выложить ее ?
Вроде не замечал проблем с подсветкой, с перемешанным кодом. Сборку выложить не могу, но думаю можно сделать скрипт, который установит перечисленные плагины. Только не уверен есть ли в этом смысл, ведь скорее всего, каждый захочет настроить все под себя и использовать не все из предложенного.
Пора делать уже под третью версию и почему никто не выпускает репаков с нужными дополнениями?
По поводу третьей версии - еще не занимался изучением данного вопроса. Когда будет время заняться этим - обязательно поделюсь своими результатами.
А в чем проблема со сборкой ?
Настройка под себя хороша лишь в момент принятия решения остаться на новом редакторе.
Я бы с радостью опробовал целую сборку на виртуальной машине.
Тем более, что уже более двух лет пытаюсь перебраться на linux desktop. Мультиплатформенный редактор был бы дополнительным толчком.
А я уверен, что такие как я(ленивые создания) очень оценят сборку.
Мне в лом настраивать чтолибо и люблю программы которые работают из коробки так как мне надо.
Вообще в этом плане саблайм вообще никудышный, настройки хоть и разнообразные и их много, но требуется определенный скил. А мне вот реально не хочется изучать редактор... глупо это.
А так я бы скачал сборочку, потестил, посмотрел, может что отключил или что добавил. Но это уже заняло бы у меня 10 минут, а не несколько часов траханья. Тем более, не все дополнения работают.
Поддержу iHappy, только это скорее не лень, а просто нежелание тратить время на траходействия. Время - очень ограниченный ресурс, его реально жалко. И тратить несколько часов чтобы понять, что только предварительная настройка под свои достаточно средние вкусы уже отняла полдня... Да нафиг надо.
Это лень, как лень не называй, это лень
Уже 3 потенциальных пользователя есть у сборки.
И это только те, кто видел тему со сборкой.
Вы бы подобрали домен, состряпали статью и таскали бы трафик со всех ресурсов.
Сборки везде полезны, кто-то ОС собирает, кто-то ПО вертит.
Главное у вас есть опыт настройки.
Легче одному человеку собрать, а остальные экономят время и сидят у вас в блоге, обсуждают творение
Домен уже есть: http://stillfinder.net. Я там
ы, я уже сам задумался, а не сделать ли))
"ненене девид блейн!"
В моем случае это бесполезная трата времени в "поисках серебряной пули". Ну и три часа рабочего времени выкинуть на заточку инструмента, который еще и не факт что пригодится... А три часа личного времени лучше на семью потратить ну или на сон хотя бы
То есть, ты не хочешь выделить три часа перед сном... или вместо сна на это)
Говорю же, лентяй
Не думал, что будет столько желающих, но если такое дело, то сделаю сборку. Только нужно будет 3 сборки делать - под разные оси. И еще я не уверен насколько это легально. Кто нибудь может проконсультировать меня по этому вопросу законности данного намерения?
насчет правомерности я незнаю. Но я уже думал над этим. Можно сделать не репак, а ... как это назвать не знаю.
В общем, перед использованием сборки, надо сам саблайм скачать и положить рядом с установщиком сборки, который сам бы в силент режиме ставил бы саблайм, а потом ставил настройки.
А можно, сделать сборку, в которой нет самого саблайма, а он только несет модули и настройки, типа применил и все ок.
А насчет трех, я думаю два надо, в макось не нуно. имхо
Выложил файл настроек и краткую инструкцию как импортировать эти настройки. Надеюсь, это будет полезно. Линк
Выдает ошибку.
А сейчас вообще перестал запускаться. Даже скриншот не могу сделать(
Рекомендую все таки делать на третью версию сразу. Вторая может скоро пропасть.
Ок, постараюсь сделать для 3 версии.
Как результаты ?
Пока тяжело со свободным временем
Не все поймут, исправьте.
:) Спасибо, поправил.
А в чем его выгодное отличие для друпал разработчика, от блокнот++ или phpstorm?
Это скорее вопрос личных предпочтений. Я не очень в курсе, а в notepad++ есть сниппеты для хуков и тд?
Windows. Копируете с заменой скаченный файл в папку C:\Users\{username}\Dropbox\Sublime\Packages\User C:\Users\{username}\AppData\Roaming\Sublime Text 2\Installed Packages(Вместо {username} вставляете имя Вашего пользователя)
При чем тут DropBox?
Спасибо за замечание. Опечатка. Очепятку поправлю.
да да, в чем его преимущество перед nano?
Sublime Text быстрей работает. Имеет хорошие дополнения. Красивый=).
Для вим*пользователей есть управление в стиле вим.
и сравнивать похапешторм с саблаймом не коректно, шторм как бы ИДЕ, а саблайм редактор.
Уже поставил третий. Для него не подойдет?