telegram-markdown-formatter
v0.1.2
Published
ChatGPT Markdown -> Telegram HTML converter (TypeScript)
Maintainers
Readme
telegram-markdown-formatter
TypeScript конвертер Markdown в HTML для Telegram Bot API. Перенос оригинального Python-модуля на TypeScript с улучшенной типизацией.
Установка
npm install telegram-markdown-formatterИспользование
JavaScript/TypeScript
import { telegramFormat } from 'telegram-markdown-formatter';
const markdown = `
# Заголовок
Это **жирный** и _курсивный_ текст.
\`\`\`python
print("Hello, World!")
\`\`\`
> Цитата
> Многострочная
- Список
- Элементы
[Ссылка](https://example.com)
`;
const html = telegramFormat(markdown);
console.log(html);CLI
# Установка глобально
npm install -g telegram-markdown-formatter
# Использование
tg-md file.md
echo "**bold** _italic_" | tg-md
# Разбиение на части <=4096 символов для Telegram
tg-md long-message.md --splitПоддерживаемые форматы
- Жирный:
**текст**→<b>текст</b> - Курсив:
*текст*или_текст_→<i>текст</i> - Подчеркнутый:
__текст__→<u>текст</u> - Зачеркнутый:
~~текст~~→<s>текст</s> - Спойлер:
||текст||→<span class="tg-spoiler">текст</span> - Заголовки:
# Заголовок→<b>Заголовок</b> - Списки:
- элемент→• элемент - Ссылки:
[текст](URL)→<a href="URL">текст</a> - Код:
`код`→<code>код</code> - Блоки кода: ````python\nкод\n``` →
<pre><code class="language-python">код</code></pre> - Цитаты:
> текст→<blockquote>текст</blockquote> - Расширяемые цитаты:
**> текст→<blockquote expandable>текст</blockquote>
API
telegramFormat(text: string): string
Конвертирует Markdown в HTML, совместимый с Telegram Bot API.
splitHtmlForTelegram(html: string): string[]
Разбивает HTML на части <=4096 символов для отправки в Telegram.
Разработка
# Клонирование
git clone https://github.com/lykov/ts-chatgpt-tg-formatter.git
cd ts-chatgpt-tg-formatter
# Установка зависимостей
npm install
# Сборка
npm run build
# Тесты
npm test
# Тесты в режиме watch
npm run test:watchЛицензия
MIT
