source: node_modules/refractor/lang/ini.js@ d24f17c

main
Last change on this file since d24f17c was d24f17c, checked in by Aleksandar Panovski <apano77@…>, 15 months ago

Initial commit

  • Property mode set to 100644
File size: 1.2 KB
Line 
1'use strict'
2
3module.exports = ini
4ini.displayName = 'ini'
5ini.aliases = []
6function ini(Prism) {
7 Prism.languages.ini = {
8 /**
9 * The component mimics the behavior of the Win32 API parser.
10 *
11 * @see {@link https://github.com/PrismJS/prism/issues/2775#issuecomment-787477723}
12 */
13 comment: {
14 pattern: /(^[ \f\t\v]*)[#;][^\n\r]*/m,
15 lookbehind: true
16 },
17 section: {
18 pattern: /(^[ \f\t\v]*)\[[^\n\r\]]*\]?/m,
19 lookbehind: true,
20 inside: {
21 'section-name': {
22 pattern: /(^\[[ \f\t\v]*)[^ \f\t\v\]]+(?:[ \f\t\v]+[^ \f\t\v\]]+)*/,
23 lookbehind: true,
24 alias: 'selector'
25 },
26 punctuation: /\[|\]/
27 }
28 },
29 key: {
30 pattern:
31 /(^[ \f\t\v]*)[^ \f\n\r\t\v=]+(?:[ \f\t\v]+[^ \f\n\r\t\v=]+)*(?=[ \f\t\v]*=)/m,
32 lookbehind: true,
33 alias: 'attr-name'
34 },
35 value: {
36 pattern: /(=[ \f\t\v]*)[^ \f\n\r\t\v]+(?:[ \f\t\v]+[^ \f\n\r\t\v]+)*/,
37 lookbehind: true,
38 alias: 'attr-value',
39 inside: {
40 'inner-value': {
41 pattern: /^("|').+(?=\1$)/,
42 lookbehind: true
43 }
44 }
45 },
46 punctuation: /=/
47 }
48}
Note: See TracBrowser for help on using the repository browser.