Архивировано

Эта тема находится в архиве и закрыта для публикации сообщений.

alexriz

Sublime Text 2/3

Рекомендованные сообщения

Sublime Text 2/3


Кроссплатформенный текстовый редактор для разработчиков, написанный на C++, а так же Python API для написания плагинов. Поддерживает огромное количество языков программирования "с коробки".
В этой теме первый пост будет содержать набор всевозможных полезностей связанных с ST2, оставленных пользователями в обсуждениях, а так же ряд вопросов которые требуют решения.

Работа с SFTP и системой проектирования.


Создаем директорию у себя, где вам удобно. Это будет папка для синхронизации ftp.
Перетаскиваем папку в ST2, в левой панели жмем на папке ПКМ=>SFTP/FTP=>Map to Remote...
В открывшемся файле конфигурации настраиваем подключение.
"type": "ftp"
"upload_on_save": true
"host": ip/host
"user": "username"
"password" : "password"

Настройка самого плагина SFTP следуем пути: Preferences=>Package Settings=>SFTP=>Settigs Default
Я для себя поменял параметр hide_output_panel, на 0 (по-умолчанию - 1), тем самым запретил скрытие консольной панели ftp, которая находится внизу. Если данный параметр будет стоять в состоянии 1, то панель будет автоматически скрываться, но при каждом обращении к серверу, будет появляться на время, лично мне это не очень понравилось.

Итогом этих манипуляций мы получаем слева панель с деревом файлов, кликаем ПКМ в этой панели и выбираем SFTP/FTP=>Sync Remote -> Local... и вуаля мы видим, как красиво происходит синхронизация с сервером, и файлы загружаются во временную папку и появляются в проекте. И вот мы получили, автокомплит, авто-сохранение с сервером.



Подключаемся к серверу по sftp с помощью ST2 и плагина SFTP


Настройка сервера (на примере ArchLinux):
Заходим под root
Открываем sshd_config, по пути /etc/sshd/sshd_config

Раскомментируем параметры
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys

Сохранем именения и перезапускаем демон sshd коммандой
# /etc/rc.d/sshd restart

Логинимся под ограниченным пользователем, который будет работать с ssh.
Создаем приватный и публичный ключи.
$ ssh-keygen -t rsa -b 2048 -f ~/.ssh/id_rsa
Переходим в директорию ~/.ssh/
$ cd ~/.ssh/
В этой директории будут лежать свеже испеченные приватный и публичный ключи
для авторизации по ssh id_rsa и id_rsa.pub.
Создадим authorized_keys:
$ cat id_rsa.pub >> authorized_keys
Осталось только расставить права доступа:
$ cd ../
$ chmod 700 .ssh
$ cd .ssh
$ chmod 600 authorized_keys

Все сервер готов для авторизации по rsa ключу.

Подготовка к подключению через Sublime Text 2:
Выкачиваем с сервера публичный и приватный ключи (id_rsa и id_rsa.pub).
Далее только для Windows:
Скачиваем программку Puttygen отсюда http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html
Открываем Puttygen загружаем приватный ключ id_rsa в меню Conversions=>Import key
Загрузится ключ и активируются кнопки save public key и save private key.
Если при генерации ключа на сервере вы указали passphrase, то в puttygen так же их указываем в соответствующих полях.
Нажимаем save private key и сохраняем с именем id_rsa.ppk
Вот у нас готов ключ для авторизации в ОС Windows. Это необходимо так как в Windows версии
авторизация происходит через утилиту psftp, а она принимает ключи формата putty.

Теперь собственно авторизация из Sublime Text 2:
Создаем директорию у себя где вам удобно. Это будет папка для синхронизации sftp.
Для удобства закинем наши ключи в эту папку id_rsa.pub и id_rsa.ppk.
Закидываем папку в ST2, в левой панели жмем на папке ПКМ=>SFTP/FTP=>Map to Remote...
В открывшемся файле конфигурации настраиваем подключение.
"type": "sftp"
"upload_on_save": true
"host": ip/host
"user": "username"
"port": "22"
"ssh_key_file": "x:\\путь_к_файлу\\id_rsa.ppk"

Особое внимание! Виндовые слеши нужно дополнительно слешировать \\ !

Вот и все пробуем подключится ПКМ=>SFTP/FTP=>Browse Remote...



Интересный обзор ST2 от ablay2009, дополнение от меня, если в ftp не хотите выгружать файл в ручную, то в конфиге подключения параметр "upload_on_save" переводим в true. Так при сохранении файл автоматически загрузится на сервер.

