Вход
Приветствую Вас Гость
 
Главная » 2021 » Июнь » 11 » Ряд изменений в подсветке синтаксиса QSP для Sublime Text
20:13
Ряд изменений в подсветке синтаксиса QSP для Sublime Text

Наверное, имеет смысл подвести какие-то итоги по моей работе над пакетом QSP для Sublime Text.

Во-первых, теперь это действительно Пакет. И в этот пакет входят:

  • Default.sublime-keymap - файл настройки сочетаний клавиш при работе с QSP-файлом
  • Indentation Rules.tmPreferences - файл настройки поведения отступов
  • Location in Goto-List.tmPreferences - файл настройки распознавания локаций в проекте
  • Markup in Goto-List.tmPreferences - файл настройки распознавания меток на локации
  • QSP.sublime-build - файл настройки build-system для сборки файлов `.qsp`.
  • qsp.sublime-syntax - файл со схемой подсветки синтаксиса QSP
  • qsp_locations.sublime-syntax - дополнительный файл со схемой подсветки синтаксиса QSP, предназначенный для встраивания подсветки QSP в схемы подсветки других языков.
  • syntax_test_qsp.qsps - файл с образцом синтаксиса QSP для теста подсветки (не билдится сублаймом).

Во-вторых, из-за того что файл назначения клавиш, и файл build-system перенесены в общий Пакет, немного изменился порядок установки. Теперь необходимо отредактировать эти файлы и потом упаковать в Пакет, либо извлечь из релизного Пакета, отредактировать и упаковать обратно.

В самой подсветке внесены некоторые изменения:

  • Изменена подсветка операторов многострочных конструкций act, if, else, elseif, loop, end - они подсвечиваются голубым курсивом в теме monokai.
  • Добавлена подсветка конструкций неявного вызова, а так же подсветка ошибочной записи таких конструкций:
  • Текст между локациями подсвечивается таким же цветом, как комментарий, но ведёт себя, как код. К нему применяется scope meta.diff. Это сделано для того, чтобы работали сниппеты вставки локаций.
  •  Добавлена правильная подсветка `end loop`, `end act`, `end if` - теперь такие сочетания подсвечиваются, как отдельное ключевое слово.

Добавлены сниппеты в привязке к клавишам. Если выделить какой-то текст и нажать определённые клавиши, будет выполнено следующее:

  • b - Оборачивает выделенный текст в теги `<b>` и `</b>`
  • i - Оборачивает выделенный текст в теги `<i>` и `</i>`
  • p - Оборачивает выделенный текст в теги `<p>` и `</p>`
  • f - Оборачивает выделенный текст в теги `<font color=#000000 size=0>` и `</font>`
  • d - Оборачивает выделенный текст в теги `<div>` и `</div>`
  • h - Оборачивает выделенный текст в теги `<h1>`-`<h6>` и `</h1>`-`</h6>`
  • alt+h - Оборачивает выделенный текст в теги `<html>` и `</html>`

Добавлены так же сниппеты, вызываемые по вводу ключевых слов, или части строки кода. Нажав клавишу Tab, можно вставить сниппет. Переключаться между полями вставленного фрагмента так же можно с помощью клавиши Tab.

Вот какие сниппеты вы можете использовать:

  • newloc или последовательный ввод # (диез и пробел) - добавляет новую локацию:
    # название_локации
    !@ Код, выполняемый при посещении локации
    --- название_локации ---------------------------------
  • addobj - добавляет одну из строк кода:
    addobj "Название предмета","путь к файлу картинки/picture.jpg",позиция
    addobj "Название предмета"
  • act - добавляет действие:
    act "Название действия":
         !@ Код действия
    end
  • if - добавляет конструкцию условия:
    if условие_выполнено:
    !@ Если условие выполнено
         !@ Код, который выполняется, если условие выполнено
    end
  • ifelse - добавляет условие с ветвлением:
    if условие_выполнено:
    !@ Если условие выполнено
         !@ Код, который выполняется, если условие выполнено
    else:
    !@ Если условие не выполнено
         !@ Код, который выполняется, если условие не выполнено
    end

Добавлено поведение отступов. Если пишешь `act`, `loop`, `if` и т.п., затем после двоеточия нажимаешь `Enter`, в следующей строке автоматически добавляется отступ. Если после этого вводишь `end`, отступ перед `end` сокращается.

Сочетание `Ctrl+Shift+R` запускает GOTO по проекту, при этом открывается список локаций по всему проекту, а так же меток на текущей локации.

Сочетание `Ctrl+R` запускает GOTO по текущему файлу, при этом открывается список локаций и меток по текущему файлу.

Вот такие изменения произошли в Пакете QSP для Sublime Text. Непосредственно сам скрипт пока не менялся, но в скором времени будет изменён. Будет добавлена обработка простейшего препроцессора. На сколько в скором? Боюсь это зависит уже не от меня.

Очередной релиз доступен по этой ссылке: https://github.com/AleksVersus/JAD_for_QSP/releases/tag/v.0.3

Просмотров : 307 | Добавил : aleksversus | Рейтинг : 0.0/0
Всего комментариев : 0
Имя *:
Email *:
Код *:
Наверх