codekingpro/portable-devtools
114k
1" Vim syntax file2" Language: HMTL Tidy Configuration3" Maintainer: Doug Kearns <dougkearns@gmail.com>4" Last Change: 2020 Sep 45 6" Preamble {{{17if exists("b:current_syntax")8 finish9endif10 11let s:cpo_save = &cpo12set cpo&vim13 14syn iskeyword @,48-57,-,_15 16" Values {{{117syn match tidyWordSeparator contained ",\|\s" nextgroup=tidyWord skipwhite skipnl18syn match tidyMuteIDSeparator contained ",\|\s" nextgroup=tidyMuteID skipwhite skipnl19 20syn case ignore21syn keyword tidyBoolean contained t[rue] f[alse] y[es] n[o] 1 022syn keyword tidyAutoBoolean contained t[rue] f[alse] y[es] n[o] 1 0 auto23syn case match24syn keyword tidyCustomTags contained no blocklevel empty inline pre25syn keyword tidyDoctype contained html5 omit auto strict loose transitional user26syn keyword tidyEncoding contained raw ascii latin0 latin1 utf8 iso2022 mac win1252 ibm858 utf16le utf16be utf16 big5 shiftjis27syn keyword tidyNewline contained LF CRLF CR28syn match tidyNumber contained "\<\d\+\>"29syn keyword tidyRepeat contained keep-first keep-last30syn keyword tidySorter contained alpha none31syn region tidyString contained start=+"+ skip=+\\\\\|\\"+ end=+"+ oneline32syn region tidyString contained start=+'+ skip=+\\\\\|\\'+ end=+'+ oneline33" Tag and attribute lists34syn match tidyWord contained "\<\k\+\>:\@!" nextgroup=tidyWordSeparator skipwhite skipnl35 36" Mute Message IDs {{{237syn keyword tidyMuteID ADDED_MISSING_CHARSET ANCHOR_DUPLICATED38 \ ANCHOR_NOT_UNIQUE APOS_UNDEFINED APPLET_MISSING_ALT AREA_MISSING_ALT39 \ ASCII_REQUIRES_DESCRIPTION ASSOCIATE_LABELS_EXPLICITLY40 \ ASSOCIATE_LABELS_EXPLICITLY_FOR ASSOCIATE_LABELS_EXPLICITLY_ID41 \ ATTRIBUTE_IS_NOT_ALLOWED ATTRIBUTE_VALUE_REPLACED42 \ ATTR_VALUE_NOT_LCASE AUDIO_MISSING_TEXT_AIFF AUDIO_MISSING_TEXT_AU43 \ AUDIO_MISSING_TEXT_RA AUDIO_MISSING_TEXT_RM AUDIO_MISSING_TEXT_SND44 \ AUDIO_MISSING_TEXT_WAV BACKSLASH_IN_URI BAD_ATTRIBUTE_VALUE45 \ BAD_ATTRIBUTE_VALUE_REPLACED BAD_CDATA_CONTENT BAD_SUMMARY_HTML546 \ BAD_SURROGATE_LEAD BAD_SURROGATE_PAIR BAD_SURROGATE_TAIL47 \ CANT_BE_NESTED COERCE_TO_ENDTAG COLOR_CONTRAST_ACTIVE_LINK48 \ COLOR_CONTRAST_LINK COLOR_CONTRAST_TEXT COLOR_CONTRAST_VISITED_LINK49 \ CONTENT_AFTER_BODY CUSTOM_TAG_DETECTED DATA_TABLE_MISSING_HEADERS50 \ DATA_TABLE_MISSING_HEADERS_COLUMN DATA_TABLE_MISSING_HEADERS_ROW51 \ DATA_TABLE_REQUIRE_MARKUP_COLUMN_HEADERS52 \ DATA_TABLE_REQUIRE_MARKUP_ROW_HEADERS DISCARDING_UNEXPECTED53 \ DOCTYPE_AFTER_TAGS DOCTYPE_MISSING DUPLICATE_FRAMESET54 \ ELEMENT_NOT_EMPTY ELEMENT_VERS_MISMATCH_ERROR55 \ ELEMENT_VERS_MISMATCH_WARN ENCODING_MISMATCH56 \ ENSURE_PROGRAMMATIC_OBJECTS_ACCESSIBLE_APPLET57 \ ENSURE_PROGRAMMATIC_OBJECTS_ACCESSIBLE_EMBED58 \ ENSURE_PROGRAMMATIC_OBJECTS_ACCESSIBLE_OBJECT59 \ ENSURE_PROGRAMMATIC_OBJECTS_ACCESSIBLE_SCRIPT ESCAPED_ILLEGAL_URI60 \ FILE_CANT_OPEN FILE_CANT_OPEN_CFG FILE_NOT_FILE FIXED_BACKSLASH61 \ FOUND_STYLE_IN_BODY FRAME_MISSING_LONGDESC FRAME_MISSING_NOFRAMES62 \ FRAME_MISSING_TITLE FRAME_SRC_INVALID FRAME_TITLE_INVALID_NULL63 \ FRAME_TITLE_INVALID_SPACES HEADERS_IMPROPERLY_NESTED64 \ HEADER_USED_FORMAT_TEXT ID_NAME_MISMATCH ILLEGAL_NESTING65 \ ILLEGAL_URI_CODEPOINT ILLEGAL_URI_REFERENCE66 \ IMAGE_MAP_SERVER_SIDE_REQUIRES_CONVERSION67 \ IMG_ALT_SUSPICIOUS_FILENAME IMG_ALT_SUSPICIOUS_FILE_SIZE68 \ IMG_ALT_SUSPICIOUS_PLACEHOLDER IMG_ALT_SUSPICIOUS_TOO_LONG69 \ IMG_BUTTON_MISSING_ALT IMG_MAP_CLIENT_MISSING_TEXT_LINKS70 \ IMG_MAP_SERVER_REQUIRES_TEXT_LINKS IMG_MISSING_ALT IMG_MISSING_DLINK71 \ IMG_MISSING_LONGDESC IMG_MISSING_LONGDESC_DLINK72 \ INFORMATION_NOT_CONVEYED_APPLET INFORMATION_NOT_CONVEYED_IMAGE73 \ INFORMATION_NOT_CONVEYED_INPUT INFORMATION_NOT_CONVEYED_OBJECT74 \ INFORMATION_NOT_CONVEYED_SCRIPT INSERTING_AUTO_ATTRIBUTE75 \ INSERTING_TAG INVALID_ATTRIBUTE INVALID_NCR INVALID_SGML_CHARS76 \ INVALID_UTF16 INVALID_UTF8 INVALID_XML_ID JOINING_ATTRIBUTE77 \ LANGUAGE_INVALID LANGUAGE_NOT_IDENTIFIED78 \ LAYOUT_TABLES_LINEARIZE_PROPERLY LAYOUT_TABLE_INVALID_MARKUP79 \ LINK_TEXT_MISSING LINK_TEXT_NOT_MEANINGFUL80 \ LINK_TEXT_NOT_MEANINGFUL_CLICK_HERE LINK_TEXT_TOO_LONG81 \ LIST_USAGE_INVALID_LI LIST_USAGE_INVALID_OL LIST_USAGE_INVALID_UL82 \ MALFORMED_COMMENT MALFORMED_COMMENT_DROPPING MALFORMED_COMMENT_EOS83 \ MALFORMED_COMMENT_WARN MALFORMED_DOCTYPE METADATA_MISSING84 \ METADATA_MISSING_REDIRECT_AUTOREFRESH MISMATCHED_ATTRIBUTE_ERROR85 \ MISMATCHED_ATTRIBUTE_WARN MISSING_ATTRIBUTE MISSING_ATTR_VALUE86 \ MISSING_DOCTYPE MISSING_ENDTAG_BEFORE MISSING_ENDTAG_FOR87 \ MISSING_ENDTAG_OPTIONAL MISSING_IMAGEMAP MISSING_QUOTEMARK88 \ MISSING_QUOTEMARK_OPEN MISSING_SEMICOLON MISSING_SEMICOLON_NCR89 \ MISSING_STARTTAG MISSING_TITLE_ELEMENT MOVED_STYLE_TO_HEAD90 \ MULTIMEDIA_REQUIRES_TEXT NESTED_EMPHASIS NESTED_QUOTATION91 \ NEWLINE_IN_URI NEW_WINDOWS_REQUIRE_WARNING_BLANK92 \ NEW_WINDOWS_REQUIRE_WARNING_NEW NOFRAMES_CONTENT93 \ NOFRAMES_INVALID_CONTENT NOFRAMES_INVALID_LINK94 \ NOFRAMES_INVALID_NO_VALUE NON_MATCHING_ENDTAG OBJECT_MISSING_ALT95 \ OBSOLETE_ELEMENT OPTION_REMOVED OPTION_REMOVED_APPLIED96 \ OPTION_REMOVED_UNAPPLIED POTENTIAL_HEADER_BOLD97 \ POTENTIAL_HEADER_ITALICS POTENTIAL_HEADER_UNDERLINE98 \ PREVIOUS_LOCATION PROGRAMMATIC_OBJECTS_REQUIRE_TESTING_APPLET99 \ PROGRAMMATIC_OBJECTS_REQUIRE_TESTING_EMBED100 \ PROGRAMMATIC_OBJECTS_REQUIRE_TESTING_OBJECT101 \ PROGRAMMATIC_OBJECTS_REQUIRE_TESTING_SCRIPT PROPRIETARY_ATTRIBUTE102 \ PROPRIETARY_ATTR_VALUE PROPRIETARY_ELEMENT REMOVED_HTML5103 \ REMOVE_AUTO_REDIRECT REMOVE_AUTO_REFRESH REMOVE_BLINK_MARQUEE104 \ REMOVE_FLICKER_ANIMATED_GIF REMOVE_FLICKER_APPLET105 \ REMOVE_FLICKER_EMBED REMOVE_FLICKER_OBJECT REMOVE_FLICKER_SCRIPT106 \ REPEATED_ATTRIBUTE REPLACE_DEPRECATED_HTML_APPLET107 \ REPLACE_DEPRECATED_HTML_BASEFONT REPLACE_DEPRECATED_HTML_CENTER108 \ REPLACE_DEPRECATED_HTML_DIR REPLACE_DEPRECATED_HTML_FONT109 \ REPLACE_DEPRECATED_HTML_ISINDEX REPLACE_DEPRECATED_HTML_MENU110 \ REPLACE_DEPRECATED_HTML_S REPLACE_DEPRECATED_HTML_STRIKE111 \ REPLACE_DEPRECATED_HTML_U REPLACING_ELEMENT REPLACING_UNEX_ELEMENT112 \ SCRIPT_MISSING_NOSCRIPT SCRIPT_NOT_KEYBOARD_ACCESSIBLE_ON_CLICK113 \ SCRIPT_NOT_KEYBOARD_ACCESSIBLE_ON_MOUSE_DOWN114 \ SCRIPT_NOT_KEYBOARD_ACCESSIBLE_ON_MOUSE_MOVE115 \ SCRIPT_NOT_KEYBOARD_ACCESSIBLE_ON_MOUSE_OUT116 \ SCRIPT_NOT_KEYBOARD_ACCESSIBLE_ON_MOUSE_OVER117 \ SCRIPT_NOT_KEYBOARD_ACCESSIBLE_ON_MOUSE_UP SKIPOVER_ASCII_ART118 \ SPACE_PRECEDING_XMLDECL STRING_ARGUMENT_BAD STRING_CONTENT_LOOKS119 \ STRING_DOCTYPE_GIVEN STRING_MISSING_MALFORMED STRING_MUTING_TYPE120 \ STRING_NO_SYSID STRING_UNKNOWN_OPTION121 \ STYLESHEETS_REQUIRE_TESTING_LINK122 \ STYLESHEETS_REQUIRE_TESTING_STYLE_ATTR123 \ STYLESHEETS_REQUIRE_TESTING_STYLE_ELEMENT124 \ STYLE_SHEET_CONTROL_PRESENTATION SUSPECTED_MISSING_QUOTE125 \ TABLE_MAY_REQUIRE_HEADER_ABBR TABLE_MAY_REQUIRE_HEADER_ABBR_NULL126 \ TABLE_MAY_REQUIRE_HEADER_ABBR_SPACES TABLE_MISSING_CAPTION127 \ TABLE_MISSING_SUMMARY TABLE_SUMMARY_INVALID_NULL128 \ TABLE_SUMMARY_INVALID_PLACEHOLDER TABLE_SUMMARY_INVALID_SPACES129 \ TAG_NOT_ALLOWED_IN TEXT_EQUIVALENTS_REQUIRE_UPDATING_APPLET130 \ TEXT_EQUIVALENTS_REQUIRE_UPDATING_OBJECT131 \ TEXT_EQUIVALENTS_REQUIRE_UPDATING_SCRIPT TOO_MANY_ELEMENTS132 \ TOO_MANY_ELEMENTS_IN TRIM_EMPTY_ELEMENT UNESCAPED_AMPERSAND133 \ UNEXPECTED_ENDTAG UNEXPECTED_ENDTAG_ERR UNEXPECTED_ENDTAG_IN134 \ UNEXPECTED_END_OF_FILE UNEXPECTED_END_OF_FILE_ATTR135 \ UNEXPECTED_EQUALSIGN UNEXPECTED_GT UNEXPECTED_QUOTEMARK136 \ UNKNOWN_ELEMENT UNKNOWN_ELEMENT_LOOKS_CUSTOM UNKNOWN_ENTITY137 \ USING_BR_INPLACE_OF VENDOR_SPECIFIC_CHARS WHITE_IN_URI138 \ XML_DECLARATION_DETECTED XML_ID_SYNTAX139 \ contained nextgroup=tidyMuteIDSeparator skipwhite skipnl140 141" Options {{{1142syn keyword tidyCustomTagsOption custom-tags contained nextgroup=tidyCustomTagsDelimiter143syn match tidyCustomTagsDelimiter ":" nextgroup=tidyCustomTags contained skipwhite144 145syn keyword tidyBooleanOption add-meta-charset add-xml-decl146 \ add-xml-pi add-xml-space anchor-as-name ascii-chars147 \ assume-xml-procins bare break-before-br clean coerce-endtags148 \ decorate-inferred-ul drop-empty-paras drop-empty-elements149 \ drop-font-tags drop-proprietary-attributes enclose-block-text150 \ enclose-text escape-cdata escape-scripts fix-backslash151 \ fix-style-tags fix-uri force-output gdoc gnu-emacs hide-comments152 \ hide-endtags indent-attributes indent-cdata indent-with-tabs153 \ input-xml join-classes join-styles keep-tabs keep-time language154 \ literal-attributes logical-emphasis lower-literals markup155 \ merge-emphasis mute-id ncr numeric-entities omit-optional-tags156 \ output-html output-xhtml output-xml preserve-entities157 \ punctuation-wrap quiet quote-ampersand quote-marks quote-nbsp raw158 \ replace-color show-filename show-info show-meta-change show-warnings159 \ skip-nested split strict-tags-attributes tidy-mark160 \ uppercase-attributes uppercase-tags warn-proprietary-attributes161 \ word-2000 wrap-asp wrap-attributes wrap-jste wrap-php162 \ wrap-script-literals wrap-sections write-back163 \ contained nextgroup=tidyBooleanDelimiter164 165syn match tidyBooleanDelimiter ":" nextgroup=tidyBoolean contained skipwhite166 167syn keyword tidyAutoBooleanOption fix-bad-comments indent merge-divs merge-spans output-bom show-body-only vertical-space contained nextgroup=tidyAutoBooleanDelimiter168syn match tidyAutoBooleanDelimiter ":" nextgroup=tidyAutoBoolean contained skipwhite169 170syn keyword tidyCSSSelectorOption css-prefix contained nextgroup=tidyCSSSelectorDelimiter171syn match tidyCSSSelectorDelimiter ":" nextgroup=tidyCSSSelector contained skipwhite172 173syn keyword tidyDoctypeOption doctype contained nextgroup=tidyDoctypeDelimiter174syn match tidyDoctypeDelimiter ":" nextgroup=tidyDoctype,tidyString contained skipwhite175 176syn keyword tidyEncodingOption char-encoding input-encoding output-encoding contained nextgroup=tidyEncodingDelimiter177syn match tidyEncodingDelimiter ":" nextgroup=tidyEncoding contained skipwhite178 179syn keyword tidyIntegerOption accessibility-check doctype-mode indent-spaces show-errors tab-size wrap contained nextgroup=tidyIntegerDelimiter180syn match tidyIntegerDelimiter ":" nextgroup=tidyNumber contained skipwhite181 182syn keyword tidyNameOption slide-style contained nextgroup=tidyNameDelimiter183syn match tidyNameDelimiter ":" nextgroup=tidyName contained skipwhite184 185syn keyword tidyNewlineOption newline contained nextgroup=tidyNewlineDelimiter186syn match tidyNewlineDelimiter ":" nextgroup=tidyNewline contained skipwhite187 188syn keyword tidyAttributesOption priority-attributes contained nextgroup=tidyAttributesDelimiter189syn match tidyAttributesDelimiter ":" nextgroup=tidyWord contained skipwhite190 191syn keyword tidyTagsOption new-blocklevel-tags new-empty-tags new-inline-tags new-pre-tags contained nextgroup=tidyTagsDelimiter192syn match tidyTagsDelimiter ":" nextgroup=tidyWord contained skipwhite193 194syn keyword tidyRepeatOption repeated-attributes contained nextgroup=tidyRepeatDelimiter195syn match tidyRepeatDelimiter ":" nextgroup=tidyRepeat contained skipwhite196 197syn keyword tidySorterOption sort-attributes contained nextgroup=tidySorterDelimiter198syn match tidySorterDelimiter ":" nextgroup=tidySorter contained skipwhite199 200syn keyword tidyStringOption alt-text error-file gnu-emacs-file output-file contained nextgroup=tidyStringDelimiter201syn match tidyStringDelimiter ":" nextgroup=tidyString contained skipwhite202 203syn keyword tidyMuteOption mute contained nextgroup=tidyMuteDelimiter204syn match tidyMuteDelimiter ":" nextgroup=tidyMuteID contained skipwhite205 206syn cluster tidyOptions contains=tidy.*Option207 208" Option line anchor {{{1209syn match tidyStart "^" nextgroup=@tidyOptions210" Long standing bug - option lines (except the first) with leading whitespace211" are silently ignored.212syn match tidyErrorStart '^\s\+\ze\S'213 214" Comments {{{1215syn match tidyComment "^\s*//.*$" contains=tidyTodo216syn match tidyComment "^\s*#.*$" contains=tidyTodo217syn keyword tidyTodo TODO NOTE FIXME XXX contained218 219" Default highlighting {{{1220hi def link tidyAttributesOption Identifier221hi def link tidyAutoBooleanOption Identifier222hi def link tidyBooleanOption Identifier223hi def link tidyCSSSelectorOption Identifier224hi def link tidyCustomTagsOption Identifier225hi def link tidyDoctypeOption Identifier226hi def link tidyEncodingOption Identifier227hi def link tidyIntegerOption Identifier228hi def link tidyMuteOption Identifier229hi def link tidyNameOption Identifier230hi def link tidyNewlineOption Identifier231hi def link tidyRepeatOption Identifier232hi def link tidySorterOption Identifier233hi def link tidyStringOption Identifier234hi def link tidyTagsOption Identifier235 236hi def link tidyAttributesDelimiter Special237hi def link tidyAutoBooleanDelimiter Special238hi def link tidyBooleanDelimiter Special239hi def link tidyCSSSelectorDelimiter Special240hi def link tidyCustomTagsDelimiter Special241hi def link tidyDoctypeDelimiter Special242hi def link tidyEncodingDelimiter Special243hi def link tidyIntegerDelimiter Special244hi def link tidyMuteDelimiter Special245hi def link tidyNameDelimiter Special246hi def link tidyNewlineDelimiter Special247hi def link tidyRepeatDelimiter Special248hi def link tidySorterDelimiter Special249hi def link tidyStringDelimiter Special250hi def link tidyTagsDelimiter Special251 252hi def link tidyAutoBoolean Boolean253hi def link tidyBoolean Boolean254hi def link tidyCustomTags Constant255hi def link tidyDoctype Constant256hi def link tidyEncoding Constant257hi def link tidyMuteID Constant258hi def link tidyNewline Constant259hi def link tidyNumber Number260hi def link tidyRepeat Constant261hi def link tidySorter Constant262hi def link tidyString String263hi def link tidyWord Constant264 265hi def link tidyComment Comment266hi def link tidyTodo Todo267 268hi def link tidyErrorStart Error269 270" Postscript {{{1271let b:current_syntax = "tidy"272 273let &cpo = s:cpo_save274unlet s:cpo_save275 276" vim: ts=8 fdm=marker277 