Sublime text
Содержание:
- Активация Sublime Text 3
- Установка плагинов
- Скачивание и установка
- Caveat 1: SIGBUS
- Установка
- Возможности и особенности
- Интерфейс
- Sublime Merge Roadmap
- sublime_plugin.ViewEventListener Class
- Быстрое выделение текста
- Установка
- Почему стоит выбрать Sublime Text 3?
- Редактор
- Сниппеты
- Особенности локализации Sublime Text
- Устанавливаем package control
- Как я переводил
- Давайте установим руссификатор
- Как пользоваться Sublime Text
- Горячие клавиши Sublime Text 3
- Как установить плагин Emmet в Sublime Text
- Caveat 2: Windows
- An Alternative
- Minimalist editor for hardcore programming
Активация Sublime Text 3
Чтобы активировать Сублайн текст 3 откройте текстовый документ License Key, скопируйте из него один из ключей, далее запустите Сублайн и перейдите во вкладку «Справка» («Help«) — «Ввести лицензию» («Enter license«) вставляем ключ и жмем «Use License»
Установка Emmet на sublime text 3 и добавление в него Package Control.
Запускаем редактор и нажимаем Ctrl+ или «Вид» — «Показать/скрыть консоль» («View» — «Show console«), после чего снизу откроется панелька для ввода, вставьте в нее нижеприведенный код, нажмите «Enter«, немного подождите и перезапустите редактор.
import urllib.request,os,hashlib; h = 'df21e130d211cfc94d9b0905775a7c0f' + '1e3d39e33b79698005270310898eea76'; pf = 'Package Control.sublime-package'; ipp = sublime.installed_packages_path(); urllib.request.install_opener( urllib.request.build_opener( urllib.request.ProxyHandler()) ); by = urllib.request.urlopen( 'http://packagecontrol.io/' + pf.replace(' ', '%20')).read(); dh = hashlib.sha256(by).hexdigest(); print('Error validating download (got %s instead of %s), please try manual install' % (dh, h)) if dh != h else open(os.path.join( ipp, pf), 'wb' ).write(by)
Теперь заходим во вкладку «Опции» — «Package Control» или нажимаем сочетание клавиш «Ctrl» + «Shift» + «P«, после чего всплывет окошко в котором выбираем «Install Package» (если не ошибаюсь 6 строка).
После чего всплывет еще окошко, в котором необходимо ввести «Emmet«, появится масса предложений, нажимаем на первое (где просто Emmet).
Ждем немного, пока не откроется вкладка с содержимым, что Эммет успешно установлен, закрываем все вкладки и перезапускаем редактор. Все можно пользоваться!
В трех словах, о том, как работает Эммет
Приведу несколько примеров для Emmet. Допустим нам нужно базовый каркас веб-страницы на html5, для этого достаточно ввести «!» и нажать «Tab».
Чтобы быстро построить к примеру блок с классом col-sm-6, необходимо ввести «.col-sm-6» и нажать «Tab», получим «<div class=»col-sm-6″></div>»
Для того чтобы построить вот такую конструкцию:
<div class="row"> <div class="col-md-3">Lorem ipsum dolor sit amet, consectetur adipisicing elit. Nesciunt natus quidem qui, obcaecati dolorem optio nulla voluptates suscipit eligendi laboriosam quisquam odio provident facilis laudantium. Non, tempora mollitia consequuntur laborum!</div> <div class="col-md-3">Incidunt fugiat beatae non voluptatum at iste inventore obcaecati rem tenetur officiis reprehenderit soluta, magnam est consequatur accusantium, fuga aperiam nesciunt exercitationem dignissimos aut, ut. Voluptatibus id explicabo, suscipit porro.</div> <div class="col-md-3">Iste magni, nam id a, maxime incidunt aperiam hic, aliquid suscipit aspernatur maiores quaerat sequi asperiores perferendis eum delectus consectetur sint excepturi laboriosam, error. Ratione voluptatum similique sunt sequi maiores!</div> <div class="col-md-3">Officiis doloremque cumque ab quae similique totam voluptates? Molestias rerum eos dolor nulla quidem nam pariatur, quisquam reiciendis tenetur. Dolorum, at, illum! Corporis, itaque, impedit repellendus natus accusantium sit sunt.</div> </div>
достаточно ввести вот такую небольшую строчку «.row>.col-md-3*4>lorem» и нажать «Tab«.
Как вы видите Emmet очень крутое дополнение, которое очень ускоряет процесс верстки, главное уметь правильно им пользоваться) Советую почитать документацию.
На сегодня все!
Что такое копирайтинг?
Сборка на основе Bootstrap 3 >
Установка плагинов
Далее установим плагин Emmet — позволяет ускорить написание веб-кода за счет того, что он умеет генерировать HTML-разметку. Переходим в Preferences -> Package Control:
Далее введите install и выберите Package control: Install package:
Далее напишите Emmet и выберите пункт Emmet for Sublime Text 3:
Получаем сообщение, что Emmet установился успешно:
Давайте попробуем проверить как работает плагин Emmet. Создадим файл index.html и сгенерируем разметку: зажмите клавишу Shift и введите восклицательный знак.
Появится сниппет разметки HTML-документа. Нажмите клавишу Tab, чтобы применить его:
Как вы видите одним нажатием клавиши у нас сгенерировалась полностью рабочая HTML-разметка. Далее можем сгенерировать мета-тег <H1>. Для этого просто введите h1 и нажмите на клавишу Tab — плагин Emmet сгенерирует открывающий и закрывающий тег:
И подобным образом можно генерировать любые другие html-теги.
Скачивание и установка
Рассмотрим самую последнюю версию Sublime Text 3, поэтому наша инструкция может отличаться от того что вы видели ранее в интернете.
Чтобы скачать Sublime Text 3 откройте сайт sublimetext.com/3. Откроется страница — Download Sublime Text 3. Здесь вы можете выбрать необходимую версию под вашу операционную систему. Выбираю для windows Sublime Text 3 64 bit. Если у вас тоже windows 64 bit, можете выбрать соответствующий файл Sublime Text или его портативную версию. Скачайте загрузчик. После того как загрузчик будет скачан можно приступить к установке.
Рассмотрим как установить Sublime Text 3.
Запускаем скачанный файл от имени администратора.
Подтверждаем установку Sublime Text.
Выбираем путь для установки или оставляем тот, что выбрала программа по умолчанию.
На следующем шаге Sublime Text предложит добавить себя в контекстное меню. Отметьте галочку, чтобы разрешить это.
Далее устанавливаем и финишируем установку.
Установленный Sublime Text вы можете найти через меню “Пуск” — “Все программы”.
Caveat 1: SIGBUS
SIGBUS (bus error) is a signal that happens when you try to access memory that has not been physically mapped. This is different to a SIGSEGV (segmentation fault) in that a segfault happens when an address is invalid, while a bus error means the address is valid but we failed to read/write.
As it turns out, the ticket comes from someone using a networked drive. Their network happened to disconnect while your memory mapped file was open, and since the file no longer existed the OS couldn’t load it into ram for you and gave you a SIGBUS instead.
Because the OS is loading the file on demand, you now have this wonderful issue where any arbitrary read from an address into the memory mapped file can and will fail at some point.
Luckily on POSIX systems we have signal handlers, and SIGBUS is a signal we can handle. All you need to do is register a signal handler for SIGBUS when the program starts and jump back to our code to handle failures there.
Sadly our code actually has some edge cases we should consider:
Signal handlers are global, but signals themselves are per-thread. So you need to make sure you’re not messing with any other threads by making all our data thread local. Let’s also add some robustness by making sure we’ve called before .
Using and ing from a signal handler is actually unsafe. It seems to cause undefined behaviour, especially on MacOS. Instead we must use and . Since we’re jumping out of a signal handler, we need that signal handler to not block any future signals, so we must also pass to .
This is starting to get quite complicated, especially if you were to have multiple places where a SIGBUS could happen. Let’s factor things out into functions to make the logic a little cleaner.
There, now you just need to remember to always call for every application, and wrap all accesses with . Annoying, but manageable. So now you’ve covered POSIX systems, but what about Windows?
Установка
- wget -qO — https://download.sublimetext.com/sublimehq-pub.gpg | sudo apt-key add —
- sudo apt-get install apt-transport-https
- Вводим команду echo «deb https://download.sublimetext.com/ apt/stable/» | sudo tee /etc/apt/sources.list.d/sublime-text.list для выбора стабильной версии программы, или же «дэв» версии echo «deb https://download.sublimetext.com/ apt/dev/» | sudo tee /etc/apt/sources.list.d/sublime-text.list . «Дэв» или же версия для разработчиков отличается от обычной (стабильной) версии тем, что в ней тестируются новые функции, но в то же время могут возникнуть системные ошибки
- sudo apt-get update && sudo apt-get install sublime-text
Возможности и особенности
Режимы включают показ до 4 файлов. Код отображается в виде мини-карты с опцией навигации. Саблайм оснащается менеджером пакетов для управления/обновления без перезагрузки:
- множественная правка доступна без регулярных выражений/макросов, с помощью указателей;
- подсветка синтаксиса организована разными цветами на тёмном фоне;
- типовая сборка и фрагменты кода с ключевыми фразами настраиваются на авторежим после сохранения кода;
- работает переход по файлам, поиск по документу, проверка правильности ввода, редактор отступов и формата параграфов;
- Sublime Text предлагает варианты завершения вводимого кода.
Несколько проектов можно объединить в единый.
Интерфейс
На самом деле, это не такая уж незначительная деталь, как может показаться на первый взгляд. Если вы пользуетесь инструментом большую часть рабочего дня, в нем должно радовать все. Не только скорость, возможности и удобство, но и эстетическая часть, тоже должна быть в порядке.
Подсветка ситаксиса
Это самое первое, на что обращаешь внимание в любом редакторе. Sublime Text по-умолчанию поддерживает огромное количество языков и предлагает на выбор около 20 цветовых схем
Полноэкранный режим
В этом режиме рабочая область программы занимает весь экран. Очень полезно, если вы хотите, чтобы вас ничего не отвлекало. По настоящему функцию можно оценить когда подключено несколько мониторов. На одном экране редактор, на втором рабочий проект и больше ничего!
Миникарта
Этого не встречал еще ни где. В узкой колонке миникарты умещается примерно 5-6 экранов, что позволяет быстро перемещаться по коду. Это не замена и не аналог закладок, а просто еще один удобный способ навигации.
Мультипанели
Еще одна особенность, присущая далко не всем редакторам, это возможность параллельно работать с несколькими файлами в одном окне. Порой, это намного удобнее чем несколько независимых окон.
Автосохранение
Для того, чтобы не нажимать «Сохранить» каждый раз, когда вам необходимо проверить внесенные изменения, в Sublime Text предусмотрена функция автосохранения. Редактор будет выполнять за вас эту операцию каждый раз, когда окно программы или вкладка с открытым файлом потеряют фокус.
Sublime Merge Roadmap
October 2, 2018
by
Jon Skinner
Just a quick post about what we’re going to be adding to Sublime Merge. This isn’t a comprehensive list, but it should give an indication of what we’re focusing on right now.
- Branch Visualization. Sublime Merge itself handles large repositories well, but there’s more the UI could do to help users with a lot of branches on the go. We’ve got some nice things cooking for this that will be coming in the near future. Stay tuned!
- Submodule Management. Sublime Merge understands submodules, but doesn’t provide any UI for managing them. We’ll be changing that soon.
- Tabs. Tabs have been frequently requested by users working on several repositories at once. The Switch Repository functionality (under the File menu) helps with this, but tabs have their own benefits, so they’re on their way.
- Git Flow Integration. Git Flow is a branching strategy with an accompanying set of command line tools. We’ve had a lot of requests for UI support here, so it’ll be making it in too.
- Interactive Rebase. Sublime Merge currently supports editing commit messages and squashing commits (available from the commit context menu). We’ll be adding extra commit wrangling functionality, including reordering commits, moving commits between branches, and amending arbitrary commits.
- Plugins. Sublime Text style plugins are on our radar. This isn’t at the top of the list, but they’re coming.
We’ll also be getting a new Sublime Text Dev Build out this week, rolling in all the updates from Sublime Merge, including the updated theming system and Mojave support.
sublime_plugin.ViewEventListener Class
A class that provides similar event handling to , but bound to a specific view. Provides class method-based filtering to control what views objects are created for.
The view is passed as a single parameter to the constructor. The default implementation makes the view available via self.view.
Class Methods | Return Value | Description |
---|---|---|
is_applicable(settings) | bool | A @classmethod that receives a object and should return a bool indicating if this class applies to a view with those settings |
applies_to_primary_view_only() | bool | A @classmethod that should return a bool indicating if this class applies only to the primary view for a file. A view is considered primary if it is the only, or first, view into a file. |
Быстрое выделение текста
Множество вариантов выделить определённый фрагмент текста, например то, что заключено внутри скобок – Ctrl+Shift+M. Пригодится в программировании, например. Ставим курсор в любое место внутри скобок и нажимаем заветное сочетание клавиш! Редактор выделит текст по обе стороны от курсора до ближайшей пары скобок.
Если же речь идёт о HTML/XML коде, то выделит содержимое какого-либо тега можно нажатием клавиш Ctrl+Shift+A – выделится только текст внутри конкретного тега. Это очень удобно, если имеется большая вложенность, а инденты (отступы) расставлены не очень красиво.
Кстати, об отступах. Мало того, что они здесь гибко настраиваются, так ещё и есть возможность выделить весь текст на определённом уровне отступов. Для этого нужно запомнить сочетание клавиш Ctrl+Shift+J. Запомнить такое количество клавиш сразу тяжело, но стоит попрактиковать это пару часов в работе и всё!
Кстати, можно выделив какой-то фрагмент текста быстро выделить и другие вхождения этого же фрагмента в тексте нажав Ctrl+D, причём тут мы сталкиваемся с таким понятием, как множественное выделение и редактирование. Теперь в тексте у нас несколько курсоров! Можно вводить и удалять текст одновременно в несколько мест! Этот способ хорош для переименования класса или переменной или перепечатки какого-либо участка текста, если использование поиска и замены нежелательно!
Установка
Все очень просто. Распакуйте скачанный архив и скопируйте все файлы с расширением (кроме папки “backup”) в одну из следующих папок в зависимости от вашей операционной системы, подтвердив замену (если папки “Default” по указанному пути нет, то создайте ее):
ОС и тип установки | Путь |
---|---|
Windows 7/8/10 | c:\Users\Имя_пользователя\AppData\Roaming\Sublime Text 3\Packages\Default\ |
Windows XP | c:\Documents and Settings\Имя_пользователя\Application Data\Sublime Text 3\Packages\Default\ |
Windows (портативная установка) | \папка_с_установленным_Sublime_Text\Data\Packages\Default\ |
OS X | ~/Library/Application Support/Sublime Text 3/Packages/Default/ |
Linux | ~/.config/sublime-text-3/Packages/Default/ |
Обратите внимание, что в названии папки “Default” первая буква должна быть заглавной. Если вы назовете ее “default”, то пункты меню продублируются
В папку “backup” я поместил оригинальные файлы меню Sublime Text на случай, если вы захотите их восстановить.
Почему стоит выбрать Sublime Text 3?
Раньше, когда был пик популярности этого редактора, я почему-то обходил его боком. Первое мое знакомство было таким: я просто его скачал, установил и запустив получил не совсем то так как я ожидал что-то на подобии php storm или netBeans 8.1. Короче он мне не понравился и я его удалил.
Глупость в том, что IDE сравнивать с редактором действительно глупо. Это как гироборд и Tesla Model X.
Но позже все изменилось. У меня достаточно слабенький рабочий ноутбук Acer G4257, как бы странно не звучало, но я пытаюсь выжать с него все соки. Хотя у меня есть еще один ноутбук который я купил совсем недавно я люблю работать на этом старичке. Мной на нем за эти годы было поменяно много чего, кроме процессора, батареи и материнской платы, но он живет и работает на ура.
И все же, если запустить Google Chrome с десятком вкладок, Photoshop и еще какие-то дополнительные вещи, то рядом запустить IDE это только навредить самому себе. Он будет жестко тупить.
Когда терпение лопнуло, я просто оценил ситуацию. Я действительно не использую все блага IDE бульдозера, мне нужна обычная лопатка в виде легкого редактора. Пусть и легкого но такого, который позволит установить много дополнительных плагинов. Выбор был между Sublime Text 3 и Atom, но этот мне показался более интересным — не знаю почему.
К чему я веду? Оказывается, не нужно иметь супер крутой и супер дорогой IDE, достаточно легкого редактора не будет загружать комп лишними задачами. Да может быть у тебя мощный ноутбук, но выбирать что использовать только тебе, главное чтобы это было эффективно.
Я выбрал Sublime Text 3 потому что:
- Он быстрый;
- Гибкая настройка;
- Понятный интерфейс;
- Кроссплатформенность (я настраивал себе его одинаково и на Ubuntu и на Windows 10);
- Он может все, что мне нужно!
В общем если тебе нравится по тем же причинам, ставь лайк!
Редактор
И все-таки, самое главное в редакторе, это его возможности работы с текстом. И у Sublime Text с этим все в порядке. Смотрите сами.
Снипеты
Сейчас все больше редакторов поддерживают снипеты. Наверное, уже можно сказать, что эта функция стала стандартом, наравне с подсветкой синтаксиса. Здесь ST ни чем не выделяется, но и не отстает от ближайших конкурентов. Все есть, и все отлично работает.
Кодкомплит
Автозавершения чего угодно. Если напечатать часть имени известной функции, ST дополнит её. Если подходящих совпадений не найдется, строка будет дополнена первым подходящим значением.
Поиск и замена
Найдется все. Искать можно по всему файлу, только по выделенному фрагменту, с помощью регулярных выражений и в любом направлении. Также, хорошими помощниками станут автоматическая подсветка выделенного, инкрементное выделение и замена.
Закладки
Значительно упрощают навигацию, особенно, когда вы работаете с большим файлом. Закладка запоминает не просто номер строки, а также выделенную область и положение курсора.
Сниппеты
Вот эта тема мне очень понравилась! Есть определённые заранее заготовленные “кирпичики”, которыми можно пользоваться для ускорения ввода текста. Кроме того, можно задавать собственные! Сейчас покажу.
Плагины
Ставим плагин Emmet, он помогает расширить количество сокращений удобных для вёрстки кода (вот список), переходим в редактор и напишем конструкцию вида:
.class1>ul>(li.MenuItem{Пункт $})*5
То есть класс, в который вложен ul, в который вложены li в количестве пяти штук, имеющие класс MenuItem с содержимым тега “Пункт ” и порядковый номер элемента.
Нажимаем Tab и конструкция развернётся в
Колдовство? Согласен!
Собственные сниппеты
Мы также можем делать собственные сниппеты. Весьма несложно. Делается следующим образом:
- Tools -> Developer -> New Snippet
- Откроется новое окно с текстом вроде этого:
- Тут всё в принципе понятно, создаём конструкцию вида:
Думаю понятно, что есть что. content – то, что будет вписано. tabTrigger – по какому сочетанию клавиш это вызывать. scope – область видимости, с какими типами файлов работать. Всё есть в документации. Я же сделал цикл for и описал там некоторую текстовую константу с тремя маркерами ввода, причём в пермое задано значение по умолчанию “0”. Символы $ тут являются служебными, и те, что относятся к тексту, приходится экранировать слешем.
- Сохраняем сниппет:
- Перезапускаем редактор, чтобы изменения вступили в силу… И пробуем! Открываем php-исходник и пишем там наше ключевое слово fori и жмём Tab:
Сначала курсор у нас стоит в позиции с выделенным текстом 0 (это значение по умолчанию ${1:0}), при нажатии следующего Tab, он перейдёт в позицию ${2}, затем ${3}. Таким образом мы можем расставить якоря, куда прыгать курсору для ввода текста! Также есть много служебных ключевых слов и методик, позволяющих модифицировать тело сниппета на лету. Ну я так не углубляюсь, просто пишу часто употребляемые конструкции.
Особенности локализации Sublime Text
В Sublime Text возможность локализации не предусмотрена вообще, а ее очень не хватает. Единственное, что в данный момент можно сделать в этом плане – перевести на русский язык соответствующие фразы в файлах меню (которые, по сути, являются текстовыми файлами), что я, собственно, и сделал.
Есть, однако, один неприятный момент, связанный с русификацией. Если у вас установлены какие-либо плагины, которые добавляют в меню свои пункты, то в этом случае родительские пункты соответствующего меню остаются непереведенными (хотя по сути они переведены). На следующем скриншоте это хорошо видно.
Конечно, можно зайти в файлы меню этих плагинов и перевести в них текст, но, к сожалению, мне невозможно предугадать, какие вы будете устанавливать плагины, поэтому я не могу к основным файлам меню Sublime Text прикладывать еще и русифицированное меню каких бы то ни было плагинов.
Имейте это в виду.
Устанавливаем package control
Package control — это менеджер различных дополнений для расширения возможностей текстового редактора прямо из него. С его помощью можно добавлять другие языки программирования, пакеты для автоматического дополнения кода, форматирования текста и многое другое. Чтобы его установить, запускаем Sublime, если ещё не сделали это раньше, щёлкаем в верхнем меню «Tools» и выбираем внизу пункт «Install package control». Текстовый редактор может на время подвиснуть, но уже скоро вы увидете сообщение об успешной установке:
Устранавливаем package control
Package control успешно установлен
Как я переводил
Это просто так, к сведению. Процесс локализации может показаться очень муторным занятием (поскольку помимо текста, который нужно перевести, там еще много прочего текста). Однако я для себя упростил эту задачу. Посидел несколько часов и написал под это дело специальный скрипт на PHP (особых знаний для этого не потребовалось).
Суть его в следующем — сначала скрипт пробегается по каждому из файлов меню и создает новый файл в JSON-формате, куда вставляется текст, подлежащий переводу (часть пунктов перевода пришлось вставлять руками из-за особенностей кода меню), который я там же и перевожу на русский. Затем скрипт повторно пробегается по каждому файлу меню и заменяет соответствующие пункты на русифицированные из JSON-файла.
Таким образом, в дальнейшем, если разработчик Sublime Text дополнит меню, мне не составит труда быстренько добавить и перевести новые пункты.
Давайте установим руссификатор
(Размер: 21 Кб) Распаковываем скачанный архив и копируем все файлы с расширением .sublime-menu (кроме папки «backup») в одну из следующих папок (в зависимости от вашей операционной системы):
Операционная система | Путь |
Windows XP | c:Documents and SettingsИмя_пользователяApplication DataSublime Text 3PackagesDefault |
Windows 7/8 | c:UsersИмя_пользователяAppDataRoamingSublime Text 3PackagesDefault |
Windows (Portable версия) | папка_с_программой_Sublime_TextDataPackagesDefault |
OS X | ~/Library/Application Support/Sublime Text 3/Packages/Default/ |
Linux | ~/.config/sublime-text-3/Packages/Default/ |
Если папки «Default» по указанному пути нет, то необходимо создайть ее.
Как пользоваться Sublime Text
Перед тем как бесплатно скачать Sublime Text на русском, ознакомьтесь с краткой инструкцией команд и дополнений.
Редактирование и отступы выполняются через командную строку с набранной Cmd +комбинация:
- удалить строку/переместить вверх/переместить вниз — +4/ +Ctrl+↑/ +Ctrl+↓;
- дубль/добавить или убрать комментарий — +⇑+D или +/;
- добавить/убрать комментарий блочный — +⇑ или +/;
- вставить с заданным отступом — +⇑+V;
- переместить строку к предшествующей — +J;
- увеличить/уменьшить отступ строки — +] /+[;
- добавить строку сверху/снизу — +⇑+←/ +←.
Повтор, отмена, замена, поиск (Cmd + …):
- отменить/повторить изменение/дублировать действие/вернуться — через клавишу +Z/+Y/+U/+⇑+U;
- найти/поиск в файлах/замена — +F/ +⇑+F/ +H.
Мультикурсор/выделения (Cmd+…):
- выделить все/эту строку — +A/ +L;
- выделить до начала строки/до конца — +⇑+←/ +⇑+→;
- найти слово мультикурсором — +D;
- выделить слово слева/слово справа — Ctrl+⇑+←/Ctrl+⇑+→;
- мультикурсор вверх/вниз — Ctrl+⇑+↑/Ctrl+⇑+↓;
- расширить — ⇑+стрелки;
- убрать/добавить из выделения — Alt/Cmd.
Навигация (Cmd+…):
- переместиться к файлу/символу/строке — +P/ +P+@ / +P+;
- сайдбар свернуть/развернуть — +K/ +B;
- вкладка предшествующая /следующая/под №/новая — +Alt+←/ +Alt+←/ +/ +№.
Дополнительные опции:
- открыть в браузере —Ctrl+⇑+V (потребуется View in Browser);
- новый файл в этой директории — Cmd+Alt+N (из пакета AdvancedNewFile);
- обернуть выделенное в HTML-тег/в if{ … } с отступами — Ctrl+⇑+W/Cmd+⇑+I+I (потребуется { ’keys’: , «command»: «insert_snippet «args»: {«name»: «Packages/User/if.sublime-snippet»}, файл сниппета пользовательский);
- форматировать JavaScript/расставить отступы — Cmd+⇑+L/Cmd+⇑+R;
- CSS добавить префиксы/пересортировать свойства — Cmd+Ctrl+X/Ctrl+⇑+C;
- включить текст длиной ххх — loremххх (из пакета LoremIpsum);
- генерировать HTML — table.me>tr*3>td{$}*2 (из Emmet).
Для доп. опций нужно добавить в конфигурацию:
- на отступы — { «keys»: , «command»: «reindent»};
- JavaScript — { «keys»: , «command»: «js_format»} из пакета JsFormat;
- пересортировка/префиксы — пакет CSSComb/Prefixr.
Горячие клавиши Sublime Text 3
- Ctrl + Shift + P — вызов менеджера пакетов;
- Ctrl + ` — открыть консоль;
- F11 — полноэкранный режим;
- F9 — сортирует все строки в алфавитном порядке;
- F6 — проверка правописания;
- Shift + F11 — свободный полноэкранный режим;
- Ctrl+K + Ctrl+B — вывести/спрятать боковую панель;
- Ctrl + G — перейти к строке по номеру;
- Ctrl + R — перейти к символу;
- Ctrl + « — перейти к классу;
- Ctrl + I — поиск на лету;
- Ctrl + H — поиск и замена;
- Ctrl + / — закомментировать/раскомментировать текущую строку;
- Ctrl + Shift + / — добавить комментарий;
- Ctrl +Shift + J — выделить блок;
- Ctrl + L — выделение целой строки;
- Ctrl + Z — отмена последних действий, шаг назад;
- Ctrl + T — быстрое перемещение по файлам;
- Сtrl + N — создать новую вкладку (файл);
- Alt + . — закрыть незакрытый тег;
- Ctrl+K + Ctrl+Space — установить метку;
- Ctrl+K + Ctrl+W — удалить метку;
- Ctrl+K + Ctrl+G — удалить все метки;
- Ctrl+K + Ctrl+U — трансформирует выделенный текст в верхний регистр;
- Ctrl+K + Ctrl+L — трансформирует выделенный текст в нижний регистр;
- Ctrl + Shift + A — выделить содержимое html-тега;
- Ctrl + Shift + D — продублировать строку вниз;
- Ctrl + Shift + N — создать новое окно;
- Ctrl + Shift + W — закрыть текущее окно;
- Ctrl + Shift + V — вставить с отступом;
- Ctrl + Shift + [ — свернуть код;
- Ctrl + Shift + ] — развернуть код;
- Ctrl + O — открыть файл;
- Ctrl + Shift + T — открыть последний закрытый файл;
- Ctrl + C — копировать;
- CTRL + V — вставить;
- CTRL + X — вырезать;
- Ctrl + S — сохранить текущий файл;
- Ctrl + Shift + S — вызвать окно «Сохранить как»;
- Ctrl + + — увеличить размер шрифта в редакторе;
- Ctrl + — — уменьшить размер шрифта в редакторе;
- Ctrl + q — записать макрос;
- Ctrl + Shift + q — воспроизвести макрос;
- Ctrl + Alt + Shift + P — отобразить название контекста, в котором находится курсор;
Горячие клавиши плагина Emmet
- Shift + ! — сгенерировать разметку html-документа;
- ul>li*5 — выведет 5 тегов li, заключенных в тег ul;
- #selector — выведет <div id=»selector»></div>;
- ul>li*10>a{item$} — выведет 10 тегов <a href=»»>, заключенных в теги li и ul;
- (div>p)+(span>em) — выведет одновременно несколько тегов;
- div.class+div#id — вывод блока div с указанным класом + вывод блока div с указанным идентификатором;
- div — вывод атрибутов;
- h1{Заголовок} — создаст тег h1 с указанным текстом;
- Lorem5 — сгенерировать «текст-рыбу» с 5 слов;
- .class — выведет блок div с указанным классом: <div class=»class»></div>;
- a:link — <a href=»http://»></a>;
- a:mail — <a href=»mailto:»></a>;
- base — <base href=»»>;
- link — <link rel=»stylesheet» href=»»>;
- link:css — <link rel=»stylesheet» href=»style.css»>;
- link:favicon — <link rel=»shortcut icon» type=»image/x-icon» href=»favicon.ico»>;
- link:rss — <link rel=»alternate» type=»application/rss+xml» title=»RSS» href=»rss.xml»>;
- meta:utf — выведет мета-тег кодировки html-документа;
- meta:vp — мета-тег viewport;
- script:src — <script src=»»></script>;
- img — <img src=»» alt=»»>;
- ifr — <iframe src=»» frameborder=»0″></iframe>;
- emb — <embed src=»» type=»»>;
- obj — <object data=»» type=»»></object>;
- form — <form action=»»></form>;
- input — <input type=»text»>;
- tarea — <textarea name=»» id=»» cols=»30″ rows=»10″></textarea>;
Как установить плагин Emmet в Sublime Text
Плагин Emmet позволяет писать код быстрее, благодаря сочетанием клавиш. Например базовую HTML5-разметку вы можете создать сочетанием клавиш ! + tab. Удобно правда?
Для установки Emmet перейдите в Preferences — Package Control и в открывшемся окне напечатайте install package, затем введите слово emmet и выберите его для запуска процесса установки. Иногда требуется перезагрузка Sublime Text 3 после установки новых дополнений.
Важно: плагин Emmet в Sublime Text 3 не будет генерировать код, если вы ранее не сохранили файл, например, как index.html
Более подробную работу с Emmet и горячие клавиши мы рассматриваем в курсе HTML/CSS и других курсах Профессия веб-программист. Пройдя данные курсы, вы получите знания основ программирования и создадите на практике свой первый профессиональный сайт о кино.
Начать обучение на курсе Профессия веб-программист вы можете прямо сейчас, без ожидания пока наберется группа, и данный курс рассчитан на самостоятельное обучение, что позволит вам обучаться по собственному расписанию когда вам будет удобно, а если у вас появятся вопросы в процессе обучения, вы сможете их задать в наше сообщество FRUCTCODE, где другие студенты обязательно вам помогут решить задачу.
Caveat 2: Windows
Windows doesn’t have , but it does have . Both of these implement memory mapped files, but there’s one important difference: Windows keeps a lock on the file, not allowing it to be deleted. Even with the Windows flag deletion does not work. This is an issue when we expect another application to delete files from under us, such as git garbage collection.
One way around this with the windows API is to essentially disable the system file cache entirely, which just makes everything absurdly slow. The way Sublime Merge handles this is by releasing the memory mapped file on idle. Its not a pretty solution, but it works.
Windows also does not have a SIGBUS signal, but you can trivially use structured exception handling in instead:
Now all is well, your application functions on Windows. But then you decide that you would like some crash reporting, to make it easier to identify issues in the future. So you add Google Breakpad, but unbeknownst to you you’ve just broken Linux and MacOS again…
An Alternative
I mentioned before that you can rewrite your code to not use memory mapping. Instead of passing around a long lived pointer into a memory mapped file all around the codebase, you can use functions such as to copy only the portions of the file that you require into memory. This is less elegant initially than using , but it avoids all the problems you’re otherwise going to have.
Through some quick benchmarks for the way Sublime Merge reads git object files, was around ⅔ as fast as on linux. In hindsight it’s difficult to justify using over , but now the beast has been tamed and there’s little reason to change any more.
Minimalist editor for hardcore programming
Sublime Text is a free minimalist coding editor developed by Sublime HQ for desktop use. This development and IT program enable you to solely focus on your code, leaving all the other types of eye-candy out. This pared-back coding tool should never be underestimated as it is capable of supporting most programming languages and can work with multiple documents at the same time—each one on a different tab.
Is Sublime Text free?
The binary file of Sublime Text is free to download and be evaluated. However, it requires a purchased license for your continuous use. If you will use the program individually then, you must select and buy the personal license. This is a one-off purchase that comes with 3 years of updates. Once the 3-year updates are done, you will be required to do an upgrade to keep on receiving further updates.
If the program is for an organization, the business license is the right one to be bought. Unlike the personal license, this can be purchased on an annual tiered subscription basis. The amount is based on the number of seats you’ll get—for example, there exists a 10-seat license, an 11 to 25-seat license, and a 26 to 50-seat license. Any seats more than fifty will have a fixed price of the highest amount.
What is Sublime Text good for?
Despite the tool’s minimal style and lightweight size, Sublime Text is heavily-packed with exceptional features. However, these are placed in the form of plugins and extensions that can be a bit of a hassle—especially for beginner users of this coding editor. Nevertheless, it is still the ideal text editor for large projects as it is capable of opening and editing multiple files simultaneously in the fastest way possible.
Not only does its incredible navigation feature called “GoTo Anything” enables you to access any element of your code immediately, but it also gives you permission to zoom out and view their code as one solid page instead of unnecessarily scrolling through lines individually. More importantly, this is highly customizable for any style of coding you want to achieve.
Streamlined for large projects
Sublime Text is a fast and smooth text editor that is perfect for editing large projects. It supports most of the coding languages you can possibly use. The “GoTo Anything” navigation feature it offers is everything you need to get the job right and quickly done. For beginners, however, it is possible for you to be lost—especially since most of its features are packed in a series of plugins and extensions.