From 8c6cba0bd21beff034c73f4d5868e3d36062efff Mon Sep 17 00:00:00 2001 From: boba1l0s2k9 Date: Mon, 2 Dec 2013 14:02:37 -0800 Subject: [PATCH] Added additional JSDoc 3 tags to the list that gets highlighted: @name, @memberof, @exports, @callback, @typedef, and @property. These are all documented here: http://usejsdoc.org/#JSDoc3_Tag_Dictionary More importantly, I added special handling for the @example tag to do syntax highlighting for code in example blocks (even though the code is technically inside a comment). --- syntax/javascript.vim | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/syntax/javascript.vim b/syntax/javascript.vim index c133b2c..54f9f6b 100644 --- a/syntax/javascript.vim +++ b/syntax/javascript.vim @@ -1,8 +1,8 @@ " Vim syntax file " Language: JavaScript " Maintainer: Jose Elera Campana -" Last Change: September, 17 2013 -" Version: 0.8.0 +" Last Change: December, 1 2013 +" Version: 0.8.1 " Changes: Go to https://github.com/jelera/vim-javascript-syntax for " recent changes. " Credits: Zhao Yi, Claudio Fleiner, Scott Shattuck (This file is based @@ -69,8 +69,8 @@ if !exists("javascript_ignore_javaScriptdoc") " syntax coloring for JSDoc comments (HTML) "unlet b:current_syntax - syntax region javaScriptDocComment matchgroup=javaScriptComment start="/\*\*\s*$" end="\*/" contains=javaScriptDocTags,javaScriptCommentTodo,@javaScriptHtml,@Spell fold - syntax match javaScriptDocTags contained "@\(param\|argument\|returns\=\|requires\|exception\|throws\|type\|class\|extends\|see\|link\|member\|module\|method\|title\|namespace\|optional\|default\|base\|file\)\>" nextgroup=javaScriptDocParam,javaScriptDocSeeTag skipwhite + syntax region javaScriptDocComment matchgroup=javaScriptComment start="/\*\*\s*$" end="\*/" contains=javaScriptDocTags,javaScriptCommentTodo,@javaScriptHtml,jsInJsdocExample,@Spell fold + syntax match javaScriptDocTags contained "@\(param\|argument\|returns\=\|requires\|exception\|throws\|type\|class\|extends\|see\|link\|member\|module\|method\|title\|namespace\|name\|memberof\|exports\|callback\|typedef\|property\|optional\|default\|base\|file\)\>" nextgroup=javaScriptDocParam,javaScriptDocSeeTag skipwhite syntax match javaScriptDocTags contained "@\(beta\|deprecated\|description\|fileoverview\|author\|license\|version\|constructor\|private\|protected\|final\|ignore\|addon\|exec\)\>" syntax match javaScriptDocParam contained "\%(#\|\w\|\.\|:\|\/\)\+" syntax region javaScriptDocSeeTag contained matchgroup=javaScriptDocSeeTag start="{" end="}" contains=javaScriptDocTags @@ -302,3 +302,5 @@ let b:current_syntax = "javascript" if main_syntax == 'javascript' unlet main_syntax endif +syntax region jsInJsdocExample matchgroup=Snip start="^\s*\* @example" end="\(^\s*\* [^[:space:]]\)\@=" containedin=@javaScriptComment contains=@javaScriptAll +hi link Snip SpecialComment