diff options
Diffstat (limited to 'runtime/syntax/logindefs.vim')
-rw-r--r-- | runtime/syntax/logindefs.vim | 236 |
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" |