Создание собственных наборов эмодзи
Это руководство покажет, как создавать и использовать собственные наборы эмодзи.
Создание собственных наборов
Сначала нужно подготовить изображения эмодзи, а затем выполнить шаги ниже, чтобы создать свой набор.
Именование эмодзи и их загрузка
Для простоты Waline использует имя файла изображения эмодзи как ключ эмодзи. Это значит, что если подключить два разных набора и в обоих есть изображение laugh.png, оба варианта будут соответствовать одному и тому же эмодзи :laugh:.
Поэтому лучшая практика — добавлять ко всем именам файлов эмодзи префикс, связанный с названием набора.
После того как имена заданы, изображения нужно загрузить на свой сервер.
Описание набора
Предположим, что изображения эмодзи размещены в каталоге `
https://example.com/my-emoji/
├─ my_laugh.png
├─ my_cute.png
├─ my_rage.png
├─ my_sob.png
└─ info.jsonКроме того, для этой папки нужно создать файл info.json, чтобы Waline знал, какие эмодзи входят в набор.
Сначала зададим название набора, например My Emoji; поскольку для изображений задан префикс my_, а файлы имеют формат png, эти значения нужно добавить в info.json.
Файл info.json может выглядеть так:
{
"name": "My Emoji",
"prefix": "my_",
"type": "png"
}Затем перечислите все имена эмодзи в items в нужном порядке, при этом не указывайте в них префикс и расширение, заданные в prefix и type.
{
"name": "My Emoji",
"prefix": "my_",
"type": "png",
"icon": "cute"
}После этого выберите эмодзи, который будет отображаться на вкладке в качестве иконки:
{
"name": "My Emoji",
"prefix": "my_",
"type": "png",
"icon": "cute",
"items": ["laugh", "sob", "rage", "cute"]
}На этом info.json готов — загрузите его в ту же папку.
Набор my-emoji успешно создан и доступен по адресу https://example.com/my-emoji/'.
Использование зеркала GitHub с тегами
Обычно держать собственный домен и загружать на него изображения бывает неудобно, к тому же ссылка со временем может перестать работать. Более продвинутый подход — использовать репозиторий GitHub и теги git, чтобы предоставлять набор эмодзи через зеркало GitHub-репозитория.
Как и в шагах выше, нужно создать новый репозиторий GitHub, назвать эмодзи тем же способом, подготовить info.json и загрузить всё в репозиторий.
Затем создайте для репозитория тег; рекомендуемый формат — vx.x.x, например v1.0.0.
После добавления тегов можно использовать в качестве набора CDN-ссылку с версией на cdn.jsdelivr.net в формате https://cdn.jsdelivr.net/gh/user/repo@version/file.
Предположим, создан репозиторий example/emoji, в него загружены изображения эмодзи и info.json, а также создан тег v1.0.0. Тогда в качестве набора можно использовать https://cdn.jsdelivr.net/gh/example/emoji@v1.0.0/.
Совет
Указывать тег в ссылке необходимо, чтобы ссылки на изображения в старых комментариях не переставали работать из-за изменения набора.
Официальный набор эмодзи устроен так же: создан репозиторий walinejs/emojis, и используется CDN-ссылка. Сейчас применяется версия v1.1.0.
Примечание
Так как cdn.jsdelivr.net недоступен в Китае, можно заменить cdn.jsdelivr.net на gcore.jsdelivr.net
Использование объекта конфигурации
Как и в предыдущем разделе, предположим, что структура файлов такая:
https://example.com/my-emoji/
├─ my_laugh.png
├─ my_cute.png
├─ my_rage.png
└─ my_sob.pngПомимо загрузки info.json и использования ссылки в качестве набора, можно передать в качестве набора объект следующего вида:
{
name: "My Emoji",
folder: "https://example.com/my-emoji",
prefix: "my_",
type: "png",
icon: "cute",
items: ["laugh", "sob", "rage", "cute"]
}Здесь дополнительно указано свойство folder, которое сообщает Waline, где хранятся изображения.
