From 4b3fab14dbde971f15d8783e9ef125b19fdbc829 Mon Sep 17 00:00:00 2001 From: Colin Caine Date: Thu, 18 Apr 2024 23:53:02 +0200 Subject: patch 9.1.0354: runtime(uci): No support for uci file types Problem: runtime(uci): No support for uci file types (Wu, Zhenyu) Solution: include basic uci ftplugin and syntax plugins (Colin Caine) closes: #14575 Co-authored-by: Wu, Zhenyu Signed-off-by: Colin Caine Signed-off-by: Christian Brabandt --- runtime/autoload/dist/ft.vim | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) (limited to 'runtime/autoload/dist') diff --git a/runtime/autoload/dist/ft.vim b/runtime/autoload/dist/ft.vim index 05f1611b22..4e7d517931 100644 --- a/runtime/autoload/dist/ft.vim +++ b/runtime/autoload/dist/ft.vim @@ -1298,5 +1298,21 @@ export def FTvba() endif enddef +export def Detect_UCI_statements(): bool + # Match a config or package statement at the start of the line. + const config_or_package_statement = '^\s*\(\(c\|config\)\|\(p\|package\)\)\s\+\S' + # Match a line that is either all blank or blank followed by a comment + const comment_or_blank = '^\s*\(#.*\)\?$' + + # Return true iff the file has a config or package statement near the + # top of the file and all preceding lines were comments or blank. + return getline(1) =~# config_or_package_statement + \ || getline(1) =~# comment_or_blank + \ && ( getline(2) =~# config_or_package_statement + \ || getline(2) =~# comment_or_blank + \ && getline(3) =~# config_or_package_statement + \ ) +enddef + # Uncomment this line to check for compilation errors early # defcompile -- cgit v1.2.3