Полезные ссылки:
Sublim Text 2 Docs
Список плагинов
Описание полезных расширений от net.tutsplus.com
Список настроек с описанием на русском
Use Dropbox to store your Sublime Text 2 settings, themes and plugins

Отключаем ctrl+wheel

FAQ
Q: Где скачать Sublime Text 2?
A: Sublime Text 2 dev актуальная версия 2216
Sublime Text 2.0.1 версия 2217

Q: Как поставить плагины?
A: Управление пакетами. Не много о Zen Coding в ST2

Q: Не корректно работают сниппеты Zen Coding в CSS
A: Конфликтуют встроенные сниппеты со сниппетами ZC, чтобы отключить встроенные сниппеты, заходим по пути в win7 c:\Users\имя пользователя\AppData\Roaming\Sublime Text 2\Packages\CSS\ и удаляем, а лучше просто переносим куда-то все папки которые там есть, файлы которые лежат в корне этой папки оставляем.

Q: Как сделать чтобы выделенное слово подсвечивалось по всему документу, как в Notepad++?
A: Двойной клик по слову, выделяет его, и выделяет рамкой все такие же слова в коде.
Как сделать в точности как в NPP пока не известно.

Q: Как сделать дублирование участка кода как в NPP по CTRL+D?
A: Ctrl + Shift + D
Дублируется либо линия, либо выделенный участок кода. Можно поменять в Key Bindings { "keys": ["ctrl+d"], "command": "duplicate_line" }

Q: Не хватает возможности выделения текста колонкой, как в NPP с клавишей Alt.
A: Нажимаем среднюю кнопку мыши и тянем по коду, выделяется колонка.
(alt + тянем мышь с ЛКМ) в выделенном участке отменяет выделение.

Q: Как включить отображение непечатаемых символов?
A: В Preferences=>Settings - Default . Параметр draw_white_space, отвечает за отрисовку непечатаемых символов, по-умолчанию стоит selection - при выделении, можно установить all - всегда или none - никогда

Q: Как сделать подсветку всей линии, в месте где находится курсор как в npp?
A: В Settings - Default параметр highlight_line устанавливаем в true.

Q: Не работает функция Install Package. В настройках есть, но когда выбираю - нет никакого списка. (Windows)
A: В пути к папке AppData присутствуют русские буквы. Это может быть подписана папка пользователя на русском, или папка "Users" названа "Пользователи", или оба варианта сразу. Необходимо избавится от русских названий.

 

Переименование папки учетной записи
1. Создайте вторую уч. запись.
2. Дайте ей админские привилегии.
3. Загрузитесь под ней.
4. Переименуйте каталог профиля старой учётки в соответствии с её названием.
5. Под ключом реестра [HKLM\Software\Microsoft\Windows NT\CurrentVersion\ProfileList] найдите ключ, под которым Reg_Expand_Sz-параметр "ProfileImagePath" указывает на старую учётку (судя по Вашему описанию его значение должно быть "C:\Users\User" (при условии, что папка пользовательских профилей - "C:\Users")).
6. Переименуйте в значении этого параметра слово "User" в соответствии с новым названием учётки.
7. Загрузитесь под своей законной учёткой.



Q: Какой аналог плагина MIME Tools из npp есть в ST2?
A:

Q: Как сделать подсветку линии колонки как в npp (Конфигурация=>Разное=>Подсветка совпадающих тегов=>Разрешить)?
A: draw_indent_guides и indent_guide_options

Q: Как сделать Open Folder в том же окне редактора?
A:

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Как работает Sublime Alignment? Установил плагин с помощью Package Control, выделаю код:

            <ul>
<li><a href="#">About Us</a></li>
<li><a href="#">Services</a></li>
<li><a href="#">Products</a></li>
<li><a href="#">Solutions</a></li>
<li><a href="#">Price List</a></li>
<li><a href="#">Contact</a></li>
<li><a href="#">FAQ</a></li>
</ul>

Нажимаю ctr+alt+a (как написали разработчики тут) и ничего не происходит.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

У меня работает, но он выравнивает, по самой дальней строке, то есть этот плагин не форматирует код по правилам вложенности, а просто выделенные места по самой дальней строке в колоночку.

Из такого


<?php
$_config['emails']['smtp'] = array(
'host' => 'smtp.gmail.com',
'auth' => 'login',
'ssl' => 'tls',
'port' => 587,
'username' => '...',
'password' => '...',
'forceRecipient' => '...@...',
);
?>

В такой


