xref: /vim-8.2.3635/runtime/syntax/robots.vim (revision cb80aa2d)
1071d4279SBram Moolenaar" Vim syntax file
2071d4279SBram Moolenaar" Language:	"Robots.txt" files
3071d4279SBram Moolenaar" Robots.txt files indicate to WWW robots which parts of a web site should not be accessed.
4*cb80aa2dSBram Moolenaar" Maintainer:	Dominique Stéphan ([email protected])
5071d4279SBram Moolenaar" URL: http://www.mggen.com/vim/syntax/robots.zip
6071d4279SBram Moolenaar" Last change:	2001 May 09
7071d4279SBram Moolenaar
889bcfda6SBram Moolenaar" quit when a syntax file was already loaded
989bcfda6SBram Moolenaarif exists("b:current_syntax")
10071d4279SBram Moolenaar    finish
11071d4279SBram Moolenaarendif
12071d4279SBram Moolenaar
13071d4279SBram Moolenaar
14071d4279SBram Moolenaar" shut case off
15071d4279SBram Moolenaarsyn case ignore
16071d4279SBram Moolenaar
17071d4279SBram Moolenaar" Comment
18071d4279SBram Moolenaarsyn match  robotsComment	"#.*$" contains=robotsUrl,robotsMail,robotsString
19071d4279SBram Moolenaar
20071d4279SBram Moolenaar" Star * (means all spiders)
21071d4279SBram Moolenaarsyn match  robotsStar		"\*"
22071d4279SBram Moolenaar
23071d4279SBram Moolenaar" :
24071d4279SBram Moolenaarsyn match  robotsDelimiter	":"
25071d4279SBram Moolenaar
26071d4279SBram Moolenaar
27071d4279SBram Moolenaar" The keywords
28071d4279SBram Moolenaar" User-agent
29071d4279SBram Moolenaarsyn match  robotsAgent		"^[Uu][Ss][Ee][Rr]\-[Aa][Gg][Ee][Nn][Tt]"
30071d4279SBram Moolenaar" Disallow
31071d4279SBram Moolenaarsyn match  robotsDisallow	"^[Dd][Ii][Ss][Aa][Ll][Ll][Oo][Ww]"
32071d4279SBram Moolenaar
33071d4279SBram Moolenaar" Disallow: or User-Agent: and the rest of the line before an eventual comment
34071d4279SBram Moolenaarsynt match robotsLine		"\(^[Uu][Ss][Ee][Rr]\-[Aa][Gg][Ee][Nn][Tt]\|^[Dd][Ii][Ss][Aa][Ll][Ll][Oo][Ww]\):[^#]*"	contains=robotsAgent,robotsDisallow,robotsStar,robotsDelimiter
35071d4279SBram Moolenaar
36071d4279SBram Moolenaar" Some frequent things in comments
37071d4279SBram Moolenaarsyn match  robotsUrl		"http[s]\=://\S*"
38071d4279SBram Moolenaarsyn match  robotsMail		"\S*@\S*"
39071d4279SBram Moolenaarsyn region robotsString		start=+L\="+ skip=+\\\\\|\\"+ end=+"+
40071d4279SBram Moolenaar
41071d4279SBram Moolenaar
42f37506f6SBram Moolenaarhi def link robotsComment		Comment
43f37506f6SBram Moolenaarhi def link robotsAgent		Type
44f37506f6SBram Moolenaarhi def link robotsDisallow		Statement
45f37506f6SBram Moolenaarhi def link robotsLine		Special
46f37506f6SBram Moolenaarhi def link robotsStar		Operator
47f37506f6SBram Moolenaarhi def link robotsDelimiter	Delimiter
48f37506f6SBram Moolenaarhi def link robotsUrl		String
49f37506f6SBram Moolenaarhi def link robotsMail		String
50f37506f6SBram Moolenaarhi def link robotsString		String
51071d4279SBram Moolenaar
52071d4279SBram Moolenaar
53071d4279SBram Moolenaar
54071d4279SBram Moolenaarlet b:current_syntax = "robots"
55071d4279SBram Moolenaar
56071d4279SBram Moolenaar" vim: ts=8 sw=2
57071d4279SBram Moolenaar
58