diff --git a/components/prism-crystal.js b/components/prism-crystal.js index 47554147a9..66f24fb302 100644 --- a/components/prism-crystal.js +++ b/components/prism-crystal.js @@ -1,7 +1,7 @@ (function(Prism) { Prism.languages.crystal = Prism.languages.extend('ruby', { keyword: [ - /\b(?:abstract|alias|as|asm|begin|break|case|class|def|do|else|elsif|end|ensure|enum|extend|for|fun|if|ifdef|include|instance_sizeof|lib|macro|module|next|of|out|pointerof|private|protected|rescue|return|require|self|sizeof|struct|super|then|type|typeof|undef|union|unless|until|when|while|with|yield|__DIR__|__FILE__|__LINE__)\b/, + /\b(?:abstract|alias|as|asm|begin|break|case|class|def|do|else|elsif|end|ensure|enum|extend|for|fun|if|ifdef|include|instance_sizeof|lib|macro|module|next|of|out|pointerof|private|protected|rescue|return|require|self|sizeof|struct|super|then|type|typeof|union|unless|until|when|while|with|yield|__DIR__|__FILE__|__LINE__)\b/, { pattern: /(\.\s*)(?:is_a|responds_to)\?/, lookbehind: true diff --git a/tests/languages/crystal/keyword_feature.test b/tests/languages/crystal/keyword_feature.test index 2d58f50a25..ca575efb2a 100644 --- a/tests/languages/crystal/keyword_feature.test +++ b/tests/languages/crystal/keyword_feature.test @@ -8,7 +8,7 @@ lib macro module next of out pointerof private protected rescue .responds_to? return require self sizeof struct super -then type typeof undef union unless until when +then type typeof union unless until when while with yield __DIR__ __FILE__ __LINE__ ---------------------------------------------------- @@ -24,7 +24,7 @@ while with yield __DIR__ __FILE__ __LINE__ ["keyword", "private"], ["keyword", "protected"], ["keyword", "rescue"], ["punctuation", "."], ["keyword", "responds_to?"], ["keyword", "return"], ["keyword", "require"], ["keyword", "self"], ["keyword", "sizeof"], ["keyword", "struct"], ["keyword", "super"], - ["keyword", "then"], ["keyword", "type"], ["keyword", "typeof"], ["keyword", "undef"], ["keyword", "union"], ["keyword", "unless"], ["keyword", "until"], ["keyword", "when"], + ["keyword", "then"], ["keyword", "type"], ["keyword", "typeof"], ["keyword", "union"], ["keyword", "unless"], ["keyword", "until"], ["keyword", "when"], ["keyword", "while"], ["keyword", "with"], ["keyword", "yield"], ["keyword", "__DIR__"], ["keyword", "__FILE__"], ["keyword", "__LINE__"] ]