vim-patch:9.1.1231: filetype: SPA JSON files are not recognized

Problem:  filetype: SPA (single page application) JSON files are not
          recognized (used by pipewire and wireplumber)
Solution: detect pipewire and wireplumber configuration files as spajson
          filetype, include filetype, indent and syntax scripts for this
          new filetype (David Mandelberg).

I looked at all the files found by this command to see if the syntax
highlighting looked reasonable:

```
find {~/.config,/etc,/usr/share}/{pipewire,wireplumber} -type f -name \*.conf
```

References:
*   pipewire config files: https://docs.pipewire.org/page_config.html
*   wireplumber config files:
    https://pipewire.pages.freedesktop.org/wireplumber/daemon/configuration/conf_file.html
    and
*   https://pipewire.pages.freedesktop.org/wireplumber/daemon/locations.html

closes: vim/vim#16950

4e7b4308fb

Co-authored-by: David Mandelberg <david@mandelberg.org>
This commit is contained in:
Christian Clason
2025-03-23 10:37:59 +01:00
committed by Christian Clason
parent f4d9a2983a
commit 2eddd6f7c0
5 changed files with 74 additions and 0 deletions

View File

@@ -2263,6 +2263,8 @@ local pattern = {
['^named.*%.conf$'] = 'named',
['^rndc.*%.conf$'] = 'named',
['/openvpn/.*/.*%.conf$'] = 'openvpn',
['/pipewire/.*%.conf$'] = 'spajson',
['/wireplumber/.*%.conf$'] = 'spajson',
['/%.ssh/.*%.conf$'] = 'sshconfig',
['^%.?tmux.*%.conf$'] = 'tmux',
['^%.?tmux.*%.conf'] = { 'tmux', { priority = -1 } },