Commit: runtime(qml): Add optional chaining to QML syntax

1 view
Skip to first unread message

Christian Brabandt

unread,
Apr 28, 2026, 5:30:15 PMApr 28
to vim...@googlegroups.com
runtime(qml): Add optional chaining to QML syntax

Commit: https://github.com/vim/vim/commit/c5de8231f436d47ca5daf4f4d5d91c55632f52ce
Author: ii14 <ii...@users.noreply.github.com>
Date: Tue Apr 28 21:20:41 2026 +0000

runtime(qml): Add optional chaining to QML syntax

"obj?.prop" was wrongly parsed as ternary operator.

closes: #19988

Signed-off-by: ii14 <ii...@users.noreply.github.com>
Signed-off-by: Christian Brabandt <c...@256bit.org>

diff --git a/runtime/syntax/qml.vim b/runtime/syntax/qml.vim
index d6f2abec3..e395d83c2 100644
--- a/runtime/syntax/qml.vim
+++ b/runtime/syntax/qml.vim
@@ -4,6 +4,7 @@
" Maintainer: Chase Knowlden <haroldk...@gmail.com>
" Changes: `git log` is your friend
" Last Change: 2023 Aug 16
+" 2026 Apr 16 by Vim project: handle ?. optional chaining #19988
"
" This file is bassed on the original work done by Warwick Allison
" <warwick...@nokia.com> whose did about 99% of the work here.
@@ -44,6 +45,7 @@ syn match qmlObjectLiteralType "[A-Za-z][_A-Za-z0-9]*\s*\({\)\@="
syn region qmlTernaryColon start="?" end=":" contains=@qmlExpr,qmlBraces,qmlParens,qmlLineComment
syn match qmlBindingProperty "\<[A-Za-z][_A-Za-z.0-9]*\s*:"
syn match qmlNullishCoalescing "??"
+syn match qmlOptionalChaining "?\."

syn keyword qmlConditional if else switch
syn keyword qmlRepeat while for do in
Reply all
Reply to author
Forward
0 new messages