blob: 9f15d16637c4475fd1c9782801bb165e656c690d [file] [log] [blame]
Bram Moolenaar1cd871b2004-12-19 22:46:22 +00001" Vim syntax file
Bram Moolenaar42eeac32005-06-29 22:40:58 +00002" Language: netrc(5) configuration file
Bram Moolenaar57657d82006-04-21 22:12:41 +00003" Maintainer: Nikolai Weibull <now@bitwi.se>
Bram Moolenaar5c736222010-01-06 20:54:52 +01004" Latest Revision: 2010-01-03
Bram Moolenaar1cd871b2004-12-19 22:46:22 +00005
Bram Moolenaar42eeac32005-06-29 22:40:58 +00006if exists("b:current_syntax")
Bram Moolenaar1cd871b2004-12-19 22:46:22 +00007 finish
8endif
9
Bram Moolenaar42eeac32005-06-29 22:40:58 +000010let s:cpo_save = &cpo
11set cpo&vim
Bram Moolenaar1cd871b2004-12-19 22:46:22 +000012
Bram Moolenaar42eeac32005-06-29 22:40:58 +000013syn keyword netrcKeyword machine nextgroup=netrcMachine skipwhite skipnl
Bram Moolenaar5c736222010-01-06 20:54:52 +010014syn keyword netrcKeyword account
15 \ login
16 \ nextgroup=netrcLogin,netrcSpecial skipwhite skipnl
Bram Moolenaar42eeac32005-06-29 22:40:58 +000017syn keyword netrcKeyword password nextgroup=netrcPassword skipwhite skipnl
18syn keyword netrcKeyword default
Bram Moolenaar5c736222010-01-06 20:54:52 +010019syn keyword netrcKeyword macdef
20 \ nextgroup=netrcInit,netrcMacroName skipwhite skipnl
Bram Moolenaar42eeac32005-06-29 22:40:58 +000021syn region netrcMacro contained start='.' end='^$'
Bram Moolenaar1cd871b2004-12-19 22:46:22 +000022
Bram Moolenaar42eeac32005-06-29 22:40:58 +000023syn match netrcMachine contained display '\S\+'
24syn match netrcMachine contained display '"[^\\"]*\(\\.[^\\"]*\)*"'
25syn match netrcLogin contained display '\S\+'
26syn match netrcLogin contained display '"[^\\"]*\(\\.[^\\"]*\)*"'
27syn match netrcPassword contained display '\S\+'
28syn match netrcPassword contained display '"[^\\"]*\(\\.[^\\"]*\)*"'
Bram Moolenaar5c736222010-01-06 20:54:52 +010029syn match netrcMacroName contained display '\S\+'
30 \ nextgroup=netrcMacro skipwhite skipnl
Bram Moolenaar42eeac32005-06-29 22:40:58 +000031syn match netrcMacroName contained display '"[^\\"]*\(\\.[^\\"]*\)*"'
Bram Moolenaar5c736222010-01-06 20:54:52 +010032 \ nextgroup=netrcMacro skipwhite skipnl
Bram Moolenaar42eeac32005-06-29 22:40:58 +000033
34syn keyword netrcSpecial contained anonymous
Bram Moolenaar5c736222010-01-06 20:54:52 +010035syn match netrcInit contained '\<init$'
36 \ nextgroup=netrcMacro skipwhite skipnl
Bram Moolenaar1cd871b2004-12-19 22:46:22 +000037
38syn sync fromstart
39
Bram Moolenaar42eeac32005-06-29 22:40:58 +000040hi def link netrcKeyword Keyword
41hi def link netrcMacro PreProc
42hi def link netrcMachine Identifier
43hi def link netrcLogin String
44hi def link netrcPassword String
45hi def link netrcMacroName String
46hi def link netrcSpecial Special
47hi def link netrcInit Special
Bram Moolenaar1cd871b2004-12-19 22:46:22 +000048
49let b:current_syntax = "netrc"
50
Bram Moolenaar42eeac32005-06-29 22:40:58 +000051let &cpo = s:cpo_save
52unlet s:cpo_save