--- /dev/null
+" bbcode.vim
+" @Author: Thomas Link (mailto:micathom AT gmail com?subject=[vim])
+" @Website: http://www.vim.org/account/profile.php?user_id=4037
+" @License: GPL (see http://www.gnu.org/licenses/gpl.txt)
+" @Created: 2007-11-15.
+" @Last Change: 2007-11-17.
+" @Revision: 0.2.50
+
+if version < 600
+ syntax clear
+elseif exists("b:current_syntax")
+ finish
+endif
+if version < 508
+ command! -nargs=+ HiLink hi link <args>
+else
+ command! -nargs=+ HiLink hi def link <args>
+endif
+
+syn case ignore
+
+syn region bbcodeTag matchgroup=Delimiter start=/\[\z(.\{-}\)\(=.\{-}\)\?\]/ end=/\[\/\z1\]/
+syn region bbcodeBold matchgroup=Delimiter start=/\[b\]/ end=/\[\/b\]/
+syn region bbcodeItalic matchgroup=Delimiter start=/\[i\]/ end=/\[\/i\]/
+syn region bbcodeUnderline matchgroup=Delimiter start=/\[u\]/ end=/\[\/u\]/
+syn region bbcodeStrikethrough matchgroup=Delimiter start=/\[s\]/ end=/\[\/s\]/
+syn region bbcodeUrl matchgroup=Delimiter start=/\[url\(=.\{-}\)\?\]/ end=/\[\/url\]/
+syn region bbcodeQuote matchgroup=Delimiter start=/\[quote\(=.\{-}\)\?\]/ end=/\[\/quote\]/
+syn region bbcodeCode matchgroup=Delimiter start=/\[code\(=.\{-}\)\?\]/ end=/\[\/code\]/
+syn region bbcodeList matchgroup=Delimiter start=/\[list\(=.\{-}\)\?\]/ end=/\[\/list\]/
+ \ transparent
+syn match bbcodeItem /\[\*\]/
+
+if exists('loaded_viki') && loaded_viki >= 304
+ runtime syntax/texmath.vim
+ syn region bbcodeTex matchgroup=Delimiter start=/\[tex\(=.\{-}\)\?\]/ end=/\[\/tex\]/
+ \ contains=@texmathMath transparent
+endif
+
+HiLink bbcodeTag Statement
+HiLink bbcodeUrl underlined
+HiLink bbcodeQuote Comment
+HiLink bbcodeCode PreProc
+HiLink bbcodeStrikethrough Ignore
+HiLink bbcodeDelimiter Delimiter
+HiLink bbcodeItem Delimiter
+" HiLink bbcodeTex Identifier
+
+hi bbcodeBold term=bold,underline cterm=bold,underline gui=bold
+hi bbcodeItalic term=italic cterm=italic gui=italic
+hi bbcodeUnderline term=underline cterm=underline gui=underline
+
+delcommand HiLink
+let b:current_syntax = 'bbcode'
--- /dev/null
+snippet b "Bold" w
+[b]$1[/b]$0
+endsnippet
+
+snippet u "Underlined" w
+[u]$1[/u]$0
+endsnippet
+
+snippet i "Italic" w
+[i]$1[/i]$0
+endsnippet
+
+snippet s "Strike-through" w
+[s]$1[/s]$0
+endsnippet
+
+snippet em "Emphasise" w
+[em]$1[/em]$0
+endsnippet
+
+snippet color "Color" w
+[color=${1:red}]$2[/color]$0
+endsnippet
+
+snippet h "Heading" w
+[h]$1[/h]$0
+endsnippet
+
+snippet url "URL" w
+[url=${1:http://example.com}]$2[/url]$0
+endsnippet
+
+snippet img "Image" w
+[img=${1:Alt Text}]${2:http://example.com/image.png}[/img]
+endsnippet
+
+snippet email "Email" w
+[email=${1:me@rmz.io}]$2[/email]$0
+endsnippet
+
+snippet quote "Quote" w
+[quote=${1:user}]
+$VISUAL
+$0
+[/quote]
+endsnippet
+
+snippet code "Code" w
+[code]
+$0
+[/code]
+endsnippet
+
+snippet list "List" w
+[list=${1:a|1}]
+[*]$0[/*]
+[/list]
+endsnippet