summaryrefslogtreecommitdiff
path: root/runtime/syntax/logindefs.vim
diff options
context:
space:
mode:
Diffstat (limited to 'runtime/syntax/logindefs.vim')
-rw-r--r--runtime/syntax/logindefs.vim236
1 files changed, 158 insertions, 78 deletions
diff --git a/runtime/syntax/logindefs.vim b/runtime/syntax/logindefs.vim
index 7c2b122ae..59d18e7ef 100644
--- a/runtime/syntax/logindefs.vim
+++ b/runtime/syntax/logindefs.vim
@@ -1,7 +1,7 @@
" Vim syntax file
" Language: login.defs(5) configuration file
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2006-04-19
+" Latest Revision: 2010-11-29
if exists("b:current_syntax")
finish
@@ -10,83 +10,163 @@ endif
let s:cpo_save = &cpo
set cpo&vim
-syn keyword logindefsTodo contained TODO FIXME XXX NOTE
-
-syn region logindefsComment display oneline start='^\s*#' end='$'
- \ contains=logindefsTodo,@Spell
-
-syn match logindefsString contained '[[:graph:]]\+'
-
-syn match logindefsPath contained '[[:graph:]]\+'
-
-syn match logindefsPaths contained '[[:graph:]]\+'
- \ nextgroup=logindefsPathDelim
-
-syn match logindefsPathDelim contained ':' nextgroup=logindefsPaths
-
-syn keyword logindefsBoolean contained yes no
-
-syn match logindefsDecimal contained '\<\d\+\>'
-
-syn match logindefsOctal contained display '\<0\o\+\>'
- \ contains=logindefsOctalZero
-syn match logindefsOctalZero contained display '\<0'
-syn match logindefsOctalError contained display '\<0\o*[89]\d*\>'
-
-syn match logindefsHex contained display '\<0x\x\+\>'
-
-syn cluster logindefsNumber contains=logindefsDecimal,logindefsOctal,
- \ logindefsOctalError,logindefsHex
-
-syn match logindefsBegin display '^'
- \ nextgroup=logindefsKeyword,logindefsComment
- \ skipwhite
-
-syn keyword logindefsKeyword contained CHFN_AUTH CLOSE_SESSIONS CREATE_HOME
- \ DEFAULT_HOME FAILLOG_ENAB LASTLOG_ENAB
- \ LOG_OK_LOGINS LOG_UNKFAIL_ENAB MAIL_CHECK_ENAB
- \ MD5_CRYPT_ENAB OBSCURE_CHECKS_ENAB
- \ PASS_ALWAYS_WARN PORTTIME_CHECKS_ENAB
- \ QUOTAS_ENAB SU_WHEEL_ONLY SYSLOG_SG_ENAB
- \ SYSLOG_SU_ENAB USERGROUPS_ENAB
- \ nextgroup=logindefsBoolean skipwhite
-
-syn keyword logindefsKeyword contained CHFN_RESTRICT CONSOLE CONSOLE_GROUPS
- \ ENV_TZ ENV_HZ FAKE_SHELL SU_NAME LOGIN_STRING
- \ NOLOGIN_STR TTYGROUP USERDEL_CMD
- \ nextgroup=logindefsString skipwhite
-
-syn keyword logindefsKeyword contained ENVIRON_FILE FTMP_FILE HUSHLOGIN_FILE
- \ ISSUE_FILE MAIL_DIR MAIL_FILE NOLOGINS_FILE
- \ NOLOGINS_FILE TTYTYPE_FILE QMAIL_DIR
- \ SULOG_FILE
- \ nextgroup=logindefsPath skipwhite
-
-syn keyword logindefsKeyword contained CRACKLIB_DICTPATH ENV_PATH
- \ ENV_ROOTPATH ENV_SUPATH MOTD_FILE
- \ nextgroup=logindefsPaths skipwhite
-
-syn keyword logindefsKeyword contained ERASECHAR FAIL_DELAY GETPASS_ASTERISKS
- \ GID_MAX GID_MIN KILLCHAR LOGIN_RETRIES
- \ LOGIN_TIMEOUT PASS_CHANGE_TRIES PASS_MAX_DAYS
- \ PASS_MAX_LEN PASS_MIN_DAYS PASS_MIN_LEN
- \ PASS_WARN_AGE TTYPERM UID_MAX UID_MIN ULIMIT
- \ UMASK
- \ nextgroup=@logindefsNumber skipwhite
-
-hi def link logindefsTodo Todo
-hi def link logindefsComment Comment
-hi def link logindefsString String
-hi def link logindefsPath String
-hi def link logindefsPaths logindefsPath
-hi def link logindefsPathDelim Delimiter
-hi def link logindefsBoolean Boolean
-hi def link logindefsDecimal Number
-hi def link logindefsOctal Number
-hi def link logindefsOctalZero PreProc
-hi def link logindefsOctalError Error
-hi def link logindefsHex Number
-hi def link logindefsKeyword Keyword
+syn match logindefsBegin display '^'
+ \ nextgroup=
+ \ logindefsComment,
+ \ @logindefsKeyword
+ \ skipwhite
+
+syn region logindefsComment display oneline start='^\s*#' end='$'
+ \ contains=logindefsTodo,@Spell
+
+syn keyword logindefsTodo contained TODO FIXME XXX NOTE
+
+syn cluster logindefsKeyword contains=
+ \ logindefsBooleanKeyword,
+ \ logindefsEncryptKeyword,
+ \ logindefsNumberKeyword,
+ \ logindefsPathKeyword,
+ \ logindefsPathsKeyword,
+ \ logindefsStringKeyword
+
+syn keyword logindefsBooleanKeyword contained
+ \ CHFN_AUTH
+ \ CHSH_AUTH
+ \ CREATE_HOME
+ \ DEFAULT_HOME
+ \ FAILLOG_ENAB
+ \ LASTLOG_ENAB
+ \ LOG_OK_LOGINS
+ \ LOG_UNKFAIL_ENAB
+ \ MAIL_CHECK_ENAB
+ \ MD5_CRYPT_ENAB
+ \ OBSCURE_CHECKS_ENAB
+ \ PASS_ALWAYS_WARN
+ \ PORTTIME_CHECKS_ENAB
+ \ QUOTAS_ENAB
+ \ SU_WHEEL_ONLY
+ \ SYSLOG_SG_ENAB
+ \ SYSLOG_SU_ENAB
+ \ USERGROUPS_ENAB
+ \ nextgroup=logindefsBoolean skipwhite
+
+syn keyword logindefsBoolean contained yes no
+
+syn keyword logindefsEncryptKeyword contained
+ \ ENCRYPT_METHOD
+ \ nextgroup=logindefsEncryptMethod skipwhite
+
+syn keyword logindefsEncryptMethod contained
+ \ DES
+ \ MD5
+ \ SHA256
+ \ SHA512
+
+syn keyword logindefsNumberKeyword contained
+ \ ERASECHAR
+ \ FAIL_DELAY
+ \ GID_MAX
+ \ GID_MIN
+ \ KILLCHAR
+ \ LOGIN_RETRIES
+ \ LOGIN_TIMEOUT
+ \ MAX_MEMBERS_PER_GROUP
+ \ PASS_CHANGE_TRIES
+ \ PASS_MAX_DAYS
+ \ PASS_MIN_DAYS
+ \ PASS_WARN_AGE
+ \ PASS_MAX_LEN
+ \ PASS_MIN_LEN
+ \ SHA_CRYPT_MAX_ROUNDS
+ \ SHA_CRYPT_MIN_ROUNDS
+ \ SYS_GID_MAX
+ \ SYS_GID_MIN
+ \ SYS_UID_MAX
+ \ SYS_UID_MIN
+ \ UID_MAX
+ \ UID_MIN
+ \ ULIMIT
+ \ UMASK
+ \ nextgroup=@logindefsNumber skipwhite
+
+syn cluster logindefsNumber contains=
+ \ logindefsDecimal,
+ \ logindefsHex,
+ \ logindefsOctal,
+ \ logindefsOctalError
+
+syn match logindefsDecimal contained '\<\d\+\>'
+
+syn match logindefsHex contained display '\<0x\x\+\>'
+
+syn match logindefsOctal contained display '\<0\o\+\>'
+ \ contains=logindefsOctalZero
+syn match logindefsOctalZero contained display '\<0'
+
+syn match logindefsOctalError contained display '\<0\o*[89]\d*\>'
+
+syn keyword logindefsPathKeyword contained
+ \ ENVIRON_FILE
+ \ FAKE_SHELL
+ \ FTMP_FILE
+ \ HUSHLOGIN_FILE
+ \ ISSUE_FILE
+ \ MAIL_DIR
+ \ MAIL_FILE
+ \ NOLOGINS_FILE
+ \ SULOG_FILE
+ \ TTYTYPE_FILE
+ \ nextgroup=logindefsPath skipwhite
+
+syn match logindefsPath contained '[[:graph:]]\+'
+
+syn keyword logindefsPathsKeyword contained
+ \ CONSOLE
+ \ ENV_PATH
+ \ ENV_SUPATH
+ \ MOTD_FILE
+ \ nextgroup=logindefsPaths skipwhite
+
+syn match logindefsPaths contained '[^:]\+'
+ \ nextgroup=logindefsPathDelim
+
+syn match logindefsPathDelim contained ':' nextgroup=logindefsPaths
+
+syn keyword logindefsStringKeyword contained
+ \ CHFN_RESTRICT
+ \ CONSOLE_GROUPS
+ \ ENV_HZ
+ \ ENV_TZ
+ \ LOGIN_STRING
+ \ SU_NAME
+ \ TTYGROUP
+ \ TTYPERM
+ \ USERDEL_CMD
+ \ nextgroup=logindefsString skipwhite
+
+syn match logindefsString contained '[[:graph:]]\+'
+
+hi def link logindefsComment Comment
+hi def link logindefsTodo Todo
+hi def link logindefsKeyword Keyword
+hi def link logindefsBooleanKeyword logindefsKeyword
+hi def link logindefsEncryptKeyword logindefsKeyword
+hi def link logindefsNumberKeyword logindefsKeyword
+hi def link logindefsPathKeyword logindefsKeyword
+hi def link logindefsPathsKeyword logindefsKeyword
+hi def link logindefsStringKeyword logindefsKeyword
+hi def link logindefsBoolean Boolean
+hi def link logindefsEncryptMethod Type
+hi def link logindefsNumber Number
+hi def link logindefsDecimal logindefsNumber
+hi def link logindefsHex logindefsNumber
+hi def link logindefsOctal logindefsNumber
+hi def link logindefsOctalZero PreProc
+hi def link logindefsOctalError Error
+hi def link logindefsPath String
+hi def link logindefsPaths logindefsPath
+hi def link logindefsPathDelim Delimiter
+hi def link logindefsString String
let b:current_syntax = "logindefs"