view runtime/syntax/wget.vim @ 10722:7598ce51bf2a v8.0.0251

patch 8.0.0251: not easy to select Python 2 or 3 commit https://github.com/vim/vim/commit/f42dd3c3901ea0ba38e67a616aea9953cae81b8d Author: Bram Moolenaar <Bram@vim.org> Date: Sat Jan 28 16:06:38 2017 +0100 patch 8.0.0251: not easy to select Python 2 or 3 Problem: It is not so easy to write a script that works with both Python 2 and Python 3, even when the Python code works with both. Solution: Add 'pyxversion', :pyx, etc. (Marc Weber, Ken Takata)
author Christian Brabandt <cb@256bit.org>
date Sat, 28 Jan 2017 16:15:04 +0100
parents 42bf9264e64e
children b96ceb97e896
line wrap: on
line source

" Vim syntax file
" Language:     Wget configuration file (/etc/wgetrc ~/.wgetrc)
" Maintainer:	Doug Kearns <dougkearns@gmail.com>
" Last Change:	2013 Jun 1

if exists("b:current_syntax")
  finish
endif

let s:cpo_save = &cpo
set cpo&vim

syn match wgetComment "#.*$" contains=wgetTodo contained

syn keyword wgetTodo TODO NOTE FIXME XXX contained

syn region wgetString start=+"+ skip=+\\\\\|\\"+ end=+"+ contained oneline
syn region wgetString start=+'+ skip=+\\\\\|\\'+ end=+'+ contained oneline

syn case ignore
syn keyword wgetBoolean on off contained
syn keyword wgetNumber  inf    contained
syn case match

syn match wgetNumber "\<\%(\d\+\|inf\)\>" contained
syn match wgetQuota  "\<\d\+[kKmM]\>"     contained
syn match wgetTime   "\<\d\+[smhdw]\>"    contained

"{{{ Commands
let s:commands = map([
        \ "accept",
	\ "add_hostdir",
	\ "adjust_extension",
	\ "always_rest",
	\ "ask_password",
	\ "auth_no_challenge",
	\ "background",
	\ "backup_converted",
	\ "backups",
	\ "base",
	\ "bind_address",
	\ "ca_certificate",
	\ "ca_directory",
	\ "cache",
	\ "certificate",
	\ "certificate_type",
	\ "check_certificate",
	\ "connect_timeout",
	\ "content_disposition",
	\ "continue",
	\ "convert_links",
	\ "cookies",
	\ "cut_dirs",
	\ "debug",
	\ "default_page",
	\ "delete_after",
	\ "dns_cache",
	\ "dns_timeout",
	\ "dir_prefix",
	\ "dir_struct",
	\ "domains",
	\ "dot_bytes",
	\ "dots_in_line",
	\ "dot_spacing",
	\ "dot_style",
	\ "egd_file",
	\ "exclude_directories",
	\ "exclude_domains",
	\ "follow_ftp",
	\ "follow_tags",
	\ "force_html",
	\ "ftp_passwd",
	\ "ftp_password",
	\ "ftp_user",
	\ "ftp_proxy",
	\ "glob",
	\ "header",
	\ "html_extension",
	\ "htmlify",
	\ "http_keep_alive",
	\ "http_passwd",
	\ "http_password",
	\ "http_proxy",
	\ "https_proxy",
	\ "http_user",
	\ "ignore_case",
	\ "ignore_length",
	\ "ignore_tags",
	\ "include_directories",
	\ "inet4_only",
	\ "inet6_only",
	\ "input",
	\ "iri",
	\ "keep_session_cookies",
	\ "kill_longer",
	\ "limit_rate",
	\ "load_cookies",
	\ "locale",
	\ "local_encoding",
	\ "logfile",
	\ "login",
	\ "max_redirect",
	\ "mirror",
	\ "netrc",
	\ "no_clobber",
	\ "no_parent",
	\ "no_proxy",
	\ "numtries",
	\ "output_document",
	\ "page_requisites",
	\ "passive_ftp",
	\ "passwd",
	\ "password",
	\ "post_data",
	\ "post_file",
	\ "prefer_family",
	\ "preserve_permissions",
	\ "private_key",
	\ "private_key_type",
	\ "progress",
	\ "protocol_directories",
	\ "proxy_passwd",
	\ "proxy_password",
	\ "proxy_user",
	\ "quiet",
	\ "quota",
	\ "random_file",
	\ "random_wait",
	\ "read_timeout",
	\ "reclevel",
	\ "recursive",
	\ "referer",
	\ "reject",
	\ "relative_only",
	\ "remote_encoding",
	\ "remove_listing",
	\ "restrict_file_names",
	\ "retr_symlinks",
	\ "retry_connrefused",
	\ "robots",
	\ "save_cookies",
	\ "save_headers",
	\ "secure_protocol",
	\ "server_response",
	\ "show_all_dns_entries",
	\ "simple_host_check",
	\ "span_hosts",
	\ "spider",
	\ "strict_comments",
	\ "sslcertfile",
	\ "sslcertkey",
	\ "timeout",
	\ "time_stamping",
	\ "use_server_timestamps",
	\ "tries",
	\ "trust_server_names",
	\ "user",
	\ "use_proxy",
	\ "user_agent",
	\ "verbose",
	\ "wait",
	\ "wait_retry"],
	\ "substitute(v:val, '_', '[-_]\\\\=', 'g')")
"}}}

syn case ignore
for cmd in s:commands
  exe 'syn match wgetCommand "' . cmd . '" nextgroup=wgetAssignmentOperator skipwhite contained'
endfor
syn case match

syn match wgetStart "^" nextgroup=wgetCommand,wgetComment skipwhite
syn match wgetAssignmentOperator "=" nextgroup=wgetString,wgetBoolean,wgetNumber,wgetQuota,wgetTime skipwhite contained

hi def link wgetAssignmentOperator Special
hi def link wgetBoolean		   Boolean
hi def link wgetCommand		   Identifier
hi def link wgetComment		   Comment
hi def link wgetNumber		   Number
hi def link wgetQuota		   Number
hi def link wgetString		   String
hi def link wgetTodo		   Todo

let b:current_syntax = "wget"

let &cpo = s:cpo_save
unlet s:cpo_save

" vim: ts=8 fdm=marker: