blob: 23401969af68c0ea1fc5ea3f74474afc706d679b [file] [log] [blame]
Bram Moolenaar071d4272004-06-13 20:20:40 +00001" Vim syntax file
2" Language: GnuPG Configuration File.
3" Maintainer: Nikolai Weibull <source@pcppopper.org>
4" URL: http://www.pcppopper.org/vim/syntax/pcp/gpg/
5" Latest Revision: 2004-05-06
6" arch-tag: 602305f7-d8ae-48ef-a68f-4d54f12af70a
7
8if version < 600
9 syntax clear
10elseif exists("b:current_syntax")
11 finish
12endif
13
14" Set iskeyword since we need `-' (and potentially others) in keywords.
15" For version 5.x: Set it globally
16" For version 6.x: Set it locally
17if version >= 600
18 command -nargs=1 SetIsk setlocal iskeyword=<args>
19else
20 command -nargs=1 SetIsk set iskeyword=<args>
21endif
22SetIsk 48-57,65-90,97-122,-
23delcommand SetIsk
24
25" comments
26syn region gpgComment contained display oneline start="#" end="$" contains=gpgTodo,gpgID
27
28" todo
29syn keyword gpgTodo contained FIXME TODO XXX NOTE
30
31" ids
32syn match gpgID contained display "\<\(0x\)\=\x\{8,}\>"
33
34syn match gpgBegin "^" skipwhite nextgroup=gpgComment,gpgOption,gpgCommand
35
36" commands that take args
37syn keyword gpgCommand contained skipwhite nextgroup=gpgArg check-sigs decrypt decrypt-files delete-key delete-secret-and-public-key delete-secret-key edit-key encrypt-files export export-all export-ownertrust export-secret-keys export-secret-subkeys fast-import fingerprint gen-prime gen-random import import-ownertrust list-keys list-public-keys list-secret-keys list-sigs lsign-key nrsign-key print-md print-mds recv-keys search-keys send-keys sign-key verify verify-files
38" commands that take no args
39syn keyword gpgCommand contained skipwhite nextgroup=gpgArgError check-trustdb clearsign desig-revoke detach-sign encrypt gen-key gen-revoke help list-packets rebuild-keydb-caches sign store symmetric update-trustdb version warranty
40
41" options that take args
42syn keyword gpgOption contained skipwhite nextgroup=gpgArg attribute-fd cert-digest-algo charset cipher-algo command-fd comment completes-needed compress compress-algo debug default-cert-check-level default-key default-preference-list default-recipient digest-algo disable-cipher-algo disable-pubkey-algo encrypt-to exec-path export-options group homedir import-options keyring keyserver keyserver-options load-extension local-user logger-fd marginals-needed max-cert-depth notation-data options output override-session-key passphrase-fd personal-cipher-preferences personal-compress-preferences personal-digest-preferences photo-viewer recipient s2k-cipher-algo s2k-digest-algo s2k-mode secret-keyring set-filename set-policy-url status-fd trusted-key
43" options that take no args
44syn keyword gpgOption contained skipwhite nextgroup=gpgArgError allow-freeform-uid allow-non-selfsigned-uid allow-secret-key-import always-trust armor ask-cert-expire ask-sig-expire auto-check-trustdb batch debug-all default-comment default-recipient-self dry-run emit-version emulate-md-encode-bug enable-special-filenames escape-from-lines expert fast-list-mode fixed-list-mode for-your-eyes-only force-mdc force-v3-sigs force-v4-certs gpg-agent-info ignore-crc-error ignore-mdc-error ignore-time-conflict ignore-valid-from interactive list-only lock-multiple lock-never lock-once merge-only no no-allow-non-selfsigned-uid no-armor no-ask-cert-expire no-ask-sig-expire no-auto-check-trustdb no-batch no-comment no-default-keyring no-default-recipient no-encrypt-to no-expensive-trust-checks no-expert no-for-your-eyes-only no-force-v3-sigs no-force-v4-certs no-greeting no-literal no-mdc-warning no-options no-permission-warning no-pgp2 no-pgp6 no-pgp7 no-random-seed-file no-secmem-warning no-show-notation no-show-photos no-show-policy-url no-sig-cache no-sig-create-check no-sk-comments no-tty no-utf8-strings no-verbose no-version not-dash-escaped openpgp pgp2 pgp6 pgp7 preserve-permissions quiet rfc1991 set-filesize show-keyring show-notation show-photos show-policy-url show-session-key simple-sk-checksum sk-comments skip-verify textmode throw-keyid try-all-secrets use-agent use-embedded-filename utf8-strings verbose with-colons with-fingerprint with-key-data yes
45
46" arguments to commands and options
47syn match gpgArg contained display "\S\+\(\s\+\S\+\)*" contains=gpgID
48syn match gpgArgError contained display "\S\+\(\s\+\S\+\)*"
49
50" Define the default highlighting.
51" For version 5.7 and earlier: only when not done already
52" For version 5.8 and later: only when an item doesn't have highlighting yet
53if version >= 508 || !exists("did_gpg_syn_inits")
54 if version < 508
55 let did_gpg_syn_inits = 1
56 command -nargs=+ HiLink hi link <args>
57 else
58 command -nargs=+ HiLink hi def link <args>
59 endif
60
61 HiLink gpgComment Comment
62 HiLink gpgTodo Todo
63 HiLink gpgID Number
64 HiLink gpgOption Keyword
65 HiLink gpgCommand Error
66 HiLink gpgArgError Error
67 delcommand HiLink
68endif
69
70let b:current_syntax = "gpg"
71
72" vim: set sts=2 sw=2: