Mercurial > vim
annotate runtime/syntax/sisu.vim @ 10688:3d1872fbecc4 v8.0.0234
patch 8.0.0234: crash when using put in Visual mode
commit https://github.com/vim/vim/commit/941c12da3c087fd04aa6c120a76bf28f19349d96
Author: Bram Moolenaar <Bram@vim.org>
Date: Tue Jan 24 19:55:43 2017 +0100
patch 8.0.0234: crash when using put in Visual mode
Problem: When several lines are visually selected and one of them is short,
using put may cause a crash. (Axel Bender)
Solution: Check for a short line. (Christian Brabandt)
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Tue, 24 Jan 2017 20:00:04 +0100 |
parents | 43efa4f5a8ea |
children | 49c12c93abf3 |
rev | line source |
---|---|
3356 | 1 " SiSU Vim syntax file |
6238 | 2 " SiSU Maintainer: Ralph Amissah <ralph.amissah@gmail.com> |
3 " SiSU Markup: SiSU (sisu-5.6.7) | |
4 " Last Change: 2014-09-14 | |
5 " URL: <http://git.sisudoc.org/gitweb/?p=code/sisu.git;a=blob;f=data/sisu/conf/editor-syntax-etc/vim/syntax/sisu.vim;hb=HEAD> | |
6 " <http://git.sisudoc.org/gitweb/?p=code/sisu.git;a=blob_plain;f=data/sisu/conf/editor-syntax-etc/vim/syntax/sisu.vim;hb=HEAD> | |
1618 | 7 "(originally looked at Ruby Vim by Mirko Nasato) |
1118 | 8 |
10048
43efa4f5a8ea
commit https://github.com/vim/vim/commit/89bcfda6834aba724d12554a34b9ed49f5789fd5
Christian Brabandt <cb@256bit.org>
parents:
6238
diff
changeset
|
9 " quit when a syntax file was already loaded |
43efa4f5a8ea
commit https://github.com/vim/vim/commit/89bcfda6834aba724d12554a34b9ed49f5789fd5
Christian Brabandt <cb@256bit.org>
parents:
6238
diff
changeset
|
10 if exists("b:current_syntax") |
822 | 11 finish |
12 endif | |
3356 | 13 let s:cpo_save = &cpo |
14 set cpo&vim | |
1618 | 15 |
3356 | 16 "% "Errors: |
843 | 17 syn match sisu_error contains=sisu_link,sisu_error_wspace "<![^ei]\S\+!>" |
1618 | 18 |
3356 | 19 "% "Markers Identifiers: |
822 | 20 if !exists("sisu_no_identifiers") |
1618 | 21 syn match sisu_mark_endnote "\~^" |
4437 | 22 syn match sisu_break contains=@NoSpell " \\\\\( \|$\)\|<br>\|<br />" |
23 syn match sisu_control contains=@NoSpell "^\(-\\\\-\|=\\\\=\|-\.\.-\|<:p[bn]>\)\s*$" | |
3356 | 24 syn match sisu_control contains=@NoSpell "^<:\(bo\|---\)>\s*$" |
6238 | 25 syn match sisu_marktail contains=@NoSpell "^--[+~-]#\s*$" |
1618 | 26 syn match sisu_marktail "[~-]#" |
27 syn match sisu_control "\"" | |
28 syn match sisu_underline "\(^\| \)_[a-zA-Z0-9]\+_\([ .,]\|$\)" | |
29 syn match sisu_number contains=@NoSpell "[0-9a-f]\{32\}\|[0-9a-f]\{64\}" | |
30 syn match sisu_link contains=@NoSpell "\(_\?https\?://\|\.\.\/\)\S\+" | |
31 syn match sisu_link " \*\~\S\+" | |
6238 | 32 syn match sisu_require contains=@NoSpell "^<<\s*[a-zA-Z0-9^./_-]\+\.ss[it]$" |
2152 | 33 syn match sisu_structure "^:A\~$" |
3356 | 34 |
35 "% "Document Sub Headers: | |
36 syn match sisu_sub_header_title "^\s\+:\(subtitle\|short\|edition\|language\|lang_char\|note\):\s" "group=sisu_header_content | |
37 syn match sisu_sub_header_creator "^\s\+:\(author\|editor\|contributor\|illustrator\|photographer\|translator\|digitized_by\|prepared_by\|audio\|video\):\s" " &hon &institution | |
38 syn match sisu_sub_header_rights "^\s\+:\(copyright\|text\|translation\|illustrations\|photographs\|preparation\|digitization\|audio\|video\|license\|all\):\s" " access_rights license | |
4437 | 39 syn match sisu_sub_header_classify "^\s\+:\(topic_register\|keywords\|subject\|dewey\|loc\):\s" |
40 syn match sisu_sub_header_identifier "^\s\+:\(oclc\|isbn\):\s" | |
41 syn match sisu_sub_header_date "^\s\+:\(added_to_site\|available\|created\|issued\|modified\|published\|valid\|translated\|original_publication\):\s" | |
3356 | 42 syn match sisu_sub_header_original "^\s\+:\(publisher\|date\|language\|lang_char\|institution\|nationality\|source\):\s" |
4437 | 43 syn match sisu_sub_header_make "^\s\+:\(headings\|num_top\|breaks\|language\|italics\|bold\|emphasis\|substitute\|omit\|plaintext_wrap\|texpdf_font_mono\|texpdf_font\|stamp\|promo\|ad\|manpage\|home_button_text\|home_button_image\|cover_image\|footer\):\s" |
44 syn match sisu_sub_header_notes "^\s\+:\(description\|abstract\|comment\|coverage\|relation\|source\|history\|type\|format\|prefix\|prefix_[ab]\|suffix\):\s" | |
6238 | 45 syn match sisu_within_index_ignore "\S\+[:;]\(\s\+\|$\)" |
46 syn match sisu_within_index "[:|;]\|+\d\+" | |
3356 | 47 |
48 "% "semantic markers: (ignore) | |
1618 | 49 syn match sisu_sem_marker ";{\|};[a-z._]*[a-z]" |
50 syn match sisu_sem_marker_block "\([a-z][a-z._]*\|\):{\|}:[a-z._]*[a-z]" | |
51 syn match sisu_sem_ex_marker ";\[\|\];[a-z._]*[a-z]" | |
52 syn match sisu_sem_ex_marker_block "\([a-z][a-z._]*\|\):\[\|\]:[a-z._]*[a-z]" | |
53 syn match sisu_sem_block contains=sisu_error,sisu_error_wspace,sisu_content_alt,sisu_link,sisu_linked,sisu_break,sisu_sem_block,sisu_sem_content,sisu_sem_marker_block,sisu_sem_marker,sisu_sem_ex_marker_block,sisu_sem_ex_marker,sisu_mark_endnote,sisu_content_endnote "\([a-z]*\):{[^}].\{-}}:\1" | |
54 syn match sisu_sem_content contains=sisu_error,sisu_error_wspace,sisu_content_alt,sisu_link,sisu_linked,sisu_break,sisu_sem_marker_block,sisu_sem_marker,sisu_sem_ex_marker_block,sisu_sem_ex_marker ";{[^}].\{-}};[a-z]\+" | |
55 syn match sisu_sem_ex_block contains=sisu_error,sisu_error_wspace,sisu_content_alt,sisu_link,sisu_linked,sisu_break,sisu_sem_block,sisu_sem_content,sisu_sem_marker_block,sisu_sem_marker,sisu_sem_ex_marker_block,sisu_sem_ex_marker,sisu_mark_endnote,sisu_content_endnote "\([a-z]*\):\[[^}].\{-}\]:\1" | |
56 syn match sisu_sem_ex_content contains=sisu_error,sisu_error_wspace,sisu_content_alt,sisu_link,sisu_linked,sisu_break,sisu_sem_marker_block,sisu_sem_marker,sisu_sem_ex_marker_block,sisu_sem_ex_marker ";\[[^}].\{-}\];[a-z]\+" | |
822 | 57 endif |
1618 | 58 |
3356 | 59 "% "URLs Numbers And ASCII Codes: |
852 | 60 syn match sisu_number "\<\(0x\x\+\|0b[01]\+\|0\o\+\|0\.\d\+\|0\|[1-9][\.0-9_]*\)\>" |
61 syn match sisu_number "?\(\\M-\\C-\|\\c\|\\C-\|\\M-\)\=\(\\\o\{3}\|\\x\x\{2}\|\\\=\w\)" | |
1618 | 62 |
3356 | 63 "% "Tuned Error: (is error if not already matched) |
852 | 64 syn match sisu_error contains=sisu_error "[\~/\*!_]{\|}[\~/\*!_]" |
65 syn match sisu_error contains=sisu_error "<a href\|</a>]" | |
1618 | 66 |
3356 | 67 "% "Simple Paired Enclosed Markup: |
1618 | 68 "url/link |
843 | 69 syn region sisu_link contains=sisu_error,sisu_error_wspace matchgroup=sisu_action start="^<<\s*|[a-zA-Z0-9^._-]\+|@|[a-zA-Z0-9^._-]\+|"rs=s+2 end="$" |
3356 | 70 |
71 "% "Document Header: | |
72 " title | |
2152 | 73 syn region sisu_header_content contains=sisu_error,sisu_comment,sisu_break,sisu_link,sisu_sub_header_title matchgroup=sisu_header start="^[@]title:[+-]\?\(\s\|\n\)"rs=e-1 end="\n$" |
3356 | 74 " creator |
2152 | 75 syn region sisu_header_content contains=sisu_error,sisu_comment,sisu_break,sisu_link,sisu_sub_header_creator matchgroup=sisu_header start="^[@]creator:[+-]\?\(\s\|\n\)"rs=e-1 end="\n$" |
3356 | 76 " dates |
77 syn region sisu_header_content contains=sisu_error,sisu_comment,sisu_break,sisu_link,sisu_sub_header_date matchgroup=sisu_header start="^[@]date:[+-]\?\(\s\|\n\)"rs=e-1 end="\n$" | |
78 " publisher | |
79 syn region sisu_header_content contains=sisu_error,sisu_comment,sisu_break,sisu_link,sisu_sub_header_publisher matchgroup=sisu_header start="^[@]publisher:[+-]\?\(\s\|\n\)"rs=e-1 end="\n$" | |
80 " rights | |
2152 | 81 syn region sisu_header_content contains=sisu_error,sisu_comment,sisu_break,sisu_link,sisu_sub_header_rights matchgroup=sisu_header start="^[@]rights:[+-]\?\(\s\|\n\)"rs=e-1 end="\n$" |
3356 | 82 " classify document |
2152 | 83 syn region sisu_header_content contains=sisu_error,sisu_comment,sisu_break,sisu_link,sisu_sub_header_classify matchgroup=sisu_header start="^[@]classify:[+-]\?\(\s\|\n\)"rs=e-1 end="\n$" |
4437 | 84 " identifier document |
85 syn region sisu_header_content contains=sisu_error,sisu_comment,sisu_break,sisu_link,sisu_sub_header_identifier matchgroup=sisu_header start="^[@]identifier:[+-]\?\(\s\|\n\)"rs=e-1 end="\n$" | |
3356 | 86 " original language (depreciated) |
87 syn region sisu_header_content contains=sisu_error,sisu_comment,sisu_break,sisu_link,sisu_sub_header_original matchgroup=sisu_header start="^[@]original:[+-]\?\(\s\|\n\)"rs=e-1 end="\n$" | |
88 " notes | |
2152 | 89 syn region sisu_header_content contains=sisu_error,sisu_comment,sisu_break,sisu_link,sisu_sub_header_notes matchgroup=sisu_header start="^[@]notes:[+-]\?\(\s\|\n\)"rs=e-1 end="\n$" |
3356 | 90 " links of interest |
2152 | 91 syn region sisu_header_content contains=sisu_error,sisu_comment,sisu_break,sisu_linked,sisu_sub_header_links matchgroup=sisu_header start="^[@]links:[+-]\?\(\s\|\n\)"rs=e-1 end="\n$" |
3356 | 92 " make, processing instructions |
93 syn region sisu_header_content contains=sisu_error,sisu_comment,sisu_break,sisu_link,sisu_sub_header_make matchgroup=sisu_header start="^[@]make:[+-]\?\(\s\|\n\)"rs=e-1 end="\n$" | |
94 | |
95 "% "Headings: | |
6238 | 96 syn region sisu_heading contains=sisu_mark_endnote,sisu_content_endnote,sisu_marktail,sisu_strikeout,sisu_number,sisu_bold,sisu_control,sisu_identifier,sisu_ocn,sisu_error,sisu_error_wspace matchgroup=sisu_structure start="^\([1-4]\|:\?[A-D]\)\~\(\S\+\|[^-]\)" end="$" |
3356 | 97 |
98 "% "Block Group Text: | |
99 " table | |
100 syn region sisu_content_alt contains=sisu_strikeout,sisu_number,sisu_bold,sisu_control,sisu_identifier,sisu_error matchgroup=sisu_contain start="^table{.\+" end="}table" | |
101 " table | |
6238 | 102 syn region sisu_content_alt contains=sisu_strikeout,sisu_number,sisu_bold,sisu_control,sisu_identifier,sisu_error matchgroup=sisu_contain start="^```\s\+table" end="^```\(\s\|$\)" |
3356 | 103 syn region sisu_content_alt contains=sisu_strikeout,sisu_number,sisu_bold,sisu_control,sisu_identifier,sisu_error matchgroup=sisu_contain start="^{\(t\|table\)\(\~h\)\?\(\sc[0-9]\+;\)\?[0-9; ]*}" end="\n$" |
104 " block, group, poem, alt | |
6238 | 105 syn region sisu_content_alt contains=sisu_mark_endnote,sisu_content_endnote,sisu_link,sisu_mark,sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error matchgroup=sisu_contain start="^\(block\|group\|poem\|alt\){" end="^}\1" |
106 syn region sisu_content_alt contains=sisu_mark_endnote,sisu_content_endnote,sisu_link,sisu_mark,sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error matchgroup=sisu_contain start="^```\s\+\(block\|group\|poem\|alt\)" end="^```\(\s\|$\)" | |
107 " box | |
108 syn region sisu_content_alt contains=sisu_mark_endnote,sisu_content_endnote,sisu_link,sisu_mark,sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error matchgroup=sisu_contain start="^box\(\.[a-z]\+\)\?{" end="^}box" | |
109 syn region sisu_content_alt contains=sisu_mark_endnote,sisu_content_endnote,sisu_link,sisu_mark,sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error matchgroup=sisu_contain start="^```\s\+\box\(\.[a-z]\+\)\?" end="^```\(\s\|$\)" | |
3356 | 110 " code |
6238 | 111 syn region sisu_content_alt contains=sisu_error,@NoSpell matchgroup=sisu_contain start="^code\(\.[a-z][0-9a-z_]\+\)\?{" end="^}code" |
112 syn region sisu_content_alt contains=sisu_error,@NoSpell matchgroup=sisu_contain start="^```\s\+code\(\.[a-z][0-9a-z_]\+\)\?" end="^```\(\s\|$\)" | |
113 " quote | |
114 syn region sisu_normal contains=sisu_fontface,sisu_bold,sisu_control,sisu_identifier,sisu_content_endnote,sisu_mark_endnote,sisu_link,sisu_sem_block,sisu_sem_content,sisu_sem_marker_block,sisu_sem_marker,sisu_sem_ex_marker_block,sisu_sem_ex_marker,sisu_linked,sisu_error,sisu_error_wspace matchgroup=sisu_contain start="^```\s\+quote" end="^```\(\s\|$\)" | |
3356 | 115 |
116 "% "Endnotes: | |
117 " regular endnote or asterisk or plus sign endnote | |
118 syn region sisu_content_endnote contains=sisu_link,sisu_strikeout,sisu_underline,sisu_number,sisu_bold,sisu_control,sisu_identifier,sisu_error,sisu_error_wspace,sisu_mark,sisu_break,sisu_sem_block,sisu_sem_content,sisu_sem_marker_block,sisu_sem_marker,sisu_sem_ex_marker_block,sisu_sem_ex_marker matchgroup=sisu_mark_endnote start="\~{[*+]*" end="}\~" skip="\n" | |
119 " numbered asterisk or plus sign endnote | |
120 syn region sisu_content_endnote contains=sisu_link,sisu_strikeout,sisu_underline,sisu_number,sisu_bold,sisu_control,sisu_identifier,sisu_error,sisu_error_wspace,sisu_mark,sisu_break,sisu_sem_block,sisu_sem_content,sisu_sem_marker matchgroup=sisu_mark_endnote start="\~\[[*+]*" end="\]\~" skip="\n" | |
121 " endnote content marker (for binary content marking) | |
122 syn region sisu_content_endnote contains=sisu_strikeout,sisu_number,sisu_bold,sisu_control,sisu_link,sisu_identifier,sisu_error,sisu_error_wspace,sisu_mark,sisu_break matchgroup=sisu_mark_endnote start="\^\~" end="\n$" | |
123 | |
124 "% "Links And Images: | |
125 " image with url link (and possibly footnote of url) | |
126 syn region sisu_linked contains=sisu_fontface,sisu_strikeout,sisu_number,sisu_bold,sisu_control,sisu_identifier,sisu_sem_block,sisu_sem_content,sisu_sem_marker_block,sisu_sem_marker,sisu_sem_ex_marker_block,sisu_sem_ex_marker,sisu_sem_block,sisu_error matchgroup=sisu_link start="{\(\~^\s\)\?" end="}\(https\?:/\/\|:\|\.\.\/\|#\)\S\+" oneline | |
127 " sisu outputs, short notation | |
128 syn region sisu_linked contains=sisu_fontface,sisu_strikeout,sisu_number,sisu_bold,sisu_control,sisu_identifier,sisu_sem_block,sisu_sem_content,sisu_sem_marker_block,sisu_sem_marker,sisu_sem_ex_marker_block,sisu_sem_ex_marker,sisu_sem_block,sisu_error matchgroup=sisu_link start="{\(\~^\s\)\?" end="\[[1-5][sS]*\]}\S\+\.ss[tm]" oneline | |
129 " image | |
130 syn region sisu_linked contains=sisu_fontface,sisu_strikeout,sisu_number,sisu_bold,sisu_control,sisu_identifier,sisu_error matchgroup=sisu_link start="{" end="}image" oneline | |
131 | |
132 "% "Some Line Operations: | |
133 " bold line | |
134 syn region sisu_bold contains=sisu_strikeout,sisu_identifier,sisu_content_endnote,sisu_mark_endnote,sisu_error,sisu_error_wspace matchgroup=sisu_markpara start="^!_ " end=" \\\\\|$" | |
135 " indent and bullet paragraph | |
136 syn region sisu_normal contains=sisu_fontface,sisu_bold,sisu_control,sisu_identifier,sisu_content_endnote,sisu_mark_endnote,sisu_link,sisu_sem_block,sisu_sem_content,sisu_sem_marker_block,sisu_sem_marker,sisu_sem_ex_marker_block,sisu_sem_ex_marker,sisu_linked,sisu_error,sisu_error_wspace matchgroup=sisu_markpara start="^_\([1-9*]\|[1-9]\*\) " end="$" | |
137 " indent and bullet (bold start) paragraph | |
138 syn region sisu_bold contains=sisu_fontface,sisu_bold,sisu_control,sisu_identifier,sisu_content_endnote,sisu_mark_endnote,sisu_link,sisu_sem_block,sisu_sem_content,sisu_sem_marker_block,sisu_sem_marker,sisu_sem_ex_marker_block,sisu_sem_ex_marker,sisu_linked,sisu_error,sisu_error_wspace matchgroup=sisu_markpara start="^_\([1-9*]\|[1-9]\*\)!_\? " end=" \\\\\|$" | |
139 " hanging indent paragraph [proposed] | |
140 syn region sisu_normal contains=sisu_fontface,sisu_bold,sisu_control,sisu_identifier,sisu_content_endnote,sisu_mark_endnote,sisu_link,sisu_sem_block,sisu_sem_content,sisu_sem_marker_block,sisu_sem_marker,sisu_sem_ex_marker_block,sisu_sem_ex_marker,sisu_linked,sisu_error,sisu_error_wspace matchgroup=sisu_markpara start="^_[0-9]\?_[0-9] " end="$" | |
141 " hanging indent (bold start/ definition) paragraph [proposed] | |
142 syn region sisu_bold contains=sisu_fontface,sisu_bold,sisu_control,sisu_identifier,sisu_content_endnote,sisu_mark_endnote,sisu_link,sisu_sem_block,sisu_sem_content,sisu_sem_marker_block,sisu_sem_marker,sisu_sem_ex_marker_block,sisu_sem_ex_marker,sisu_linked,sisu_error,sisu_error_wspace matchgroup=sisu_markpara start="^_[0-9]\?_[0-9]!_\? " end=" \\\\\|$" | |
143 " list numbering | |
852 | 144 syn region sisu_normal contains=sisu_strikeout,sisu_identifier,sisu_content_endnote,sisu_mark_endnote,sisu_link,sisu_linked,sisu_error,sisu_error_wspace matchgroup=sisu_markpara start="^\(#[ 1]\|_# \)" end="$" |
3356 | 145 |
146 "% "Font Face Curly Brackets: | |
1618 | 147 "syn region sisu_identifier contains=sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error matchgroup=sisu_sem start="\S\+:{" end="}:[^<>,.!?:; ]\+" oneline |
3356 | 148 " book index: |
6238 | 149 syn region sisu_index contains=sisu_within_index_ignore,sisu_within_index matchgroup=sisu_index_block start="^={" end="}" |
3356 | 150 " emphasis: |
151 syn region sisu_bold contains=sisu_strikeout,sisu_number,sisu_bold,sisu_control,sisu_identifier,sisu_error matchgroup=sisu_fontface start="\*{" end="}\*" | |
152 " bold: | |
153 syn region sisu_bold contains=sisu_strikeout,sisu_number,sisu_bold,sisu_control,sisu_identifier,sisu_error matchgroup=sisu_fontface start="!{" end="}!" | |
154 " underscore: | |
155 syn region sisu_underline contains=sisu_strikeout,sisu_number,sisu_bold,sisu_control,sisu_identifier,sisu_error matchgroup=sisu_fontface start="_{" end="}_" | |
156 " italics: | |
157 syn region sisu_identifier contains=sisu_strikeout,sisu_number,sisu_bold,sisu_control,sisu_identifier,sisu_error matchgroup=sisu_fontface start="/{" end="}/" | |
158 " added: | |
159 syn region sisu_underline contains=sisu_strikeout,sisu_number,sisu_bold,sisu_control,sisu_identifier,sisu_error matchgroup=sisu_fontface start="+{" end="}+" | |
160 " superscript: | |
161 syn region sisu_identifier contains=sisu_strikeout,sisu_number,sisu_bold,sisu_control,sisu_identifier,sisu_error matchgroup=sisu_fontface start="\^{" end="}\^" | |
162 " subscript: | |
163 syn region sisu_identifier contains=sisu_strikeout,sisu_number,sisu_bold,sisu_control,sisu_identifier,sisu_error matchgroup=sisu_fontface start=",{" end="}," | |
164 " monospace: | |
165 syn region sisu_identifier contains=sisu_strikeout,sisu_number,sisu_bold,sisu_control,sisu_identifier,sisu_error matchgroup=sisu_fontface start="#{" end="}#" | |
166 " strikethrough: | |
1618 | 167 syn region sisu_strikeout contains=sisu_error matchgroup=sisu_fontface start="-{" end="}-" |
3356 | 168 |
169 "% "Single Words Bold Italicise Etc: (depreciated) | |
170 syn region sisu_bold contains=sisu_error matchgroup=sisu_bold start="\([ (]\|^\)\*[^\|{\n\~\\]"hs=e-1 end="\*"he=e-0 skip="[a-zA-Z0-9']" oneline | |
822 | 171 syn region sisu_identifier contains=sisu_error matchgroup=sisu_content_alt start="\([ ]\|^\)/[^{ \|\n\\]"hs=e-1 end="/\[ \.\]" skip="[a-zA-Z0-9']" oneline |
1618 | 172 "misc |
824 | 173 syn region sisu_identifier contains=sisu_error matchgroup=sisu_fontface start="\^[^ {\|\n\\]"rs=s+1 end="\^[ ,.;:'})\\\n]" skip="[a-zA-Z0-9']" oneline |
1618 | 174 |
3356 | 175 "% "Expensive Mode: |
822 | 176 if !exists("sisu_no_expensive") |
177 else " not Expensive | |
178 syn region sisu_content_alt matchgroup=sisu_control start="^\s*def\s" matchgroup=NONE end="[?!]\|\>" skip="\.\|\(::\)" oneline | |
179 endif " Expensive? | |
1618 | 180 |
3356 | 181 "% "Headers And Headings: (Document Instructions) |
852 | 182 syn match sisu_control contains=sisu_error,sisu_error_wspace "4\~! \S\+" |
822 | 183 syn region sisu_markpara contains=sisu_error,sisu_error_wspace start="^=begin" end="^=end.*$" |
1618 | 184 |
3356 | 185 "% "Errors: |
2152 | 186 syn match sisu_error_wspace contains=sisu_error_wspace "^\s\+[^:]" |
822 | 187 syn match sisu_error_wspace contains=sisu_error_wspace "\s\s\+" |
3356 | 188 syn match sisu_error_wspace contains=sisu_error_wspace "\s\+$" |
824 | 189 syn match sisu_error contains=sisu_error_wspace "\t\+" |
1618 | 190 syn match sisu_error contains=sisu_error,sisu_error_wspace "\([^ (][_\\]\||[^ (}]\)https\?:\S\+" |
191 syn match sisu_error contains=sisu_error "_\?https\?:\S\+[}><]" | |
2152 | 192 syn match sisu_error contains=sisu_error "\([!*/_\+,^]\){\([^(\}\1)]\)\{-}\n$" |
193 syn match sisu_error contains=sisu_error "^[\~]{[^{]\{-}\n$" | |
822 | 194 syn match sisu_error contains=sisu_error "\s\+.{{" |
195 syn match sisu_error contains=sisu_error "^\~\s*$" | |
2152 | 196 syn match sisu_error contains=sisu_error "^0\~.*" |
197 syn match sisu_error contains=sisu_error "^[1-9]\~\s*$" | |
198 syn match sisu_error contains=sisu_error "^[1-9]\~\S\+\s*$" | |
822 | 199 syn match sisu_error contains=sisu_error "[^{]\~\^[^ \)]" |
200 syn match sisu_error contains=sisu_error "\~\^\s\+\.\s*" | |
834 | 201 syn match sisu_error contains=sisu_error "{\~^\S\+" |
822 | 202 syn match sisu_error contains=sisu_error "[_/\*!^]{[ .,:;?><]*}[_/\*!^]" |
203 syn match sisu_error contains=sisu_error "[^ (\"'(\[][_/\*!]{\|}[_/\*!][a-zA-Z0-9)\]\"']" | |
204 syn match sisu_error contains=sisu_error "<dir>" | |
852 | 205 "errors for filetype sisu, though not error in 'metaverse': |
822 | 206 syn match sisu_error contains=sisu_error,sisu_match,sisu_strikeout,sisu_contain,sisu_content_alt,sisu_mark,sisu_break,sisu_number "<[a-zA-Z\/]\+>" |
2152 | 207 syn match sisu_error "/\?<\([biu]\)>[^(</\1>)]\{-}\n$" |
1618 | 208 |
3356 | 209 "% "Error Exceptions: |
2152 | 210 syn match sisu_control "\n$" "contains=ALL |
3356 | 211 "syn match sisu_control " //" |
2152 | 212 syn match sisu_error "%{" |
213 syn match sisu_error "<br>_\?https\?:\S\+\|_\?https\?:\S\+<br>" | |
214 syn match sisu_error "[><]_\?https\?:\S\+\|_\?https\?:\S\+[><]" | |
215 syn match sisu_comment "^%\{1,2\}.\+" | |
1618 | 216 |
3356 | 217 "% "Definitions Default Highlighting: |
2152 | 218 hi def link sisu_normal Normal |
3356 | 219 hi def link sisu_bold Statement |
2152 | 220 hi def link sisu_header PreProc |
221 hi def link sisu_header_content Normal | |
222 hi def link sisu_sub_header_title Statement | |
223 hi def link sisu_sub_header_creator Statement | |
3356 | 224 hi def link sisu_sub_header_date Statement |
225 hi def link sisu_sub_header_publisher Statement | |
2152 | 226 hi def link sisu_sub_header_rights Statement |
227 hi def link sisu_sub_header_classify Statement | |
4437 | 228 hi def link sisu_sub_header_identifier Statement |
3356 | 229 hi def link sisu_sub_header_original Statement |
2152 | 230 hi def link sisu_sub_header_links Statement |
231 hi def link sisu_sub_header_notes Statement | |
3356 | 232 hi def link sisu_sub_header_make Statement |
2152 | 233 hi def link sisu_heading Title |
234 hi def link sisu_structure Operator | |
235 hi def link sisu_contain Include | |
3356 | 236 hi def link sisu_mark_endnote Delimiter |
2152 | 237 hi def link sisu_require NonText |
238 hi def link sisu_link NonText | |
239 hi def link sisu_linked String | |
3356 | 240 hi def link sisu_fontface Delimiter |
2152 | 241 hi def link sisu_strikeout DiffDelete |
242 hi def link sisu_content_alt Special | |
243 hi def link sisu_sem_content SpecialKey | |
244 hi def link sisu_sem_block Special | |
245 hi def link sisu_sem_marker Visual | |
246 "hi def link sisu_sem_marker Structure | |
247 hi def link sisu_sem_marker_block MatchParen | |
248 hi def link sisu_sem_ex_marker FoldColumn | |
249 hi def link sisu_sem_ex_marker_block Folded | |
250 hi def link sisu_sem_ex_content Comment | |
251 "hi def link sisu_sem_ex_content SpecialKey | |
252 hi def link sisu_sem_ex_block Comment | |
253 hi def link sisu_index SpecialKey | |
254 hi def link sisu_index_block Visual | |
255 hi def link sisu_content_endnote Special | |
3356 | 256 hi def link sisu_control Delimiter |
6238 | 257 hi def link sisu_within_index Delimiter |
258 hi def link sisu_within_index_ignore SpecialKey | |
2152 | 259 hi def link sisu_ocn Include |
260 hi def link sisu_number Number | |
261 hi def link sisu_identifier Function | |
262 hi def link sisu_underline Underlined | |
263 hi def link sisu_markpara Include | |
264 hi def link sisu_marktail Include | |
265 hi def link sisu_mark Identifier | |
266 hi def link sisu_break Structure | |
267 hi def link sisu_html Type | |
268 hi def link sisu_action Identifier | |
269 hi def link sisu_comment Comment | |
270 hi def link sisu_error_sem_marker Error | |
271 hi def link sisu_error_wspace Error | |
272 hi def link sisu_error Error | |
822 | 273 let b:current_syntax = "sisu" |
3356 | 274 let &cpo = s:cpo_save |
275 unlet s:cpo_save |