Skip to content

Форматирование сообщений

@gramio/format - это встроенный пакет GramIO. Вы также можете использовать его вне этого фреймворка, так как он не зависит от него.

Смотрите также API Reference.

Format

Шаблонный литерал, который помогает создавать сущности сообщений для форматирования текста.

Используйте его, если хотите удалить все отступы в начале каждой строки. (как common-tags#stripindents или dedent)

IMPORTANT

Для форматирования с массивами используйте его с помощником join

ts
format
`какой-то текст`;
// или
format
`${
bold
`Хмм...`} ${
link
(
"GramIO", "https://github.com/gramiojs/gramio" )}?`;

Давайте отправим что-нибудь...

ts
bot
.
api
.
sendMessage
({
chat_id
: 12321,
text
:
format
`${
bold
`Hi!`}
Can ${
italic
("you")} help ${
spoiler
`me`}?
Can you give me ${
link
("a star", "https://github.com/gramiojs/gramio")}?`,
});

format

FormatSaveIndents

Шаблонный литерал, который помогает создавать сущности сообщений для форматирования текста.

Используйте его, если хотите сохранить все отступы.

ПРИМЕЧАНИЕ: для форматирования с массивами используйте его с помощником join

ts
bot
.
api
.
sendMessage
({
chat_id
: 12321,
text
:
formatSaveIndents
`${
bold
`Hi!`}
Can ${
italic
("you")} help ${
spoiler
`me`}?
Can you give me ${
link
("a star", "https://github.com/gramiojs/gramio")}?`,
});

format-save-indents

Сущности

Жирный

Форматирует текст как жирный. Нельзя комбинировать с code и pre.

ts
format
`Format text as ${
bold
`bold`}`;

bold example

Курсив

Форматирует текст как курсив. Нельзя комбинировать с code и pre.

ts
format
`Format text as ${
italic
`italic`}`;

italic example

Подчеркнутый

Форматирует текст как подчеркнутый. Нельзя комбинировать с code и pre.

ts
format
`Format text as ${
underline
`underlined`}`;

underline example

Зачеркнутый

Форматирует текст как зачеркнутый. Нельзя комбинировать с code и pre.

ts
format
`Format text as ${
strikethrough
`strikethrough`}`;

strikethrough example

Спойлер

Форматирует текст как

спойлер
. Нельзя комбинировать с code и pre.

ts
format
`Format text as ${
spoiler
`spoiler`}`;

spoiler example

Цитата

Форматирует текст как цитату. Не может быть вложенной.

ts
format
`Format text as ${
blockquote
`quote`}`;

blockquote example

Раскрывающаяся цитата

Форматирует текст как раскрывающуюся цитату. Не может быть вложенной.

ts
format
`Format text as ${
expandableBlockquote
(
loremIpsum
({
count

expandable blockquote example

Код

Форматирует текст как код. Удобно для скопированных элементов. Нельзя комбинировать с любым другим форматированием.

ts
format
`Format text as ${
code
`code`}`;

code example

Pre

Форматирует текст как pre. Нельзя комбинировать с любым другим форматированием. (Поддерживаемые языки)

ts
format
`Format text as ${
pre
`pre`}`;
// или с указанием языка
format
`Format text as ${
pre

Код

Форматирует текст как код. Удобно для скопированных элементов. Нельзя комбинировать с любым другим форматированием.

ts
format
`Format text as ${
code
`code`}`;
ts
format
`Format text as ${
link

Pre

Форматирует текст как pre. Нельзя комбинировать с любым другим форматированием. (Поддерживаемые языки)

ts
format
`Format text as ${
pre
`pre`}`;
// или с указанием языка
format
`Format text as ${
pre
(`console.log("pre with language")`, "js")}`;
ts
format
`Format text as ${
mention
("mention", {
id
: 12312312,
is_bot
: false,
first_name
: "GramIO",
})}`;

mention example

🄲 🅄 🅂 🅃 🄾 🄼 ㅤ🄴 🄼 🄾 🄹 🄸

Вставляет пользовательский эмодзи по его id.

ts
format
`text with emoji - ${
customEmoji

Упоминание

Форматирует текст как упоминание. Нельзя комбинировать с code и pre.

ts
format
`Format text as ${
mention
("mention", {
id
: 12312312,
is_bot
: false,
first_name
: "GramIO",
})}`;

mention example

🄲 🅄 🅂 🅃 🄾 🄼 ㅤ🄴 🄼 🄾 🄹 🄸

ts
format
`${
join
x
) =>
format
`${
bold
(
x