on-codemerge
Version:
A WYSIWYG editor for on-codemerge is a user-friendly interface that allows users to edit and view their code in real time, exactly as it will appear in the final product
57 lines (56 loc) • 1.38 kB
JavaScript
/*! on-codemerge v1.3.1 @author Pavel Kuzmin @license MIT @homepage https://s00d.github.io/on-codemerge/ @repository git+https://github.com/s00d/on-codemerge.git Copyright (c) 2026 Pavel Kuzmin - Built on 2026-07-02T13:39:17.947Z */
import { TokenType as e } from "../../../types.mjs";
const n = {
name: "ruby",
patterns: {
[e.Comment]: /^#.*$/,
[e.String]: /^(%[qQrwWx]?\{(?:[^}\\]|\\.)*\}|%[qQrwWx]?\[(?:[^\]\\]|\\.)*\]|%[qQrwWx]?\((?:[^)\\]|\\.)*\)|%[qQrwWx]?<(?:[^>\\]|\\.)*>|(['"])(?:\\[\s\S]|(?!\1)[^\\])*\1)/,
[e.Number]: /^\b(?:0[xX][0-9a-fA-F]+|\d+(?:\.\d+)?(?:[eE][+-]?\d+)?)\b/,
[e.Function]: /^\b[a-zA-Z_]\w*[?!]?(?=\s*[({])/,
[e.Symbol]: /^:[a-zA-Z_]\w*/,
[e.Variable]: /^(?:@{1,2}|\$)[a-zA-Z_]\w*/,
[e.Operator]: /^(?:<<|>>|<=|>=|<=>|={3}|!={2}|={2}|=~|!~|&&|\|\||\.{2,3}|[+\-*/%&|^<>!~]=?)/,
[e.Punctuation]: /^[{}[\]().,;]/
},
keywords: [
"alias",
"and",
"begin",
"break",
"case",
"class",
"def",
"defined?",
"do",
"else",
"elsif",
"end",
"ensure",
"false",
"for",
"if",
"in",
"module",
"next",
"nil",
"not",
"or",
"redo",
"rescue",
"retry",
"return",
"self",
"super",
"then",
"true",
"undef",
"unless",
"until",
"when",
"while",
"yield"
]
};
export {
n as rubyDefinition
};