<?php
$_config['emails']['smtp'] = array(
'host' => 'smtp.gmail.com',
'auth' => 'login',
'ssl' => 'tls',
'port' => 587,
'username' => '...',
'password' => '...',
'forceRecipient' => '...@...',
);
?>

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Нашел что-то подобное Reformat Code в WebStorm. Тут сам плагин или можно вписать в Package Control - Tag. Ctrl + alt + f для форматировки html кода.

Кто-то настроил нормально автокомплит css свойств? Если нажать Ctrl + space и выбрать допустим свойство height, то редактор напишет просто height. Если после этого еще раз нажать Ctrl+space и снова выбрать heigh то он добавит : и ; Хотелось бы что бы сразу ставил : ;

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

А на последние три вопроса надо ответы или так и задумано что на них нет ответа?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Можно еще дописать для настроек SFTP, что в host можно указывать так же и айпишник вместо имени сервера.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

А на последние три вопроса надо ответы или так и задумано что на них нет ответа?

Да нужны ответы. На них пока нет ответа просто. Может это как-то иначе оформить, не знаю...

Можно еще дописать для настроек SFTP, что в host можно указывать так же и айпишник вместо имени сервера.

По идее очевидно... Но это для меня ок, допишу.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Q: Не хватает возможности выделения текста колонкой, как в NPP с клавишей Alt.

A: http://www.sublimetext.com/docs/2/column_selection.html

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Q: Не хватает возможности выделения текста колонкой, как в NPP с клавишей Alt.

A: http://www.sublimetext.com/docs/2/column_selection.html

У меня из того списка работает все кроме, выделение через ALT :unsure: , или там нужно, что-то до устанавливать?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

ShootingStar, это так со стандартными сниппетами?

Да со стандартными, у Вас по другому разве?

Список плагинов.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Поставил dev версию.

И немного разочаровался. Зачем делать сглаживание шрифта отличное от системного?

Я полностью убираю ClearType, мне так удобнее воспринимать текст. И тут такой подвох.

Выделение колонок работает, подсвечивание(обрамление) совпадений с выделенным словом вполне устраивает.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

В статье у ablay2009, есть вариант с созданием специальной папки для ftp, и маппинга в нее удаленной директории. Вопреки предупреждениям, провел адовый эксперимент, и сделал полную синхронизацию своего сервера в локальной сети (9 хостов, 180Мб данных). Пришлось прилично подождать, но все прошло гладко. Единственное, в настройках подключения, я поменял параметр "upload_on_save" на true, тем самым избавив себя от необходимости в ручную отправлять файл на сервер. Теперь при сохранении файла, он автоматом загружается на сервер.

Выделение колонок работает, подсвечивание(обрамление) совпадений с выделенным словом вполне устраивает.

Выделение колонок, это то что через alt ты спрашивал?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Q: Как сделать дублирование участка кода как в NPP по CTRL+D?

A: Ctrl + Shift + D

Так в винде. Дублируется либо линия, либо выделенный участок кода

Выделение колонок работает, подсвечивание(обрамление) совпадений с выделенным словом вполне устраивает.

Выделение колонок, это то что через alt ты спрашивал?

Да, это то что нужно.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Q: Как сделать дублирование участка кода как в NPP по CTRL+D?

A: Ctrl + Shift + D

Так в винде. Дублируется либо линия, либо выделенный участок кода

Спасибо добавил в первый пост.

Выделение колонок работает, подсвечивание(обрамление) совпадений с выделенным словом вполне устраивает.

Выделение колонок, это то что через alt ты спрашивал?

Да, это то что нужно.

Странно у меня не работает, даже на чистом...

upd: по нажатию средней кнопки мыши, получается выделение подобное как с atl в npp

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

я поменял параметр "upload_on_save" на true, тем самым избавив себя от необходимости в ручную отправлять файл на сервер. Теперь при сохранении файла, он автоматом загружается на сервер.

Спасибо, добавил в статью.

Странно у меня не работает, даже на чистом...

И правильно делает, alt + выделение - это отмена выделения выделенного участка :) Т.е. мы сперва выделили участок кода, а потом решили не выделять какую то часть выделенного ранее.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Q: Как сделать дублирование участка кода как в NPP по CTRL+D?

A: Ctrl + Shift + D

Дублируется либо линия, либо выделенный участок кода.

В Key Bindings можно сделать вот так и будет работать на Ctrl+D

{ "keys": ["ctrl+d"], "command": "duplicate_line" },

Q: Как включить отображение непечатаемых символов?

A:

Есть вот такая настройка

