home *** CD-ROM | disk | FTP | other *** search
/ vim.ftp.fu-berlin.de / 2015-02-03.vim.ftp.fu-berlin.de.tar / vim.ftp.fu-berlin.de / runtime / dos / syntax / squid.vim < prev    next >
Encoding:
Text File  |  2010-08-15  |  7.3 KB  |  154 lines

  1. " Vim syntax file
  2. " Language:    Squid config file
  3. " Maintainer:    Klaus Muth <klaus@hampft.de>
  4. " Last Change:    2005 Jun 12
  5. " URL:        http://www.hampft.de/vim/syntax/squid.vim
  6. " ThanksTo:    Ilya Sher <iso8601@mail.ru>,
  7. "               Michael Dotzler <Michael.Dotzler@leoni.com>
  8.  
  9.  
  10. " For version 5.x: Clear all syntax items
  11. " For version 6.x: Quit when a syntax file was already loaded
  12. if version < 600
  13.   syntax clear
  14. elseif exists("b:current_syntax")
  15.   finish
  16. endif
  17.  
  18. " squid.conf syntax seems to be case insensitive
  19. syn case ignore
  20.  
  21. syn keyword    squidTodo    contained TODO
  22. syn match    squidComment    "#.*$" contains=squidTodo,squidTag
  23. syn match    squidTag    contained "TAG: .*$"
  24.  
  25. " Lots & lots of Keywords!
  26. syn keyword    squidConf    acl always_direct announce_host announce_period
  27. syn keyword    squidConf    announce_port announce_to anonymize_headers
  28. syn keyword    squidConf    append_domain as_whois_server auth_param_basic
  29. syn keyword    squidConf    authenticate_children authenticate_program
  30. syn keyword    squidConf    authenticate_ttl broken_posts buffered_logs
  31. syn keyword    squidConf    cache_access_log cache_announce cache_dir
  32. syn keyword    squidConf    cache_dns_program cache_effective_group
  33. syn keyword    squidConf    cache_effective_user cache_host cache_host_acl
  34. syn keyword    squidConf    cache_host_domain cache_log cache_mem
  35. syn keyword    squidConf    cache_mem_high cache_mem_low cache_mgr
  36. syn keyword    squidConf    cachemgr_passwd cache_peer cache_peer_access
  37. syn keyword    squidConf    cahce_replacement_policy cache_stoplist
  38. syn keyword    squidConf    cache_stoplist_pattern cache_store_log cache_swap
  39. syn keyword    squidConf    cache_swap_high cache_swap_log cache_swap_low
  40. syn keyword    squidConf    client_db client_lifetime client_netmask
  41. syn keyword    squidConf    connect_timeout coredump_dir dead_peer_timeout
  42. syn keyword    squidConf    debug_options delay_access delay_class
  43. syn keyword    squidConf    delay_initial_bucket_level delay_parameters
  44. syn keyword    squidConf    delay_pools deny_info dns_children dns_defnames
  45. syn keyword    squidConf    dns_nameservers dns_testnames emulate_httpd_log
  46. syn keyword    squidConf    err_html_text fake_user_agent firewall_ip
  47. syn keyword    squidConf    forwarded_for forward_snmpd_port fqdncache_size
  48. syn keyword    squidConf    ftpget_options ftpget_program ftp_list_width
  49. syn keyword    squidConf    ftp_passive ftp_user half_closed_clients
  50. syn keyword    squidConf    header_access header_replace hierarchy_stoplist
  51. syn keyword    squidConf    high_response_time_warning high_page_fault_warning
  52. syn keyword    squidConf    htcp_port http_access http_anonymizer httpd_accel
  53. syn keyword    squidConf    httpd_accel_host httpd_accel_port
  54. syn keyword    squidConf    httpd_accel_uses_host_header
  55. syn keyword    squidConf    httpd_accel_with_proxy http_port http_reply_access
  56. syn keyword    squidConf    icp_access icp_hit_stale icp_port
  57. syn keyword    squidConf    icp_query_timeout ident_lookup ident_lookup_access
  58. syn keyword    squidConf    ident_timeout incoming_http_average
  59. syn keyword    squidConf    incoming_icp_average inside_firewall ipcache_high
  60. syn keyword    squidConf    ipcache_low ipcache_size local_domain local_ip
  61. syn keyword    squidConf    logfile_rotate log_fqdn log_icp_queries
  62. syn keyword    squidConf    log_mime_hdrs maximum_object_size
  63. syn keyword    squidConf    maximum_single_addr_tries mcast_groups
  64. syn keyword    squidConf    mcast_icp_query_timeout mcast_miss_addr
  65. syn keyword    squidConf    mcast_miss_encode_key mcast_miss_port memory_pools
  66. syn keyword    squidConf    memory_pools_limit memory_replacement_policy
  67. syn keyword    squidConf    mime_table min_http_poll_cnt min_icp_poll_cnt
  68. syn keyword    squidConf    minimum_direct_hops minimum_object_size
  69. syn keyword    squidConf    minimum_retry_timeout miss_access negative_dns_ttl
  70. syn keyword    squidConf    negative_ttl neighbor_timeout neighbor_type_domain
  71. syn keyword    squidConf    netdb_high netdb_low netdb_ping_period
  72. syn keyword    squidConf    netdb_ping_rate never_direct no_cache
  73. syn keyword    squidConf    passthrough_proxy pconn_timeout pid_filename
  74. syn keyword    squidConf    pinger_program positive_dns_ttl prefer_direct
  75. syn keyword    squidConf    proxy_auth proxy_auth_realm query_icmp quick_abort
  76. syn keyword    squidConf    quick_abort quick_abort_max quick_abort_min
  77. syn keyword    squidConf    quick_abort_pct range_offset_limit read_timeout
  78. syn keyword    squidConf    redirect_children redirect_program
  79. syn keyword    squidConf    redirect_rewrites_host_header reference_age
  80. syn keyword    squidConf    reference_age refresh_pattern reload_into_ims
  81. syn keyword    squidConf    request_body_max_size request_size request_timeout
  82. syn keyword    squidConf    shutdown_lifetime single_parent_bypass
  83. syn keyword    squidConf    siteselect_timeout snmp_access
  84. syn keyword    squidConf    snmp_incoming_address snmp_port source_ping
  85. syn keyword    squidConf    ssl_proxy store_avg_object_size
  86. syn keyword    squidConf    store_objects_per_bucket strip_query_terms
  87. syn keyword    squidConf    swap_level1_dirs swap_level2_dirs
  88. syn keyword    squidConf    tcp_incoming_address tcp_outgoing_address
  89. syn keyword    squidConf    tcp_recv_bufsize test_reachability udp_hit_obj
  90. syn keyword    squidConf    udp_hit_obj_size udp_incoming_address
  91. syn keyword    squidConf    udp_outgoing_address unique_hostname
  92. syn keyword    squidConf    unlinkd_program uri_whitespace useragent_log
  93. syn keyword    squidConf    visible_hostname wais_relay wais_relay_host
  94. syn keyword    squidConf    wais_relay_port
  95.  
  96. syn keyword    squidOpt    proxy-only weight ttl no-query default
  97. syn keyword    squidOpt    round-robin multicast-responder
  98. syn keyword    squidOpt    on off all deny allow
  99. syn keyword    squidopt    via parent no-digest heap lru realm
  100. syn keyword    squidopt    children credentialsttl none disable
  101. syn keyword    squidopt    offline_toggle diskd q1 q2
  102.  
  103. " Security Actions for cachemgr_passwd
  104. syn keyword    squidAction    shutdown info parameter server_list
  105. syn keyword    squidAction    client_list
  106. syn match    squidAction    "stats/\(objects\|vm_objects\|utilization\|ipcache\|fqdncache\|dns\|redirector\|io\|reply_headers\|filedescriptors\|netdb\)"
  107. syn match    squidAction    "log\(/\(status\|enable\|disable\|clear\)\)\="
  108. syn match    squidAction    "squid\.conf"
  109.  
  110. " Keywords for the acl-config
  111. syn keyword    squidAcl    url_regex urlpath_regex referer_regex port proto
  112. syn keyword    squidAcl    req_mime_type rep_mime_type
  113. syn keyword    squidAcl    method browser user src dst
  114. syn keyword    squidAcl    time dstdomain ident snmp_community
  115.  
  116. syn match    squidNumber    "\<\d\+\>"
  117. syn match    squidIP        "\<\d\{1,3}\.\d\{1,3}\.\d\{1,3}\.\d\{1,3}\>"
  118. syn match    squidStr    "\(^\s*acl\s\+\S\+\s\+\(\S*_regex\|re[pq]_mime_type\|browser\|_domain\|user\)\+\s\+\)\@<=.*" contains=squidRegexOpt
  119. syn match    squidRegexOpt    contained "\(^\s*acl\s\+\S\+\s\+\S\+\(_regex\|_mime_type\)\s\+\)\@<=[-+]i\s\+"
  120.  
  121. " All config is in one line, so this has to be sufficient
  122. " Make it fast like hell :)
  123. syn sync minlines=3
  124.  
  125. " Define the default highlighting.
  126. " For version 5.7 and earlier: only when not done already
  127. " For version 5.8 and later: only when an item doesn't have highlighting yet
  128. if version >= 508 || !exists("did_squid_syntax_inits")
  129.   if version < 508
  130.     let did_squid_syntax_inits = 1
  131.     command -nargs=+ HiLink hi link <args>
  132.   else
  133.     command -nargs=+ HiLink hi def link <args>
  134.   endif
  135.  
  136.   HiLink squidTodo    Todo
  137.   HiLink squidComment    Comment
  138.   HiLink squidTag    Special
  139.   HiLink squidConf    Keyword
  140.   HiLink squidOpt    Constant
  141.   HiLink squidAction    String
  142.   HiLink squidNumber    Number
  143.   HiLink squidIP    Number
  144.   HiLink squidAcl    Keyword
  145.   HiLink squidStr    String
  146.   HiLink squidRegexOpt    Special
  147.  
  148.   delcommand HiLink
  149. endif
  150.  
  151. let b:current_syntax = "squid"
  152.  
  153. " vim: ts=8
  154.