如何将语言别名添加到Highlightjs?

时间:2019-04-26 03:34:29

标签: arrays associative-array highlightjs

根据highlightjs docs,您可以将一系列语言传递给configure对象。如下所示,文档中的示例未提供如何使用languages参数的示例。

hljs.configure({
  tabReplace: '    ', // 4 spaces
  classPrefix: ''     // don't append class prefix
                      // … other options aren't changed
})
hljs.initHighlighting();

从emacs导出源代码时使用的是类src-language而不是language,并且Highlightjs有时会自动检测错误。

因此,它将src-emacs-lisp识别为scheme而不是elisp或仅识别为lisp。因此,对于别名列表,如何配置对象的languages数组?有工作示例吗?

1 个答案:

答案 0 :(得分:0)

例如,如果Highlightjs安装支持bash而不是zshfish这样的shell,并且作为用户,您认为bash配置将与zshfish您可以这样配置:

var bash = hljs.requireLanguage("bash").rawDefinition();
bash.aliases.concat(["zsh","fish","etc"])
// push the new bash back overtop of the old one
hljs.registerLanguage("bash", bash)

关于该问题的示例,其中组织模式将lisp代码导出为src-emacs-lisp,而lisp是在Highlightjs中配置的,则代码应为

var lispHighlight = hljs.requireLanguage("lisp").rawDefinition();
lispHighlight.aliases.concat(["src-emacs-lisp"])
hljs.registerLanguage("lisp", lispHighlight)