1" Vim syntax file 2" Language: login.defs(5) configuration file 3" Previous Maintainer: Nikolai Weibull <[email protected]> 4" Latest Revision: 2010-11-29 5 6if exists("b:current_syntax") 7 finish 8endif 9 10let s:cpo_save = &cpo 11set cpo&vim 12 13syn match logindefsBegin display '^' 14 \ nextgroup= 15 \ logindefsComment, 16 \ @logindefsKeyword 17 \ skipwhite 18 19syn region logindefsComment display oneline start='^\s*#' end='$' 20 \ contains=logindefsTodo,@Spell 21 22syn keyword logindefsTodo contained TODO FIXME XXX NOTE 23 24syn cluster logindefsKeyword contains= 25 \ logindefsBooleanKeyword, 26 \ logindefsEncryptKeyword, 27 \ logindefsNumberKeyword, 28 \ logindefsPathKeyword, 29 \ logindefsPathsKeyword, 30 \ logindefsStringKeyword 31 32syn keyword logindefsBooleanKeyword contained 33 \ CHFN_AUTH 34 \ CHSH_AUTH 35 \ CREATE_HOME 36 \ DEFAULT_HOME 37 \ FAILLOG_ENAB 38 \ LASTLOG_ENAB 39 \ LOG_OK_LOGINS 40 \ LOG_UNKFAIL_ENAB 41 \ MAIL_CHECK_ENAB 42 \ MD5_CRYPT_ENAB 43 \ OBSCURE_CHECKS_ENAB 44 \ PASS_ALWAYS_WARN 45 \ PORTTIME_CHECKS_ENAB 46 \ QUOTAS_ENAB 47 \ SU_WHEEL_ONLY 48 \ SYSLOG_SG_ENAB 49 \ SYSLOG_SU_ENAB 50 \ USERGROUPS_ENAB 51 \ nextgroup=logindefsBoolean skipwhite 52 53syn keyword logindefsBoolean contained yes no 54 55syn keyword logindefsEncryptKeyword contained 56 \ ENCRYPT_METHOD 57 \ nextgroup=logindefsEncryptMethod skipwhite 58 59syn keyword logindefsEncryptMethod contained 60 \ DES 61 \ MD5 62 \ SHA256 63 \ SHA512 64 65syn keyword logindefsNumberKeyword contained 66 \ ERASECHAR 67 \ FAIL_DELAY 68 \ GID_MAX 69 \ GID_MIN 70 \ KILLCHAR 71 \ LOGIN_RETRIES 72 \ LOGIN_TIMEOUT 73 \ MAX_MEMBERS_PER_GROUP 74 \ PASS_CHANGE_TRIES 75 \ PASS_MAX_DAYS 76 \ PASS_MIN_DAYS 77 \ PASS_WARN_AGE 78 \ PASS_MAX_LEN 79 \ PASS_MIN_LEN 80 \ SHA_CRYPT_MAX_ROUNDS 81 \ SHA_CRYPT_MIN_ROUNDS 82 \ SYS_GID_MAX 83 \ SYS_GID_MIN 84 \ SYS_UID_MAX 85 \ SYS_UID_MIN 86 \ UID_MAX 87 \ UID_MIN 88 \ ULIMIT 89 \ UMASK 90 \ nextgroup=@logindefsNumber skipwhite 91 92syn cluster logindefsNumber contains= 93 \ logindefsDecimal, 94 \ logindefsHex, 95 \ logindefsOctal, 96 \ logindefsOctalError 97 98syn match logindefsDecimal contained '\<\d\+\>' 99 100syn match logindefsHex contained display '\<0x\x\+\>' 101 102syn match logindefsOctal contained display '\<0\o\+\>' 103 \ contains=logindefsOctalZero 104syn match logindefsOctalZero contained display '\<0' 105 106syn match logindefsOctalError contained display '\<0\o*[89]\d*\>' 107 108syn keyword logindefsPathKeyword contained 109 \ ENVIRON_FILE 110 \ FAKE_SHELL 111 \ FTMP_FILE 112 \ HUSHLOGIN_FILE 113 \ ISSUE_FILE 114 \ MAIL_DIR 115 \ MAIL_FILE 116 \ NOLOGINS_FILE 117 \ SULOG_FILE 118 \ TTYTYPE_FILE 119 \ nextgroup=logindefsPath skipwhite 120 121syn match logindefsPath contained '[[:graph:]]\+' 122 123syn keyword logindefsPathsKeyword contained 124 \ CONSOLE 125 \ ENV_PATH 126 \ ENV_SUPATH 127 \ MOTD_FILE 128 \ nextgroup=logindefsPaths skipwhite 129 130syn match logindefsPaths contained '[^:]\+' 131 \ nextgroup=logindefsPathDelim 132 133syn match logindefsPathDelim contained ':' nextgroup=logindefsPaths 134 135syn keyword logindefsStringKeyword contained 136 \ CHFN_RESTRICT 137 \ CONSOLE_GROUPS 138 \ ENV_HZ 139 \ ENV_TZ 140 \ LOGIN_STRING 141 \ SU_NAME 142 \ TTYGROUP 143 \ TTYPERM 144 \ USERDEL_CMD 145 \ nextgroup=logindefsString skipwhite 146 147syn match logindefsString contained '[[:graph:]]\+' 148 149hi def link logindefsComment Comment 150hi def link logindefsTodo Todo 151hi def link logindefsKeyword Keyword 152hi def link logindefsBooleanKeyword logindefsKeyword 153hi def link logindefsEncryptKeyword logindefsKeyword 154hi def link logindefsNumberKeyword logindefsKeyword 155hi def link logindefsPathKeyword logindefsKeyword 156hi def link logindefsPathsKeyword logindefsKeyword 157hi def link logindefsStringKeyword logindefsKeyword 158hi def link logindefsBoolean Boolean 159hi def link logindefsEncryptMethod Type 160hi def link logindefsNumber Number 161hi def link logindefsDecimal logindefsNumber 162hi def link logindefsHex logindefsNumber 163hi def link logindefsOctal logindefsNumber 164hi def link logindefsOctalZero PreProc 165hi def link logindefsOctalError Error 166hi def link logindefsPath String 167hi def link logindefsPaths logindefsPath 168hi def link logindefsPathDelim Delimiter 169hi def link logindefsString String 170 171let b:current_syntax = "logindefs" 172 173let &cpo = s:cpo_save 174unlet s:cpo_save 175