Add missing filetypes for systemd

This commit is contained in:
Adam Stankiewicz
2020-09-28 01:23:00 +02:00
parent 312e95099d
commit b7598ff0c5
4 changed files with 26 additions and 2 deletions

View File

@@ -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',

View File

@@ -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')

View File

@@ -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

View File

@@ -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}"