aboutsummaryrefslogtreecommitdiffhomepage
path: root/data/sisu/conf/editor-syntax-etc/vim
diff options
context:
space:
mode:
authorRalph Amissah <ralph@amissah.com>2007-07-13 03:00:20 +0100
committerRalph Amissah <ralph@amissah.com>2007-07-13 03:00:20 +0100
commiteefb75b9cd610f681fd60ca7864b37f6963150e6 (patch)
tree574f9fa7b6767f792f537afaee58195b3d6a615d /data/sisu/conf/editor-syntax-etc/vim
parentsyntax hilighting (gedit), sisu rights and other info in outputs, cgi sample ... (diff)
clean
Diffstat (limited to 'data/sisu/conf/editor-syntax-etc/vim')
-rw-r--r--data/sisu/conf/editor-syntax-etc/vim/addons/colors/slate.vim55
-rw-r--r--data/sisu/conf/editor-syntax-etc/vim/addons/filetype.vim8
-rw-r--r--data/sisu/conf/editor-syntax-etc/vim/addons/ftplugin/sisu.vim177
-rw-r--r--data/sisu/conf/editor-syntax-etc/vim/addons/syntax/sisu.vim171
4 files changed, 411 insertions, 0 deletions
diff --git a/data/sisu/conf/editor-syntax-etc/vim/addons/colors/slate.vim b/data/sisu/conf/editor-syntax-etc/vim/addons/colors/slate.vim
new file mode 100644
index 00000000..8350017e
--- /dev/null
+++ b/data/sisu/conf/editor-syntax-etc/vim/addons/colors/slate.vim
@@ -0,0 +1,55 @@
+"%% SiSU Vim color file
+" Slate Maintainer: Ralph Amissah <ralph@amissah.com>
+" (originally looked at desert Hans Fugal <hans@fugal.net> http://hans.fugal.net/vim/colors/desert.vim (April/May 2003)
+:set background=dark
+:highlight clear
+if version > 580
+ hi clear
+ if exists("syntax_on")
+ syntax reset
+ endif
+endif
+:hi Normal guifg=White guibg=grey15
+:hi Cursor guibg=khaki guifg=slategrey
+:hi VertSplit guibg=#c2bfa5 guifg=grey40 gui=none cterm=reverse
+:hi Folded guibg=black guifg=grey40 ctermfg=grey ctermbg=darkgrey
+:hi FoldColumn guibg=black guifg=grey20 ctermfg=4 ctermbg=7
+:hi IncSearch guifg=green guibg=black cterm=none ctermfg=yellow ctermbg=green
+:hi ModeMsg guifg=goldenrod cterm=none ctermfg=brown
+:hi MoreMsg guifg=SeaGreen ctermfg=darkgreen
+:hi NonText guifg=RoyalBlue guibg=grey15 cterm=bold ctermfg=blue
+:hi Question guifg=springgreen ctermfg=green
+:hi Search guibg=peru guifg=wheat cterm=none ctermfg=grey ctermbg=blue
+:hi SpecialKey guifg=yellowgreen ctermfg=darkgreen
+:hi StatusLine guibg=#c2bfa5 guifg=black gui=none cterm=bold,reverse
+:hi StatusLineNC guibg=#c2bfa5 guifg=grey40 gui=none cterm=reverse
+:hi Title guifg=gold gui=bold cterm=bold ctermfg=yellow
+:hi Statement guifg=CornflowerBlue ctermfg=lightblue
+:hi Visual gui=none guifg=khaki guibg=olivedrab cterm=reverse
+:hi WarningMsg guifg=salmon ctermfg=1
+:hi String guifg=SkyBlue ctermfg=darkcyan
+:hi Comment term=bold ctermfg=11 guifg=grey40
+:hi Constant guifg=#ffa0a0 ctermfg=brown
+:hi Special guifg=darkkhaki ctermfg=brown
+:hi Identifier guifg=salmon ctermfg=red
+:hi Include guifg=red ctermfg=red
+:hi PreProc guifg=red guibg=white ctermfg=red
+:hi Operator guifg=Red ctermfg=Red
+:hi Define guifg=gold gui=bold ctermfg=yellow
+:hi Type guifg=CornflowerBlue ctermfg=2
+:hi Function guifg=navajowhite ctermfg=brown
+:hi Structure guifg=green ctermfg=green
+:hi LineNr guifg=grey50 ctermfg=3
+:hi Ignore guifg=grey40 cterm=bold ctermfg=7
+:hi Todo guifg=orangered guibg=yellow2
+:hi Directory ctermfg=darkcyan
+:hi ErrorMsg cterm=bold guifg=White guibg=Red cterm=bold ctermfg=7 ctermbg=1
+:hi VisualNOS cterm=bold,underline
+:hi WildMenu ctermfg=0 ctermbg=3
+:hi DiffAdd ctermbg=4
+:hi DiffChange ctermbg=5
+:hi DiffDelete cterm=bold ctermfg=4 ctermbg=6
+:hi DiffText cterm=bold ctermbg=1
+:hi Underlined cterm=underline ctermfg=5
+:hi Error guifg=White guibg=Red cterm=bold ctermfg=7 ctermbg=1
+:hi SpellErrors guifg=White guibg=Red cterm=bold ctermfg=7 ctermbg=1
diff --git a/data/sisu/conf/editor-syntax-etc/vim/addons/filetype.vim b/data/sisu/conf/editor-syntax-etc/vim/addons/filetype.vim
new file mode 100644
index 00000000..917c3e04
--- /dev/null
+++ b/data/sisu/conf/editor-syntax-etc/vim/addons/filetype.vim
@@ -0,0 +1,8 @@
+" SiSU filetype file
+if exists("did_load_filetypes")
+ finish
+endif
+augroup filetypedetect
+ au! BufNewFile,BufRead *.sst,*.ssm,*.ssi,*.-sst setf sisu
+ au! BufNewFile,BufRead *._sst,*.sst.meta,*.-sst.meta,*._sst.meta setf sisu
+augroup END
diff --git a/data/sisu/conf/editor-syntax-etc/vim/addons/ftplugin/sisu.vim b/data/sisu/conf/editor-syntax-etc/vim/addons/ftplugin/sisu.vim
new file mode 100644
index 00000000..00ed9189
--- /dev/null
+++ b/data/sisu/conf/editor-syntax-etc/vim/addons/ftplugin/sisu.vim
@@ -0,0 +1,177 @@
+"%% SiSU Vim ftplugin
+" SiSU Maintainer: Ralph Amissah <ralph@amissah.com>
+" SiSU Markup: SiSU (sisu-0.38)
+" an ftplugin setting defaults for editing sisu markup files
+:syntax on
+:filetype on
+:filetype indent on
+":let dialect='UK'
+:if version >= 700
+: setlocal spell spelllang=en_us
+:endif
+:autocmd FileType sisu :set nonumber
+:set encoding=utf-8 fileencodings=
+:set ff=unix
+:set autowrite " Automatically save before commands like :next and :make
+:set nocompatible
+:set tabstop=2
+:set expandtab
+:set shiftwidth=2
+:set autoindent
+:set showcmd " Show (partial) command in status line.
+:set showmatch " Show matching brackets.
+:set ignorecase " Do case insensitive matching
+:set smartcase
+:set incsearch
+:set hlsearch
+:set gdefault
+:set guioptions=agmr
+:set paste
+:set laststatus=2 " status line always on
+"% textwrap
+:set whichwrap=<,>,h,l,[,]
+:set nolinebreak " only affects display not buffer
+:set wrap
+:set wrapmargin=0
+"% map
+":let mapleader = "," " consider
+:map <leader>paste :set invpaste<cr>
+"% wrap/formatting paragraph according to the current 'textwidth' with ^J (control-j):
+:imap <C-J> <C-O>gqap
+:nmap <C-J> gqap
+:vmap <C-J> gq
+"% save file, go to next file in buffer
+:map <leader>nf :w <enter> :n <enter>
+"% vimdiff q exits
+:if &diff
+: cmap q qa
+:endif
+"% directory files, placed in vertical split window
+:map <leader>dir :vs<cr><C-W><C-R> :Explore<cr>
+:map <leader>nn :set nonumber paste<cr>
+:map <leader>nu :set number paste<cr>
+:map <leader>no :set number nopaste<cr>
+"% vimdiff q exits
+:if &diff
+: cmap q qa
+:endif
+"% remapping lines make cursor jump a line at a time within wrapped text
+:nnoremap j gj
+:nnoremap k gk
+:vnoremap j gj
+:vnoremap k gk
+:nnoremap <Down> gj
+:nnoremap <Up> gk
+:vnoremap <Down> gj
+:vnoremap <Up> gk
+:inoremap <Down> <C-o>gj
+:inoremap <Up> <C-o>gk
+"% colorscheme slate
+:map <C-C> :syntax on <cr> :colorscheme slate<cr>
+"% search and replace
+:map <C-S> :.,$s///c "search and replace down
+:map <c-G> :%s///c "search and replace whole file
+:map <c-X> :rubyd gsub!(//, "")
+"% pwd t64 working directory set to that of the file you're editing
+"changes pwd to directory of file in current buffer
+:function! CHANGE_CURR_DIR()
+: let _dir = expand("%:p:h")
+: exec "cd " . _dir
+: unlet _dir
+:endfunction
+"% Change to the directory the file in your current buffer is in
+:if has("autocmd")
+ autocmd BufEnter * :lcd %:p:h
+:endif
+"% autocompletefilenames To search for files in the current directory
+:set path=,,
+"auto-completion for file to edit in current dir, used in normal mode
+:map <leader>e :e <c-r>=expand("%:p:h") . "/" <cr>
+:map <leader>pwd :exe 'cd ' . expand ("%:p:h")<cr>
+"% searchhighlight t93: Toggle search highlight <C-n>
+:function! ToggleHLSearched()
+: if &hls
+: set nohls
+: else
+: set hls
+: endif
+:endfun
+:nmap <silent> <C-n> :silent call ToggleHLSearched()<cr>
+"%% SiSU vim folds
+"% foldsearchx FoldSearch (opens result of search all else closed) t77
+:map fs :set foldmethod=expr foldcolumn=2 foldlevel=0 <cr>
+:map <C-F> :F<cr> "consider, is a remapping
+:map <leader>ff :F<cr>
+:map <leader>fe :F<cr> zE
+"% foldtoggle Fold Toggle mapped to <space>
+:fun! ToggleFold()
+: if foldlevel('.') == 0
+: normal! l
+: else
+: if foldclosed('.') < 0
+: foldclose
+: else
+: foldopen
+: endif
+: endif
+" Clear status line
+: echo
+:endfun
+" Map this function to Space key.
+:noremap <space> :call ToggleFold()<cr>
+"% foldtype Fold? set foldtext
+:set foldtext=v:folddashes.substitute(getline(v:foldstart),'\\=','','g',)
+:set foldexpr=getline(v:lnum-1)!~@/&&getline(v:lnum)!~@/&&getline(v:lnum+1)!~@/
+"% foldsearch t77: Fold on search result
+:function! FoldMake(search)
+: set fdm=manual
+: normal zE
+: normal G$
+: let folded = 0 "flag to set when a fold is found
+: let flags = "w" "allow wrapping in the search
+: let line1 = 0 "set marker for beginning of fold
+: while search(a:search, flags) > 0
+: let line2 = line(".")
+: if (line2 -1 > line1)
+: "echo line1 . ":" . (line2-1)
+: "echo "a fold goes here."
+: execute ":" . line1 . "," . (line2-1) . "fold"
+: let folded = 1 "at least one fold has been found
+: endif
+: let line1 = line2 "update marker
+: let flags = "W" "turn off wrapping
+: endwhile
+" create the last fold which goes to the end of the file.
+: normal $G
+: let line2 = line(".")
+: if (line2 > line1 && folded == 1)
+: execute ":". line1 . "," . line2 . "fold"
+: endif
+: normal 1G
+:endfunction
+"% folds Fold Patterns
+:command! -nargs=+ -complete=command FMake call FoldMake(<q-args>)
+: if ( &filetype == "ruby" )
+: command! F FMake ^# ==\?\|^\s*\(\(def\|class\|module\)\s\|\(public\|protected\|private\|__END__\)\s*$\)\|\(^\s*\|\s\+\)#%\s
+: command! Fa FMake \(^# ==\?\|^\s*\(\(\(def\|class\|module\)\s\)\|\(\(public\|protected\|private\|__END__\)\(\s*$\)\)\)\)\|^[0-9]\~\|\([#%]\|^["]\)\{1,4\}\s*%\|{\({\|!!\)
+: command! FD FMake \(^# ==\?\|^\s*\(\(def\|class\|module\)\s\)\)\|^\s*\([#%"0-9]\{0,4\}\~\(%\+\s\|!!\)\|#\s\+=\+\s\+\)
+: else
+"% folds :F Fold Patterns SiSU Markup :F
+: command! F FMake ^\([1-8]\|:\?[A-C]\)\~\|\(^%\|\(^\|\s\+\)[#"]\)%\{1,2\}\(\s\|$\)\|^<<\s*|
+: command! Fa FMake ^\([1-8]\|:\?[A-C]\)\~\|\(^%\|\(^\|\s\+\)[#"]\)%\{1,2\}\(\s\|$\)\|^<<\s*|\|^\(Book\|Part\|Chapter\|Section\|Article\|BOOK\|PART\|CHAPTER\|SECTION\|ARTICLE\)\s
+: command! F0 FMake ^\(\s*0\~\|@\S\+:[+-]\?\s\+\)
+: command! FA FMake ^:\?A\~
+: command! FB FMake ^:\?[AB]\~
+: command! FC FMake ^:\?[A-C]\~
+: command! F1 FMake ^\(:\?[A-C]\|1\)\~
+: command! F2 FMake ^\(:\?[A-C]\|[12]\)\~
+: command! F3 FMake ^\(:\?[A-C]\|[1-3]\)\~
+: command! F4 FMake ^[1-4]\~
+: command! F5 FMake ^[4-5]\~
+: command! F6 FMake ^[4-6]\~
+: command! Fc FMake ^[%]\+\s\+
+: endif
+"% folds Fold Patterns misc
+":command! Fp FMake ^\s*[A-Za-z0-9#]
+:command! Fp FMake ^\s*\S
+:command! Fo FMake ^[%\"]\s*[{>]
diff --git a/data/sisu/conf/editor-syntax-etc/vim/addons/syntax/sisu.vim b/data/sisu/conf/editor-syntax-etc/vim/addons/syntax/sisu.vim
new file mode 100644
index 00000000..8a114b64
--- /dev/null
+++ b/data/sisu/conf/editor-syntax-etc/vim/addons/syntax/sisu.vim
@@ -0,0 +1,171 @@
+"%% SiSU Vim syntax file
+" SiSU Maintainer: Ralph Amissah <ralph@amissah.com>
+" SiSU Markup: SiSU (sisu-0.47.6)
+" (originally looked at Ruby Vim by Mirko Nasato)
+if version < 600
+ syntax clear
+elseif exists("b:current_syntax")
+ finish
+else
+endif
+"% 11 Errors?
+syn match sisu_error contains=sisu_link,sisu_error_wspace "<![^ei]\S\+!>"
+"% 10 Markers: Endnote Identifiers, Pagebreaks etc.:
+if !exists("sisu_no_identifiers")
+ syn match sisu_mark_endnote "\~^"
+ syn match sisu_contain contains=@NoSpell "</\?sub>"
+ syn match sisu_break contains=@NoSpell "<br>\|<br />"
+ syn match sisu_control contains=@NoSpell "<p>\|</p>\|<p />\|<:p[bn]>"
+ syn match sisu_html "<center>\|</center>"
+ syn match sisu_marktail "[~-]#"
+ syn match sisu_html contains=@NoSpell "<td>\|<td \|<tr>\|</td>\|</tr>\|<table>\|<table \|</table>"
+ syn match sisu_control "\""
+ syn match sisu_underline "\(^\| \)_[a-zA-Z0-9]\+_\([ .,]\|$\)"
+ syn match sisu_number contains=@NoSpell "[0-9a-f]\{32\}\|[0-9a-f]\{64\}"
+ syn match sisu_link contains=@NoSpell "\(https\?://\|\.\.\/\)\S\+"
+ "metaverse specific
+ syn match sisu_ocn contains=@NoSpell "<\~\d\+;\w\d\+;\w\d\+>"
+ syn match sisu_marktail "<\~#>"
+ syn match sisu_markpara contains=@NoSpell "<:i[1-9]>"
+ syn match sisu_link " \*\~\S\+"
+ syn match sisu_action "^<:insert\d\+>"
+ syn match sisu_contain "<:e>"
+endif
+"% 9 URLs Numbers: and ASCII Codes
+syn match sisu_number "\<\(0x\x\+\|0b[01]\+\|0\o\+\|0\.\d\+\|0\|[1-9][\.0-9_]*\)\>"
+syn match sisu_number "?\(\\M-\\C-\|\\c\|\\C-\|\\M-\)\=\(\\\o\{3}\|\\x\x\{2}\|\\\=\w\)"
+"% 8 Tuned Error - is error if not already matched
+syn match sisu_error contains=sisu_error "[\~/\*!_]{\|}[\~/\*!_]"
+syn match sisu_error contains=sisu_error "<a href\|</a>]"
+"% 7 Simple Enclosed Markup:
+" Simple Markup:
+"% url/link
+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="$"
+"% header
+syn region sisu_header_content contains=sisu_error,sisu_error_wspace,sisu_content_alt,sisu_link,sisu_linked,sisu_break matchgroup=sisu_header start="^0\~\(\S\+\|[^-]\)" end="$"
+syn region sisu_header_content contains=sisu_error,sisu_error_wspace,sisu_content_alt,sisu_link,sisu_linked,sisu_break matchgroup=sisu_header start="^0\~\(tags\?\|date\)\s\+"rs=e-1 end="\n$"
+syn region sisu_header_content contains=sisu_error,sisu_error_wspace,sisu_content_alt,sisu_link,sisu_linked,sisu_break matchgroup=sisu_header start="^@\S\+:[+-]\?\s"rs=e-1 end="$"
+syn region sisu_header_content contains=sisu_error,sisu_error_wspace,sisu_content_alt,sisu_link,sisu_linked,sisu_break matchgroup=sisu_header start="^@\(tags\?\|date\):\s\+"rs=e-1 end="\n$"
+"% headings
+syn region sisu_heading contains=sisu_mark_endnote,sisu_content_endnote,sisu_marktail,sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_ocn,sisu_error,sisu_error_wspace matchgroup=sisu_structure start="^\([1-8]\|:\?[A-C]\)\~\(\S\+\|[^-]\)" end="$"
+"% grouped text
+syn region sisu_content_alt contains=sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error matchgroup=sisu_contain start="^table{.\+" end="}table"
+syn region sisu_content_alt contains=sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error matchgroup=sisu_contain start="^{\(t\|table\)\(\~h\)\?\(\sc[0-9]\+;\)\?[0-9; ]*}" end="\n\n"
+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="^\(alt\|group\|poem\){" end="^}\(alt\|group\|poem\)"
+syn region sisu_content_alt contains=sisu_error matchgroup=sisu_contain start="^code{" end="^}code"
+"% endnotes
+syn region sisu_content_endnote contains=sisu_link,sisu_strikeout,sisu_underline,sisu_number,sisu_control,sisu_identifier,sisu_error,sisu_error_wspace,sisu_mark,sisu_break matchgroup=sisu_mark_endnote start="\~{[*+]*" end="}\~" skip="\n"
+syn region sisu_content_endnote contains=sisu_link,sisu_strikeout,sisu_underline,sisu_number,sisu_control,sisu_identifier,sisu_error,sisu_error_wspace,sisu_mark,sisu_break matchgroup=sisu_mark_endnote start="\~\[[*+]*" end="\]\~" skip="\n"
+syn region sisu_content_endnote contains=sisu_strikeout,sisu_number,sisu_control,sisu_link,sisu_identifier,sisu_error,sisu_error_wspace,sisu_mark,sisu_break matchgroup=sisu_mark_endnote start="\^\~" end="\n\n"
+"% links and images
+syn region sisu_linked contains=sisu_fontface,sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error matchgroup=sisu_link start="{\(\~^\s\)\?" end="}\(https\?:/\/\|\.\./\)\S\+" oneline
+syn region sisu_linked contains=sisu_fontface,sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error matchgroup=sisu_link start="{\(\~^\s\)\?" end="\[[1-5][sS]*\]}\S\+\.ss[tm]" oneline
+syn region sisu_linked contains=sisu_fontface,sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error matchgroup=sisu_link start="{" end="}image" oneline
+"% some line operations
+syn region sisu_control contains=sisu_strikeout,sisu_identifier,sisu_content_endnote,sisu_mark_endnote,sisu_error,sisu_error_wspace matchgroup=sisu_control start="\(\(^\| \)!_ \|<:b>\)" end="$"
+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-9*]\|[1-9]\*\) " end="$"
+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="$"
+syn region sisu_comment matchgroup=sisu_comment start="^%\{1,2\} " end="$"
+"% font face curly brackets
+syn region sisu_control contains=sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error matchgroup=sisu_fontface start="\*{" end="}\*"
+syn region sisu_control contains=sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error matchgroup=sisu_fontface start="!{" end="}!"
+syn region sisu_underline contains=sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error matchgroup=sisu_fontface start="_{" end="}_"
+syn region sisu_identifier contains=sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error matchgroup=sisu_fontface start="/{" end="}/"
+syn region sisu_underline contains=sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error matchgroup=sisu_fontface start="+{" end="}+"
+syn region sisu_identifier contains=sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error matchgroup=sisu_fontface start="\^{" end="}\^"
+syn region sisu_identifier contains=sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error matchgroup=sisu_fontface start=",{" end="},"
+syn region sisu_strikeout contains=sisu_error matchgroup=sisu_fontface start="-{" end="}-"
+syn region sisu_html contains=sisu_error contains=sisu_strikeout matchgroup=sisu_contain start="<a href=\".\{-}\">" end="</a>" oneline
+"% single words bold italicise etc. "workon
+syn region sisu_control contains=sisu_error matchgroup=sisu_control start="\([ (]\|^\)\*[^\|{\n\~\\]"hs=e-1 end="\*"he=e-0 skip="[a-zA-Z0-9']" oneline
+syn region sisu_identifier contains=sisu_error matchgroup=sisu_content_alt start="\([ ]\|^\)/[^{ \|\n\\]"hs=e-1 end="/\[ \.\]" skip="[a-zA-Z0-9']" oneline
+"% misc
+syn region sisu_identifier contains=sisu_error matchgroup=sisu_fontface start="\^[^ {\|\n\\]"rs=s+1 end="\^[ ,.;:'})\\\n]" skip="[a-zA-Z0-9']" oneline
+"% metaverse html (flagged as errors for filetype sisu)
+syn region sisu_control contains=sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error,sisu_mark matchgroup=sisu_html start="<b>" end="</b>" skip="\n" oneline
+syn region sisu_control contains=sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error,sisu_mark matchgroup=sisu_html start="<em>" end="</em>" skip="\n" oneline
+syn region sisu_content_alt contains=sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error,sisu_mark matchgroup=sisu_html start="<i>" end="</i>" skip="\n" oneline
+syn region sisu_content_alt contains=sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error,sisu_mark matchgroup=sisu_html start="<u>" end="</u>" skip="\n" oneline
+syn region sisu_identifier contains=sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error,sisu_mark matchgroup=sisu_html start="<ins>" end="</ins>" skip="\\\\\|\\'" oneline
+syn region sisu_identifier contains=sisu_error matchgroup=sisu_html start="<del>" end="</del>" oneline
+"% metaverse <:>
+syn region sisu_content_alt contains=sisu_strikeout,sisu_number,sisu_control,sisu_identifier,sisu_error matchgroup=sisu_contain start="<:Table.\{-}>" end="<:Table[-_]end>"
+syn region sisu_content_alt contains=sisu_error matchgroup=sisu_contain start="<:code>" end="<:code[-_]end>"
+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="<:alt>" end="<:alt[-_]end>"
+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="<:poem>" end="<:poem[-_]end>"
+"% 6 Expensive Mode
+" Expensive Mode:
+if !exists("sisu_no_expensive")
+else " not Expensive
+ syn region sisu_content_alt matchgroup=sisu_control start="^\s*def\s" matchgroup=NONE end="[?!]\|\>" skip="\.\|\(::\)" oneline
+endif " Expensive?
+"% 5 Headers: and Headings (Document Instructions)
+syn match sisu_control contains=sisu_error,sisu_error_wspace "4\~! \S\+"
+syn region sisu_markpara contains=sisu_error,sisu_error_wspace start="^=begin" end="^=end.*$"
+"% 4 Errors?
+syn match sisu_error_wspace contains=sisu_error_wspace "^\s\+"
+syn match sisu_error_wspace contains=sisu_error_wspace "\s\s\+"
+syn match sisu_error_wspace contains=sisu_error_wspace " \s*$"
+syn match sisu_error contains=sisu_error,sisu_error_wspace "[^ (}]https\?:\S\+"
+syn match sisu_error contains=sisu_error_wspace "\t\+"
+syn match sisu_error contains=sisu_error "https\?:\S\+[}><]"
+syn match sisu_error contains=sisu_error "\([!*/_\+,^]\){\([^(\}\1)]\)\{-}\n\n"
+syn match sisu_error contains=sisu_error "^[\~]{[^{]\{-}\n\n"
+syn match sisu_error contains=sisu_error "\s\+.{{"
+syn match sisu_error contains=sisu_error "^\~\s*$"
+syn match sisu_error contains=sisu_error "^[0-9]\~\s*$"
+syn match sisu_error contains=sisu_error "^[0-9]\~\S\+\s*$"
+syn match sisu_error contains=sisu_error "[^{]\~\^[^ \)]"
+syn match sisu_error contains=sisu_error "\~\^\s\+\.\s*"
+syn match sisu_error contains=sisu_error "{\~^\S\+"
+syn match sisu_error contains=sisu_error "[_/\*!^]{[ .,:;?><]*}[_/\*!^]"
+syn match sisu_error contains=sisu_error "[^ (\"'(\[][_/\*!]{\|}[_/\*!][a-zA-Z0-9)\]\"']"
+syn match sisu_error contains=sisu_error "<dir>"
+"errors for filetype sisu, though not error in 'metaverse':
+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\/]\+>"
+syn match sisu_error "/\?<\([biu]\)>[^(</\1>)]\{-}\n\n"
+"% 3 Error Exceptions?
+syn match sisu_control "\n\n" "contains=ALL
+syn match sisu_control " //"
+syn match sisu_error "%{"
+syn match sisu_error "<br>https\?:\S\+\|https\?:\S\+<br>"
+syn match sisu_error "[><]https\?:\S\+\|https\?:\S\+[><]"
+"% 2 Definitions - Define the default highlighting.
+if version >= 508 || !exists("did_sisu_syntax_inits")
+ if version < 508
+ let did_sisu_syntax_inits = 1
+ command -nargs=+ HiLink hi link <args>
+ else
+ command -nargs=+ HiLink hi def link <args>
+ endif
+"% 1 Defined
+ HiLink sisu_normal Normal
+ HiLink sisu_header PreProc
+ HiLink sisu_header_content Statement
+ HiLink sisu_heading Title
+ HiLink sisu_structure Operator
+ HiLink sisu_contain Include
+ HiLink sisu_mark_endnote Include
+ HiLink sisu_link NonText
+ HiLink sisu_linked String
+ HiLink sisu_fontface Include
+ HiLink sisu_strikeout DiffDelete
+ HiLink sisu_content_alt Special
+ HiLink sisu_content_endnote Special
+ HiLink sisu_control Define
+ HiLink sisu_ocn Include
+ HiLink sisu_number Number
+ HiLink sisu_identifier Function
+ HiLink sisu_underline Underlined
+ HiLink sisu_markpara Include
+ HiLink sisu_marktail Include
+ HiLink sisu_mark Identifier
+ HiLink sisu_break Structure
+ HiLink sisu_html Type
+ HiLink sisu_action Identifier
+ HiLink sisu_comment Comment
+ HiLink sisu_error_wspace Error
+ HiLink sisu_error Error
+ delcommand HiLink
+endif
+let b:current_syntax = "sisu"