parse-mode
)
解析模式(这个插件提供了一个设置默认的 parse
的 transformer,以及一个中间件,用于将 Context
中的 reply
方法转换成常用的 reply
,reply
,等等方法。
使用方法
import { Bot } from "grammy";
import { hydrateReply, parseMode } from "@grammyjs/parse-mode";
import type { ParseModeContext } from "@grammyjs/parse-mode";
const bot = new Bot<ParseModeContext>("");
// 使用插件。
bot.use(hydrateReply);
// 为 ctx.reply 设置默认解析模式
bot.api.config.use(parseMode("MarkdownV2"));
bot.command("demo", async (ctx) => {
await ctx.reply("*This* reply uses _MarkdownV2_ as the default `formatting`");
await ctx.replyWithHTML(
"<b>This</b> is <i>withHTML</i> <code>formatting</code>",
);
await ctx.replyWithMarkdown("*This* is _withMarkdown_ `formatting`");
await ctx.replyWithMarkdownV1("*This* is _withMarkdownV1_ `formatting`");
await ctx.replyWithMarkdownV2("*This* is _withMarkdownV2_ `formatting`");
});
bot.start();
const { Bot } = require("grammy");
const { hydrateReply, parseMode } = require("@grammyjs/parse-mode");
const bot = new Bot("");
// 使用插件。
bot.use(hydrateReply);
// 为 `ctx.reply` 设置默认 `parse_mode`。
bot.api.config.use(parseMode("MarkdownV2"));
bot.command("demo", async (ctx) => {
await ctx.reply("*This* reply uses _MarkdownV2_ as the default `formatting`");
await ctx.replyWithHTML(
"<b>This</b> is <i>withHTML</i> <code>formatting</code>",
);
await ctx.replyWithMarkdown("*This* is _withMarkdown_ `formatting`");
await ctx.replyWithMarkdownV1("*This* is _withMarkdownV1_ `formatting`");
await ctx.replyWithMarkdownV2("*This* is _withMarkdownV2_ `formatting`");
});
bot.start();
import { Bot } from "https://deno.land/x/grammy@v1.11.2/mod.ts";
import {
hydrateReply,
parseMode,
} from "https://deno.land/x/grammy_parse_mode@1.5.0/mod.ts";
import type { ParseModeContext } from "https://deno.land/x/grammy_parse_mode@1.5.0/mod.ts";
const bot = new Bot<ParseModeContext>("");
// 使用插件。
bot.use(hydrateReply);
// 为 `ctx.reply` 设置默认 `parse_mode`。
bot.api.config.use(parseMode("MarkdownV2"));
bot.command("demo", async (ctx) => {
await ctx.reply("*This* reply uses _MarkdownV2_ as the default `formatting`");
await ctx.replyWithHTML(
"<b>This</b> is <i>withHTML</i> <code>formatting</code>",
);
await ctx.replyWithMarkdown("*This* is _withMarkdown_ `formatting`");
await ctx.replyWithMarkdownV1("*This* is _withMarkdownV1_ `formatting`");
await ctx.replyWithMarkdownV2("*This* is _withMarkdownV2_ `formatting`");
});
bot.start();