UDL (User-defined language) request 2: extend number style
How can I have UDL highlight time constant, which is defined as HH:mm:ss (e.g. 01:30:00)?
If the colon (
:) is in your
Operators & Delimiters>
Operators 1list, then UDL will parse the
00as numbers (though the colon itself will not be shown as part of the number)
Yes, it will. But:
- The colon itself won’t be colourized as a number (but as an operator)
- In the following construct, the last numerical part is not parsed:
My definitions are:
- Operator 1:
, ( ) = + - * / % & :
- Delimiter 3: Open
>(to at least somehow handle XML data)
As a comment, HEREDOC cannot be set up together with my Delimiter 3 :-(
Unfortunately, at some point, the desires for a language-definition outgrow the abilities of the UDL. Fortunately, at that point, there is the potential for writing a custom lexer plugin for NPP. (Sorry, can’t help you there.)
… Then you have to ask yourself, “is the 80-90% coverage of what I want that UDL gives good enough, or do I need to invest the time and/or money in developing for myself or having someone else develop a lexer plugin to do exactly what I want?” That’s something only you can answer for yourself. Though there may be other NPP users on this forum who can help you get more out of the UDL than I know how to do.
Well, I didn’t expect UDL to be capable of doing it at the moment, as far as I could read the documentation, but it might eventually enhance a constant literal rule from only covering a subset of ASCII numbers (e.g.
6.19e-23won’t be matched either, afaik) to some more complex definitions, where the time definition might find its place :-)