« Highlight.js » : différence entre les versions

De Banane Atomic
Aller à la navigationAller à la recherche
Ligne 53 : Ligne 53 :
  * Author: Moi <moi@domaine.fr>
  * Author: Moi <moi@domaine.fr>
  * Category: common
  * Category: common
*/
*/


function(hljs) {
function(hljs) {

Version du 4 avril 2023 à 19:52

Liens

Build

Bash.svg
git clone https://github.com/isagalaev/highlight.js

cd highlight.js/
# installation des dépendances dans ./node_modules
# npm i utilise le fichier package.json
npm i

# création du dossier build et de ses fichiers
node tools/build.js -t browser -n :common csharp cpp
# -t browser, target (browser, cdn, node, all)
# -n, Disable compression
# :common, langages de base
# csharp cpp, les langages c# et c++

# the build result is in the build/ directory.

Test

Après avoir buildé

  • build/demo/index.html
  • tools/developer.html
Bash.svg
# run unit test
cd test
npm test

Ajouter un nouveau langage

test/detect/[nouveau langage]/default.txt
Code de démo
src/languages/[nouveau langage].js
/*
 * Language: [nouveau langage]
 * Requires: xml.js, csharp.js
 * Author: Moi <moi@domaine.fr>
 * Category: common
 */

function(hljs) {
  var KEYWORDS = {
    keyword: 'abc def',
    literal: 'null false true',
    type: '',
    built_in: ''
  };

  var comment = hljs.COMMENT(
    '//',  // tout ce qui commence par //
    '$'    // jusqu'à la fin de la ligne
  );

  return {
    aliases: ['name1', 'name2'],
    keywords: KEYWORDS,
    illegal: /::/,
    contains: [
      comment,
      hljs.HASH_COMMENT_MODE  // already defined comment pattern
    ]
  };
}

Category

assembler common config css
enterprise functional graphics lisp
markup protocols scientific scripting
system template

Installation

Bash.svg
npm install -g highlight.js
# highlight.js → /usr/lib/node_modules/highlight.js/lib/
# languages → /usr/lib/node_modules/highlight.js/lib/languages
# css → /usr/lib/node_modules/highlight.js/styles/