NotePad Elite
App Store
← Вернуться к поддержке

NOTEPAD ELITE / Центр поддержки

Разработчики и создатели

Настройте NotePad Elite под себя и поделитесь созданными ресурсами. В этих руководствах описаны форматы ресурсов, которые приложение может импортировать, и приведены небольшие примеры для скачивания, редактирования и проверки.

Скачать стартовый набор для создателей

Текст меню может различаться в зависимости от выбранного языка и версии приложения. Используйте эквивалентную команду на своем устройстве.

Создать тему

Тема — это документ XML, содержащий GlobalStyles и, необязательно, LexerStyles. Если вам нужна полная языковая поддержка, начните с экспортированной темы. Стартер Ocean намеренно небольшой: он устанавливает синюю палитру редактора и несколько стилей Python.

Цвета задаются шестью шестнадцатеричными цифрами без #. Глобальные записи WidgetStyle описывают поверхность редактора, поля, текстовый курсор, выделение и текущую строку. LexerType группирует стили языка; значения styleID относятся к соответствующему лексеру, и их нельзя вывести из значений другого языка. fontStyle — битовая маска: 1 — полужирный, 2 — курсив, 4 — подчёркнутый; 0 — обычный стиль.

  1. Скачайте Elite-Ocean.xml и сохраните копию перед редактированием.
  2. В настройках откройте «Импорт настроек и тем» → «Импортировать тему XML». Импорт активирует копию в библиотеке приложения; исходный файл не изменяется.
  3. Откройте примеры Python и обычного текста. Проверьте текст, выделение, курсор, поля и контраст в светлом и тёмном окружении.
  4. Откройте «Темы» → «Редактировать стили», доработайте результат командой «Сохранить копию» и выберите «Экспортировать XML» для распространения.
Elite-Ocean.xmlСкачать ↓
<?xml version="1.0" encoding="UTF-8"?>
<NotepadPlus>
  <GlobalStyles>
    <WidgetStyle name="Default Style" styleID="32" fgColor="DCEBFF" bgColor="102C54" fontName="Menlo" fontSize="14" fontStyle="0" />
    <WidgetStyle name="Line number margin" styleID="33" fgColor="88A9D2" bgColor="102C54" />
    <WidgetStyle name="Caret colour" styleID="2069" fgColor="62ADFF" />
    <WidgetStyle name="Selected text colour" styleID="0" fgColor="FFFFFF" bgColor="245B96" />
    <WidgetStyle name="Current line background colour" styleID="0" bgColor="15365F" />
  </GlobalStyles>
  <LexerStyles>
    <LexerType name="python" desc="Python" ext="py pyw">
      <WordsStyle name="KEYWORD" styleID="5" fgColor="84C1FF" bgColor="102C54" fontStyle="1" />
      <WordsStyle name="COMMENTLINE" styleID="1" fgColor="8BA6C8" bgColor="102C54" fontStyle="2" />
    </LexerType>
  </LexerStyles>
</NotepadPlus>

Определите язык с помощью UDL

Файл UDL XML описывает расширения, группы ключевых слов, комментарии, разделители и стили. Используйте встроенный редактор пользовательского языка для более подробного определения; стартер выделяет только task, end, true и false в файлах .edemo.

Импортируйте Elite-Demo.xml в качестве языка пользователя и откройте elite-demo.edemo. При необходимости выберите Elite Demo явно. Расширения разделяются пробелами и пишутся без начальной точки. Экспортируйте копию после тестирования.

Elite-Demo.xmlСкачать ↓
<?xml version="1.0" encoding="UTF-8"?>
<NotepadPlus>
  <UserLang name="Elite Demo" ext="edemo" udlVersion="2.1">
    <Settings>
      <Global caseIgnored="no" allowFoldOfComments="no" foldCompact="no" forcePureLC="0" decimalSeparator="0" />
      <Prefix Keywords1="no" />
    </Settings>
    <KeywordLists>
      <Keywords name="Keywords1">task end true false</Keywords>
    </KeywordLists>
    <Styles>
      <WordsStyle name="DEFAULT" styleID="0" fgColor="102C54" bgColor="F8FBFF" fontStyle="0" />
      <WordsStyle name="KEYWORDS1" styleID="4" fgColor="1559AD" bgColor="F8FBFF" fontStyle="1" />
    </Styles>
  </UserLang>
</NotepadPlus>
elite-demo.edemo ↓

Создайте словарь автодополнения

Автозаполнение API XML выводит список записей KeyWord. Запись функции может содержать элементы Overload и Param для подсказок по вызову. Он описывает предложения; он не реализует эти функции.

Импортированное имя файла выбирает языковой ресурс. Сохраните пример с именем python.xml и во время тестирования выберите Python. Изменить только AutoComplete language недостаточно для перехода на другой язык. Сохраните существующий словарь, прежде чем импортировать замену.

python.xmlСкачать ↓
<?xml version="1.0" encoding="UTF-8"?>
<NotepadPlus>
  <AutoComplete language="python">
    <Environment ignoreCase="no" startFunc="(" stopFunc=")" paramSeparator="," />
    <KeyWord name="save_note" func="yes">
      <Overload retVal="None" descr="Save a note to the selected path.">
        <Param name="path: str" />
        <Param name="text: str" />
      </Overload>
    </KeyWord>
    <KeyWord name="project_name" />
  </AutoComplete>
