1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 |
- /*
- Language: Brainfuck
- Author: Evgeny Stepanischev <imbolk@gmail.com>
- Website: https://esolangs.org/wiki/Brainfuck
- */
- /** @type LanguageFn */
- function brainfuck(hljs) {
- const LITERAL = {
- className: 'literal',
- begin: /[+-]/,
- relevance: 0
- };
- return {
- name: 'Brainfuck',
- aliases: ['bf'],
- contains: [
- hljs.COMMENT(
- '[^\\[\\]\\.,\\+\\-<> \r\n]',
- '[\\[\\]\\.,\\+\\-<> \r\n]',
- {
- returnEnd: true,
- relevance: 0
- }
- ),
- {
- className: 'title',
- begin: '[\\[\\]]',
- relevance: 0
- },
- {
- className: 'string',
- begin: '[\\.,]',
- relevance: 0
- },
- {
- // this mode works as the only relevance counter
- begin: /(?:\+\+|--)/,
- contains: [LITERAL]
- },
- LITERAL
- ]
- };
- }
- module.exports = brainfuck;
|