2 " Language: lftp(1) configuration file
3 " Maintainer: Nikolai Weibull <now@bitwi.se>
4 " Latest Revision: 2007-06-17
6 if exists("b:current_syntax")
15 syn region lftpComment display oneline start='#' end='$'
16 \ contains=lftpTodo,@Spell
18 syn keyword lftpTodo contained TODO FIXME XXX NOTE
20 syn region lftpString contained display
21 \ start=+"+ skip=+\\$\|\\"+ end=+"+ end=+$+
23 syn match lftpNumber contained display '\<\d\+\(\.\d\+\)\=\>'
25 syn keyword lftpBoolean contained yes no on off true false
27 syn keyword lftpInterval contained infinity inf never forever
28 syn match lftpInterval contained '\<\(\d\+\(\.\d\+\)\=[dhms]\)\+\>'
30 syn keyword lftpKeywords alias anon at bookmark cache cat cd chmod close
31 \ cls command debug du echo exit fg find get
32 \ get1 glob help history jobs kill lcd lftp
33 \ lpwd ls mget mirror mkdir module more mput
34 \ mrm mv nlist open pget put pwd queue quote
35 \ reget recls rels renlist repeat reput rm
36 \ rmdir scache site source suspend user version
39 syn region lftpSet matchgroup=lftpKeywords
40 \ start="set" end=";" end="$"
41 \ contains=lftpString,lftpNumber,lftpBoolean,
42 \ lftpInterval,lftpSettingsPrefix,lftpSettings
43 syn match lftpSettingsPrefix contained '\<\%(bmk\|cache\|cmd\|color\|dns\):'
44 syn match lftpSettingsPrefix contained '\<\%(file\|fish\|ftp\|hftp\):'
45 syn match lftpSettingsPrefix contained '\<\%(http\|https\|mirror\|module\):'
46 syn match lftpSettingsPrefix contained '\<\%(net\|sftp\|ssl\|xfer\):'
48 syn keyword lftpSettings contained save-p[asswords]
50 syn keyword lftpSettings contained cache-em[pty-listings] en[able]
53 syn keyword lftpSettings contained at[-exit] cls-c[ompletion-default]
54 \ cls-d[efault] cs[h-history]
55 \ default-p[rotocol] default-t[itle]
56 syn keyword lftpSettings contained fai[l-exit] in[teractive]
57 \ lo[ng-running] ls[-default] mo[ve-background]
60 \ save-c[wd-history] save-r[l-history]
61 \ set-t[erm-status] statu[s-interval]
62 \ te[rm-status] verb[ose] verify-h[ost]
63 \ verify-path verify-path[-cached]
65 syn keyword lftpSettings contained dir[-colors] use-c[olor]
67 syn keyword lftpSettings contained S[RV-query] cache-en[able]
68 \ cache-ex[pire] cache-s[ize]
69 \ fat[al-timeout] o[rder] use-fo[rk]
71 syn keyword lftpSettings contained ch[arset]
73 syn keyword lftpSettings contained connect[-program] sh[ell]
75 syn keyword lftpSettings contained acct anon-p[ass] anon-u[ser]
76 \ au[to-sync-mode] b[ind-data-socket]
77 \ ch[arset] cli[ent] dev[ice-prefix]
78 \ fi[x-pasv-address] fxp-f[orce]
79 \ fxp-p[assive-source] h[ome] la[ng]
80 \ list-e[mpty-ok] list-o[ptions]
81 \ nop[-interval] pas[sive-mode]
82 \ port-i[pv4] port-r[ange] prox[y]
83 \ rest-l[ist] rest-s[tor]
84 \ retry-530 retry-530[-anonymous]
85 \ sit[e-group] skey-a[llow]
86 \ skey-f[orce] ssl-allow
87 \ ssl-allow[-anonymous] ssl-au[th]
88 \ ssl-f[orce] ssl-protect-d[ata]
89 \ ssl-protect-l[ist] stat-[interval]
90 \ sy[nc-mode] timez[one] use-a[bor]
91 \ use-fe[at] use-fx[p] use-hf[tp]
92 \ use-mdtm use-mdtm[-overloaded]
93 \ use-ml[sd] use-p[ret] use-q[uit]
94 \ use-site-c[hmod] use-site-i[dle]
95 \ use-site-u[time] use-siz[e]
96 \ use-st[at] use-te[lnet-iac]
97 \ verify-a[ddress] verify-p[ort]
100 syn keyword lftpSettings contained w[eb-mode] cache prox[y]
101 \ use-au[thorization] use-he[ad] use-ty[pe]
103 syn keyword lftpSettings contained accept accept-c[harset]
104 \ accept-l[anguage] cache coo[kie]
105 \ pos[t-content-type] prox[y]
106 \ put-c[ontent-type] put-m[ethod] ref[erer]
107 \ set-c[ookies] user[-agent]
109 syn keyword lftpSettings contained prox[y]
111 syn keyword lftpSettings contained exc[lude-regex] o[rder]
112 \ parallel-d[irectories]
113 \ parallel-t[ransfer-count] use-p[get-n]
115 syn keyword lftpSettings contained pat[h]
117 syn keyword lftpSettings contained connection-l[imit]
118 \ connection-t[akeover] id[le] limit-m[ax]
119 \ limit-r[ate] limit-total-m[ax]
120 \ limit-total-r[ate] max-ret[ries] no-[proxy]
121 \ pe[rsist-retries] reconnect-interval-b[ase]
122 \ reconnect-interval-ma[x]
123 \ reconnect-interval-mu[ltiplier]
124 \ socket-bind-ipv4 socket-bind-ipv6
125 \ socket-bu[ffer] socket-m[axseg] timeo[ut]
127 syn keyword lftpSettings contained connect[-program]
128 \ max-p[ackets-in-flight] prot[ocol-version]
129 \ ser[ver-program] size-r[ead] size-w[rite]
131 syn keyword lftpSettings contained ca-f[ile] ca-p[ath] ce[rt-file]
132 \ crl-f[ile] crl-p[ath] k[ey-file]
133 \ verify-c[ertificate]
135 syn keyword lftpSettings contained clo[bber] dis[k-full-fatal]
136 \ eta-p[eriod] eta-t[erse] mak[e-backup]
137 \ max-red[irections] ra[te-period]
139 hi def link lftpComment Comment
140 hi def link lftpTodo Todo
141 hi def link lftpString String
142 hi def link lftpNumber Number
143 hi def link lftpBoolean Boolean
144 hi def link lftpInterval Number
145 hi def link lftpKeywords Keyword
146 hi def link lftpSettingsPrefix PreProc
147 hi def link lftpSettings Type
149 let b:current_syntax = "lftp"
151 let &cpo = s:cpo_save