This commit is contained in:
2025-09-21 22:28:03 +02:00
parent c70e53905a
commit 95624267db
2 changed files with 24 additions and 18 deletions

View File

@@ -54,4 +54,5 @@
"in"
"match"
"and"
"or"
] @keyword

View File

@@ -5,7 +5,7 @@
(doc_comment)
] @leaf
; TODO: word wrapping in comments
; TODO: light asciidoc formatting
(definition) @allow_blank_line_before
@@ -16,29 +16,26 @@
(let_binding
"let" @prepend_spaced_softline @append_space
"=" @prepend_space @append_space ; @append_spaced_softline
value: (_) @prepend_indent_start @append_indent_end
body: (_) @prepend_hardline)
; TODO: (await_binding)
"=" @prepend_space @append_space
value: (_) @prepend_indent_start @append_indent_end @prepend_begin_measuring_scope @append_end_measuring_scope
body: (_) @prepend_hardline
(#scope_id! "def"))
(def
":" @prepend_space @append_spaced_softline
signature: (_) @prepend_spaced_softline @prepend_indent_start @append_indent_end)
(def
"=" @prepend_space @append_spaced_softline
value: (_) @prepend_indent_start @prepend_begin_scope
@append_indent_end @append_end_scope
value: (_) @prepend_indent_start @prepend_begin_measuring_scope
@append_indent_end @append_end_measuring_scope
(#scope_id! "def"))
(def "def" @append_space)
(if_expr
then: (_) @prepend_begin_scope @append_end_scope
then: (_) @prepend_begin_measuring_scope @append_end_measuring_scope
(#scope_id! "if_expr.then"))
(if_expr
else: (_) @prepend_begin_scope @append_end_scope
else: (_) @prepend_begin_measuring_scope @append_end_measuring_scope
(#scope_id! "if_expr.else"))
(if_expr
"if" @prepend_space @append_space
@@ -68,10 +65,14 @@
"," @append_spaced_softline)
(list_expression
"[" @append_begin_scope @append_empty_softline @append_indent_start
"]" @append_end_scope @prepend_empty_softline @append_indent_end
"[" @append_begin_measuring_scope @append_empty_softline @append_indent_start
"]" @append_end_measuring_scope @prepend_empty_softline @append_indent_end
(#scope_id! "list_expr"))
; remove trailing comma
(list_expression
"," @delete . "]")
(extensible_union
"extensible" @append_space
"union" @append_space)
@@ -111,10 +112,13 @@
(record_expr
"{" @append_empty_softline
"}" @prepend_empty_softline)
; remove trailing comma
(record_expr
"," @delete . "}")
(atom
"(" @append_begin_scope @append_empty_softline @append_indent_start
")" @append_end_scope @prepend_empty_softline @append_indent_end
"(" @append_begin_measuring_scope @append_empty_softline @append_indent_start
")" @append_end_measuring_scope @prepend_empty_softline @append_indent_end
(#scope_id! "paren_expr"))
(await_expr
@@ -131,8 +135,8 @@
(type_atom
"(" @append_begin_scope @append_empty_softline @append_indent_start
")" @append_end_scope @prepend_empty_softline @append_indent_end
"(" @append_begin_measuring_scope @append_empty_softline @append_indent_start
")" @append_end_measuring_scope @prepend_empty_softline @append_indent_end
(#scope_id! "paren_type"))
(tag_expr
@@ -145,3 +149,4 @@
; TODO: types
; TODO: disable-format-regions
; TODO: folding query
; TODO: wrap confusing expressions (in terms of precedence) in parens