home *** CD-ROM | disk | FTP | other *** search
- " Vim syntax file
- " Language: login.defs(5) configuration file
- " Maintainer: Nikolai Weibull <now@bitwi.se>
- " Latest Revision: 2010-11-29
-
- if exists("b:current_syntax")
- finish
- endif
-
- let s:cpo_save = &cpo
- set cpo&vim
-
- 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"
-
- let &cpo = s:cpo_save
- unlet s:cpo_save
-