import {
  __commonJS,
  __name
} from "./chunk-MM7DTO55.js";

// ../node_modules/highlight.js/lib/languages/lisp.js
var require_lisp = __commonJS({
  "../node_modules/highlight.js/lib/languages/lisp.js"(exports, module) {
    function lisp(hljs) {
      var LISP_IDENT_RE = "[a-zA-Z_\\-+\\*\\/<=>&#][a-zA-Z0-9_\\-+*\\/<=>&#!]*";
      var MEC_RE = "\\|[^]*?\\|";
      var LISP_SIMPLE_NUMBER_RE = "(-|\\+)?\\d+(\\.\\d+|\\/\\d+)?((d|e|f|l|s|D|E|F|L|S)(\\+|-)?\\d+)?";
      var LITERAL = {
        className: "literal",
        begin: "\\b(t{1}|nil)\\b"
      };
      var NUMBER = {
        className: "number",
        variants: [
          { begin: LISP_SIMPLE_NUMBER_RE, relevance: 0 },
          { begin: "#(b|B)[0-1]+(/[0-1]+)?" },
          { begin: "#(o|O)[0-7]+(/[0-7]+)?" },
          { begin: "#(x|X)[0-9a-fA-F]+(/[0-9a-fA-F]+)?" },
          { begin: "#(c|C)\\(" + LISP_SIMPLE_NUMBER_RE + " +" + LISP_SIMPLE_NUMBER_RE, end: "\\)" }
        ]
      };
      var STRING = hljs.inherit(hljs.QUOTE_STRING_MODE, { illegal: null });
      var COMMENT = hljs.COMMENT(
        ";",
        "$",
        {
          relevance: 0
        }
      );
      var VARIABLE = {
        begin: "\\*",
        end: "\\*"
      };
      var KEYWORD = {
        className: "symbol",
        begin: "[:&]" + LISP_IDENT_RE
      };
      var IDENT = {
        begin: LISP_IDENT_RE,
        relevance: 0
      };
      var MEC = {
        begin: MEC_RE
      };
      var QUOTED_LIST = {
        begin: "\\(",
        end: "\\)",
        contains: ["self", LITERAL, STRING, NUMBER, IDENT]
      };
      var QUOTED = {
        contains: [NUMBER, STRING, VARIABLE, KEYWORD, QUOTED_LIST, IDENT],
        variants: [
          {
            begin: "['`]\\(",
            end: "\\)"
          },
          {
            begin: "\\(quote ",
            end: "\\)",
            keywords: { name: "quote" }
          },
          {
            begin: "'" + MEC_RE
          }
        ]
      };
      var QUOTED_ATOM = {
        variants: [
          { begin: "'" + LISP_IDENT_RE },
          { begin: "#'" + LISP_IDENT_RE + "(::" + LISP_IDENT_RE + ")*" }
        ]
      };
      var LIST = {
        begin: "\\(\\s*",
        end: "\\)"
      };
      var BODY = {
        endsWithParent: true,
        relevance: 0
      };
      LIST.contains = [
        {
          className: "name",
          variants: [
            {
              begin: LISP_IDENT_RE,
              relevance: 0
            },
            { begin: MEC_RE }
          ]
        },
        BODY
      ];
      BODY.contains = [QUOTED, QUOTED_ATOM, LIST, LITERAL, NUMBER, STRING, COMMENT, VARIABLE, KEYWORD, MEC, IDENT];
      return {
        name: "Lisp",
        illegal: /\S/,
        contains: [
          NUMBER,
          hljs.SHEBANG(),
          LITERAL,
          STRING,
          COMMENT,
          QUOTED,
          QUOTED_ATOM,
          LIST,
          IDENT
        ]
      };
    }
    __name(lisp, "lisp");
    module.exports = lisp;
  }
});

export {
  require_lisp
};