"draw_white_space": "selection", которая говорит о том что надо показывать пробельные символы, если текст выделен. Можно ставить none или all, чтобы изменить это поведение. В принципе, меня полностью устраивает вариант selection, так как посмотреть какие пробелы есть надо не так часто, и выделить кусок не сложно

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

"draw_white_space": "selection", которая говорит о том что надо показывать пробельные символы, если текст выделен. Можно ставить none или all, чтобы изменить это поведение. В принципе, меня полностью устраивает вариант selection, так как посмотреть какие пробелы есть надо не так часто, и выделить кусок не сложно

Не знаю хорошо или плохо, но я пользуюсь не пробелами, а табуляцией для отбивки кода.

Нелюблю когда код в перемешку табопробельный. А если не отображаются пробелы табы, то код такой и будет.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

"draw_white_space": "selection", которая говорит о том что надо показывать пробельные символы, если текст выделен. Можно ставить none или all, чтобы изменить это поведение. В принципе, меня полностью устраивает вариант selection, так как посмотреть какие пробелы есть надо не так часто, и выделить кусок не сложно

Не знаю хорошо или плохо, но я пользуюсь не пробелами, а табуляцией для отбивки кода.

Нелюблю когда код в перемешку табопробельный. А если не отображаются пробелы табы, то код такой и будет.

Я тоже считаю что надо использовать табы, а не пробелы. Но стандарты кода на питоне говорят что надо использовать 4 пробела для отбивки и ничего с этим уже не поделать.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Я тоже табы использую, мне пробелами не удобно абсолютно. Но в редакторе и пробелы и табы подсвечиваются.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

У меня, кстати, вот вопрос возник — может, кто сталкивался. Есть какие-то файлы, которые я открываю через файловый менеджер «Open with Sublime Text 2», то файлы открываются не в уже существующем окне, а в новом. Ну и если делать «Open Folder» в редакторе, то тоже открывается новое окно, а не директория открывается в том же окне, что мне кажется более логичным. Использую Ubuntu 10.04 в стандартной комплектации.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

У меня на Win7 тоже Open Folder открывает новое окно. А если просто затаскивать папку, то можно открыть в том же окне в левой панели. Что-то я настроек открытия не нашел

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

  • Спрашивают сейчас

  • Пишут сейчас

    • Есть несколько вариантов которые позволяют развиваться профессионально: Ask friend for help. Опросить друзей знакомых на предмет предлагаемых услуг, заявить о себе. Выполнить несколько простых проектов для опыта/портфолио. Тем самым продвигать себя в качестве специалиста (сарафанное радио) Freelance. Вход сложный. Зато на мелочах можно поднять опыт за символическую стоимость. Потом развивать свой аккаунт, "обрастать" клиентами и поднимать уровень квалификации. Важно: почитайте пару гайдов как получить заказ новичку, как оформить профиль и прочие рекомендации. Сайты по теме: https://freelansim.ru https://www.fl.ru https://www.upwork.com — я бы выбрал этот Remote. Full-time. Ещё один хороший вариант найти работу — утроится в компанию работать удалённо. Без территориально ограничения. Компания может быть из СНГ, с юр. лицом. Заключаете договор и сотрудничаете на ставку. Part-time. Тоже самое что и предыдущий пункт но формат сотрудничества на правах почасовой работы. Office. Работа в офисе на позции Junior с перспективой роста. Хорошо подойдут галеры по типу ЕПАМ, Ciklum, LuxSoft, и тд. Денег мало (в начале), но компенсируется опытом. За 9-12 месяцев можете вырасти в Middle. Дальше плыть будет легче. Для поиска работы для Remote и Office вариантов можно использовать стандартные инструменты, на пример: djinni.co или linkedin.com. Рекомендации к заполнению профилю/CV Опишите всё что можете предложить заказчику. Расскажите о своих скилах, что непосредственно Вы делали выполняя работу над тем или иным проектом. Расскажите о своём опыте, даже если он не значительный. Если опыта совсем мало, инвестируйте месяц-два и выполните несколько простых задач, которые Вы сможете показать заказчику. И профиль и CV должно быть на английском языке, в первую очередь, и лишь копия русскоязычная (у меня такой нет, так как рынок предполагает знание английского языка с уровня pre-intermediate)
    • Сидеть дома и развиваться до уровня Senior годами без реальной работы?! 
    • Факт есть факт — специалистов как было мало так и осталось. Можно выбирать любую интересующую себя нишу и развиваться в ней до уровня Senior и иметь на себя спрос в последствии.
  • Лучшие авторы

  • Текущие цели пожертвований