]> git.ipfire.org Git - thirdparty/vim.git/commitdiff
runtime(fstab): Added mtab support to fstab syntax.
authorRadu Dineiu <radu.dineiu@gmail.com>
Sat, 23 Aug 2025 11:47:51 +0000 (13:47 +0200)
committerChristian Brabandt <cb@256bit.org>
Sat, 23 Aug 2025 11:47:51 +0000 (13:47 +0200)
closes: #18074

Signed-off-by: Radu Dineiu <radu.dineiu@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
runtime/ftplugin/fstab.vim
runtime/syntax/fstab.vim

index d340c4b8d52330a34995c30828a588a392ba75d3..dd5acfd3033f205d6a9fe0d6332d86a5de946331 100644 (file)
@@ -2,10 +2,11 @@
 " Language: fstab file
 " Maintainer: Radu Dineiu <radu.dineiu@gmail.com>
 " URL: https://raw.github.com/rid9/vim-fstab/master/ftplugin/fstab.vim
-" Last Change: 2025 Mar 31
-" Version: 1.0.1
+" Last Change: 2025 Aug 21
+" Version: 1.1.0
 "
 " Changelog:
+" - 2025 Aug 21 added support for mtab
 " - 2024 May 23 by Riley Bruins <ribru17@gmail.com> ('commentstring')
 " - 2025 Mar 31 added setlocal formatoptions-=t
 "
@@ -20,6 +21,10 @@ let b:did_ftplugin = 1
 setlocal commentstring=#\ %s
 setlocal formatoptions-=t
 
-let b:undo_ftplugin = "setlocal commentstring< formatoptions<"
+if expand('%:t') == 'mtab'
+  let b:fstab_enable_mtab = 1
+endif
+
+let b:undo_ftplugin = "setlocal commentstring< | setlocal formatoptions<"
 
 " vim: ts=8 ft=vim
index 64d5bee3d0d35088a10fccbc9754feac43528ccd..442bc94f3c30605b29040208526279190eaaedc7 100644 (file)
@@ -2,8 +2,8 @@
 " Language: fstab file
 " Maintainer: Radu Dineiu <radu.dineiu@gmail.com>
 " URL: https://raw.github.com/rid9/vim-fstab/master/syntax/fstab.vim
-" Last Change: 2024 Jul 11
-" Version: 1.6.4
+" Last Change: 2025 Aug 21
+" Version: 1.7.0
 "
 " Credits:
 "   David Necas (Yeti) <yeti@physics.muni.cz>
@@ -18,6 +18,9 @@
 "
 "   let fstab_unknown_device_errors = 0
 "     do not highlight unknown devices as errors
+"
+" Changelog:
+" - 2025 Aug 21 added support for mtab
 
 " quit when a syntax file was already loaded
 if exists("b:current_syntax")
@@ -402,6 +405,28 @@ syn match fsFreqPass /\s\+.\{-}$/ contains=@fsFreqPassCluster,@fsGeneralCluster
 " Whole line comments
 syn match fsCommentLine /^#.*$/ contains=@Spell
 
+if exists('b:fstab_enable_mtab') && b:fstab_enable_mtab == 1
+  " mtab
+  " ----
+  syn keyword fsDeviceKeyword contained binfmt_misc bpf cgroup2 configfs debugfs efivarfs fusectl hugetlbfs mqueue portal pstore securityfs udev ramfs
+  syn match fsDeviceKeyword contained /^systemd-1/
+  syn match fsDeviceKeyword contained /^\/dev\S\+/
+
+  " devpts
+  syn match fsOptionsKeywords contained /\<ptmxmode=/ nextgroup=fsOptionsNumber
+
+  " cgroup2
+  syn keyword fsTypeKeyword contained cgroup2
+  syn keyword fsOptionsKeywords contained nsdelegate memory_recursiveprot
+
+  " hugetlbfs
+  syn match fsOptionsKeywords contained /\<pagesize=/ nextgroup=fsOptionsString
+
+  " systemd
+  syn match fsOptionsKeywords contained /\<\%(pgrp\|timeout\|minproto\|maxproto\|pipe_ino\)=/ nextgroup=fsOptionsNumber
+  syn keyword fsOptionsKeywords contained direct
+endif
+
 hi def link fsOperator Operator
 hi def link fsComment Comment
 hi def link fsCommentLine Comment