</NotepadPlus>

Добавить правила списка функций

Анализатор функций использует регулярные выражения для идентификации объявлений и извлечения имен. В примере объявления задач находятся в Elite Demo. Импортируйте elite-demo-functions.xml и overridemap.xml через импортер правил-функций.

Карта переопределения связывает имя UDL Elite Demo с elite-demo-functions.xml. Если у вас уже есть карта переопределения, объедините ассоциацию вместо потери других сопоставлений. Протестируйте образец .edemo и файл без объявлений.

elite-demo-functions.xmlСкачать ↓
<?xml version="1.0" encoding="UTF-8"?>
<NotepadPlus>
  <functionList>
    <parser id="elite-demo" displayName="Elite Demo">
      <function mainExpr="(?m)^task\h+\w+">
        <functionName><nameExpr expr="task\h+\K\w+" /></functionName>
      </function>
    </parser>
  </functionList>
</NotepadPlus>
overridemap.xml ↓

Делитесь полезными макросами

Запишите небольшую повторяемую правку и проверьте её на копии. Дайте макросу понятное имя и управляйте им в библиотеке макросов. Собственный формат экспорта использует версионированный JSON; переносимый экспорт использует shortcuts.xml для поддерживаемого подмножества действий.

Сохраняйте формат, экспортированный приложением. Не редактируйте внутренние идентификаторы вручную и не предполагайте, что каждое действие может перемещаться между профилями. Укажите ожидаемый режим выбора, входной образец, выходной образец и версию приложения. Импортированные записи, которые не могут быть запущены, следует проверять, а не рекламировать как поддерживаемые.

Опубликовать каталог UDL

Собственный каталог — это JSON с полем schemaVersion со значением 1 и массивом entries. Каждая запись содержит уникальный id, name, author, HTTPS-адрес исходного XML в поле url и лицензию. Необязательное поле sha256 содержит 64-значный хеш SHA-256 ресурса.

Каталог, доступный для скачивания на этом сайте, ссылается на реальный XML ресурса Elite Demo и включает его контрольную сумму. Чтобы опубликовать собственный каталог, замените запись и URL своим ресурсом, пересчитайте хеш после правок и разместите оба файла по HTTPS. Затем проверьте предварительный просмотр каталога и установку в приложении.

catalog.jsonСкачать ↓
{
  "schemaVersion": 1,
  "entries": [
    {
      "id": "elite-demo",
      "name": "Elite Demo",
      "author": "NotePad Elite",
      "url": "https://notepadelite.pages.dev/resources/Elite-Demo.xml",
      "license": "MIT",
      "sha256": "840e13fc62289ec0edf66a525370b30626d400a46e0fb559c4fb9e9c268f6fee"
    }
  ]
}

Делитесь проектами и сеансами

Проект XML группирует ссылки на файлы и папки. Его корневой элемент — NotepadPlus, а элементы Project, Folder и File имеют атрибуты name. Создавайте, импортируйте и экспортируйте структуру через панель проектов, а не полагайтесь на частные абсолютные пути.

Экспортированный проект содержит ссылки, а не копии документов. Объясните, как сопоставить пути и авторизовать папку на новом устройстве. Удалите личные пути из общих сеансов, включите папку с образцами и исключите из пакета личные документы.

Подключите языковой сервер

Инструменты анализа кода могут подключаться к выбранному языковому серверу по протоколу LSP через TCP или TLS. Укажите сервер и порт, предоставьте доступ к локальной папке проекта и сопоставьте её URI, если сервер использует другой путь. Приложение не устанавливает и не запускает сервер за вас.

Соединение может отправлять текст документа и пути на этот сервер, когда вы запрашиваете языковые действия. Объясните настройку сервера, поддерживаемый язык, транспортировку и правила конфиденциальности. Используйте локальный индекс проекта, если вам нужен только автономный поиск символов.

Упакуйте и поделитесь своей работой

Опубликуйте ресурс с четким названием, указав README, автора, версию, лицензию, поддерживаемые версии приложения, инструкции по установке и небольшой пример. Добавьте снимок экрана для темы и ожидаемый ввод/вывод для макросов или правил синтаксического анализа.

Убедитесь, что у вас есть право распространять все включённые сторонние материалы. Удалите личные пути, учётные данные и частные документы. Этот сайт предлагает документацию и стартовые ресурсы для скачивания, а не галерею пользовательских загрузок: поделитесь своим репозиторием или URL для скачивания либо отправьте ссылку на ресурс в поддержку по электронной почте.

  1. Протестируйте импорт, выберите ресурс и проверьте его влияние на предоставленный образец.
  2. Проверьте текст с диакритическими знаками и пустой файл; проверьте длинные имена и контраст в светлом и тёмном оформлении.
  3. Экспортируйте окончательный ресурс из приложения, задокументируйте все ограничения и добавьте журнал изменений.
  4. Поделитесь URL, лицензией и типом ресурса, чтобы другие пользователи знали, что они устанавливают.

Связаться со службой поддержки

Вопросы, отчеты об ошибках, запросы на конфиденциальность или ресурсы сообщества: пишите нам. Укажите версию приложения, устройство и шаги для воспроизведения. Не отправляйте пароли, ключи или личные документы.

notepadelite@outlook.com Разработчик: Daniel Ortega Del Casar