mirror of
https://github.com/vim/vim.git
synced 2025-12-10 18:46:57 -05:00
runtime(odin): support underscore-separated numeric literals
Add support for underscore-separated numeric literals in Odin syntax highlighting. This allows proper highlighting of numbers like 1_000_000, 0xFF_AA_BB, and 0b1010_1111 as specified in the Odin language. > Numerical literals are written similar to most other programming > languages. A useful feature in Odin is that underscores are allowed > for better readability: 1_000_000_000 (one billion). > https://odin-lang.org/docs/overview/#numbers closes: #18852 Signed-off-by: Maxim Kim <habamax@gmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
This commit is contained in:
committed by
Christian Brabandt
parent
911ecdcd0e
commit
c7c16e4130
@ -4,7 +4,7 @@ vim9script
|
|||||||
# Language: Odin
|
# Language: Odin
|
||||||
# Maintainer: Maxim Kim <habamax@gmail.com>
|
# Maintainer: Maxim Kim <habamax@gmail.com>
|
||||||
# Website: https://github.com/habamax/vim-odin
|
# Website: https://github.com/habamax/vim-odin
|
||||||
# Last Change: 2025-03-28
|
# Last Change: 2025-12-06
|
||||||
|
|
||||||
if exists("b:current_syntax")
|
if exists("b:current_syntax")
|
||||||
finish
|
finish
|
||||||
@ -53,12 +53,12 @@ syntax region odinAttribute
|
|||||||
\ start="@\ze(" end="\ze)"
|
\ start="@\ze(" end="\ze)"
|
||||||
\ transparent oneline
|
\ transparent oneline
|
||||||
|
|
||||||
syntax match odinInteger "\-\?\<\d\+\>" display
|
syntax match odinInteger "\v-?<[0-9]+%(_[0-9]+)*>" display
|
||||||
syntax match odinFloat "\-\?\<[0-9][0-9_]*\%(\.[0-9][0-9_]*\)\%([eE][+-]\=[0-9_]\+\)\=" display
|
syntax match odinFloat "\v-?<[0-9]+%(_[0-9]+)*%(\.[0-9]+%(_[0-9]+)*)%([eE][+-]=[0-9]+%(_[0-9]+)*)=" display
|
||||||
syntax match odinHex "\<0[xX][0-9A-Fa-f]\+\>" display
|
syntax match odinHex "\v<0[xX][0-9A-Fa-f]+%(_[0-9A-Fa-f]+)*>" display
|
||||||
syntax match odinDoz "\<0[zZ][0-9a-bA-B]\+\>" display
|
syntax match odinDoz "\v<0[zZ][0-9A-Ba-b]+%(_[0-9A-Ba-b]+)*>" display
|
||||||
syntax match odinOct "\<0[oO][0-7]\+\>" display
|
syntax match odinOct "\v<0[oO][0-7]+%(_[0-7]+)*>" display
|
||||||
syntax match odinBin "\<0[bB][01]\+\>" display
|
syntax match odinBin "\v<0[bB][01]+%(_[01]+)*>" display
|
||||||
|
|
||||||
syntax match odinAddressOf "&" display
|
syntax match odinAddressOf "&" display
|
||||||
syntax match odinDeref "\^" display
|
syntax match odinDeref "\^" display
|
||||||
|
|||||||
Reference in New Issue
Block a user