annotate runtime/syntax/pamconf.vim @ 33480:f8dd278ab05f v9.0.1991

patch 9.0.1991: no cmdline completion for setting the font Commit: https://github.com/vim/vim/commit/290b887e8cc2c0d3dfc7f315b2052472c7c589cc Author: Yee Cheng Chin <ychin.git@gmail.com> Date: Thu Oct 5 20:54:21 2023 +0200 patch 9.0.1991: no cmdline completion for setting the font Problem: no cmdline completion for setting the font Solution: enable it on Win32 and GTK builds Add guifont cmdline completion (for Windows and GTK) For Windows, auto-complete will only suggest monospace fonts as that's the only types allowed. Will also suggest font options after the colon, including suggesting the current font size for convenience, and misc charset and quality options like `cANSI` and `qCLEARTYPE`. For GTK, auto-complete will suggest only monospace fonts for `guifont` but will include all fonts for `guifontwide`. The completion code doesn't currently suggest the current font size, as the GTK guifont format does not have a clear delimiter (':' for other platforms). closes: #13264 Signed-off-by: Christian Brabandt <cb@256bit.org> Co-authored-by: Yee Cheng Chin <ychin.git@gmail.com>
author Christian Brabandt <cb@256bit.org>
date Thu, 05 Oct 2023 21:00:07 +0200
parents 1b345fb68ae3
children 24fb114b2f2c
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
375
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
1 " Vim syntax file
11062
1218c5353e2b Runtime file updates.
Christian Brabandt <cb@256bit.org>
parents: 3082
diff changeset
2 " Language: pam(8) configuration file
1218c5353e2b Runtime file updates.
Christian Brabandt <cb@256bit.org>
parents: 3082
diff changeset
3 " Previous Maintainer: Nikolai Weibull <now@bitwi.se>
21676
1b345fb68ae3 Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents: 11062
diff changeset
4 " Latest Revision: 2020/08/04
1b345fb68ae3 Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents: 11062
diff changeset
5 " Changes By: Haochen Tong
375
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
6
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
7
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
8 if exists("b:current_syntax")
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
9 finish
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
10 endif
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
11
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
12 let s:cpo_save = &cpo
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
13 set cpo&vim
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
14
21676
1b345fb68ae3 Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents: 11062
diff changeset
15 let s:has_service_field = exists("b:pamconf_has_service_field")
1b345fb68ae3 Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents: 11062
diff changeset
16 \ ? b:pamconf_has_service_field
1b345fb68ae3 Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents: 11062
diff changeset
17 \ : expand('%:t') == 'pam.conf' ? 1 : 0
1b345fb68ae3 Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents: 11062
diff changeset
18
1b345fb68ae3 Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents: 11062
diff changeset
19 syn match pamconfType '-\?[[:alpha:]]\+'
1b345fb68ae3 Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents: 11062
diff changeset
20 \ contains=pamconfTypeKeyword
1b345fb68ae3 Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents: 11062
diff changeset
21 \ nextgroup=pamconfControl,
1b345fb68ae3 Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents: 11062
diff changeset
22 \ pamconfTypeLineCont skipwhite
1b345fb68ae3 Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents: 11062
diff changeset
23
1b345fb68ae3 Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents: 11062
diff changeset
24 syn keyword pamconfTypeKeyword contained account auth password session
1b345fb68ae3 Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents: 11062
diff changeset
25
1b345fb68ae3 Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents: 11062
diff changeset
26 if s:has_service_field
1b345fb68ae3 Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents: 11062
diff changeset
27 syn match pamconfService '^[[:graph:]]\+'
1b345fb68ae3 Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents: 11062
diff changeset
28 \ nextgroup=pamconfType,
1b345fb68ae3 Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents: 11062
diff changeset
29 \ pamconfServiceLineCont skipwhite
1b345fb68ae3 Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents: 11062
diff changeset
30
1b345fb68ae3 Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents: 11062
diff changeset
31 syn match pamconfServiceLineCont contained '\\$'
1b345fb68ae3 Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents: 11062
diff changeset
32 \ nextgroup=pamconfType,
1b345fb68ae3 Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents: 11062
diff changeset
33 \ pamconfServiceLineCont skipwhite skipnl
1b345fb68ae3 Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents: 11062
diff changeset
34 endif
375
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
35
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
36 syn keyword pamconfTodo contained TODO FIXME XXX NOTE
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
37
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
38 syn region pamconfComment display oneline start='#' end='$'
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
39 \ contains=pamconfTodo,@Spell
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
40
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
41 syn match pamconfTypeLineCont contained '\\$'
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
42 \ nextgroup=pamconfControl,
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
43 \ pamconfTypeLineCont skipwhite skipnl
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
44
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
45 syn keyword pamconfControl contained requisite required sufficient
3082
3502a7f991fc Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 839
diff changeset
46 \ optional include substack
375
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
47 \ nextgroup=pamconfMPath,
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
48 \ pamconfControlLineContH skipwhite
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
49
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
50 syn match pamconfControlBegin '\[' nextgroup=pamconfControlValues,
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
51 \ pamconfControlLineCont skipwhite
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
52
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
53 syn match pamconfControlLineCont contained '\\$'
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
54 \ nextgroup=pamconfControlValues,
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
55 \ pamconfControlLineCont skipwhite skipnl
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
56
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
57 syn keyword pamconfControlValues contained success open_err symbol_err
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
58 \ service_err system_err buf_err
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
59 \ perm_denied auth_err cred_insufficient
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
60 \ authinfo_unavail user_unknown maxtries
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
61 \ new_authtok_reqd acct_expired session_err
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
62 \ cred_unavail cred_expired cred_err
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
63 \ no_module_data conv_err authtok_err
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
64 \ authtok_recover_err authtok_lock_busy
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
65 \ authtok_disable_aging try_again ignore
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
66 \ abort authtok_expired module_unknown
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
67 \ bad_item and default
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
68 \ nextgroup=pamconfControlValueEq
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
69
3082
3502a7f991fc Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 839
diff changeset
70 syn match pamconfControlValueEq contained '='
3502a7f991fc Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 839
diff changeset
71 \ nextgroup=pamconfControlActionN,
3502a7f991fc Updated runtime files.
Bram Moolenaar <bram@vim.org>
parents: 839
diff changeset
72 \ pamconfControlAction
375
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
73
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
74 syn match pamconfControlActionN contained '\d\+\>'
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
75 \ nextgroup=pamconfControlValues,
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
76 \ pamconfControlLineCont,pamconfControlEnd
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
77 \ skipwhite
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
78 syn keyword pamconfControlAction contained ignore bad die ok done reset
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
79 \ nextgroup=pamconfControlValues,
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
80 \ pamconfControlLineCont,pamconfControlEnd
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
81 \ skipwhite
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
82
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
83 syn match pamconfControlEnd contained '\]'
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
84 \ nextgroup=pamconfMPath,
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
85 \ pamconfControlLineContH skipwhite
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
86
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
87 syn match pamconfControlLineContH contained '\\$'
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
88 \ nextgroup=pamconfMPath,
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
89 \ pamconfControlLineContH skipwhite skipnl
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
90
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
91 syn match pamconfMPath contained '\S\+'
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
92 \ nextgroup=pamconfMPathLineCont,
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
93 \ pamconfArgs skipwhite
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
94
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
95 syn match pamconfArgs contained '\S\+'
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
96 \ nextgroup=pamconfArgsLineCont,
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
97 \ pamconfArgs skipwhite
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
98
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
99 syn match pamconfMPathLineCont contained '\\$'
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
100 \ nextgroup=pamconfMPathLineCont,
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
101 \ pamconfArgs skipwhite skipnl
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
102
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
103 syn match pamconfArgsLineCont contained '\\$'
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
104 \ nextgroup=pamconfArgsLineCont,
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
105 \ pamconfArgs skipwhite skipnl
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
106
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
107 hi def link pamconfTodo Todo
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
108 hi def link pamconfComment Comment
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
109 hi def link pamconfService Statement
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
110 hi def link pamconfServiceLineCont Special
21676
1b345fb68ae3 Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents: 11062
diff changeset
111 hi def link pamconfType Special
1b345fb68ae3 Update runtime files.
Bram Moolenaar <Bram@vim.org>
parents: 11062
diff changeset
112 hi def link pamconfTypeKeyword Type
375
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
113 hi def link pamconfTypeLineCont pamconfServiceLineCont
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
114 hi def link pamconfControl Macro
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
115 hi def link pamconfControlBegin Delimiter
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
116 hi def link pamconfControlLineContH pamconfServiceLineCont
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
117 hi def link pamconfControlLineCont pamconfServiceLineCont
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
118 hi def link pamconfControlValues Identifier
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
119 hi def link pamconfControlValueEq Operator
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
120 hi def link pamconfControlActionN Number
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
121 hi def link pamconfControlAction Identifier
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
122 hi def link pamconfControlEnd Delimiter
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
123 hi def link pamconfMPath String
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
124 hi def link pamconfMPathLineCont pamconfServiceLineCont
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
125 hi def link pamconfArgs Normal
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
126 hi def link pamconfArgsLineCont pamconfServiceLineCont
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
127
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
128 let b:current_syntax = "pamconf"
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
129
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
130 let &cpo = s:cpo_save
f14cbd913415 updated for version 7.0097
vimboss
parents:
diff changeset
131 unlet s:cpo_save