Awesome
Syntax Highlighter Bot
The bot for creating an image with highlighted code from a message.
Overview
This bot was written on top of the Telegraf.js bot framework, so all you need to have is the Node.js > v6.
Usage
Demo (WIP version).
The bot listens for entities type of pre
in any text message. It means, it will render all pieces of text, wrapped in triple backticks (multiline code). Also you could force the language, writing its name on the first line, right after backticks. Just like on the GitHub.
Look at the example of a code should be handled by the bot:
\`\`\`js
/**
* Show themes list
*/
bot.command('theme', (ctx) => isPrivateChat(ctx)
? ctx.replyWithMarkdown(
messages.themeChoose(ctx.state.user.theme),
Markup.keyboard(themesKeyboard(themes)).oneTime().resize().extra()
)
: ctx.reply(messages.themeGroup)
)\`\`\`
Commands
/start
- Initial launch of the bot./theme
- Shows the list of included themes and allows you to select a theme which you like more./langs
- Shows the list of supported languages.
Installing
First of all clone this repository and install dependencies. Run in the terminal:
$ git clone git@github.com:Piterden/syntax-highlighter-bot.git
$ cd syntax-highlighter-bot
$ npm i
Then you need to create and fill the new .env
file:
$ cp .env.example .env
$ editor .env
Built With
- Telegraf.js - The bot framework.
- Objection.js - ORM.
- Express.js - HTTP server.
- Knex.js - Query builder.
Contributing
Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests to us.
Authors
- Cristian Ospina - Bot's initial version - CristianOspina
- Denis Efremov - Rewrite to the Node.js - Piterden
License
This project is licensed under the MIT License - see the LICENSE.md file for details
Donate
- BTC
3F275vPSCvYW19MHZqSjw79fEwwU4MbTgV
- LTC
MGMCQB3QAcrSBjU3eGJviqB2J2f5BNVRGr
- DOGE
D5m69FRDGEn3G3xuakvqTxUpGVt6NegKJp