From 9bb31f57226877f78f23fb766773aa8486297bb7 Mon Sep 17 00:00:00 2001 From: Alexander Sulfrian Date: Thu, 30 Jun 2011 00:52:42 +0200 Subject: initial commit --- deps/highlight.js/languages/bash.js | 85 +++++++++++++++++++++++++++++++++++++ 1 file changed, 85 insertions(+) create mode 100644 deps/highlight.js/languages/bash.js (limited to 'deps/highlight.js/languages/bash.js') diff --git a/deps/highlight.js/languages/bash.js b/deps/highlight.js/languages/bash.js new file mode 100644 index 0000000..f8a1a60 --- /dev/null +++ b/deps/highlight.js/languages/bash.js @@ -0,0 +1,85 @@ +/* +Language: Bash +Author: vah +*/ + +this.lang = function(hljs){ + +hljs.LANGUAGES.bash = function(){ + var BASH_LITERAL = {'true' : 1, 'false' : 1} + return { + defaultMode: { + lexems: [hljs.IDENT_RE], + contains: ['string', 'shebang', 'comment', 'number', 'test_condition', 'string', 'variable'], + keywords: { + 'keyword': {'if' : 1, 'then' : 1, 'else' : 1, 'fi' : 1, 'for' : 1, 'break' : 1, 'continue' : 1, 'while' : 1, 'in' : 1, 'do' : 1, 'done' : 1, 'echo' : 1, 'exit' : 1, 'return' : 1, 'set' : 1, 'declare' : 1}, + 'literal': BASH_LITERAL + } + }, + case_insensitive: false, + modes: [ + { + className: 'shebang', + begin: '(#!\\/bin\\/bash)|(#!\\/bin\\/sh)', + end: '^', + relevance: 10 + }, + hljs.HASH_COMMENT_MODE, + { + className: 'test_condition', + begin: '\\[ ', + end: ' \\]', + contains: ['string', 'variable', 'number'], + lexems: [hljs.IDENT_RE], + keywords: { + 'literal': BASH_LITERAL + }, + relevance: 0 + }, + { + className: 'test_condition', + begin: '\\[\\[ ', + end: ' \\]\\]', + contains: ['string', 'variable', 'number'], + lexems: [hljs.IDENT_RE], + keywords: { + 'literal': BASH_LITERAL + } + }, + { + className: 'variable', + begin: '\\$([a-zA-Z0-9_]+)\\b', + end: '^' + }, + { + className: 'variable', + begin: '\\$\\{(([^}])|(\\\\}))+\\}', + end: '^', + contains: ['number'] + }, + { + className: 'string', + begin: '"', end: '"', + illegal: '\\n', + contains: ['escape', 'variable'], + relevance: 0 + }, + { + className: 'string', + begin: '"', end: '"', + illegal: '\\n', + contains: ['escape', 'variable'], + relevance: 0 + }, + hljs.BACKSLASH_ESCAPE, + hljs.C_NUMBER_MODE, + { + className: 'comment', + begin: '\\/\\/', end: '$', + illegal: '.' + } + ] + }; +}(); + +}; -- cgit v1.2.3