xref: /vim-8.2.3635/runtime/syntax/squid.vim (revision f37506f6)
1071d4279SBram Moolenaar" Vim syntax file
2071d4279SBram Moolenaar" Language:	Squid config file
3071d4279SBram Moolenaar" Maintainer:	Klaus Muth <[email protected]>
49ba0eb85SBram Moolenaar" Last Change:	2005 Jun 12
5071d4279SBram Moolenaar" URL:		http://www.hampft.de/vim/syntax/squid.vim
69ba0eb85SBram Moolenaar" ThanksTo:	Ilya Sher <[email protected]>,
79ba0eb85SBram Moolenaar"               Michael Dotzler <[email protected]>
8071d4279SBram Moolenaar
9071d4279SBram Moolenaar
1089bcfda6SBram Moolenaar" quit when a syntax file was already loaded
1189bcfda6SBram Moolenaarif exists("b:current_syntax")
12071d4279SBram Moolenaar  finish
13071d4279SBram Moolenaarendif
14071d4279SBram Moolenaar
15071d4279SBram Moolenaar" squid.conf syntax seems to be case insensitive
16071d4279SBram Moolenaarsyn case ignore
17071d4279SBram Moolenaar
18071d4279SBram Moolenaarsyn keyword	squidTodo	contained TODO
19071d4279SBram Moolenaarsyn match	squidComment	"#.*$" contains=squidTodo,squidTag
20071d4279SBram Moolenaarsyn match	squidTag	contained "TAG: .*$"
21071d4279SBram Moolenaar
22071d4279SBram Moolenaar" Lots & lots of Keywords!
239ba0eb85SBram Moolenaarsyn keyword	squidConf	acl always_direct announce_host announce_period
249ba0eb85SBram Moolenaarsyn keyword	squidConf	announce_port announce_to anonymize_headers
259ba0eb85SBram Moolenaarsyn keyword	squidConf	append_domain as_whois_server auth_param_basic
269ba0eb85SBram Moolenaarsyn keyword	squidConf	authenticate_children authenticate_program
279ba0eb85SBram Moolenaarsyn keyword	squidConf	authenticate_ttl broken_posts buffered_logs
289ba0eb85SBram Moolenaarsyn keyword	squidConf	cache_access_log cache_announce cache_dir
299ba0eb85SBram Moolenaarsyn keyword	squidConf	cache_dns_program cache_effective_group
309ba0eb85SBram Moolenaarsyn keyword	squidConf	cache_effective_user cache_host cache_host_acl
319ba0eb85SBram Moolenaarsyn keyword	squidConf	cache_host_domain cache_log cache_mem
329ba0eb85SBram Moolenaarsyn keyword	squidConf	cache_mem_high cache_mem_low cache_mgr
339ba0eb85SBram Moolenaarsyn keyword	squidConf	cachemgr_passwd cache_peer cache_peer_access
349ba0eb85SBram Moolenaarsyn keyword	squidConf	cahce_replacement_policy cache_stoplist
359ba0eb85SBram Moolenaarsyn keyword	squidConf	cache_stoplist_pattern cache_store_log cache_swap
369ba0eb85SBram Moolenaarsyn keyword	squidConf	cache_swap_high cache_swap_log cache_swap_low
379ba0eb85SBram Moolenaarsyn keyword	squidConf	client_db client_lifetime client_netmask
389ba0eb85SBram Moolenaarsyn keyword	squidConf	connect_timeout coredump_dir dead_peer_timeout
399ba0eb85SBram Moolenaarsyn keyword	squidConf	debug_options delay_access delay_class
409ba0eb85SBram Moolenaarsyn keyword	squidConf	delay_initial_bucket_level delay_parameters
419ba0eb85SBram Moolenaarsyn keyword	squidConf	delay_pools deny_info dns_children dns_defnames
429ba0eb85SBram Moolenaarsyn keyword	squidConf	dns_nameservers dns_testnames emulate_httpd_log
439ba0eb85SBram Moolenaarsyn keyword	squidConf	err_html_text fake_user_agent firewall_ip
449ba0eb85SBram Moolenaarsyn keyword	squidConf	forwarded_for forward_snmpd_port fqdncache_size
45071d4279SBram Moolenaarsyn keyword	squidConf	ftpget_options ftpget_program ftp_list_width
469ba0eb85SBram Moolenaarsyn keyword	squidConf	ftp_passive ftp_user half_closed_clients
479ba0eb85SBram Moolenaarsyn keyword	squidConf	header_access header_replace hierarchy_stoplist
489ba0eb85SBram Moolenaarsyn keyword	squidConf	high_response_time_warning high_page_fault_warning
499ba0eb85SBram Moolenaarsyn keyword	squidConf	htcp_port http_access http_anonymizer httpd_accel
509ba0eb85SBram Moolenaarsyn keyword	squidConf	httpd_accel_host httpd_accel_port
519ba0eb85SBram Moolenaarsyn keyword	squidConf	httpd_accel_uses_host_header
529ba0eb85SBram Moolenaarsyn keyword	squidConf	httpd_accel_with_proxy http_port http_reply_access
539ba0eb85SBram Moolenaarsyn keyword	squidConf	icp_access icp_hit_stale icp_port
549ba0eb85SBram Moolenaarsyn keyword	squidConf	icp_query_timeout ident_lookup ident_lookup_access
559ba0eb85SBram Moolenaarsyn keyword	squidConf	ident_timeout incoming_http_average
569ba0eb85SBram Moolenaarsyn keyword	squidConf	incoming_icp_average inside_firewall ipcache_high
579ba0eb85SBram Moolenaarsyn keyword	squidConf	ipcache_low ipcache_size local_domain local_ip
58071d4279SBram Moolenaarsyn keyword	squidConf	logfile_rotate log_fqdn log_icp_queries
59071d4279SBram Moolenaarsyn keyword	squidConf	log_mime_hdrs maximum_object_size
60071d4279SBram Moolenaarsyn keyword	squidConf	maximum_single_addr_tries mcast_groups
61071d4279SBram Moolenaarsyn keyword	squidConf	mcast_icp_query_timeout mcast_miss_addr
629ba0eb85SBram Moolenaarsyn keyword	squidConf	mcast_miss_encode_key mcast_miss_port memory_pools
639ba0eb85SBram Moolenaarsyn keyword	squidConf	memory_pools_limit memory_replacement_policy
649ba0eb85SBram Moolenaarsyn keyword	squidConf	mime_table min_http_poll_cnt min_icp_poll_cnt
659ba0eb85SBram Moolenaarsyn keyword	squidConf	minimum_direct_hops minimum_object_size
669ba0eb85SBram Moolenaarsyn keyword	squidConf	minimum_retry_timeout miss_access negative_dns_ttl
679ba0eb85SBram Moolenaarsyn keyword	squidConf	negative_ttl neighbor_timeout neighbor_type_domain
68071d4279SBram Moolenaarsyn keyword	squidConf	netdb_high netdb_low netdb_ping_period
699ba0eb85SBram Moolenaarsyn keyword	squidConf	netdb_ping_rate never_direct no_cache
709ba0eb85SBram Moolenaarsyn keyword	squidConf	passthrough_proxy pconn_timeout pid_filename
719ba0eb85SBram Moolenaarsyn keyword	squidConf	pinger_program positive_dns_ttl prefer_direct
729ba0eb85SBram Moolenaarsyn keyword	squidConf	proxy_auth proxy_auth_realm query_icmp quick_abort
73071d4279SBram Moolenaarsyn keyword	squidConf	quick_abort quick_abort_max quick_abort_min
749ba0eb85SBram Moolenaarsyn keyword	squidConf	quick_abort_pct range_offset_limit read_timeout
759ba0eb85SBram Moolenaarsyn keyword	squidConf	redirect_children redirect_program
76071d4279SBram Moolenaarsyn keyword	squidConf	redirect_rewrites_host_header reference_age
77071d4279SBram Moolenaarsyn keyword	squidConf	reference_age refresh_pattern reload_into_ims
789ba0eb85SBram Moolenaarsyn keyword	squidConf	request_body_max_size request_size request_timeout
79071d4279SBram Moolenaarsyn keyword	squidConf	shutdown_lifetime single_parent_bypass
80071d4279SBram Moolenaarsyn keyword	squidConf	siteselect_timeout snmp_access
81071d4279SBram Moolenaarsyn keyword	squidConf	snmp_incoming_address snmp_port source_ping
82071d4279SBram Moolenaarsyn keyword	squidConf	ssl_proxy store_avg_object_size
83071d4279SBram Moolenaarsyn keyword	squidConf	store_objects_per_bucket strip_query_terms
84071d4279SBram Moolenaarsyn keyword	squidConf	swap_level1_dirs swap_level2_dirs
85071d4279SBram Moolenaarsyn keyword	squidConf	tcp_incoming_address tcp_outgoing_address
869ba0eb85SBram Moolenaarsyn keyword	squidConf	tcp_recv_bufsize test_reachability udp_hit_obj
879ba0eb85SBram Moolenaarsyn keyword	squidConf	udp_hit_obj_size udp_incoming_address
889ba0eb85SBram Moolenaarsyn keyword	squidConf	udp_outgoing_address unique_hostname
899ba0eb85SBram Moolenaarsyn keyword	squidConf	unlinkd_program uri_whitespace useragent_log
909ba0eb85SBram Moolenaarsyn keyword	squidConf	visible_hostname wais_relay wais_relay_host
919ba0eb85SBram Moolenaarsyn keyword	squidConf	wais_relay_port
92071d4279SBram Moolenaar
93071d4279SBram Moolenaarsyn keyword	squidOpt	proxy-only weight ttl no-query default
94071d4279SBram Moolenaarsyn keyword	squidOpt	round-robin multicast-responder
95071d4279SBram Moolenaarsyn keyword	squidOpt	on off all deny allow
969ba0eb85SBram Moolenaarsyn keyword	squidopt	via parent no-digest heap lru realm
979ba0eb85SBram Moolenaarsyn keyword	squidopt	children credentialsttl none disable
989ba0eb85SBram Moolenaarsyn keyword	squidopt	offline_toggle diskd q1 q2
99071d4279SBram Moolenaar
100071d4279SBram Moolenaar" Security Actions for cachemgr_passwd
101071d4279SBram Moolenaarsyn keyword	squidAction	shutdown info parameter server_list
102071d4279SBram Moolenaarsyn keyword	squidAction	client_list
103071d4279SBram Moolenaarsyn match	squidAction	"stats/\(objects\|vm_objects\|utilization\|ipcache\|fqdncache\|dns\|redirector\|io\|reply_headers\|filedescriptors\|netdb\)"
104071d4279SBram Moolenaarsyn match	squidAction	"log\(/\(status\|enable\|disable\|clear\)\)\="
105071d4279SBram Moolenaarsyn match	squidAction	"squid\.conf"
106071d4279SBram Moolenaar
107071d4279SBram Moolenaar" Keywords for the acl-config
108071d4279SBram Moolenaarsyn keyword	squidAcl	url_regex urlpath_regex referer_regex port proto
109071d4279SBram Moolenaarsyn keyword	squidAcl	req_mime_type rep_mime_type
110071d4279SBram Moolenaarsyn keyword	squidAcl	method browser user src dst
1119ba0eb85SBram Moolenaarsyn keyword	squidAcl	time dstdomain ident snmp_community
112071d4279SBram Moolenaar
113071d4279SBram Moolenaarsyn match	squidNumber	"\<\d\+\>"
114071d4279SBram Moolenaarsyn match	squidIP		"\<\d\{1,3}\.\d\{1,3}\.\d\{1,3}\.\d\{1,3}\>"
115071d4279SBram Moolenaarsyn match	squidStr	"\(^\s*acl\s\+\S\+\s\+\(\S*_regex\|re[pq]_mime_type\|browser\|_domain\|user\)\+\s\+\)\@<=.*" contains=squidRegexOpt
116071d4279SBram Moolenaarsyn match	squidRegexOpt	contained "\(^\s*acl\s\+\S\+\s\+\S\+\(_regex\|_mime_type\)\s\+\)\@<=[-+]i\s\+"
117071d4279SBram Moolenaar
118071d4279SBram Moolenaar" All config is in one line, so this has to be sufficient
119071d4279SBram Moolenaar" Make it fast like hell :)
120071d4279SBram Moolenaarsyn sync minlines=3
121071d4279SBram Moolenaar
122071d4279SBram Moolenaar" Define the default highlighting.
12389bcfda6SBram Moolenaar" Only when an item doesn't have highlighting yet
124071d4279SBram Moolenaar
125*f37506f6SBram Moolenaarhi def link squidTodo	Todo
126*f37506f6SBram Moolenaarhi def link squidComment	Comment
127*f37506f6SBram Moolenaarhi def link squidTag	Special
128*f37506f6SBram Moolenaarhi def link squidConf	Keyword
129*f37506f6SBram Moolenaarhi def link squidOpt	Constant
130*f37506f6SBram Moolenaarhi def link squidAction	String
131*f37506f6SBram Moolenaarhi def link squidNumber	Number
132*f37506f6SBram Moolenaarhi def link squidIP	Number
133*f37506f6SBram Moolenaarhi def link squidAcl	Keyword
134*f37506f6SBram Moolenaarhi def link squidStr	String
135*f37506f6SBram Moolenaarhi def link squidRegexOpt	Special
136071d4279SBram Moolenaar
137071d4279SBram Moolenaar
138071d4279SBram Moolenaarlet b:current_syntax = "squid"
139071d4279SBram Moolenaar
140071d4279SBram Moolenaar" vim: ts=8
141