-*filetype.txt* For Vim version 9.2. Last change: 2026 Apr 09
+*filetype.txt* For Vim version 9.2. Last change: 2026 Apr 11
VIM REFERENCE MANUAL by Bram Moolenaar
re-source "javaformat.vim" for Vim versions greater than `8.2.1397`: >
runtime autoload/javaformat.vim
<
+JUJUTSU DESCRIPTION *ft-jjdescription-plugin*
+
+The length of the first line of the commit message used for syntax
+highlighting can be configured via `g:jjcommit_summary_length`, and will
+fallback to `g:gitcommit_summary_length`. The default is 50. Example: >
+
+ let g:jjcommit_summary_length = 70
+<
JSON-FORMAT *ft-json-plugin*
JSON filetype can be extended to use 'formatexpr' and "json.FormatExpr()"
vim9script
import autoload 'dist/json.vim'
setl formatexpr=json.FormatExpr()
-
+<
LUA *ft-lua-plugin* *g:lua_folding*
You can enable folding of Lua functions using |fold-expr| by: >
ft-java-plugin filetype.txt /*ft-java-plugin*
ft-java-syntax syntax.txt /*ft-java-syntax*
ft-javascript-omni insert.txt /*ft-javascript-omni*
+ft-jjdescription-plugin filetype.txt /*ft-jjdescription-plugin*
ft-jq-syntax syntax.txt /*ft-jq-syntax*
ft-json-plugin filetype.txt /*ft-json-plugin*
ft-json-syntax syntax.txt /*ft-json-syntax*
" 2025 Apr 17 by Vim Project (don't require space to start comments, #17130)
" 2026 Apr 09 by Vim Project (anchor status regex to beginning of line, #19879)
" 2026 Apr 09 by Vim Project (detect renames of files, #19879)
+" 2026 Apr 11 by Vim Project (configure summary length, #19905)
if exists('b:current_syntax')
finish
syn include @jjCommitDiff syntax/diff.vim
syn region jjCommitDiff start=/\%(^diff --\%(git\|cc\|combined\) \)\@=/ end=/^\%(diff --\|$\|@@\@!\|[^[:alnum:]\ +-]\S\@!\)\@=/ fold contains=@jjCommitDiff
-hi def link jjComment Comment
-hi def link jjAdded Added
-hi def link jjRemoved Removed
-hi def link jjChanged Changed
-hi def link jjRenamed Changed
+if get(g:, 'jjcommit_summary_length', get(g:, 'gitcommit_summary_length', 0)) < 0
+ syn match jjdescriptionSummary "^.*$" contained containedin=jjcommitFirstLine nextgroup=jjcommitOverflow contains=@Spell
+elseif get(g:, 'jjcommit_summary_length', get(g:, 'gitcommit_summary_length', 1)) > 0
+ exe 'syn match jjdescriptionSummary "^.*\%<' . (get(g:, 'jjcommit_summary_length', get(:g, 'gitcommit_summary_length', 50) + 1) . 'v." contained containedin=jjcommitFirstLine nextgroup=jjcommitOverflow contains=@Spell'
+endif
+syn match jjcommitOverflow ".*" contained contains=@Spell
+syn match jjcommitBlank "^.\+" contained contains=@Spell
+syn match jjcommitFirstLine "\%^.*" nextgroup=jjcommitBlank,jjComment skipnl
+
+hi def link jjcommitSummary Keyword
+hi def link jjComment Comment
+hi def link jjAdded Added
+hi def link jjRemove Removed
+hi def link jjChange Changed
+hi def link jjRenamed Changed
+hi def link jjcommitBlank Error
let b:current_syntax = 'jjdescription'