perl-X2RK7RED.js 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608
  1. import "./chunk-2LSFTFF7.js";
  2. // node_modules/.pnpm/monaco-editor@0.38.0/node_modules/monaco-editor/esm/vs/basic-languages/perl/perl.js
  3. var conf = {
  4. comments: {
  5. lineComment: "#"
  6. },
  7. brackets: [
  8. ["{", "}"],
  9. ["[", "]"],
  10. ["(", ")"]
  11. ],
  12. autoClosingPairs: [
  13. { open: "{", close: "}" },
  14. { open: "[", close: "]" },
  15. { open: "(", close: ")" },
  16. { open: '"', close: '"' },
  17. { open: "'", close: "'" },
  18. { open: "`", close: "`" }
  19. ],
  20. surroundingPairs: [
  21. { open: "{", close: "}" },
  22. { open: "[", close: "]" },
  23. { open: "(", close: ")" },
  24. { open: '"', close: '"' },
  25. { open: "'", close: "'" },
  26. { open: "`", close: "`" }
  27. ]
  28. };
  29. var language = {
  30. defaultToken: "",
  31. tokenPostfix: ".perl",
  32. brackets: [
  33. { token: "delimiter.bracket", open: "{", close: "}" },
  34. { token: "delimiter.parenthesis", open: "(", close: ")" },
  35. { token: "delimiter.square", open: "[", close: "]" }
  36. ],
  37. keywords: [
  38. "__DATA__",
  39. "else",
  40. "lock",
  41. "__END__",
  42. "elsif",
  43. "lt",
  44. "__FILE__",
  45. "eq",
  46. "__LINE__",
  47. "exp",
  48. "ne",
  49. "sub",
  50. "__PACKAGE__",
  51. "for",
  52. "no",
  53. "and",
  54. "foreach",
  55. "or",
  56. "unless",
  57. "cmp",
  58. "ge",
  59. "package",
  60. "until",
  61. "continue",
  62. "gt",
  63. "while",
  64. "CORE",
  65. "if",
  66. "xor",
  67. "do",
  68. "le",
  69. "__DIE__",
  70. "__WARN__"
  71. ],
  72. builtinFunctions: [
  73. "-A",
  74. "END",
  75. "length",
  76. "setpgrp",
  77. "-B",
  78. "endgrent",
  79. "link",
  80. "setpriority",
  81. "-b",
  82. "endhostent",
  83. "listen",
  84. "setprotoent",
  85. "-C",
  86. "endnetent",
  87. "local",
  88. "setpwent",
  89. "-c",
  90. "endprotoent",
  91. "localtime",
  92. "setservent",
  93. "-d",
  94. "endpwent",
  95. "log",
  96. "setsockopt",
  97. "-e",
  98. "endservent",
  99. "lstat",
  100. "shift",
  101. "-f",
  102. "eof",
  103. "map",
  104. "shmctl",
  105. "-g",
  106. "eval",
  107. "mkdir",
  108. "shmget",
  109. "-k",
  110. "exec",
  111. "msgctl",
  112. "shmread",
  113. "-l",
  114. "exists",
  115. "msgget",
  116. "shmwrite",
  117. "-M",
  118. "exit",
  119. "msgrcv",
  120. "shutdown",
  121. "-O",
  122. "fcntl",
  123. "msgsnd",
  124. "sin",
  125. "-o",
  126. "fileno",
  127. "my",
  128. "sleep",
  129. "-p",
  130. "flock",
  131. "next",
  132. "socket",
  133. "-r",
  134. "fork",
  135. "not",
  136. "socketpair",
  137. "-R",
  138. "format",
  139. "oct",
  140. "sort",
  141. "-S",
  142. "formline",
  143. "open",
  144. "splice",
  145. "-s",
  146. "getc",
  147. "opendir",
  148. "split",
  149. "-T",
  150. "getgrent",
  151. "ord",
  152. "sprintf",
  153. "-t",
  154. "getgrgid",
  155. "our",
  156. "sqrt",
  157. "-u",
  158. "getgrnam",
  159. "pack",
  160. "srand",
  161. "-w",
  162. "gethostbyaddr",
  163. "pipe",
  164. "stat",
  165. "-W",
  166. "gethostbyname",
  167. "pop",
  168. "state",
  169. "-X",
  170. "gethostent",
  171. "pos",
  172. "study",
  173. "-x",
  174. "getlogin",
  175. "print",
  176. "substr",
  177. "-z",
  178. "getnetbyaddr",
  179. "printf",
  180. "symlink",
  181. "abs",
  182. "getnetbyname",
  183. "prototype",
  184. "syscall",
  185. "accept",
  186. "getnetent",
  187. "push",
  188. "sysopen",
  189. "alarm",
  190. "getpeername",
  191. "quotemeta",
  192. "sysread",
  193. "atan2",
  194. "getpgrp",
  195. "rand",
  196. "sysseek",
  197. "AUTOLOAD",
  198. "getppid",
  199. "read",
  200. "system",
  201. "BEGIN",
  202. "getpriority",
  203. "readdir",
  204. "syswrite",
  205. "bind",
  206. "getprotobyname",
  207. "readline",
  208. "tell",
  209. "binmode",
  210. "getprotobynumber",
  211. "readlink",
  212. "telldir",
  213. "bless",
  214. "getprotoent",
  215. "readpipe",
  216. "tie",
  217. "break",
  218. "getpwent",
  219. "recv",
  220. "tied",
  221. "caller",
  222. "getpwnam",
  223. "redo",
  224. "time",
  225. "chdir",
  226. "getpwuid",
  227. "ref",
  228. "times",
  229. "CHECK",
  230. "getservbyname",
  231. "rename",
  232. "truncate",
  233. "chmod",
  234. "getservbyport",
  235. "require",
  236. "uc",
  237. "chomp",
  238. "getservent",
  239. "reset",
  240. "ucfirst",
  241. "chop",
  242. "getsockname",
  243. "return",
  244. "umask",
  245. "chown",
  246. "getsockopt",
  247. "reverse",
  248. "undef",
  249. "chr",
  250. "glob",
  251. "rewinddir",
  252. "UNITCHECK",
  253. "chroot",
  254. "gmtime",
  255. "rindex",
  256. "unlink",
  257. "close",
  258. "goto",
  259. "rmdir",
  260. "unpack",
  261. "closedir",
  262. "grep",
  263. "say",
  264. "unshift",
  265. "connect",
  266. "hex",
  267. "scalar",
  268. "untie",
  269. "cos",
  270. "index",
  271. "seek",
  272. "use",
  273. "crypt",
  274. "INIT",
  275. "seekdir",
  276. "utime",
  277. "dbmclose",
  278. "int",
  279. "select",
  280. "values",
  281. "dbmopen",
  282. "ioctl",
  283. "semctl",
  284. "vec",
  285. "defined",
  286. "join",
  287. "semget",
  288. "wait",
  289. "delete",
  290. "keys",
  291. "semop",
  292. "waitpid",
  293. "DESTROY",
  294. "kill",
  295. "send",
  296. "wantarray",
  297. "die",
  298. "last",
  299. "setgrent",
  300. "warn",
  301. "dump",
  302. "lc",
  303. "sethostent",
  304. "write",
  305. "each",
  306. "lcfirst",
  307. "setnetent"
  308. ],
  309. builtinFileHandlers: ["ARGV", "STDERR", "STDOUT", "ARGVOUT", "STDIN", "ENV"],
  310. builtinVariables: [
  311. "$!",
  312. "$^RE_TRIE_MAXBUF",
  313. "$LAST_REGEXP_CODE_RESULT",
  314. '$"',
  315. "$^S",
  316. "$LIST_SEPARATOR",
  317. "$#",
  318. "$^T",
  319. "$MATCH",
  320. "$$",
  321. "$^TAINT",
  322. "$MULTILINE_MATCHING",
  323. "$%",
  324. "$^UNICODE",
  325. "$NR",
  326. "$&",
  327. "$^UTF8LOCALE",
  328. "$OFMT",
  329. "$'",
  330. "$^V",
  331. "$OFS",
  332. "$(",
  333. "$^W",
  334. "$ORS",
  335. "$)",
  336. "$^WARNING_BITS",
  337. "$OS_ERROR",
  338. "$*",
  339. "$^WIDE_SYSTEM_CALLS",
  340. "$OSNAME",
  341. "$+",
  342. "$^X",
  343. "$OUTPUT_AUTO_FLUSH",
  344. "$,",
  345. "$_",
  346. "$OUTPUT_FIELD_SEPARATOR",
  347. "$-",
  348. "$`",
  349. "$OUTPUT_RECORD_SEPARATOR",
  350. "$.",
  351. "$a",
  352. "$PERL_VERSION",
  353. "$/",
  354. "$ACCUMULATOR",
  355. "$PERLDB",
  356. "$0",
  357. "$ARG",
  358. "$PID",
  359. "$:",
  360. "$ARGV",
  361. "$POSTMATCH",
  362. "$;",
  363. "$b",
  364. "$PREMATCH",
  365. "$<",
  366. "$BASETIME",
  367. "$PROCESS_ID",
  368. "$=",
  369. "$CHILD_ERROR",
  370. "$PROGRAM_NAME",
  371. "$>",
  372. "$COMPILING",
  373. "$REAL_GROUP_ID",
  374. "$?",
  375. "$DEBUGGING",
  376. "$REAL_USER_ID",
  377. "$@",
  378. "$EFFECTIVE_GROUP_ID",
  379. "$RS",
  380. "$[",
  381. "$EFFECTIVE_USER_ID",
  382. "$SUBSCRIPT_SEPARATOR",
  383. "$\\",
  384. "$EGID",
  385. "$SUBSEP",
  386. "$]",
  387. "$ERRNO",
  388. "$SYSTEM_FD_MAX",
  389. "$^",
  390. "$EUID",
  391. "$UID",
  392. "$^A",
  393. "$EVAL_ERROR",
  394. "$WARNING",
  395. "$^C",
  396. "$EXCEPTIONS_BEING_CAUGHT",
  397. "$|",
  398. "$^CHILD_ERROR_NATIVE",
  399. "$EXECUTABLE_NAME",
  400. "$~",
  401. "$^D",
  402. "$EXTENDED_OS_ERROR",
  403. "%!",
  404. "$^E",
  405. "$FORMAT_FORMFEED",
  406. "%^H",
  407. "$^ENCODING",
  408. "$FORMAT_LINE_BREAK_CHARACTERS",
  409. "%ENV",
  410. "$^F",
  411. "$FORMAT_LINES_LEFT",
  412. "%INC",
  413. "$^H",
  414. "$FORMAT_LINES_PER_PAGE",
  415. "%OVERLOAD",
  416. "$^I",
  417. "$FORMAT_NAME",
  418. "%SIG",
  419. "$^L",
  420. "$FORMAT_PAGE_NUMBER",
  421. "@+",
  422. "$^M",
  423. "$FORMAT_TOP_NAME",
  424. "@-",
  425. "$^N",
  426. "$GID",
  427. "@_",
  428. "$^O",
  429. "$INPLACE_EDIT",
  430. "@ARGV",
  431. "$^OPEN",
  432. "$INPUT_LINE_NUMBER",
  433. "@INC",
  434. "$^P",
  435. "$INPUT_RECORD_SEPARATOR",
  436. "@LAST_MATCH_START",
  437. "$^R",
  438. "$LAST_MATCH_END",
  439. "$^RE_DEBUG_FLAGS",
  440. "$LAST_PAREN_MATCH"
  441. ],
  442. symbols: /[:+\-\^*$&%@=<>!?|\/~\.]/,
  443. quoteLikeOps: ["qr", "m", "s", "q", "qq", "qx", "qw", "tr", "y"],
  444. escapes: /\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,
  445. tokenizer: {
  446. root: [
  447. { include: "@whitespace" },
  448. [
  449. /[a-zA-Z\-_][\w\-_]*/,
  450. {
  451. cases: {
  452. "@keywords": "keyword",
  453. "@builtinFunctions": "type.identifier",
  454. "@builtinFileHandlers": "variable.predefined",
  455. "@quoteLikeOps": {
  456. token: "@rematch",
  457. next: "quotedConstructs"
  458. },
  459. "@default": ""
  460. }
  461. }
  462. ],
  463. [
  464. /[\$@%][*@#?\+\-\$!\w\\\^><~:;\.]+/,
  465. {
  466. cases: {
  467. "@builtinVariables": "variable.predefined",
  468. "@default": "variable"
  469. }
  470. }
  471. ],
  472. { include: "@strings" },
  473. { include: "@dblStrings" },
  474. { include: "@perldoc" },
  475. { include: "@heredoc" },
  476. [/[{}\[\]()]/, "@brackets"],
  477. [/[\/](?:(?:\[(?:\\]|[^\]])+\])|(?:\\\/|[^\]\/]))*[\/]\w*\s*(?=[).,;]|$)/, "regexp"],
  478. [/@symbols/, "operators"],
  479. { include: "@numbers" },
  480. [/[,;]/, "delimiter"]
  481. ],
  482. whitespace: [
  483. [/\s+/, "white"],
  484. [/(^#!.*$)/, "metatag"],
  485. [/(^#.*$)/, "comment"]
  486. ],
  487. numbers: [
  488. [/\d*\.\d+([eE][\-+]?\d+)?/, "number.float"],
  489. [/0[xX][0-9a-fA-F_]*[0-9a-fA-F]/, "number.hex"],
  490. [/\d+/, "number"]
  491. ],
  492. strings: [[/'/, "string", "@stringBody"]],
  493. stringBody: [
  494. [/'/, "string", "@popall"],
  495. [/\\'/, "string.escape"],
  496. [/./, "string"]
  497. ],
  498. dblStrings: [[/"/, "string", "@dblStringBody"]],
  499. dblStringBody: [
  500. [/"/, "string", "@popall"],
  501. [/@escapes/, "string.escape"],
  502. [/\\./, "string.escape.invalid"],
  503. { include: "@variables" },
  504. [/./, "string"]
  505. ],
  506. quotedConstructs: [
  507. [/(q|qw|tr|y)\s*\(/, { token: "string.delim", switchTo: "@qstring.(.)" }],
  508. [/(q|qw|tr|y)\s*\[/, { token: "string.delim", switchTo: "@qstring.[.]" }],
  509. [/(q|qw|tr|y)\s*\{/, { token: "string.delim", switchTo: "@qstring.{.}" }],
  510. [/(q|qw|tr|y)\s*</, { token: "string.delim", switchTo: "@qstring.<.>" }],
  511. [/(q|qw|tr|y)#/, { token: "string.delim", switchTo: "@qstring.#.#" }],
  512. [/(q|qw|tr|y)\s*([^A-Za-z0-9#\s])/, { token: "string.delim", switchTo: "@qstring.$2.$2" }],
  513. [/(q|qw|tr|y)\s+(\w)/, { token: "string.delim", switchTo: "@qstring.$2.$2" }],
  514. [/(qr|m|s)\s*\(/, { token: "regexp.delim", switchTo: "@qregexp.(.)" }],
  515. [/(qr|m|s)\s*\[/, { token: "regexp.delim", switchTo: "@qregexp.[.]" }],
  516. [/(qr|m|s)\s*\{/, { token: "regexp.delim", switchTo: "@qregexp.{.}" }],
  517. [/(qr|m|s)\s*</, { token: "regexp.delim", switchTo: "@qregexp.<.>" }],
  518. [/(qr|m|s)#/, { token: "regexp.delim", switchTo: "@qregexp.#.#" }],
  519. [/(qr|m|s)\s*([^A-Za-z0-9_#\s])/, { token: "regexp.delim", switchTo: "@qregexp.$2.$2" }],
  520. [/(qr|m|s)\s+(\w)/, { token: "regexp.delim", switchTo: "@qregexp.$2.$2" }],
  521. [/(qq|qx)\s*\(/, { token: "string.delim", switchTo: "@qqstring.(.)" }],
  522. [/(qq|qx)\s*\[/, { token: "string.delim", switchTo: "@qqstring.[.]" }],
  523. [/(qq|qx)\s*\{/, { token: "string.delim", switchTo: "@qqstring.{.}" }],
  524. [/(qq|qx)\s*</, { token: "string.delim", switchTo: "@qqstring.<.>" }],
  525. [/(qq|qx)#/, { token: "string.delim", switchTo: "@qqstring.#.#" }],
  526. [/(qq|qx)\s*([^A-Za-z0-9#\s])/, { token: "string.delim", switchTo: "@qqstring.$2.$2" }],
  527. [/(qq|qx)\s+(\w)/, { token: "string.delim", switchTo: "@qqstring.$2.$2" }]
  528. ],
  529. qstring: [
  530. [/\\./, "string.escape"],
  531. [
  532. /./,
  533. {
  534. cases: {
  535. "$#==$S3": { token: "string.delim", next: "@pop" },
  536. "$#==$S2": { token: "string.delim", next: "@push" },
  537. "@default": "string"
  538. }
  539. }
  540. ]
  541. ],
  542. qregexp: [
  543. { include: "@variables" },
  544. [/\\./, "regexp.escape"],
  545. [
  546. /./,
  547. {
  548. cases: {
  549. "$#==$S3": {
  550. token: "regexp.delim",
  551. next: "@regexpModifiers"
  552. },
  553. "$#==$S2": { token: "regexp.delim", next: "@push" },
  554. "@default": "regexp"
  555. }
  556. }
  557. ]
  558. ],
  559. regexpModifiers: [[/[msixpodualngcer]+/, { token: "regexp.modifier", next: "@popall" }]],
  560. qqstring: [{ include: "@variables" }, { include: "@qstring" }],
  561. heredoc: [
  562. [/<<\s*['"`]?([\w\-]+)['"`]?/, { token: "string.heredoc.delimiter", next: "@heredocBody.$1" }]
  563. ],
  564. heredocBody: [
  565. [
  566. /^([\w\-]+)$/,
  567. {
  568. cases: {
  569. "$1==$S2": [
  570. {
  571. token: "string.heredoc.delimiter",
  572. next: "@popall"
  573. }
  574. ],
  575. "@default": "string.heredoc"
  576. }
  577. }
  578. ],
  579. [/./, "string.heredoc"]
  580. ],
  581. perldoc: [[/^=\w/, "comment.doc", "@perldocBody"]],
  582. perldocBody: [
  583. [/^=cut\b/, "type.identifier", "@popall"],
  584. [/./, "comment.doc"]
  585. ],
  586. variables: [
  587. [/\$\w+/, "variable"],
  588. [/@\w+/, "variable"],
  589. [/%\w+/, "variable"]
  590. ]
  591. }
  592. };
  593. export {
  594. conf,
  595. language
  596. };
  597. /*! Bundled license information:
  598. monaco-editor/esm/vs/basic-languages/perl/perl.js:
  599. (*!-----------------------------------------------------------------------------
  600. * Copyright (c) Microsoft Corporation. All rights reserved.
  601. * Version: 0.38.0(0e330ae453813de4e6cf272460fb79c7117073d0)
  602. * Released under the MIT license
  603. * https://github.com/microsoft/monaco-editor/blob/main/LICENSE.txt
  604. *-----------------------------------------------------------------------------*)
  605. */
  606. //# sourceMappingURL=perl-X2RK7RED.js.map