Is it really this difficult?
pragdave opened this issue · 1 comments
pragdave commented
Using prism.js for Macro-11 assembler, I can define a register as
register: {
pattern: /\b(:?r[0-7])|sp|pc\b/i,
},
Using lezer, I seem to need
Register {
@specialize<identifier, "r0">
| @specialize<identifier, "r1">
| @specialize<identifier, "r2">
| @specialize<identifier, "r3">
| @specialize<identifier, "r4">
| @specialize<identifier, "r5">
| @specialize<identifier, "r6">
| @specialize<identifier, "r7">
| @specialize<identifier, "R0">
| @specialize<identifier, "R1">
| @specialize<identifier, "R2">
| @specialize<identifier, "R3">
| @specialize<identifier, "R4">
| @specialize<identifier, "R5">
| @specialize<identifier, "R6">
| @specialize<identifier, "R7">
| @specialize<identifier, "sp">
| @specialize<identifier, "sP">
| @specialize<identifier, "Sp">
| @specialize<identifier, "SP">
| @specialize<identifier, "pc">
| @specialize<identifier, "pC">
| @specialize<identifier, "Pc">
| @specialize<identifier, "PC">
}
The issues I'm circumventing are:
- I can't give the register pattern a higher priority than identifiers, and
- I can't specify case insensitive strings
Am I missing something?
marijnh commented
You can use an external specializer if you prefer.