From ffeb334da01fa23e0f2176c2c239d754a2d4e4fc Mon Sep 17 00:00:00 2001 From: Christian Clason Date: Fri, 8 Aug 2025 10:01:56 +0200 Subject: [PATCH] vim-patch:66d8d28: runtime(typescript): Add syntax support for defer and arbitrary module identifiers closes: vim/vim#17911 https://github.com/vim/vim/commit/66d8d286cdc38838bd74a6c3014dccda33c64330 Co-authored-by: rhysd --- runtime/syntax/shared/typescriptcommon.vim | 211 +++++++++++---------- 1 file changed, 107 insertions(+), 104 deletions(-) diff --git a/runtime/syntax/shared/typescriptcommon.vim b/runtime/syntax/shared/typescriptcommon.vim index 3af79a38fb..9a909c6755 100644 --- a/runtime/syntax/shared/typescriptcommon.vim +++ b/runtime/syntax/shared/typescriptcommon.vim @@ -2,6 +2,7 @@ " Language: TypeScript and TypeScriptReact " Maintainer: Herrington Darkholme " Last Change: 2024 May 24 +" 2025 Aug 05 support for new TypeScript syntaxes " Based On: Herrington Darkholme's yats.vim " Changes: See https://github.com/HerringtonDarkholme/yats.vim " Credits: See yats.vim on github @@ -11,7 +12,6 @@ if &cpo =~ 'C' set cpo&vim endif - " NOTE: this results in accurate highlighting, but can be slow. syntax sync fromstart @@ -240,10 +240,22 @@ syntax cluster typescriptSymbols contains=typescriptBinaryOp,types "Import syntax keyword typescriptImport from as syntax keyword typescriptImport import - \ nextgroup=typescriptImportType,typescriptTypeBlock,typescriptDefaultImportName + \ nextgroup=typescriptImportType,typescriptImportBlock,typescriptDefaultImportName,typescriptImportDefer \ skipwhite syntax keyword typescriptImportType type \ contained +syntax match typescriptDefaultImportName /\v\h\k*( |,)/ + \ contained + \ nextgroup=typescriptImportBlock + \ skipwhite skipempty +syntax match typescriptImportDefer /\