- Настройка проверки синтаксиса «налету» HTML, CSS, JS, PHP в Sublime Text 3 на Windows 7
- Настройка автоматического определения синтаксиса для расширений файлов в Sublime Text 3
- 1 ответ 1
- 1. Без установки дополнительных плагинов
- 2. ApplySyntax
- 3. Как определить путь к файлу синтаксиса
- 1. Через встроенную консоль
- Как задать дефолтный синтаксис для новой вкладки Sublime Text 3. Или разрешить использовать сниппеты Emmet’a для синтаксиса Plain Text?
- Пользовательский синтаксис в Sublime Text 3
Настройка проверки синтаксиса «налету» HTML, CSS, JS, PHP в Sublime Text 3 на Windows 7
Всем привет. У Sublime Text 3 есть замечательный плагин Sublime Linter, который позволяет делать проверку кода на наличие синтаксических ошибок. Промучился я как-то с настройкой этого SublimeLinter, аж три дня. Но всё таки мои мучения прошли не зря и теперь Sublime на лету проверяет синтаксис в HTML, CSS, PHP и JS файлах. Вроде бы всё подробно расписано на различных форумах, а он в некоторых случаях не работает — и всё, хоть убей. Поэтому я и пишу эту статью, чтобы охватить всё и сразу.
ВНИМАНИЕ! Статья описывает настройку Sublime Text 3 (далее ST3) на Windows 7 x64 Professional.
1. Представим что вы уже установили ST3 на свой Win 7 и установили Package Control.
2. Теперь необходимо поставить дополнительные пакеты в ST3. Идем в Preferences -> Package Control -> Install Packages
И устанавливаем следующие пакеты:
— SublimeLinter
— SublimeLinter-html-tidy
— SublimeLinter-csslint
— SublimeLinter-jsl
— SublimeLinter-jshint
— SublimeLinter-php
— SublimeLinter-phplint
— LESS
— JSHint
3. Настройка проверки ошибок синтаксиса HTML
3.1. Скачиваем tidy.exe и кладем его в любую понравившуюся вам папку.
3.2. Добавляем путь до этой папки! с tidy.exe в переменную серды пользователя windows (PATH), настройки которой, находятся в Мой компьютер -> Свойства -> Дополнительные параметры системы -> Переменные среды… -> Выбираем переменную «PATH» -> Жмем «Изменить» добавляем путь.
ВНИМАНИЕ! Обратите внимание на точку с запятой «;» после каждого пути и не забудьте её прописать, а так же обратите внимание на обратный \ слеш.
4. Настройка проверки ошибок синтаксиса CSS
4.1. Скачиваем и устанавливаем node.js
4.2. Добавляем путь до папки (до папки!) с node.js в PATH (путь примерно следующий: C:\Users\User_name\AppData\Roaming\npm )! Незабываем про точку с запятой.
4.3. Устанавливаем csslint. Для этого — запускаем командую строку Windows от имени админа и пишем: npm install -g csslint
5. Настройка проверки ошибок синтаксиса JavaScript
5.1. Если не делали пункты 4.1. и 4.2. — то делаем.
5.2. Устанавливаем jslint и jshint, для этого выполняем ту же самую операцию что и в пункте 4.3. только пишем вместо csslint — jslint и jshint соответственно.
6. Настройка проверки ошибок синтаксиса PHP
6.1. Вот с этиим вобще гемор. Лично я долго искал проблему, почему же не работает подсветка.
6.2. (UPDATE) Дело в том, что многие (в том числе и я) в качестве локального сервера ставят себе Denwer. И черт его знает почему (не вдавался в подробности), но PHP денвера не воспринимается ST3, хоть убей. Он может выводить ошибки PHP в консоль ST3, но подсветки синтаксиса так и не будет.
P.S. Я специально добавил этот пункт, т.к. на многих форумах пишут, что ставим PHP, настраиваем пакеты ST3 и будет вам счастье. Но счастья не происходит, т.к. пункт с установкой PHP обычно сразу опускается из-за надежды на работоспособность(пригодность) denwer-a.
6.3. Поэтому, сразу идем сюды и скачиваем PHP. Установка PHP — просто разархивируйте архив в любую папку и пропишите путь до этой папки в PATH (пункт 3.2.)
6.4. Если у вас был прописан в PATH путь до папки с PHP денвера, то обязательно удалите его.
7. Файл конфигурации SublimeLinter.sublime.settings
НЕОБХОДИМО ПОПРАВИТЬ ПУТИ К tidy.exe и php.exe
8. Перезапускаем Sublime. Profit.
Еще! Бывает что некоторые забывают про режим debug mode у Sublimelinter. Чтобы его включить, жмем правой кнопкой мыши в любое место области редактирования ST3 -> SublimeLinter -> Debug Mode
Источник
Настройка автоматического определения синтаксиса для расширений файлов в Sublime Text 3
Не помню точно, что тогда сделал, но теперь при открытии css или less файлов автоматически ставится синтаксис Pascal. Не знаете, как это убрать? Редактор — Sublime Text 3.
1 ответ 1
Положим, у нас установлен плагин LESS , но при открытии файлов с расширением less синтаксис определяется как Pascal .
1. Без установки дополнительных плагинов
View → Syntax → Open all with current extension as. → LESS → отныне ко всем файлам с расширением less будет автоматически применяться синтаксис LESS .
2. ApplySyntax
Многофункциональный плагин для работы с автоматическим определением синтаксисов. О прочих его возможностях я рассказал в других ответах.
Устанавливаем плагин через Package Control → Preferences → Package Settings → ApplySyntax → Settings — User → увидите правило «syntaxes»: [] . В нём между [квадратными скобками] добавляем следующий код:
Не путайтесь в JSON-синтаксисе, следите за правильной расстановкой кавычек, скобок и запятых.
- extensions — расширение, которому мы настраиваем синтаксис,
- syntax — относительный путь к файлу синтаксиса после Packages и без расширения.
3. Как определить путь к файлу синтаксиса
Обычно достаточно повторения компьютерного языка через слэш — Python/Python или PHP/PHP , — но иногда это не срабатывает.
1. Через встроенную консоль
Открываем файл, в котором нормально определён синтаксис LESS → Ctrl+’ (машинописный обратный апостроф, символ расположен на той же клавише, где кириллическая «ё») → вставляем в открывшуюся консоль следующий код:
Источник
Как задать дефолтный синтаксис для новой вкладки Sublime Text 3. Или разрешить использовать сниппеты Emmet’a для синтаксиса Plain Text?
Цель такова: чтоб при создании новой вкладки в sublime был доступен эммет. А значит, здесь два путя:
1. Задать html дефолтным синтаксисом, чего в «preferences» -> «settings — default» нету.
2. Разрешить emmet для синтаксиса Plain Text. В конфиге эммета нашел, что можно вот так:
но, в общем, не получается, хотя вроде всё просто. Буду рад, если кто укажет где я затупил^^
- Вопрос задан более трёх лет назад
- 2351 просмотр
1. Создание собственного плагина
Preferences → Browse Packages. → в папке User создаём файл default_syntax.py со следующим содержимым:
Сохраняем. Теперь по умолчанию новые файлы будут открываться с синтаксисом HTML, где работает Emmet.
Многофункциональный плагин для работы с файлами с автоопределением синтаксисов. В примере показано, что необходимо сделать, для того, чтобы новые файлы открывались в синтаксисе HTML.
Скачиваем ApplySyntax → перезагружаем на всякий случай Sublime Text → Preferences → Package Settings → ApplySyntax → Settings — User → задаём параметру “new_file_syntax”: вместо false значение — путь к файлу синтаксиса без расширения, для HTML это HTML/HTML. В итоге строка будет выглядеть так:
Сохраняем файл, отныне все новые файлы должны открываться в синтаксисе HTML.
Пример, когда синтаксис автоматически определяется как Python, ежели мы начинаем новый файл со слова import.
Установка и настройка
Скачиваем плагин AutoSetSyntax через Package Control → Preferences → Package Settings → ApplySyntax → Settings — User → в открывшийся файл вставляем следующий код:
Не путайтесь в JSON-синтаксисе, следите за правильной расстановкой кавычек, скобок и запятых. Например, мой файл AutoSetSyntax.sublime-settings выглядит следующим образом:
Сохраняем файл → после введения инструкции import синтаксис нового файла должен определиться как Python.
Источник
Пользовательский синтаксис в Sublime Text 3
Я пытаюсь выяснить, как создать подсветку синтаксиса в Sublime Text 3, используя новое определение стиля синтаксиса.sublime-синтаксис (большинство предыдущих ответов относятся к старым способам его выполнения).
С Sublime Text Build 3084 был добавлен новый формат определения синтаксиса с расширением.sublime-syntax.
Но я не могу найти самую основную часть информации, подробно описывающую, как эти связи соединяются!
Я не пытаюсь создать тему или изменить существующее определение синтаксиса. Я просто хочу создать подсветку синтаксиса для файлов с расширением, которое я планирую использовать для своих целей.
В определении синтаксиса я должен указать область (например, scope: source.c), но где находится этот файл области видимости? Вернее, где я могу создать свой файл области видимости и как его назвать, чтобы он загружался? Как узнать, что мой файл синтаксиса и файл области действия, который он использует, загружаются и применяются успешно? Есть ли какие-либо шаги компиляции или обновления, или все автоматически перезагружается?
Полное обсуждение того, как создать настраиваемый синтаксис, хорошо выходит за рамки чего-то столь же простого, как ответ на переполнение стека. Также я думаю, что вы делаете свою проблему более сложной, чем на самом деле (хотя создание синтаксиса в целом довольно сложно).
Для того, чтобы проделать шаги, которые вы предпримете для создания пользовательского синтаксиса, вот пример.
Для начала создайте файл со следующим содержимым и сохраните его где-нибудь как sample.ec и оставьте файл открытым:
Вы заметите, что синтаксис для этого файла установлен в Plain Text (см. Строку состояния в правом нижнем углу), который является синтаксисом по умолчанию для файлов, неизвестных Sublime.
Теперь выберите » Tools > Developer > New Syntax. в меню. Появится буфер со следующим. Используйте File > Save чтобы сохранить файл; местоположение по умолчанию будет соответствовать вашему User пакету. Имя, которое вы ему даете, не важно, но убедитесь, что расширение является sublime-syntax . В моем примере я Sample.sublime-syntax свой файл Sample.sublime-syntax .
Теперь откройте Sublime Console с помощью View > Show Console или нажмите соответствующую привязку клавиш. Вы увидите, что последняя строка в консоли:
Оставив консоль открытой, щелкните файл синтаксиса и снова выполните другую операцию сохранения, не меняя ничего. Эта же строка снова появляется в консоли.
Есть ли какие-либо шаги компиляции или обновления, или все автоматически перезагружается?
Как видно здесь, каждый раз, когда вы изменяете определение синтаксиса, файл перекомпилируется и результаты кэшируются. Таким образом, нет шагов компиляции (кроме сохранения), и ничего не нужно делать, чтобы обновить что-либо.
Теперь вернем наше внимание к образцу. Он по-прежнему открыт, и синтаксис все еще говорит, что это Plain Text .
Теперь закройте файл и снова откройте его; ярлык для этого заключается в использовании File > Open Recent > Reopen Closed File или связанного с ним привязки клавиш.
Обратите внимание, что теперь, когда файл снова открывается, есть несколько изменений. Во-первых, имя синтаксиса в нижней правой части окна говорит Sample (или то, что вы назвали вашим sublime-syntax файла выше). Для других содержимое файла теперь выделено синтаксисом.
Цвета, которые вы видите, зависят от используемой вами цветовой схемы, но пример может выглядеть так:
Как узнать, что мой файл синтаксиса и файл области действия, который он использует, загружаются и применяются успешно?
Вы можете видеть, что файл синтаксиса был скомпилирован из-за отсутствия сообщения об ошибке при сохранении изменений, и вы можете сказать, что он применяется, пытаясь использовать синтаксис.
Здесь синтаксис используется автоматически, но вы обнаружите, что если вы установите флажок » View > Syntax в меню или щелкните текущее имя синтаксиса в правом нижнем углу окна, появится ваш синтаксис. Аналогично, теперь есть запись в палитре команд с именем Set Syntax: Sample (или что-то еще).
Это приводит нас к вашему последнему вопросу. Если вы вернетесь в свой файл sublime-syntax , вы увидите это вверху:
Первое, что нужно отметить, это то, что file_extensions включает ec , и наш примерный файл называется sample.ec ; поэтому этот синтаксис применяется к нему автоматически из-за его имени.
Теперь переключитесь в файл sample.ec , поместите курсор где-нибудь в буфер и используйте » Tools > Developer > Show Scope Name или нажмите соответствующий ключ.
Содержимое всплывающего окна, которое появляется, будет меняться в зависимости от того, где находится файл, в котором находится курсор, но общая точка заключается в том, что область видимости всегда начинается с source.example-c .
В определении синтаксиса я должен указать область (например, scope: source.c), но где находится этот файл области видимости? Вернее, где я могу создать свой файл области видимости и как его назвать, чтобы он загружался?
Как видно здесь, нет такой вещи, как «файл области»; файл sublime-syntax напрямую указывает область действия как часть правил синтаксиса, поэтому это единственный файл, который нужно создать для создания синтаксиса. Это может выглядеть как имя файла, но это не одно.
Области, которые применяются в правилах синтаксического соответствия в синтаксисе, должны совпадать с областями в вашей цветовой схеме, чтобы выделить синтаксис; почему вы должны использовать правила именования области для использования общего набора областей, которые все синтаксисы обмениваются, если вы также не планируете использовать цветовую схему для синтаксиса, но если вы не используете рекомендуемые области, ваш синтаксис выиграл ‘ t хорошо работает с другими цветовыми схемами, и ваша цветовая схема не будет работать хорошо для других синтаксисов.
С этой начальной точки вы можете изменить файл sublime-syntax здесь, чтобы он выделял файлы так, как вы хотите. Это будет включать изменение основной области сверху, применение соответствующего расширения, а затем включение всех правил, соответствующих вашему языку.
Как упоминалось выше, создание фактических правил, соответствующих вашему файлу, является самой сложной частью создания синтаксиса, если ваш формат файла очень упрощен. Он выходит за рамки того, что может быть передано в ответе «Переполнение стека», но официальная документация, приведенная выше, дает вам некоторую информацию об этом.
Помимо просмотра существующих синтаксических файлов, чтобы узнать, как они делают то, что они делают, вы также можете задать более интересные вопросы на форуме Sublime.
Источник