History: Vim ogre dotoverlay
Source of version: 2 (current)
Copy to clipboard
!!Last Update
((User:Feral|Feral)) 21:35, 28 Jun 2005 (CDT)
!!Ogre .overlay
{CODE(wrap="1", colors="vim")} " {{{ File header
" vim:ff=unix ts=4 ss=4
" vim60:fdm=marker
"
" \file ogreoverlay.vim
" \date Sun, 26 Jun 2005 18:40 PST
"
" \brief "Language: Ogre(3d)'s .overlay
" \note Based on TextPad syntax definitions for Ogre3D .overlay files Copyright (C) 2004, Harrison Ulrich
"
" \author "Maintainer: Robert KellyIV <sreny@srenyqernzf.pbz> (Rot13ed)
" \note http://www.feraldreams.com
" \note This is an extreme quickie; expect imperfect results!
" }}}
" For version 5.x: Clear all syntax items
" For version 6.x: Quit when a syntax file was already loaded
if version < 600
syntax clear
elseif exists("b:current_syntax")
finish
endif
"syn case match
";code blocks
syn keyword ogreoverlay_code_blocks container element entity template
";variables
syn keyword ogreoverlay_variables zorder metrics_mode horz_align vert_align left top width height material caption
syn keyword ogreoverlay_variables mesh_name entity_name position rotation
syn keyword ogreoverlay_variables Panel BorderPanel TextArea TextBox
syn keyword ogreoverlay_variables transparent tiling border_size border_material border_topleft_uv border_topright_uv border_bottomleft_uv border_bottomright_uv border_left_uv border_right_uv border_top_uv border_bottom_uv border_up_material border_down_material button_up_material button_down_material font_name char_height colour colour_bottom colour_top text_area back_panel up_button down_button scroll_bit
syn keyword ogreoverlay_variables left top
syn keyword ogreoverlay_variables border_size border_material border_topleft_uv border_top_uv border_topright_uv border_left_uv border_right_uv border_bottomleft_uv border_bottom_uv border_bottomright_uv
syn keyword ogreoverlay_variables font_name char_height caption colour_top colour_bottom
";values
syn keyword ogreoverlay_values true false
syn keyword ogreoverlay_values pixels relative center right bottom
" integer number
syn match ogreoverlay_Number display "\<[0-9]\+\>"
" floating point number, with dot, optional exponent
syn match ogreoverlay_Float "\<[0-9]\+\.[0-9]*\(e[-+]\=[0-9]\+\)\=\>"
" floating point number, starting with a dot, optional exponent
syn match ogreoverlay_Float "\.[0-9]\+\(e[-+]\=[0-9]\+\)\=\>"
"" floating point number, without dot, with exponent
"syn match ogreoverlay_Float "\<[0-9]\+e[-+]\=[0-9]\+\>"
"material Examples/OgreLogo
syn match ogreoverlay_MaterialName display "\(\<material\>\s\{-}\)\@<=\<\f*\>"
syn match ogreoverlay_MaterialName display "\(\<border_material\>\s\{-}\)\@<=\<\f*\>"
" caption Loading, please wait...
syn match ogreoverlay_caption display "\(\<caption\>\s\{-}\)\@<=\<\p*"
syn match ogreoverlay_caption display "\(\<font_name\>\s\{-}\)\@<=\<\p*"
" // comments
syn keyword ogreoverlay_Todo contained TODO FIXME XXX
syn match ogreoverlay_Comment "//.*$" contains=ogreoverlay_Todo
" container BorderPanel(Core/LoadPanel)
"element TextArea(Core/LoadPanel/Description)
syn match ogreoverlay_id display "\((\)\@<=\<\f*\>\()\)\@="
"Core/LoadOverlay
syn match ogreoverlay_id display "^\<\f*\>"
" operators:
syn match ogreoverlay_Operators "[<>]"
syn match ogreoverlay_Operators "[()]"
syn match ogreoverlay_Brace "[{}]"
"syncing method
"syn sync minlines=100
" Define the default highlighting.
" For version 5.7 and earlier: only when not done already
" For version 5.8 and later: only when an item doesn't have highlighting yet
if version >= 508 || !exists("did_ogre3d_overlay_syntax_inits")
if version < 508
let did_ogre3d_overlay_syntax_inits = 1
command -nargs=+ HiLink hi link <args>
else
command -nargs=+ HiLink hi def link <args>
endif
HiLink ogreoverlay_Todo Todo
HiLink ogreoverlay_Comment Comment
HiLink ogreoverlay_id Function
HiLink ogreoverlay_MaterialName Function
HiLink ogreoverlay_caption String
HiLink ogreoverlay_FileName String
HiLink ogreoverlay_Number Number
HiLink ogreoverlay_Float Float
HiLink ogreoverlay_Operators Operator
" HiLink ogreoverlay_Brace Operator
hi ogreoverlay_Brace guifg=coral
HiLink ogreoverlay_code_blocks Structure
HiLink ogreoverlay_variables Statement
HiLink ogreoverlay_values Float
delcommand HiLink
endif
let b:current_syntax = "ogre3d_overlay"
"
"EOF
{CODE}
!!!HOWTO use:
Just drop this in your ''.vim\syntax'' directory as ogrematerial.vim
Your ''.vim\filetype.vim'' file will probably need something like this to set your filetype automatically.
{CODE(wrap="1", colors="vim")} au BufNewFile,BufRead *.overlay setf ogreoverlay " [Feral:177/05@18:14] OGRE3d's .overlay files
{CODE}