nextjournal / nextjournal/clojure-mode
No highlighting for radix numbers
Nobody has claimed this yet.
- Dominant language
- Clojure
- Stars
- 174
- Forks
- 18
- PR merge metrics
- No merged PRs in 30d
Description
Clojure allows for numbers with a radix between 2 and 36.
Also, the BigInt N suffix is allowed after a hexadecimal number.
From https://clojure.org/reference/reader#_literals:
When possible, they can be specified in any base with radix from 2 to 36 (see Long.parseLong()); for example 2r101010, 052, 8r52, 0x2a, 36r16, and 42 are all the same Long.

Here are some regex from [clojure.tools.reader] describing all numbers. (https://github.com/clojure/tools.reader/blob/master/src/main/clojure/clojure/tools/reader/impl/commons.clj#L46-L48)
(def ^Pattern int-pattern #"([-+]?)(?:(0)|([1-9][0-9]*)|0[xX]([0-9A-Fa-f]+)|0([0-7]+)|([1-9][0-9]?)[rR]([0-9A-Za-z]+)|0[0-9]+)(N)?")
(def ^Pattern ratio-pattern #"([-+]?[0-9]+)/([0-9]+)")
(def ^Pattern float-pattern #"([-+]?[0-9]+(\.[0-9]*)?([eE][-+]?[0-9]+)?)(M)?")
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by locating the Clojure number-highlighting rules in this CodeMirror 6 mode and compare them with the clojure.tools.reader regex quoted in the issue. Verify radix forms from 2r101010 through 36r16, hexadecimal BigInt N suffixes, ratios, and floats are highlighted as intended.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- clojure
- Domain
- tooling
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 42/100