NOTEPAD ELITE / Центр поддержки
Разработчики и создатели
Настройте NotePad Elite под себя и поделитесь созданными ресурсами. В этих руководствах описаны форматы ресурсов, которые приложение может импортировать, и приведены небольшие примеры для скачивания, редактирования и проверки.
Текст меню может различаться в зависимости от выбранного языка и версии приложения. Используйте эквивалентную команду на своем устройстве.
Создать тему
Тема — это документ XML, содержащий GlobalStyles и, необязательно, LexerStyles. Если вам нужна полная языковая поддержка, начните с экспортированной темы. Стартер Ocean намеренно небольшой: он устанавливает синюю палитру редактора и несколько стилей Python.
Цвета задаются шестью шестнадцатеричными цифрами без #. Глобальные записи WidgetStyle описывают поверхность редактора, поля, текстовый курсор, выделение и текущую строку. LexerType группирует стили языка; значения styleID относятся к соответствующему лексеру, и их нельзя вывести из значений другого языка. fontStyle — битовая маска: 1 — полужирный, 2 — курсив, 4 — подчёркнутый; 0 — обычный стиль.
- Скачайте Elite-Ocean.xml и сохраните копию перед редактированием.
- В настройках откройте «Импорт настроек и тем» → «Импортировать тему XML». Импорт активирует копию в библиотеке приложения; исходный файл не изменяется.
- Откройте примеры Python и обычного текста. Проверьте текст, выделение, курсор, поля и контраст в светлом и тёмном окружении.
- Откройте «Темы» → «Редактировать стили», доработайте результат командой «Сохранить копию» и выберите «Экспортировать 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 явно. Расширения разделяются пробелами и пишутся без начальной точки. Экспортируйте копию после тестирования.
<?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>
Создайте словарь автодополнения
Автозаполнение API XML выводит список записей KeyWord. Запись функции может содержать элементы Overload и Param для подсказок по вызову. Он описывает предложения; он не реализует эти функции.
Импортированное имя файла выбирает языковой ресурс. Сохраните пример с именем python.xml и во время тестирования выберите Python. Изменить только AutoComplete language недостаточно для перехода на другой язык. Сохраните существующий словарь, прежде чем импортировать замену.
<?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 и файл без объявлений.
<?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>
Делитесь полезными макросами
Запишите небольшую повторяемую правку и проверьте её на копии. Дайте макросу понятное имя и управляйте им в библиотеке макросов. Собственный формат экспорта использует версионированный JSON; переносимый экспорт использует shortcuts.xml для поддерживаемого подмножества действий.
Сохраняйте формат, экспортированный приложением. Не редактируйте внутренние идентификаторы вручную и не предполагайте, что каждое действие может перемещаться между профилями. Укажите ожидаемый режим выбора, входной образец, выходной образец и версию приложения. Импортированные записи, которые не могут быть запущены, следует проверять, а не рекламировать как поддерживаемые.
Опубликовать каталог UDL
Собственный каталог — это JSON с полем schemaVersion со значением 1 и массивом entries. Каждая запись содержит уникальный id, name, author, HTTPS-адрес исходного XML в поле url и лицензию. Необязательное поле sha256 содержит 64-значный хеш SHA-256 ресурса.
Каталог, доступный для скачивания на этом сайте, ссылается на реальный XML ресурса Elite Demo и включает его контрольную сумму. Чтобы опубликовать собственный каталог, замените запись и URL своим ресурсом, пересчитайте хеш после правок и разместите оба файла по HTTPS. Затем проверьте предварительный просмотр каталога и установку в приложении.
{
"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 для скачивания либо отправьте ссылку на ресурс в поддержку по электронной почте.
- Протестируйте импорт, выберите ресурс и проверьте его влияние на предоставленный образец.
- Проверьте текст с диакритическими знаками и пустой файл; проверьте длинные имена и контраст в светлом и тёмном оформлении.
- Экспортируйте окончательный ресурс из приложения, задокументируйте все ограничения и добавьте журнал изменений.
- Поделитесь URL, лицензией и типом ресурса, чтобы другие пользователи знали, что они устанавливают.
Связаться со службой поддержки
Вопросы, отчеты об ошибках, запросы на конфиденциальность или ресурсы сообщества: пишите нам. Укажите версию приложения, устройство и шаги для воспроизведения. Не отправляйте пароли, ключи или личные документы.
notepadelite@outlook.com Разработчик: Daniel Ortega Del Casar