diff options
author | Adam Stankiewicz <sheerun@sher.pl> | 2020-09-28 01:23:00 +0200 |
---|---|---|
committer | Adam Stankiewicz <sheerun@sher.pl> | 2020-09-28 01:23:00 +0200 |
commit | b7598ff0c522e56f0a42706176f2fa621d9a1c8e (patch) | |
tree | 39de9be10cfb053e244e19795720b55ab067dc92 | |
parent | 312e95099dd38d29be0339b61ff157536ea4df02 (diff) | |
download | vim-polyglot-b7598ff0c522e56f0a42706176f2fa621d9a1c8e.tar.gz vim-polyglot-b7598ff0c522e56f0a42706176f2fa621d9a1c8e.zip |
Add missing filetypes for systemd
-rw-r--r-- | autoload/sleuth.vim | 2 | ||||
-rw-r--r-- | ftdetect/polyglot.vim | 8 | ||||
-rw-r--r-- | packages.yaml | 9 | ||||
-rwxr-xr-x | scripts/build | 9 |
4 files changed, 26 insertions, 2 deletions
diff --git a/autoload/sleuth.vim b/autoload/sleuth.vim index abe8cd85..ac0b49f5 100644 --- a/autoload/sleuth.vim +++ b/autoload/sleuth.vim @@ -194,7 +194,7 @@ let s:globs = { \ 'svg': '*.svg', \ 'swift': '*.swift', \ 'sxhkdrc': '*.sxhkdrc,sxhkdrc', - \ 'systemd': '*.automount,*.mount,*.path,*.service,*.socket,*.swap,*.target,*.timer', + \ 'systemd': '*.automount,*.dnssd,*.link,*.mount,*.netdev,*.network,*.nspawn,*.path,*.service,*.slice,*.socket,*.swap,*.target,*.timer,*.#*', \ 'tablegen': '*.td', \ 'tads': '*.t', \ 'terraform': '*.hcl,*.nomad,*.tf,*.tfvars,*.workflow', diff --git a/ftdetect/polyglot.vim b/ftdetect/polyglot.vim index 18ccd136..ced2ce15 100644 --- a/ftdetect/polyglot.vim +++ b/ftdetect/polyglot.vim @@ -1817,13 +1817,21 @@ endif if !has_key(s:disabled_packages, 'systemd') au BufNewFile,BufRead *.automount set ft=systemd + au BufNewFile,BufRead *.dnssd set ft=systemd + au BufNewFile,BufRead *.link set ft=systemd au BufNewFile,BufRead *.mount set ft=systemd + au BufNewFile,BufRead *.netdev set ft=systemd + au BufNewFile,BufRead *.network set ft=systemd + au BufNewFile,BufRead *.nspawn set ft=systemd au BufNewFile,BufRead *.path set ft=systemd au BufNewFile,BufRead *.service set ft=systemd + au BufNewFile,BufRead *.slice set ft=systemd au BufNewFile,BufRead *.socket set ft=systemd au BufNewFile,BufRead *.swap set ft=systemd au BufNewFile,BufRead *.target set ft=systemd au BufNewFile,BufRead *.timer set ft=systemd + au BufNewFile,BufRead *.#* call s:StarSetf('systemd') + au BufNewFile,BufRead */systemd/*.conf set ft=systemd endif if !has_key(s:disabled_packages, 'terraform') diff --git a/packages.yaml b/packages.yaml index 322a3a15..1ef2942a 100644 --- a/packages.yaml +++ b/packages.yaml @@ -1583,13 +1583,22 @@ filetypes: - name: systemd extensions: - automount + - dnssd + - link - mount + - netdev + - network + - nspawn - path - service + - slice - socket - swap - target - timer + filenames: + - '*.#*' + - '*/systemd/*.conf' --- name: terraform remote: hashivim/vim-terraform diff --git a/scripts/build b/scripts/build index bc5cd126..dd0af0c0 100755 --- a/scripts/build +++ b/scripts/build @@ -738,8 +738,15 @@ def show_warnings(all_filetypes, expected_filetypes) [f["extensions"], f["ignored_extensions"]].compact.flatten.map { |e| "*." + e } end + all_handled_regexps = Hash[all_handled.group_by { |a, b| a }.map { |a, b| [a, b[1]] }.map do |a, b| + [a, Regexp.union(b.map { |x| Regexp.escape(x).gsub('\\*', '.*') })] + end] + for name, e in all_expected - all_handled - if e.match?(/\/\*\.[^\/]+$/) && all_handled.include?([name, e.split('/').last]) + if e.match?(/\/\*?\.[^\/]+$/) && all_handled.include?([name, e.split('/').last.gsub('*', '')]) + next + end + if e.include?('*') && all_handled_regexps[name].match?(e) next end puts "Missing for #{name}: #{e}" |