20 lines
328 B
JavaScript
20 lines
328 B
JavaScript
export default grammar({
|
|
name: 'unicode_classes',
|
|
|
|
rules: {
|
|
program: $ => repeat(choice(
|
|
$.lower,
|
|
$.upper,
|
|
$.math_sym,
|
|
$.letter_number,
|
|
)),
|
|
|
|
lower: _ => /\p{Ll}\p{L}*/,
|
|
|
|
upper: _ => /\p{Lu}\p{L}*/,
|
|
|
|
math_sym: _ => /\p{Sm}+/,
|
|
|
|
letter_number: _ => /\p{Letter_Number}/,
|
|
},
|
|
});
|