aboutsummaryrefslogtreecommitdiff
path: root/node_modules/highlight.js/lib/languages/step21.js
diff options
context:
space:
mode:
Diffstat (limited to 'node_modules/highlight.js/lib/languages/step21.js')
-rw-r--r--node_modules/highlight.js/lib/languages/step21.js46
1 files changed, 46 insertions, 0 deletions
diff --git a/node_modules/highlight.js/lib/languages/step21.js b/node_modules/highlight.js/lib/languages/step21.js
new file mode 100644
index 000000000..d688f7a97
--- /dev/null
+++ b/node_modules/highlight.js/lib/languages/step21.js
@@ -0,0 +1,46 @@
+module.exports = function(hljs) {
+ var STEP21_IDENT_RE = '[A-Z_][A-Z0-9_.]*';
+ var STEP21_KEYWORDS = {
+ keyword: 'HEADER ENDSEC DATA'
+ };
+ var STEP21_START = {
+ className: 'meta',
+ begin: 'ISO-10303-21;',
+ relevance: 10
+ };
+ var STEP21_CLOSE = {
+ className: 'meta',
+ begin: 'END-ISO-10303-21;',
+ relevance: 10
+ };
+
+ return {
+ aliases: ['p21', 'step', 'stp'],
+ case_insensitive: true, // STEP 21 is case insensitive in theory, in practice all non-comments are capitalized.
+ lexemes: STEP21_IDENT_RE,
+ keywords: STEP21_KEYWORDS,
+ contains: [
+ STEP21_START,
+ STEP21_CLOSE,
+ hljs.C_LINE_COMMENT_MODE,
+ hljs.C_BLOCK_COMMENT_MODE,
+ hljs.COMMENT('/\\*\\*!', '\\*/'),
+ hljs.C_NUMBER_MODE,
+ hljs.inherit(hljs.APOS_STRING_MODE, {illegal: null}),
+ hljs.inherit(hljs.QUOTE_STRING_MODE, {illegal: null}),
+ {
+ className: 'string',
+ begin: "'", end: "'"
+ },
+ {
+ className: 'symbol',
+ variants: [
+ {
+ begin: '#', end: '\\d+',
+ illegal: '\\W'
+ }
+ ]
+ }
+ ]
+ };
+}; \ No newline at end of file