@aquera/nile-elements 0.0.92 → 0.0.93

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (151) hide show
  1. package/README.md +6 -0
  2. package/demo/variables.css +1 -0
  3. package/demo/variables_v2.css +1 -0
  4. package/dist/{angular-ts-da0fd838.cjs.js → angular-ts-a95c67aa.cjs.js} +2 -2
  5. package/dist/{angular-ts-da0fd838.cjs.js.map → angular-ts-a95c67aa.cjs.js.map} +1 -1
  6. package/dist/{asciidoc-de6540f7.esm.js → asciidoc-b8046ce8.esm.js} +1 -1
  7. package/dist/{asciidoc-b383cc2e.cjs.js → asciidoc-c0ae04c3.cjs.js} +2 -2
  8. package/dist/{asciidoc-b383cc2e.cjs.js.map → asciidoc-c0ae04c3.cjs.js.map} +1 -1
  9. package/dist/{astro-05e2da78.cjs.js → astro-97602850.cjs.js} +2 -2
  10. package/dist/{astro-05e2da78.cjs.js.map → astro-97602850.cjs.js.map} +1 -1
  11. package/dist/{astro-1223c814.esm.js → astro-de938e80.esm.js} +1 -1
  12. package/dist/{crystal-00fdf85b.esm.js → crystal-5e351a7d.esm.js} +1 -1
  13. package/dist/{crystal-ae510520.cjs.js → crystal-bfe435a1.cjs.js} +2 -2
  14. package/dist/{crystal-ae510520.cjs.js.map → crystal-bfe435a1.cjs.js.map} +1 -1
  15. package/dist/dotenv-2978380a.esm.js +1 -0
  16. package/dist/dotenv-6a845f3d.cjs.js +2 -0
  17. package/dist/dotenv-6a845f3d.cjs.js.map +1 -0
  18. package/dist/{edge-9983b50e.cjs.js → edge-f122fee4.cjs.js} +2 -2
  19. package/dist/{edge-9983b50e.cjs.js.map → edge-f122fee4.cjs.js.map} +1 -1
  20. package/dist/{erb-6afdf0fc.cjs.js → erb-4ff167eb.cjs.js} +2 -2
  21. package/dist/{erb-6afdf0fc.cjs.js.map → erb-4ff167eb.cjs.js.map} +1 -1
  22. package/dist/{erb-e26dd182.esm.js → erb-baff1e72.esm.js} +1 -1
  23. package/dist/everforest-dark-0ddfeebd.cjs.js +2 -0
  24. package/dist/everforest-dark-0ddfeebd.cjs.js.map +1 -0
  25. package/dist/everforest-dark-c8bfaab7.esm.js +1 -0
  26. package/dist/everforest-light-d4dc4485.esm.js +1 -0
  27. package/dist/everforest-light-eee329e3.cjs.js +2 -0
  28. package/dist/everforest-light-eee329e3.cjs.js.map +1 -0
  29. package/dist/{fortran-fixed-form-dc511aa4.cjs.js → fortran-fixed-form-48ce1631.cjs.js} +2 -2
  30. package/dist/{fortran-fixed-form-dc511aa4.cjs.js.map → fortran-fixed-form-48ce1631.cjs.js.map} +1 -1
  31. package/dist/{fsharp-33f71ce3.esm.js → fsharp-941d0410.esm.js} +1 -1
  32. package/dist/{fsharp-2716dc4e.cjs.js → fsharp-9f65d045.cjs.js} +2 -2
  33. package/dist/{fsharp-2716dc4e.cjs.js.map → fsharp-9f65d045.cjs.js.map} +1 -1
  34. package/dist/{gdresource-10e5a92c.cjs.js → gdresource-f69c4269.cjs.js} +2 -2
  35. package/dist/{gdresource-10e5a92c.cjs.js.map → gdresource-f69c4269.cjs.js.map} +1 -1
  36. package/dist/{git-rebase-3af101f6.esm.js → git-rebase-a164f4f3.esm.js} +1 -1
  37. package/dist/{git-rebase-6c8a29e3.cjs.js → git-rebase-d4b1bf1e.cjs.js} +2 -2
  38. package/dist/{git-rebase-6c8a29e3.cjs.js.map → git-rebase-d4b1bf1e.cjs.js.map} +1 -1
  39. package/dist/{haml-0a4f1779.esm.js → haml-2548eb67.esm.js} +1 -1
  40. package/dist/{haml-9562b9cb.cjs.js → haml-a62722ee.cjs.js} +2 -2
  41. package/dist/{haml-9562b9cb.cjs.js.map → haml-a62722ee.cjs.js.map} +1 -1
  42. package/dist/{http-fbb08279.cjs.js → http-243ce707.cjs.js} +2 -2
  43. package/dist/{http-fbb08279.cjs.js.map → http-243ce707.cjs.js.map} +1 -1
  44. package/dist/{http-93fe835e.esm.js → http-5eea627d.esm.js} +1 -1
  45. package/dist/{hxml-84e30280.cjs.js → hxml-36e954b2.cjs.js} +2 -2
  46. package/dist/{hxml-84e30280.cjs.js.map → hxml-36e954b2.cjs.js.map} +1 -1
  47. package/dist/julia-289248e3.esm.js +1 -0
  48. package/dist/julia-e6d02a84.cjs.js +2 -0
  49. package/dist/julia-e6d02a84.cjs.js.map +1 -0
  50. package/dist/kotlin-0426de90.cjs.js +2 -0
  51. package/dist/kotlin-0426de90.cjs.js.map +1 -0
  52. package/dist/kotlin-9232cba2.esm.js +1 -0
  53. package/dist/latex-1732805a.cjs.js +2 -0
  54. package/dist/latex-1732805a.cjs.js.map +1 -0
  55. package/dist/latex-d31ca0af.esm.js +1 -0
  56. package/dist/less-263f5e43.esm.js +1 -0
  57. package/dist/less-d05a73ab.cjs.js +2 -0
  58. package/dist/less-d05a73ab.cjs.js.map +1 -0
  59. package/dist/{marko-6fdf941d.cjs.js → marko-5bdb0e54.cjs.js} +2 -2
  60. package/dist/{marko-6fdf941d.cjs.js.map → marko-5bdb0e54.cjs.js.map} +1 -1
  61. package/dist/{marko-f6122312.esm.js → marko-b0214c2c.esm.js} +1 -1
  62. package/dist/{mdc-34a9ac72.cjs.js → mdc-a3ab9285.cjs.js} +2 -2
  63. package/dist/{mdc-34a9ac72.cjs.js.map → mdc-a3ab9285.cjs.js.map} +1 -1
  64. package/dist/nile-code-editor/extensionSetup.cjs.js +2 -2
  65. package/dist/nile-code-editor/extensionSetup.esm.js +1 -1
  66. package/dist/nile-code-editor/nile-code-editor.cjs.js +2 -2
  67. package/dist/nile-code-editor/nile-code-editor.cjs.js.map +1 -1
  68. package/dist/nile-code-editor/nile-code-editor.esm.js +3 -3
  69. package/dist/nile-highlighter/nile-highlighter.cjs.js +1 -1
  70. package/dist/nile-highlighter/nile-highlighter.cjs.js.map +1 -1
  71. package/dist/nile-highlighter/nile-highlighter.esm.js +1 -1
  72. package/dist/nile-menu/index.cjs.js +1 -1
  73. package/dist/nile-menu/index.esm.js +1 -1
  74. package/dist/nile-menu/nile-menu.cjs.js +1 -1
  75. package/dist/nile-menu/nile-menu.cjs.js.map +1 -1
  76. package/dist/nile-menu/nile-menu.css.cjs.js +1 -1
  77. package/dist/nile-menu/nile-menu.css.cjs.js.map +1 -1
  78. package/dist/nile-menu/nile-menu.css.esm.js +24 -2
  79. package/dist/nile-menu/nile-menu.esm.js +7 -3
  80. package/dist/nile-select/nile-select.cjs.js +1 -1
  81. package/dist/nile-select/nile-select.cjs.js.map +1 -1
  82. package/dist/nile-select/nile-select.esm.js +2 -2
  83. package/dist/nile-stepper/nile-stepper.cjs.js +1 -1
  84. package/dist/nile-stepper/nile-stepper.cjs.js.map +1 -1
  85. package/dist/nile-stepper/nile-stepper.esm.js +3 -3
  86. package/dist/{nim-808435cb.cjs.js → nim-df5f9efe.cjs.js} +2 -2
  87. package/dist/{nim-808435cb.cjs.js.map → nim-df5f9efe.cjs.js.map} +1 -1
  88. package/dist/{rst-98199db8.esm.js → rst-32451dee.esm.js} +1 -1
  89. package/dist/{rst-a41b2bdd.cjs.js → rst-64e995dc.cjs.js} +2 -2
  90. package/dist/{rst-a41b2bdd.cjs.js.map → rst-64e995dc.cjs.js.map} +1 -1
  91. package/dist/{ruby-44a4045d.cjs.js → ruby-82bc8c10.cjs.js} +2 -2
  92. package/dist/{ruby-44a4045d.cjs.js.map → ruby-82bc8c10.cjs.js.map} +1 -1
  93. package/dist/{ruby-ed20df8b.esm.js → ruby-b8bcac40.esm.js} +1 -1
  94. package/dist/{shaderlab-75efb6b5.cjs.js → shaderlab-8f7349ac.cjs.js} +2 -2
  95. package/dist/{shaderlab-75efb6b5.cjs.js.map → shaderlab-8f7349ac.cjs.js.map} +1 -1
  96. package/dist/{shellscript-95a6b265.esm.js → shellscript-9a12df8f.esm.js} +1 -1
  97. package/dist/{shellscript-ada948c5.cjs.js → shellscript-9c815bf4.cjs.js} +2 -2
  98. package/dist/shellscript-9c815bf4.cjs.js.map +1 -0
  99. package/dist/{shellsession-c69f0eea.esm.js → shellsession-a931a3f3.esm.js} +1 -1
  100. package/dist/{shellsession-c26f94d1.cjs.js → shellsession-c07da9ea.cjs.js} +2 -2
  101. package/dist/{shellsession-c26f94d1.cjs.js.map → shellsession-c07da9ea.cjs.js.map} +1 -1
  102. package/dist/{sparql-933afbfc.cjs.js → sparql-cd3386f5.cjs.js} +2 -2
  103. package/dist/{sparql-933afbfc.cjs.js.map → sparql-cd3386f5.cjs.js.map} +1 -1
  104. package/dist/src/nile-code-editor/nile-code-editor.d.ts +9 -9
  105. package/dist/src/nile-code-editor/nile-code-editor.js +49 -50
  106. package/dist/src/nile-code-editor/nile-code-editor.js.map +1 -1
  107. package/dist/src/nile-menu/nile-menu.css.js +22 -0
  108. package/dist/src/nile-menu/nile-menu.css.js.map +1 -1
  109. package/dist/src/nile-menu/nile-menu.d.ts +1 -0
  110. package/dist/src/nile-menu/nile-menu.js +9 -3
  111. package/dist/src/nile-menu/nile-menu.js.map +1 -1
  112. package/dist/src/nile-select/nile-select.d.ts +1 -0
  113. package/dist/src/nile-select/nile-select.js +14 -0
  114. package/dist/src/nile-select/nile-select.js.map +1 -1
  115. package/dist/src/nile-stepper/nile-stepper.js +4 -4
  116. package/dist/src/nile-stepper/nile-stepper.js.map +1 -1
  117. package/dist/{svelte-03aa9546.esm.js → svelte-00ac1b62.esm.js} +1 -1
  118. package/dist/{svelte-4fa7ff17.cjs.js → svelte-eaee6dea.cjs.js} +2 -2
  119. package/dist/{svelte-4fa7ff17.cjs.js.map → svelte-eaee6dea.cjs.js.map} +1 -1
  120. package/dist/tsconfig.tsbuildinfo +1 -1
  121. package/dist/{twig-78fca8e5.esm.js → twig-25cabcad.esm.js} +1 -1
  122. package/dist/{twig-585d978b.cjs.js → twig-ef3a2f8e.cjs.js} +2 -2
  123. package/dist/{twig-585d978b.cjs.js.map → twig-ef3a2f8e.cjs.js.map} +1 -1
  124. package/dist/{vue-29da39c3.esm.js → vue-711d75a4.esm.js} +1 -1
  125. package/dist/{vue-0e328a24.cjs.js → vue-d4c63178.cjs.js} +2 -2
  126. package/dist/{vue-0e328a24.cjs.js.map → vue-d4c63178.cjs.js.map} +1 -1
  127. package/dist/{vue-html-fa1c51e6.cjs.js → vue-html-13711be2.cjs.js} +2 -2
  128. package/dist/{vue-html-fa1c51e6.cjs.js.map → vue-html-13711be2.cjs.js.map} +1 -1
  129. package/dist/{vue-html-c781b090.esm.js → vue-html-b805e078.esm.js} +1 -1
  130. package/dist/{wikitext-4b6b7007.esm.js → wikitext-724303c6.esm.js} +1 -1
  131. package/dist/{wikitext-6feef894.cjs.js → wikitext-d4ad7e43.cjs.js} +2 -2
  132. package/dist/{wikitext-6feef894.cjs.js.map → wikitext-d4ad7e43.cjs.js.map} +1 -1
  133. package/package.json +1 -2
  134. package/src/nile-code-editor/nile-code-editor.ts +71 -65
  135. package/src/nile-menu/nile-menu.css.ts +22 -0
  136. package/src/nile-menu/nile-menu.ts +14 -3
  137. package/src/nile-select/nile-select.ts +13 -1
  138. package/src/nile-stepper/nile-stepper.ts +4 -4
  139. package/dist/julia-1cad9870.esm.js +0 -1
  140. package/dist/julia-b0cea839.cjs.js +0 -2
  141. package/dist/julia-b0cea839.cjs.js.map +0 -1
  142. package/dist/kotlin-6283300f.esm.js +0 -1
  143. package/dist/kotlin-a0fd9eaf.cjs.js +0 -2
  144. package/dist/kotlin-a0fd9eaf.cjs.js.map +0 -1
  145. package/dist/latex-90a1da91.cjs.js +0 -2
  146. package/dist/latex-90a1da91.cjs.js.map +0 -1
  147. package/dist/latex-9439b9a5.esm.js +0 -1
  148. package/dist/less-cab2de0f.cjs.js +0 -2
  149. package/dist/less-cab2de0f.cjs.js.map +0 -1
  150. package/dist/less-fa4eebf7.esm.js +0 -1
  151. package/dist/shellscript-ada948c5.cjs.js.map +0 -1
package/package.json CHANGED
@@ -3,7 +3,7 @@
3
3
  "description": "Webcomponent nile-elements following open-wc recommendations",
4
4
  "license": "MIT",
5
5
  "author": "nile-elements",
6
- "version": "0.0.92",
6
+ "version": "0.0.93",
7
7
  "main": "dist/src/index.js",
8
8
  "type": "module",
9
9
  "module": "dist/src/index.js",
@@ -137,7 +137,6 @@
137
137
  "glob": "^8.0.3",
138
138
  "husky": "^4.3.8",
139
139
  "lint-staged": "^10.5.4",
140
- "shiki": "1.11.1",
141
140
  "plop": "3.1.1",
142
141
  "prettier": "^2.4.1",
143
142
  "rollup": "^3.8.1",
@@ -13,11 +13,16 @@ import {
13
13
  TemplateResult,
14
14
  PropertyValueMap,
15
15
  } from 'lit-element';
16
+
16
17
  import { customElement, query } from 'lit/decorators.js';
17
18
  import { styles } from './nile-code-editor.css';
18
19
  import { EditorView } from 'codemirror';
19
20
  import { ViewUpdate } from '@codemirror/view';
20
- import { EditorState, Compartment } from '@codemirror/state';
21
+ import {
22
+ EditorState,
23
+ Compartment,
24
+ } from '@codemirror/state';
25
+
21
26
  import { lineNumbers } from '@codemirror/view';
22
27
  import {
23
28
  javascript,
@@ -48,27 +53,34 @@ export class NileCodeEditor extends NileElement {
48
53
 
49
54
  @query('.code-mirror') codeEditor: HTMLInputElement;
50
55
 
51
- @property({ type: String, reflect:false }) value = '';
56
+ @property({ type: String, reflect: true , attribute: true }) value = '';
57
+
58
+ @property({ type: String, reflect: true , attribute: true }) customAutoCompletions: any = {};
52
59
 
53
- @property({ type: String }) customAutoCompletions: any = {};
60
+ @property({ type: String, reflect: true , attribute: true}) language: 'javascript' | 'sql' = 'javascript'
54
61
 
55
- @property({ type: String }) language: 'javascript' | 'sql' = 'javascript'
62
+ @property({ type: String, reflect: true , attribute: 'error-message' }) errorMessage: string = '';
56
63
 
57
- @property({ attribute: 'error-message' }) errorMessage: string = '';
64
+ @property({ type: Boolean, reflect: true , attribute: 'error' }) error: boolean = false;
58
65
 
59
- @property({ attribute: 'error', type: Boolean }) error: boolean = false;
66
+ @property({ type: Boolean, reflect: true , attribute: 'noborder' }) noborder: boolean = false;
60
67
 
61
- @property({ attribute: 'noborder', type: Boolean }) noborder: boolean = false;
68
+ @property({ type: Boolean, reflect: true , attribute: true }) multiline: boolean = false;
62
69
 
63
- @property({ type: Boolean, reflect: true }) multiline: boolean = false;
70
+ @property({ type: Boolean, reflect: true , attribute: true }) lineNumbers: boolean = false;
64
71
 
65
- @property({ type: Boolean, reflect: true }) lineNumbers: boolean = false;
72
+ @property({ type: Boolean, reflect: true , attribute: true }) hasScroller: boolean = true;
66
73
 
67
- @property({ type: Boolean, reflect: true }) hasScroller: boolean = true;
74
+ @property({ type: Boolean, reflect: true , attribute: true }) expandable: boolean = true;
68
75
 
69
- @property({ type: Boolean }) expandable: boolean = true;
76
+ @property({ type: Boolean, reflect: true , attribute: true}) readonly: boolean = false;
70
77
 
71
- @property({ type: Boolean, reflect: true }) readonly: boolean = false;
78
+ public view: EditorView;
79
+
80
+ // Compartments for initialiazing and switching extensions
81
+ private lineNumbersComp = new Compartment();
82
+ private restrictSingleLineComp = new Compartment();
83
+ private readOnlyComp = new Compartment();
72
84
 
73
85
  /**
74
86
  * The styles for CodeEditor
@@ -89,33 +101,6 @@ export class NileCodeEditor extends NileElement {
89
101
  this.emit('nile-destroy');
90
102
  }
91
103
 
92
- public view: EditorView;
93
-
94
- convertToSingleLine(code: any) {
95
- if (!code) return '';
96
- // Remove line breaks and unnecessary whitespace
97
- return code.replace(/\s+/g, ' ').trim();
98
- }
99
-
100
- // Compartments for initialiazing and switching extensions
101
- private lineNumbersComp = new Compartment();
102
- private restrictSingleLineComp = new Compartment();
103
- private readOnlyComp = new Compartment();
104
-
105
- getLineNumbersExension() {
106
- return this.lineNumbers || this.multiline ? lineNumbers() : [];
107
- }
108
-
109
- getReadOnlyExtension() {
110
- return EditorState.readOnly.of(this.readonly);
111
- }
112
-
113
- getSingleLineExtension() {
114
- return !this.multiline ? EditorState.transactionFilter.of(tr =>
115
- tr.newDoc.lines > 1 ? [] : tr
116
- ) : [];
117
- }
118
-
119
104
  firstUpdated() {
120
105
  const lineNumbersExtension = this.lineNumbersComp.of(this.getLineNumbersExension());
121
106
  const readOnlyExtension = this.readOnlyComp.of(this.getReadOnlyExtension());
@@ -125,9 +110,7 @@ export class NileCodeEditor extends NileElement {
125
110
  });
126
111
  const language = this.language == "sql" ? sql() : javascript()
127
112
  let startState = EditorState.create({
128
- doc: !this.multiline
129
- ? this.convertToSingleLine(this.value)
130
- : this.value,
113
+ doc: !this.multiline ? this.convertToSingleLine(this.value) : this.value,
131
114
  extensions: [
132
115
  basicSetup({
133
116
  lineNumbers: this.lineNumbers || this.multiline,
@@ -157,24 +140,13 @@ export class NileCodeEditor extends NileElement {
157
140
  state: startState,
158
141
  parent: this.codeEditor
159
142
  });
160
- this.emit('nile-view-initialized',{codeMirrorInstance:this.view})
161
- }
162
143
 
163
- singleLineMultiLineToggle() {
164
- this.view.dispatch({
165
- changes: {
166
- from: 0,
167
- to: this.view.state.doc.length,
168
- insert: !this.multiline
169
- ? this.convertToSingleLine(this.value)
170
- : this.value,
171
- },
172
- });
144
+ this.emit('nile-after-init',{ codeMirrorInstance: this.view } )
173
145
  }
174
146
 
175
147
  protected updated(changedProperties: PropertyValueMap<any> | Map<PropertyKey, unknown>): void{
176
148
  super.updated(changedProperties);
177
- if (changedProperties.has('value')) {
149
+ if (changedProperties.has('value') && this.view.state.doc.toString()!=this.value) {
178
150
  // Editor has already been initialized, update its state
179
151
  this.singleLineMultiLineToggle();
180
152
  }
@@ -203,15 +175,6 @@ export class NileCodeEditor extends NileElement {
203
175
  }
204
176
  }
205
177
 
206
- expandCodeEditor() {
207
- this.emit('nile-expand', { expand: true });
208
- }
209
-
210
- restrictSingleLine() {
211
- return EditorState.transactionFilter.of(tr =>
212
- tr.newDoc.lines > 1 ? [] : tr
213
- );
214
- }
215
178
  public render(): TemplateResult {
216
179
  const hasErrorMessage = !!this.errorMessage;
217
180
  const hasError = !!this.error;
@@ -234,7 +197,7 @@ export class NileCodeEditor extends NileElement {
234
197
  class="code-editor__icon__container"
235
198
  size="16"
236
199
  color="black"
237
- @click="${(e: CustomEvent) => this.expandCodeEditor()}"
200
+ @click="${(e: CustomEvent) => this.emitNileExpand()}"
238
201
  ></nile-icon>`
239
202
  : ''}
240
203
  </div>
@@ -247,6 +210,49 @@ export class NileCodeEditor extends NileElement {
247
210
  : ``}`;
248
211
  }
249
212
 
213
+ singleLineMultiLineToggle() {
214
+ this.view.dispatch({
215
+ changes: {
216
+ from: 0,
217
+ to: this.view.state.doc.length,
218
+ insert: !this.multiline
219
+ ? this.convertToSingleLine(this.value)
220
+ : this.value,
221
+ },
222
+ });
223
+ }
224
+
225
+ convertToSingleLine(code: any) {
226
+ if (!code) return '';
227
+ // Remove line breaks and unnecessary whitespace
228
+ return code.replace(/\s+/g, ' ').trim();
229
+ }
230
+
231
+ //EXTENSION CONFIGURATIONS
232
+ getLineNumbersExension() {
233
+ return this.lineNumbers || this.multiline ? lineNumbers() : [];
234
+ }
235
+
236
+ getReadOnlyExtension() {
237
+ return EditorState.readOnly.of(this.readonly);
238
+ }
239
+
240
+ getSingleLineExtension() {
241
+ return !this.multiline ? EditorState.transactionFilter.of(tr =>
242
+ tr.newDoc.lines > 1 ? [] : tr
243
+ ) : [];
244
+ }
245
+
246
+ restrictSingleLine() {
247
+ return EditorState.transactionFilter.of(tr =>
248
+ tr.newDoc.lines > 1 ? [] : tr
249
+ );
250
+ }
251
+
252
+ emitNileExpand() {
253
+ this.emit('nile-expand', { expand: true });
254
+ }
255
+
250
256
  /* #endregion */
251
257
  }
252
258
 
@@ -44,6 +44,28 @@ export const styles = css`
44
44
  ::slotted(nile-divider) {
45
45
  --spacing: 0.5rem;
46
46
  }
47
+
48
+ .menu__footer {
49
+ display: flex;
50
+ border-radius: var(--nile-radius-radius-sm);
51
+ align-items: stretch;
52
+ font-size: 1rem;
53
+ font-weight: var(--nile-font-weight-regular);
54
+ line-height: 180%;
55
+ letter-spacing: normal;
56
+ color: var(--nile-colors-primary-600);
57
+ min-height: 40px;
58
+ transition: 150ms fill;
59
+ user-select: none;
60
+ white-space: nowrap;
61
+ cursor: pointer;
62
+ padding: 0 var(--nile-spacing-spacing-xl);
63
+ margin: auto 0;
64
+ }
65
+
66
+ .menu__footer:hover {
67
+ background-color:var(--nile-menu-item-background-color);
68
+ }
47
69
  `;
48
70
 
49
71
  export default [styles];
@@ -6,6 +6,7 @@ import NileElement from '../internal/nile-element';
6
6
  import type { CSSResultGroup } from 'lit';
7
7
  import type NileMenuItem from '../nile-menu-item/nile-menu-item';
8
8
  import { styles } from './nile-menu.css';
9
+ import { HasSlotController } from '../internal/slot';
9
10
 
10
11
  /**
11
12
  * An nile-menu element.
@@ -34,6 +35,12 @@ export class NileMenu extends NileElement {
34
35
 
35
36
  @query('slot:not([name])') defaultSlot!: HTMLSlotElement;
36
37
 
38
+ private readonly hasSlotController = new HasSlotController(
39
+ this,
40
+ 'menu__footer',
41
+ 'menu__header'
42
+ );
43
+
37
44
  connectedCallback() {
38
45
  super.connectedCallback();
39
46
  this.setAttribute('role', 'menu');
@@ -195,9 +202,6 @@ export class NileMenu extends NileElement {
195
202
  ? html`<div class="search__wrapper" part="search__wrapper">
196
203
  <nile-input
197
204
  size="medium"
198
- style=${this.searchWidth
199
- ? `width: ${this.searchWidth}px;`
200
- : 'width: 100%;'}
201
205
  .value=${this.searchValue}
202
206
  placeholder="Search..."
203
207
  @nile-input=${this.handleSearchChange}
@@ -227,6 +231,13 @@ export class NileMenu extends NileElement {
227
231
  @keydown=${this.handleKeyDown}
228
232
  @mousedown=${this.handleMouseDown}
229
233
  ></slot>
234
+ ${this.hasSlotController.test('menu__footer')
235
+ ? html` <slot
236
+ part="menu__footer"
237
+ name="menu__footer"
238
+ class="menu__footer"
239
+ ></slot>`
240
+ : null}
230
241
  </div>
231
242
  `;
232
243
  }
@@ -233,6 +233,8 @@ export class NileSelect extends NileElement implements NileFormControl {
233
233
 
234
234
  @property({ type: String }) noResultsMessage: string = 'No results found';
235
235
 
236
+ @state() hiddenItems: any = [];
237
+
236
238
  /** Gets the validity state object */
237
239
  get validity() {
238
240
  return this.valueInput?.validity;
@@ -315,8 +317,10 @@ export class NileSelect extends NileElement implements NileFormControl {
315
317
 
316
318
  // Hide unselected options if showSelected is true
317
319
  const allOptions = this.getAllOptions();
320
+ this.hiddenItems = [];
318
321
  allOptions.forEach(el => {
319
322
  if (!el.selected) {
323
+ this.hiddenItems.push(el.value);
320
324
  el.hidden = this.showSelected;
321
325
  }
322
326
  });
@@ -535,6 +539,10 @@ export class NileSelect extends NileElement implements NileFormControl {
535
539
  const target = event.target as HTMLElement;
536
540
  const option = target.closest('nile-option');
537
541
 
542
+ if(this.hiddenItems.includes(option?.value)){
543
+ return;
544
+ }
545
+
538
546
  if (this.blockValueChange && option) {
539
547
  this.emit('nile-block-change', { value: option?.value, name: this.name });
540
548
  this.hide();
@@ -615,7 +623,7 @@ export class NileSelect extends NileElement implements NileFormControl {
615
623
  el.hidden = this.showSelected;
616
624
  }
617
625
  });
618
-
626
+
619
627
  // Emit after updating
620
628
  this.updateComplete.then(() => {
621
629
  this.emit('nile-input', { value: this.value, name: this.name });
@@ -751,9 +759,12 @@ export class NileSelect extends NileElement implements NileFormControl {
751
759
  if (this.selectedOptions.length === 0) {
752
760
  this.showSelected = false;
753
761
  const allOptions = this.getAllOptions();
762
+ this.hiddenItems = [];
754
763
  allOptions.forEach(el => {
755
764
  if (!el.selected) {
756
765
  el.hidden = this.showSelected;
766
+ } else {
767
+ this.hiddenItems.push(el.value);
757
768
  }
758
769
  });
759
770
 
@@ -876,6 +887,7 @@ export class NileSelect extends NileElement implements NileFormControl {
876
887
  } else {
877
888
  // Hide
878
889
  this.emit('nile-hide', { value: this.value, name: this.name });
890
+ this.showSelected = false;
879
891
  this.searchValue = '';
880
892
  this.filterOptions(this.searchValue);
881
893
  this.removeOpenListeners();
@@ -23,10 +23,10 @@ import { classMap } from 'lit/directives/class-map.js';
23
23
  export class NileStepper extends NileElement {
24
24
 
25
25
  @property({ type: Boolean, attribute: 'vertical' }) isVertical: boolean = false;
26
- @property({ type: Boolean, attribute: 'content-below' }) contentBelow: boolean = false;
27
- @property({ type: Number, attribute: 'current-step' }) currentStep: number = 0;
28
- @property({ type: Number, attribute: 'completed-step' }) completedStep: number = 0;
29
- @property({ type: String, attribute: 'size' }) size: 'sm' | 'md' | 'lg' = 'md';
26
+ @property({ type: Boolean, attribute: 'content-below', reflect:true }) contentBelow: boolean = false;
27
+ @property({ type: Number, attribute: 'currentStep', reflect:true }) currentStep: number = 0;
28
+ @property({ type: Number, attribute: 'completedStep', reflect:true }) completedStep: number = 0;
29
+ @property({ type: String, attribute: 'size', reflect:true }) size: 'sm' | 'md' | 'lg' = 'md';
30
30
  @property() icon: string = 'tick';
31
31
 
32
32
  connectedCallback() {
@@ -1 +0,0 @@
1
- import e from"./cpp-f55a9d05.esm.js";import n from"./python-5fff859f.esm.js";import t from"./javascript-135b50c5.esm.js";import a from"./r-5c773de0.esm.js";import i from"./sql-1872dc46.esm.js";import"./regexp-1330402b.esm.js";import"./glsl-fc3df368.esm.js";import"./c-734959e1.esm.js";var o=[...e,...n,...t,...a,...i,Object.freeze({displayName:"Julia",name:"julia",patterns:[{include:"#operator"},{include:"#array"},{include:"#string"},{include:"#parentheses"},{include:"#bracket"},{include:"#function_decl"},{include:"#function_call"},{include:"#for_block"},{include:"#keyword"},{include:"#number"},{include:"#comment"},{include:"#type_decl"},{include:"#symbol"},{include:"#punctuation"}],repository:{array:{patterns:[{begin:"\\[",beginCaptures:{0:{name:"meta.bracket.julia"}},end:"(\\])((?:\\.)?'*)",endCaptures:{1:{name:"meta.bracket.julia"},2:{name:"keyword.operator.transpose.julia"}},name:"meta.array.julia",patterns:[{match:"\\bbegin\\b",name:"constant.numeric.julia"},{match:"\\bend\\b",name:"constant.numeric.julia"},{include:"#self_no_for_block"}]}]},bracket:{patterns:[{begin:"\\{",beginCaptures:{0:{name:"meta.bracket.julia"}},end:"(\\})((?:\\.)?'*)",endCaptures:{1:{name:"meta.bracket.julia"},2:{name:"keyword.operator.transpose.julia"}},patterns:[{include:"#self_no_for_block"}]}]},comment:{patterns:[{include:"#comment_block"},{begin:"#",beginCaptures:{0:{name:"punctuation.definition.comment.julia"}},end:"\\n",name:"comment.line.number-sign.julia",patterns:[{include:"#comment_tags"}]}]},comment_block:{patterns:[{begin:"#=",beginCaptures:{0:{name:"punctuation.definition.comment.begin.julia"}},end:"=#",endCaptures:{0:{name:"punctuation.definition.comment.end.julia"}},name:"comment.block.number-sign-equals.julia",patterns:[{include:"#comment_tags"},{include:"#comment_block"}]}]},comment_tags:{patterns:[{match:"\\bTODO\\b",name:"keyword.other.comment-annotation.julia"},{match:"\\bFIXME\\b",name:"keyword.other.comment-annotation.julia"},{match:"\\bCHANGED\\b",name:"keyword.other.comment-annotation.julia"},{match:"\\bXXX\\b",name:"keyword.other.comment-annotation.julia"}]},for_block:{comment:"for blocks need to be special-cased to support tokenizing 'outer' properly",patterns:[{begin:"\\b(for)\\b",beginCaptures:{0:{name:"keyword.control.julia"}},end:"(?<!,|\\s)(\\s*\\n)",patterns:[{match:"\\bouter\\b",name:"keyword.other.julia"},{include:"$self"}]}]},function_call:{patterns:[{begin:"((?:[[:alpha:]_\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{So}←-⇿])(?:[[:word:]_!\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{Mn}-¡]|[^\\P{Mc}-¡]|[^\\P{Nd}-¡]|[^\\P{Pc}-¡]|[^\\P{Sk}-¡]|[^\\P{Me}-¡]|[^\\P{No}-¡]|[′-‷⁗]|[^\\P{So}←-⇿])*)({(?:[^{}]|{(?:[^{}]|{[^{}]*})*})*})?\\.?(\\()",beginCaptures:{1:{name:"support.function.julia"},2:{name:"support.type.julia"},3:{name:"meta.bracket.julia"}},end:"\\)(('|(\\.'))*\\.?')?",endCaptures:{0:{name:"meta.bracket.julia"},1:{name:"keyword.operator.transposed-func.julia"}},patterns:[{include:"#self_no_for_block"}]}]},function_decl:{patterns:[{captures:{1:{name:"entity.name.function.julia"},2:{name:"support.type.julia"}},comment:"first group is function name\nSecond group is type parameters (e.g. {T<:Number, S})\nThen open parens\nThen a lookahead ensures that we are followed by:\n - anything (function arguments)\n - 0 or more spaces\n - Finally an equal sign\nNegative lookahead ensures we don't have another equal sign (not `==`)",match:"((?:[[:alpha:]_\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{So}←-⇿])(?:[[:word:]_!\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{Mn}-¡]|[^\\P{Mc}-¡]|[^\\P{Nd}-¡]|[^\\P{Pc}-¡]|[^\\P{Sk}-¡]|[^\\P{Me}-¡]|[^\\P{No}-¡]|[′-‷⁗]|[^\\P{So}←-⇿])*)({(?:[^{}]|{(?:[^{}]|{[^{}]*})*})*})?(?=\\([^#]*\\)(::[^\\s]+)?(\\s*\\bwhere\\b\\s+.+?)?\\s*?=(?![=>]))"},{captures:{1:{name:"keyword.other.julia"},2:{name:"keyword.operator.dots.julia"},3:{name:"entity.name.function.julia"},4:{name:"support.type.julia"}},comment:"similar regex to previous, but with keyword not 1-line syntax",match:"\\b(function|macro)(?:\\s+(?:(?:[[:alpha:]_\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{So}←-⇿])(?:[[:word:]_!\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{Mn}-¡]|[^\\P{Mc}-¡]|[^\\P{Nd}-¡]|[^\\P{Pc}-¡]|[^\\P{Sk}-¡]|[^\\P{Me}-¡]|[^\\P{No}-¡]|[′-‷⁗]|[^\\P{So}←-⇿])*(\\.))?((?:[[:alpha:]_\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{So}←-⇿])(?:[[:word:]_!\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{Mn}-¡]|[^\\P{Mc}-¡]|[^\\P{Nd}-¡]|[^\\P{Pc}-¡]|[^\\P{Sk}-¡]|[^\\P{Me}-¡]|[^\\P{No}-¡]|[′-‷⁗]|[^\\P{So}←-⇿])*)({(?:[^{}]|{(?:[^{}]|{[^{}]*})*})*})?|\\s*)(?=\\()"}]},keyword:{patterns:[{match:"\\b(?<![:_\\.])(?:function|mutable\\s+struct|struct|macro|quote|abstract\\s+type|primitive\\s+type|module|baremodule|where)\\b",name:"keyword.other.julia"},{match:"\\b(?<![:_])(?:if|else|elseif|for|while|begin|let|do|try|catch|finally|return|break|continue)\\b",name:"keyword.control.julia"},{match:"\\b(?<![:_])end\\b",name:"keyword.control.end.julia"},{match:"\\b(?<![:_])(?:global|local|const)\\b",name:"keyword.storage.modifier.julia"},{match:"\\b(?<![:_])(?:export)\\b",name:"keyword.control.export.julia"},{match:"^(?:public)\\b",name:"keyword.control.public.julia"},{match:"\\b(?<![:_])(?:import)\\b",name:"keyword.control.import.julia"},{match:"\\b(?<![:_])(?:using)\\b",name:"keyword.control.using.julia"},{match:"(?<=\\w\\s)\\b(as)\\b(?=\\s\\w)",name:"keyword.control.as.julia"},{match:"(@(\\.|(?:[[:alpha:]_\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{So}←-⇿])(?:[[:word:]_!\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{Mn}-¡]|[^\\P{Mc}-¡]|[^\\P{Nd}-¡]|[^\\P{Pc}-¡]|[^\\P{Sk}-¡]|[^\\P{Me}-¡]|[^\\P{No}-¡]|[′-‷⁗]|[^\\P{So}←-⇿])*))",name:"support.function.macro.julia"}]},number:{patterns:[{captures:{1:{name:"constant.numeric.julia"},2:{name:"keyword.operator.conjugate-number.julia"}},match:"((?<!(?:[[:word:]_!\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{Mn}-¡]|[^\\P{Mc}-¡]|[^\\P{Nd}-¡]|[^\\P{Pc}-¡]|[^\\P{Sk}-¡]|[^\\P{Me}-¡]|[^\\P{No}-¡]|[′-‷⁗]|[^\\P{So}←-⇿]))(?:(?:\\b0(?:x|X)[0-9a-fA-F](?:_?[0-9a-fA-F])*)|(?:\\b0o[0-7](?:_?[0-7])*)|(?:\\b0b[0-1](?:_?[0-1])*)|(?:(?:\\b[0-9](?:_?[0-9])*\\.?(?!\\.)(?:[_0-9]*))|(?:\\b\\.[0-9](?:_?[0-9])*))(?:[efE][+-]?[0-9](?:_?[0-9])*)?(?:im\\b|Inf(?:16|32|64)?\\b|NaN(?:16|32|64)?\\b|π\\b|pi\\b|ℯ\\b)?|\\b[0-9]+|\\bInf(?:16|32|64)?\\b|\\bNaN(?:16|32|64)?\\b|\\bπ\\b|\\bpi\\b|\\bℯ\\b))('*)"},{match:"\\bARGS\\b|\\bC_NULL\\b|\\bDEPOT_PATH\\b|\\bENDIAN_BOM\\b|\\bENV\\b|\\bLOAD_PATH\\b|\\bPROGRAM_FILE\\b|\\bstdin\\b|\\bstdout\\b|\\bstderr\\b|\\bVERSION\\b|\\bdevnull\\b",name:"constant.global.julia"},{match:"\\btrue\\b|\\bfalse\\b|\\bnothing\\b|\\bmissing\\b",name:"constant.language.julia"}]},operator:{patterns:[{match:"\\.?(?:<--\x3e|->|--\x3e|<--|←|→|↔|↚|↛|↞|↠|↢|↣|↦|↤|↮|⇎|⇍|⇏|⇐|⇒|⇔|⇴|⇶|⇷|⇸|⇹|⇺|⇻|⇼|⇽|⇾|⇿|⟵|⟶|⟷|⟹|⟺|⟻|⟼|⟽|⟾|⟿|⤀|⤁|⤂|⤃|⤄|⤅|⤆|⤇|⤌|⤍|⤎|⤏|⤐|⤑|⤔|⤕|⤖|⤗|⤘|⤝|⤞|⤟|⤠|⥄|⥅|⥆|⥇|⥈|⥊|⥋|⥎|⥐|⥒|⥓|⥖|⥗|⥚|⥛|⥞|⥟|⥢|⥤|⥦|⥧|⥨|⥩|⥪|⥫|⥬|⥭|⥰|⧴|⬱|⬰|⬲|⬳|⬴|⬵|⬶|⬷|⬸|⬹|⬺|⬻|⬼|⬽|⬾|⬿|⭀|⭁|⭂|⭃|⥷|⭄|⥺|⭇|⭈|⭉|⭊|⭋|⭌|←|→|⇜|⇝|↜|↝|↩|↪|↫|↬|↼|↽|⇀|⇁|⇄|⇆|⇇|⇉|⇋|⇌|⇚|⇛|⇠|⇢|↷|↶|↺|↻|=>)",name:"keyword.operator.arrow.julia"},{match:"(?::=|\\+=|-=|\\*=|//=|/=|\\.//=|\\./=|\\.\\*=|\\\\=|\\.\\\\=|\\^=|\\.\\^=|%=|\\.%=|÷=|\\.÷=|\\|=|&=|\\.&=|⊻=|\\.⊻=|\\$=|<<=|>>=|>>>=|=(?!=))",name:"keyword.operator.update.julia"},{match:"(?:<<|>>>|>>|\\.>>>|\\.>>|\\.<<)",name:"keyword.operator.shift.julia"},{captures:{1:{name:"keyword.operator.relation.types.julia"},2:{name:"support.type.julia"},3:{name:"keyword.operator.transpose.julia"}},match:'(?:\\s*(::|>:|<:)\\s*((?:(?:Union)?\\([^)]*\\)|[[:alpha:]_$∇][[:word:]⁺-ₜ!′\\.]*(?:(?:{(?:[^{}]|{(?:[^{}]|{[^{}]*})*})*})|(?:".+?(?<!\\\\)"))?)))(?:\\.\\.\\.)?((?:\\.)?\'*)'},{match:"(\\.?((?<!<)<=|(?<!>)>=|>|<|≥|≤|===|==|≡|!=|≠|!==|≢|∈|∉|∋|∌|⊆|⊈|⊂|⊄|⊊|∝|∊|∍|∥|∦|∷|∺|∻|∽|∾|≁|≃|≂|≄|≅|≆|≇|≈|≉|≊|≋|≌|≍|≎|≐|≑|≒|≓|≖|≗|≘|≙|≚|≛|≜|≝|≞|≟|≣|≦|≧|≨|≩|≪|≫|≬|≭|≮|≯|≰|≱|≲|≳|≴|≵|≶|≷|≸|≹|≺|≻|≼|≽|≾|≿|⊀|⊁|⊃|⊅|⊇|⊉|⊋|⊏|⊐|⊑|⊒|⊜|⊩|⊬|⊮|⊰|⊱|⊲|⊳|⊴|⊵|⊶|⊷|⋍|⋐|⋑|⋕|⋖|⋗|⋘|⋙|⋚|⋛|⋜|⋝|⋞|⋟|⋠|⋡|⋢|⋣|⋤|⋥|⋦|⋧|⋨|⋩|⋪|⋫|⋬|⋭|⋲|⋳|⋴|⋵|⋶|⋷|⋸|⋹|⋺|⋻|⋼|⋽|⋾|⋿|⟈|⟉|⟒|⦷|⧀|⧁|⧡|⧣|⧤|⧥|⩦|⩧|⩪|⩫|⩬|⩭|⩮|⩯|⩰|⩱|⩲|⩳|⩵|⩶|⩷|⩸|⩹|⩺|⩻|⩼|⩽|⩾|⩿|⪀|⪁|⪂|⪃|⪄|⪅|⪆|⪇|⪈|⪉|⪊|⪋|⪌|⪍|⪎|⪏|⪐|⪑|⪒|⪓|⪔|⪕|⪖|⪗|⪘|⪙|⪚|⪛|⪜|⪝|⪞|⪟|⪠|⪡|⪢|⪣|⪤|⪥|⪦|⪧|⪨|⪩|⪪|⪫|⪬|⪭|⪮|⪯|⪰|⪱|⪲|⪳|⪴|⪵|⪶|⪷|⪸|⪹|⪺|⪻|⪼|⪽|⪾|⪿|⫀|⫁|⫂|⫃|⫄|⫅|⫆|⫇|⫈|⫉|⫊|⫋|⫌|⫍|⫎|⫏|⫐|⫑|⫒|⫓|⫔|⫕|⫖|⫗|⫘|⫙|⫷|⫸|⫹|⫺|⊢|⊣|⟂|⫪|⫫|<:|>:))",name:"keyword.operator.relation.julia"},{match:"(?<=\\s)(?:\\?)(?=\\s)",name:"keyword.operator.ternary.julia"},{match:"(?<=\\s)(?:\\:)(?=\\s)",name:"keyword.operator.ternary.julia"},{match:"(?:\\|\\||&&|(?<!(?:[[:word:]_!\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{Mn}-¡]|[^\\P{Mc}-¡]|[^\\P{Nd}-¡]|[^\\P{Pc}-¡]|[^\\P{Sk}-¡]|[^\\P{Me}-¡]|[^\\P{No}-¡]|[′-‷⁗]|[^\\P{So}←-⇿]))!)",name:"keyword.operator.boolean.julia"},{match:"(?<=[[:word:]⁺-ₜ!′∇\\)\\]\\}])(?::)",name:"keyword.operator.range.julia"},{match:"(?:\\|>)",name:"keyword.operator.applies.julia"},{match:"(?:\\||\\.\\||\\&|\\.\\&|~|¬|\\.~|⊻|\\.⊻)",name:"keyword.operator.bitwise.julia"},{match:"\\.?(?:\\+\\+|\\-\\-|\\+|\\-|−|¦|\\||⊕|⊖|⊞|⊟|∪|∨|⊔|±|∓|∔|∸|≏|⊎|⊻|⊽|⋎|⋓|⟇|⧺|⧻|⨈|⨢|⨣|⨤|⨥|⨦|⨧|⨨|⨩|⨪|⨫|⨬|⨭|⨮|⨹|⨺|⩁|⩂|⩅|⩊|⩌|⩏|⩐|⩒|⩔|⩖|⩗|⩛|⩝|⩡|⩢|⩣|\\*|//?|⌿|÷|%|&|·|·|⋅|∘|×|\\\\|∩|∧|⊗|⊘|⊙|⊚|⊛|⊠|⊡|⊓|∗|∙|∤|⅋|≀|⊼|⋄|⋆|⋇|⋉|⋊|⋋|⋌|⋏|⋒|⟑|⦸|⦼|⦾|⦿|⧶|⧷|⨇|⨰|⨱|⨲|⨳|⨴|⨵|⨶|⨷|⨸|⨻|⨼|⨽|⩀|⩃|⩄|⩋|⩍|⩎|⩑|⩓|⩕|⩘|⩚|⩜|⩞|⩟|⩠|⫛|⊍|▷|⨝|⟕|⟖|⟗|⨟|\\^|↑|↓|⇵|⟰|⟱|⤈|⤉|⤊|⤋|⤒|⤓|⥉|⥌|⥍|⥏|⥑|⥔|⥕|⥘|⥙|⥜|⥝|⥠|⥡|⥣|⥥|⥮|⥯|↑|↓|√|∛|∜|⋆|±|∓)",name:"keyword.operator.arithmetic.julia"},{match:"(?:∘)",name:"keyword.operator.compose.julia"},{match:"(?:::|(?<=\\s)isa(?=\\s))",name:"keyword.operator.isa.julia"},{match:"(?:(?<=\\s)in(?=\\s))",name:"keyword.operator.relation.in.julia"},{match:"(?:\\.(?=(?:@|_|\\p{L}))|\\.\\.+|…|⁝|⋮|⋱|⋰|⋯)",name:"keyword.operator.dots.julia"},{match:"(?:\\$)(?=.+)",name:"keyword.operator.interpolation.julia"},{captures:{2:{name:"keyword.operator.transposed-variable.julia"}},match:"((?:[[:alpha:]_\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{So}←-⇿])(?:[[:word:]_!\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{Mn}-¡]|[^\\P{Mc}-¡]|[^\\P{Nd}-¡]|[^\\P{Pc}-¡]|[^\\P{Sk}-¡]|[^\\P{Me}-¡]|[^\\P{No}-¡]|[′-‷⁗]|[^\\P{So}←-⇿])*)(('|(\\.'))*\\.?')"},{captures:{1:{name:"bracket.end.julia"},2:{name:"keyword.operator.transposed-matrix.julia"}},match:"(\\])((?:'|(?:\\.'))*\\.?')"},{captures:{1:{name:"bracket.end.julia"},2:{name:"keyword.operator.transposed-parens.julia"}},match:"(\\))((?:'|(?:\\.'))*\\.?')"}]},parentheses:{patterns:[{begin:"\\(",beginCaptures:{0:{name:"meta.bracket.julia"}},end:"(\\))((?:\\.)?'*)",endCaptures:{1:{name:"meta.bracket.julia"},2:{name:"keyword.operator.transpose.julia"}},patterns:[{include:"#self_no_for_block"}]}]},punctuation:{patterns:[{match:",",name:"punctuation.separator.comma.julia"},{match:";",name:"punctuation.separator.semicolon.julia"}]},self_no_for_block:{comment:"Same as $self, but does not contain #for_block. 'outer' is not valid in some contexts (e.g. generators, comprehensions, indexing), so use this when matching those in begin/end patterns. Keep this up-to-date with $self!",patterns:[{include:"#operator"},{include:"#array"},{include:"#string"},{include:"#parentheses"},{include:"#bracket"},{include:"#function_decl"},{include:"#function_call"},{include:"#keyword"},{include:"#number"},{include:"#comment"},{include:"#type_decl"},{include:"#symbol"},{include:"#punctuation"}]},string:{patterns:[{begin:'(?:(@doc)\\s((?:doc)?""")|(doc"""))',beginCaptures:{1:{name:"support.function.macro.julia"},2:{name:"punctuation.definition.string.begin.julia"}},end:'(""") ?(->)?',endCaptures:{1:{name:"punctuation.definition.string.end.julia"},2:{name:"keyword.operator.arrow.julia"}},name:"string.docstring.julia",patterns:[{include:"#string_escaped_char"},{include:"#string_dollar_sign_interpolate"}]},{begin:'(i?cxx)(""")',beginCaptures:{1:{name:"support.function.macro.julia"},2:{name:"punctuation.definition.string.begin.julia"}},contentName:"meta.embedded.inline.cpp",end:'"""',endCaptures:{0:{name:"punctuation.definition.string.end.julia"}},name:"embed.cxx.julia",patterns:[{include:"source.cpp#root_context"},{include:"#string_dollar_sign_interpolate"}]},{begin:'(py)(""")',beginCaptures:{1:{name:"support.function.macro.julia"},2:{name:"punctuation.definition.string.begin.julia"}},contentName:"meta.embedded.inline.python",end:'([\\s\\w]*)(""")',endCaptures:{2:{name:"punctuation.definition.string.end.julia"}},name:"embed.python.julia",patterns:[{include:"source.python"},{include:"#string_dollar_sign_interpolate"}]},{begin:'(js)(""")',beginCaptures:{1:{name:"support.function.macro.julia"},2:{name:"punctuation.definition.string.begin.julia"}},contentName:"meta.embedded.inline.javascript",end:'"""',endCaptures:{0:{name:"punctuation.definition.string.end.julia"}},name:"embed.js.julia",patterns:[{include:"source.js"},{include:"#string_dollar_sign_interpolate"}]},{begin:'(R)(""")',beginCaptures:{1:{name:"support.function.macro.julia"},2:{name:"punctuation.definition.string.begin.julia"}},contentName:"meta.embedded.inline.r",end:'"""',endCaptures:{0:{name:"punctuation.definition.string.end.julia"}},name:"embed.R.julia",patterns:[{include:"source.r"},{include:"#string_dollar_sign_interpolate"}]},{begin:'(raw)(""")',beginCaptures:{1:{name:"support.function.macro.julia"},2:{name:"punctuation.definition.string.begin.julia"}},end:'"""',endCaptures:{0:{name:"punctuation.definition.string.end.julia"}},name:"string.quoted.other.julia",patterns:[{include:"#string_escaped_char"}]},{begin:'(raw)(")',beginCaptures:{1:{name:"support.function.macro.julia"},2:{name:"punctuation.definition.string.begin.julia"}},end:'"',endCaptures:{0:{name:"punctuation.definition.string.end.julia"}},name:"string.quoted.other.julia",patterns:[{include:"#string_escaped_char"}]},{begin:'(sql)(""")',beginCaptures:{1:{name:"support.function.macro.julia"},2:{name:"punctuation.definition.string.begin.julia"}},contentName:"meta.embedded.inline.sql",end:'"""',endCaptures:{0:{name:"punctuation.definition.string.end.julia"}},name:"embed.sql.julia",patterns:[{include:"source.sql"},{include:"#string_dollar_sign_interpolate"}]},{begin:'var"""',end:'"""',name:"constant.other.symbol.julia",patterns:[{include:"#string_escaped_char"}]},{begin:'var"',end:'"',name:"constant.other.symbol.julia",patterns:[{include:"#string_escaped_char"}]},{begin:'^\\s?(doc)?(""")\\s?$',beginCaptures:{1:{name:"support.function.macro.julia"},2:{name:"punctuation.definition.string.begin.julia"}},comment:"This only matches docstrings that start and end with triple quotes on\ntheir own line in the void",end:'(""")',endCaptures:{1:{name:"punctuation.definition.string.end.julia"}},name:"string.docstring.julia",patterns:[{include:"#string_escaped_char"},{include:"#string_dollar_sign_interpolate"}]},{begin:"'",beginCaptures:{0:{name:"punctuation.definition.string.begin.julia"}},end:"'(?!')",endCaptures:{0:{name:"punctuation.definition.string.end.julia"}},name:"string.quoted.single.julia",patterns:[{include:"#string_escaped_char"}]},{begin:'"""',beginCaptures:{0:{name:"punctuation.definition.string.multiline.begin.julia"}},comment:"multi-line string with triple double quotes",end:'"""',endCaptures:{0:{name:"punctuation.definition.string.multiline.end.julia"}},name:"string.quoted.triple.double.julia",patterns:[{include:"#string_escaped_char"},{include:"#string_dollar_sign_interpolate"}]},{begin:'"(?!"")',beginCaptures:{0:{name:"punctuation.definition.string.begin.julia"}},comment:"String with single pair of double quotes. Regex matches isolated double quote",end:'"',endCaptures:{0:{name:"punctuation.definition.string.end.julia"}},name:"string.quoted.double.julia",patterns:[{include:"#string_escaped_char"},{include:"#string_dollar_sign_interpolate"}]},{begin:'r"""',beginCaptures:{0:{name:"punctuation.definition.string.regexp.begin.julia"}},end:'(""")([imsx]{0,4})?',endCaptures:{1:{name:"punctuation.definition.string.regexp.end.julia"},2:{comment:"I took this scope name from python regex grammar",name:"keyword.other.option-toggle.regexp.julia"}},name:"string.regexp.julia",patterns:[{include:"#string_escaped_char"}]},{begin:'r"',beginCaptures:{0:{name:"punctuation.definition.string.regexp.begin.julia"}},end:'(")([imsx]{0,4})?',endCaptures:{1:{name:"punctuation.definition.string.regexp.end.julia"},2:{comment:"I took this scope name from python regex grammar",name:"keyword.other.option-toggle.regexp.julia"}},name:"string.regexp.julia",patterns:[{include:"#string_escaped_char"}]},{begin:'(?<!")((?:[[:alpha:]_\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{So}←-⇿])(?:[[:word:]_!\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{Mn}-¡]|[^\\P{Mc}-¡]|[^\\P{Nd}-¡]|[^\\P{Pc}-¡]|[^\\P{Sk}-¡]|[^\\P{Me}-¡]|[^\\P{No}-¡]|[′-‷⁗]|[^\\P{So}←-⇿])*)"""',beginCaptures:{0:{name:"punctuation.definition.string.begin.julia"},1:{name:"support.function.macro.julia"}},end:'(""")((?:[[:alpha:]_\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{So}←-⇿])(?:[[:word:]_!\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{Mn}-¡]|[^\\P{Mc}-¡]|[^\\P{Nd}-¡]|[^\\P{Pc}-¡]|[^\\P{Sk}-¡]|[^\\P{Me}-¡]|[^\\P{No}-¡]|[′-‷⁗]|[^\\P{So}←-⇿])*)?',endCaptures:{1:{name:"punctuation.definition.string.end.julia"},2:{name:"support.function.macro.julia"}},name:"string.quoted.other.julia",patterns:[{include:"#string_escaped_char"}]},{begin:'(?<!")((?:[[:alpha:]_\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{So}←-⇿])(?:[[:word:]_!\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{Mn}-¡]|[^\\P{Mc}-¡]|[^\\P{Nd}-¡]|[^\\P{Pc}-¡]|[^\\P{Sk}-¡]|[^\\P{Me}-¡]|[^\\P{No}-¡]|[′-‷⁗]|[^\\P{So}←-⇿])*)"',beginCaptures:{0:{name:"punctuation.definition.string.begin.julia"},1:{name:"support.function.macro.julia"}},end:'(?<![^\\\\]\\\\)(")((?:[[:alpha:]_\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{So}←-⇿])(?:[[:word:]_!\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{Mn}-¡]|[^\\P{Mc}-¡]|[^\\P{Nd}-¡]|[^\\P{Pc}-¡]|[^\\P{Sk}-¡]|[^\\P{Me}-¡]|[^\\P{No}-¡]|[′-‷⁗]|[^\\P{So}←-⇿])*)?',endCaptures:{1:{name:"punctuation.definition.string.end.julia"},2:{name:"support.function.macro.julia"}},name:"string.quoted.other.julia",patterns:[{include:"#string_escaped_char"}]},{begin:"(?<!`)((?:[[:alpha:]_\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{So}←-⇿])(?:[[:word:]_!\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{Mn}-¡]|[^\\P{Mc}-¡]|[^\\P{Nd}-¡]|[^\\P{Pc}-¡]|[^\\P{Sk}-¡]|[^\\P{Me}-¡]|[^\\P{No}-¡]|[′-‷⁗]|[^\\P{So}←-⇿])*)?```",beginCaptures:{0:{name:"punctuation.definition.string.begin.julia"},1:{name:"support.function.macro.julia"}},end:"(```)((?:[[:alpha:]_\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{So}←-⇿])(?:[[:word:]_!\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{Mn}-¡]|[^\\P{Mc}-¡]|[^\\P{Nd}-¡]|[^\\P{Pc}-¡]|[^\\P{Sk}-¡]|[^\\P{Me}-¡]|[^\\P{No}-¡]|[′-‷⁗]|[^\\P{So}←-⇿])*)?",endCaptures:{1:{name:"punctuation.definition.string.end.julia"},2:{name:"support.function.macro.julia"}},name:"string.interpolated.backtick.julia",patterns:[{include:"#string_escaped_char"},{include:"#string_dollar_sign_interpolate"}]},{begin:"(?<!`)((?:[[:alpha:]_\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{So}←-⇿])(?:[[:word:]_!\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{Mn}-¡]|[^\\P{Mc}-¡]|[^\\P{Nd}-¡]|[^\\P{Pc}-¡]|[^\\P{Sk}-¡]|[^\\P{Me}-¡]|[^\\P{No}-¡]|[′-‷⁗]|[^\\P{So}←-⇿])*)?`",beginCaptures:{0:{name:"punctuation.definition.string.begin.julia"},1:{name:"support.function.macro.julia"}},end:"(?<![^\\\\]\\\\)(`)((?:[[:alpha:]_\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{So}←-⇿])(?:[[:word:]_!\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{Mn}-¡]|[^\\P{Mc}-¡]|[^\\P{Nd}-¡]|[^\\P{Pc}-¡]|[^\\P{Sk}-¡]|[^\\P{Me}-¡]|[^\\P{No}-¡]|[′-‷⁗]|[^\\P{So}←-⇿])*)?",endCaptures:{1:{name:"punctuation.definition.string.end.julia"},2:{name:"support.function.macro.julia"}},name:"string.interpolated.backtick.julia",patterns:[{include:"#string_escaped_char"},{include:"#string_dollar_sign_interpolate"}]}]},string_dollar_sign_interpolate:{patterns:[{match:"\\$(?:[[:alpha:]_\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{So}←-⇿]|[^\\p{^Sc}$])(?:[[:word:]_!\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{Mn}-¡]|[^\\P{Mc}-¡]|[^\\P{Nd}-¡]|[^\\P{Pc}-¡]|[^\\P{Sk}-¡]|[^\\P{Me}-¡]|[^\\P{No}-¡]|[′-‷⁗]|[^\\P{So}←-⇿]|[^\\p{^Sc}$])*",name:"variable.interpolation.julia"},{begin:"\\$(\\()",beginCaptures:{1:{name:"meta.bracket.julia"}},comment:"`punctuation.section.embedded`, `constant.escape`,\n& `meta.embedded.line` were considered but appear to have even spottier\nsupport among popular syntaxes.",end:"\\)",endCaptures:{0:{name:"meta.bracket.julia"}},name:"variable.interpolation.julia",patterns:[{include:"#self_no_for_block"}]}]},string_escaped_char:{patterns:[{match:"\\\\(\\\\|[0-3]\\d{,2}|[4-7]\\d?|x[a-fA-F0-9]{,2}|u[a-fA-F0-9]{,4}|U[a-fA-F0-9]{,8}|.)",name:"constant.character.escape.julia"}]},symbol:{patterns:[{comment:"This is string.quoted.symbol.julia in tpoisot's package",match:'(?<![[:word:]⁺-ₜ!′∇\\)\\]\\}]):(?:(?:[[:alpha:]_\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{So}←-⇿])(?:[[:word:]_!\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{Mn}-¡]|[^\\P{Mc}-¡]|[^\\P{Nd}-¡]|[^\\P{Pc}-¡]|[^\\P{Sk}-¡]|[^\\P{Me}-¡]|[^\\P{No}-¡]|[′-‷⁗]|[^\\P{So}←-⇿])*)(?!(?:[[:word:]_!\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{Mn}-¡]|[^\\P{Mc}-¡]|[^\\P{Nd}-¡]|[^\\P{Pc}-¡]|[^\\P{Sk}-¡]|[^\\P{Me}-¡]|[^\\P{No}-¡]|[′-‷⁗]|[^\\P{So}←-⇿]))(?!["`])',name:"constant.other.symbol.julia"}]},type_decl:{patterns:[{captures:{1:{name:"entity.name.type.julia"},2:{name:"entity.other.inherited-class.julia"},3:{name:"punctuation.separator.inheritance.julia"}},match:"(?>!:_)(?:struct|mutable\\s+struct|abstract\\s+type|primitive\\s+type)\\s+((?:[[:alpha:]_\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{So}←-⇿])(?:[[:word:]_!\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{Mn}-¡]|[^\\P{Mc}-¡]|[^\\P{Nd}-¡]|[^\\P{Pc}-¡]|[^\\P{Sk}-¡]|[^\\P{Me}-¡]|[^\\P{No}-¡]|[′-‷⁗]|[^\\P{So}←-⇿])*)(\\s*(<:)\\s*(?:[[:alpha:]_\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{So}←-⇿])(?:[[:word:]_!\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{Mn}-¡]|[^\\P{Mc}-¡]|[^\\P{Nd}-¡]|[^\\P{Pc}-¡]|[^\\P{Sk}-¡]|[^\\P{Me}-¡]|[^\\P{No}-¡]|[′-‷⁗]|[^\\P{So}←-⇿])*(?:{.*})?)?",name:"meta.type.julia"}]}},scopeName:"source.julia",embeddedLangs:["cpp","python","javascript","r","sql"],aliases:["jl"]})];export{o as default};
@@ -1,2 +0,0 @@
1
- System.register(["./cpp-3f531dc7.cjs.js","./python-373d4127.cjs.js","./javascript-b7695d18.cjs.js","./r-c4c88a84.cjs.js","./sql-a6a4a6ff.cjs.js","./regexp-055ce2e3.cjs.js","./glsl-4ade4dba.cjs.js","./c-38d4a70a.cjs.js"],function(_export,_context){"use strict";var e,n,t,a,i,o;function _toConsumableArray(arr){return _arrayWithoutHoles(arr)||_iterableToArray(arr)||_unsupportedIterableToArray(arr)||_nonIterableSpread();}function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");}function _unsupportedIterableToArray(o,minLen){if(!o)return;if(typeof o==="string")return _arrayLikeToArray(o,minLen);var n=Object.prototype.toString.call(o).slice(8,-1);if(n==="Object"&&o.constructor)n=o.constructor.name;if(n==="Map"||n==="Set")return Array.from(o);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return _arrayLikeToArray(o,minLen);}function _iterableToArray(iter){if(typeof Symbol!=="undefined"&&iter[Symbol.iterator]!=null||iter["@@iterator"]!=null)return Array.from(iter);}function _arrayWithoutHoles(arr){if(Array.isArray(arr))return _arrayLikeToArray(arr);}function _arrayLikeToArray(arr,len){if(len==null||len>arr.length)len=arr.length;for(var i=0,arr2=new Array(len);i<len;i++)arr2[i]=arr[i];return arr2;}return{setters:[function(_cpp00qCjsJs){e=_cpp00qCjsJs["default"];},function(_python00ICjsJs){n=_python00ICjsJs["default"];},function(_javascript009CjsJs){t=_javascript009CjsJs["default"];},function(_r00JCjsJs){a=_r00JCjsJs["default"];},function(_sql00PCjsJs){i=_sql00PCjsJs["default"];},function(_regexp00TCjsJs){},function(_glsl00UCjsJs){},function(_c00nCjsJs){}],execute:function execute(){_export("default",o=[].concat(_toConsumableArray(e),_toConsumableArray(n),_toConsumableArray(t),_toConsumableArray(a),_toConsumableArray(i),[Object.freeze({displayName:"Julia",name:"julia",patterns:[{include:"#operator"},{include:"#array"},{include:"#string"},{include:"#parentheses"},{include:"#bracket"},{include:"#function_decl"},{include:"#function_call"},{include:"#for_block"},{include:"#keyword"},{include:"#number"},{include:"#comment"},{include:"#type_decl"},{include:"#symbol"},{include:"#punctuation"}],repository:{array:{patterns:[{begin:"\\[",beginCaptures:{0:{name:"meta.bracket.julia"}},end:"(\\])((?:\\.)?'*)",endCaptures:{1:{name:"meta.bracket.julia"},2:{name:"keyword.operator.transpose.julia"}},name:"meta.array.julia",patterns:[{match:"\\bbegin\\b",name:"constant.numeric.julia"},{match:"\\bend\\b",name:"constant.numeric.julia"},{include:"#self_no_for_block"}]}]},bracket:{patterns:[{begin:"\\{",beginCaptures:{0:{name:"meta.bracket.julia"}},end:"(\\})((?:\\.)?'*)",endCaptures:{1:{name:"meta.bracket.julia"},2:{name:"keyword.operator.transpose.julia"}},patterns:[{include:"#self_no_for_block"}]}]},comment:{patterns:[{include:"#comment_block"},{begin:"#",beginCaptures:{0:{name:"punctuation.definition.comment.julia"}},end:"\\n",name:"comment.line.number-sign.julia",patterns:[{include:"#comment_tags"}]}]},comment_block:{patterns:[{begin:"#=",beginCaptures:{0:{name:"punctuation.definition.comment.begin.julia"}},end:"=#",endCaptures:{0:{name:"punctuation.definition.comment.end.julia"}},name:"comment.block.number-sign-equals.julia",patterns:[{include:"#comment_tags"},{include:"#comment_block"}]}]},comment_tags:{patterns:[{match:"\\bTODO\\b",name:"keyword.other.comment-annotation.julia"},{match:"\\bFIXME\\b",name:"keyword.other.comment-annotation.julia"},{match:"\\bCHANGED\\b",name:"keyword.other.comment-annotation.julia"},{match:"\\bXXX\\b",name:"keyword.other.comment-annotation.julia"}]},for_block:{comment:"for blocks need to be special-cased to support tokenizing 'outer' properly",patterns:[{begin:"\\b(for)\\b",beginCaptures:{0:{name:"keyword.control.julia"}},end:"(?<!,|\\s)(\\s*\\n)",patterns:[{match:"\\bouter\\b",name:"keyword.other.julia"},{include:"$self"}]}]},function_call:{patterns:[{begin:"((?:[[:alpha:]_\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{So}←-⇿])(?:[[:word:]_!\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{Mn}-¡]|[^\\P{Mc}-¡]|[^\\P{Nd}-¡]|[^\\P{Pc}-¡]|[^\\P{Sk}-¡]|[^\\P{Me}-¡]|[^\\P{No}-¡]|[′-‷⁗]|[^\\P{So}←-⇿])*)({(?:[^{}]|{(?:[^{}]|{[^{}]*})*})*})?\\.?(\\()",beginCaptures:{1:{name:"support.function.julia"},2:{name:"support.type.julia"},3:{name:"meta.bracket.julia"}},end:"\\)(('|(\\.'))*\\.?')?",endCaptures:{0:{name:"meta.bracket.julia"},1:{name:"keyword.operator.transposed-func.julia"}},patterns:[{include:"#self_no_for_block"}]}]},function_decl:{patterns:[{captures:{1:{name:"entity.name.function.julia"},2:{name:"support.type.julia"}},comment:"first group is function name\nSecond group is type parameters (e.g. {T<:Number, S})\nThen open parens\nThen a lookahead ensures that we are followed by:\n - anything (function arguments)\n - 0 or more spaces\n - Finally an equal sign\nNegative lookahead ensures we don't have another equal sign (not `==`)",match:"((?:[[:alpha:]_\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{So}←-⇿])(?:[[:word:]_!\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{Mn}-¡]|[^\\P{Mc}-¡]|[^\\P{Nd}-¡]|[^\\P{Pc}-¡]|[^\\P{Sk}-¡]|[^\\P{Me}-¡]|[^\\P{No}-¡]|[′-‷⁗]|[^\\P{So}←-⇿])*)({(?:[^{}]|{(?:[^{}]|{[^{}]*})*})*})?(?=\\([^#]*\\)(::[^\\s]+)?(\\s*\\bwhere\\b\\s+.+?)?\\s*?=(?![=>]))"},{captures:{1:{name:"keyword.other.julia"},2:{name:"keyword.operator.dots.julia"},3:{name:"entity.name.function.julia"},4:{name:"support.type.julia"}},comment:"similar regex to previous, but with keyword not 1-line syntax",match:"\\b(function|macro)(?:\\s+(?:(?:[[:alpha:]_\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{So}←-⇿])(?:[[:word:]_!\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{Mn}-¡]|[^\\P{Mc}-¡]|[^\\P{Nd}-¡]|[^\\P{Pc}-¡]|[^\\P{Sk}-¡]|[^\\P{Me}-¡]|[^\\P{No}-¡]|[′-‷⁗]|[^\\P{So}←-⇿])*(\\.))?((?:[[:alpha:]_\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{So}←-⇿])(?:[[:word:]_!\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{Mn}-¡]|[^\\P{Mc}-¡]|[^\\P{Nd}-¡]|[^\\P{Pc}-¡]|[^\\P{Sk}-¡]|[^\\P{Me}-¡]|[^\\P{No}-¡]|[′-‷⁗]|[^\\P{So}←-⇿])*)({(?:[^{}]|{(?:[^{}]|{[^{}]*})*})*})?|\\s*)(?=\\()"}]},keyword:{patterns:[{match:"\\b(?<![:_\\.])(?:function|mutable\\s+struct|struct|macro|quote|abstract\\s+type|primitive\\s+type|module|baremodule|where)\\b",name:"keyword.other.julia"},{match:"\\b(?<![:_])(?:if|else|elseif|for|while|begin|let|do|try|catch|finally|return|break|continue)\\b",name:"keyword.control.julia"},{match:"\\b(?<![:_])end\\b",name:"keyword.control.end.julia"},{match:"\\b(?<![:_])(?:global|local|const)\\b",name:"keyword.storage.modifier.julia"},{match:"\\b(?<![:_])(?:export)\\b",name:"keyword.control.export.julia"},{match:"^(?:public)\\b",name:"keyword.control.public.julia"},{match:"\\b(?<![:_])(?:import)\\b",name:"keyword.control.import.julia"},{match:"\\b(?<![:_])(?:using)\\b",name:"keyword.control.using.julia"},{match:"(?<=\\w\\s)\\b(as)\\b(?=\\s\\w)",name:"keyword.control.as.julia"},{match:"(@(\\.|(?:[[:alpha:]_\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{So}←-⇿])(?:[[:word:]_!\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{Mn}-¡]|[^\\P{Mc}-¡]|[^\\P{Nd}-¡]|[^\\P{Pc}-¡]|[^\\P{Sk}-¡]|[^\\P{Me}-¡]|[^\\P{No}-¡]|[′-‷⁗]|[^\\P{So}←-⇿])*))",name:"support.function.macro.julia"}]},number:{patterns:[{captures:{1:{name:"constant.numeric.julia"},2:{name:"keyword.operator.conjugate-number.julia"}},match:"((?<!(?:[[:word:]_!\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{Mn}-¡]|[^\\P{Mc}-¡]|[^\\P{Nd}-¡]|[^\\P{Pc}-¡]|[^\\P{Sk}-¡]|[^\\P{Me}-¡]|[^\\P{No}-¡]|[′-‷⁗]|[^\\P{So}←-⇿]))(?:(?:\\b0(?:x|X)[0-9a-fA-F](?:_?[0-9a-fA-F])*)|(?:\\b0o[0-7](?:_?[0-7])*)|(?:\\b0b[0-1](?:_?[0-1])*)|(?:(?:\\b[0-9](?:_?[0-9])*\\.?(?!\\.)(?:[_0-9]*))|(?:\\b\\.[0-9](?:_?[0-9])*))(?:[efE][+-]?[0-9](?:_?[0-9])*)?(?:im\\b|Inf(?:16|32|64)?\\b|NaN(?:16|32|64)?\\b|π\\b|pi\\b|ℯ\\b)?|\\b[0-9]+|\\bInf(?:16|32|64)?\\b|\\bNaN(?:16|32|64)?\\b|\\bπ\\b|\\bpi\\b|\\bℯ\\b))('*)"},{match:"\\bARGS\\b|\\bC_NULL\\b|\\bDEPOT_PATH\\b|\\bENDIAN_BOM\\b|\\bENV\\b|\\bLOAD_PATH\\b|\\bPROGRAM_FILE\\b|\\bstdin\\b|\\bstdout\\b|\\bstderr\\b|\\bVERSION\\b|\\bdevnull\\b",name:"constant.global.julia"},{match:"\\btrue\\b|\\bfalse\\b|\\bnothing\\b|\\bmissing\\b",name:"constant.language.julia"}]},operator:{patterns:[{match:"\\.?(?:<--\x3e|->|--\x3e|<--|←|→|↔|↚|↛|↞|↠|↢|↣|↦|↤|↮|⇎|⇍|⇏|⇐|⇒|⇔|⇴|⇶|⇷|⇸|⇹|⇺|⇻|⇼|⇽|⇾|⇿|⟵|⟶|⟷|⟹|⟺|⟻|⟼|⟽|⟾|⟿|⤀|⤁|⤂|⤃|⤄|⤅|⤆|⤇|⤌|⤍|⤎|⤏|⤐|⤑|⤔|⤕|⤖|⤗|⤘|⤝|⤞|⤟|⤠|⥄|⥅|⥆|⥇|⥈|⥊|⥋|⥎|⥐|⥒|⥓|⥖|⥗|⥚|⥛|⥞|⥟|⥢|⥤|⥦|⥧|⥨|⥩|⥪|⥫|⥬|⥭|⥰|⧴|⬱|⬰|⬲|⬳|⬴|⬵|⬶|⬷|⬸|⬹|⬺|⬻|⬼|⬽|⬾|⬿|⭀|⭁|⭂|⭃|⥷|⭄|⥺|⭇|⭈|⭉|⭊|⭋|⭌|←|→|⇜|⇝|↜|↝|↩|↪|↫|↬|↼|↽|⇀|⇁|⇄|⇆|⇇|⇉|⇋|⇌|⇚|⇛|⇠|⇢|↷|↶|↺|↻|=>)",name:"keyword.operator.arrow.julia"},{match:"(?::=|\\+=|-=|\\*=|//=|/=|\\.//=|\\./=|\\.\\*=|\\\\=|\\.\\\\=|\\^=|\\.\\^=|%=|\\.%=|÷=|\\.÷=|\\|=|&=|\\.&=|⊻=|\\.⊻=|\\$=|<<=|>>=|>>>=|=(?!=))",name:"keyword.operator.update.julia"},{match:"(?:<<|>>>|>>|\\.>>>|\\.>>|\\.<<)",name:"keyword.operator.shift.julia"},{captures:{1:{name:"keyword.operator.relation.types.julia"},2:{name:"support.type.julia"},3:{name:"keyword.operator.transpose.julia"}},match:'(?:\\s*(::|>:|<:)\\s*((?:(?:Union)?\\([^)]*\\)|[[:alpha:]_$∇][[:word:]⁺-ₜ!′\\.]*(?:(?:{(?:[^{}]|{(?:[^{}]|{[^{}]*})*})*})|(?:".+?(?<!\\\\)"))?)))(?:\\.\\.\\.)?((?:\\.)?\'*)'},{match:"(\\.?((?<!<)<=|(?<!>)>=|>|<|≥|≤|===|==|≡|!=|≠|!==|≢|∈|∉|∋|∌|⊆|⊈|⊂|⊄|⊊|∝|∊|∍|∥|∦|∷|∺|∻|∽|∾|≁|≃|≂|≄|≅|≆|≇|≈|≉|≊|≋|≌|≍|≎|≐|≑|≒|≓|≖|≗|≘|≙|≚|≛|≜|≝|≞|≟|≣|≦|≧|≨|≩|≪|≫|≬|≭|≮|≯|≰|≱|≲|≳|≴|≵|≶|≷|≸|≹|≺|≻|≼|≽|≾|≿|⊀|⊁|⊃|⊅|⊇|⊉|⊋|⊏|⊐|⊑|⊒|⊜|⊩|⊬|⊮|⊰|⊱|⊲|⊳|⊴|⊵|⊶|⊷|⋍|⋐|⋑|⋕|⋖|⋗|⋘|⋙|⋚|⋛|⋜|⋝|⋞|⋟|⋠|⋡|⋢|⋣|⋤|⋥|⋦|⋧|⋨|⋩|⋪|⋫|⋬|⋭|⋲|⋳|⋴|⋵|⋶|⋷|⋸|⋹|⋺|⋻|⋼|⋽|⋾|⋿|⟈|⟉|⟒|⦷|⧀|⧁|⧡|⧣|⧤|⧥|⩦|⩧|⩪|⩫|⩬|⩭|⩮|⩯|⩰|⩱|⩲|⩳|⩵|⩶|⩷|⩸|⩹|⩺|⩻|⩼|⩽|⩾|⩿|⪀|⪁|⪂|⪃|⪄|⪅|⪆|⪇|⪈|⪉|⪊|⪋|⪌|⪍|⪎|⪏|⪐|⪑|⪒|⪓|⪔|⪕|⪖|⪗|⪘|⪙|⪚|⪛|⪜|⪝|⪞|⪟|⪠|⪡|⪢|⪣|⪤|⪥|⪦|⪧|⪨|⪩|⪪|⪫|⪬|⪭|⪮|⪯|⪰|⪱|⪲|⪳|⪴|⪵|⪶|⪷|⪸|⪹|⪺|⪻|⪼|⪽|⪾|⪿|⫀|⫁|⫂|⫃|⫄|⫅|⫆|⫇|⫈|⫉|⫊|⫋|⫌|⫍|⫎|⫏|⫐|⫑|⫒|⫓|⫔|⫕|⫖|⫗|⫘|⫙|⫷|⫸|⫹|⫺|⊢|⊣|⟂|⫪|⫫|<:|>:))",name:"keyword.operator.relation.julia"},{match:"(?<=\\s)(?:\\?)(?=\\s)",name:"keyword.operator.ternary.julia"},{match:"(?<=\\s)(?:\\:)(?=\\s)",name:"keyword.operator.ternary.julia"},{match:"(?:\\|\\||&&|(?<!(?:[[:word:]_!\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{Mn}-¡]|[^\\P{Mc}-¡]|[^\\P{Nd}-¡]|[^\\P{Pc}-¡]|[^\\P{Sk}-¡]|[^\\P{Me}-¡]|[^\\P{No}-¡]|[′-‷⁗]|[^\\P{So}←-⇿]))!)",name:"keyword.operator.boolean.julia"},{match:"(?<=[[:word:]⁺-ₜ!′∇\\)\\]\\}])(?::)",name:"keyword.operator.range.julia"},{match:"(?:\\|>)",name:"keyword.operator.applies.julia"},{match:"(?:\\||\\.\\||\\&|\\.\\&|~|¬|\\.~|⊻|\\.⊻)",name:"keyword.operator.bitwise.julia"},{match:"\\.?(?:\\+\\+|\\-\\-|\\+|\\-|−|¦|\\||⊕|⊖|⊞|⊟|∪|∨|⊔|±|∓|∔|∸|≏|⊎|⊻|⊽|⋎|⋓|⟇|⧺|⧻|⨈|⨢|⨣|⨤|⨥|⨦|⨧|⨨|⨩|⨪|⨫|⨬|⨭|⨮|⨹|⨺|⩁|⩂|⩅|⩊|⩌|⩏|⩐|⩒|⩔|⩖|⩗|⩛|⩝|⩡|⩢|⩣|\\*|//?|⌿|÷|%|&|·|·|⋅|∘|×|\\\\|∩|∧|⊗|⊘|⊙|⊚|⊛|⊠|⊡|⊓|∗|∙|∤|⅋|≀|⊼|⋄|⋆|⋇|⋉|⋊|⋋|⋌|⋏|⋒|⟑|⦸|⦼|⦾|⦿|⧶|⧷|⨇|⨰|⨱|⨲|⨳|⨴|⨵|⨶|⨷|⨸|⨻|⨼|⨽|⩀|⩃|⩄|⩋|⩍|⩎|⩑|⩓|⩕|⩘|⩚|⩜|⩞|⩟|⩠|⫛|⊍|▷|⨝|⟕|⟖|⟗|⨟|\\^|↑|↓|⇵|⟰|⟱|⤈|⤉|⤊|⤋|⤒|⤓|⥉|⥌|⥍|⥏|⥑|⥔|⥕|⥘|⥙|⥜|⥝|⥠|⥡|⥣|⥥|⥮|⥯|↑|↓|√|∛|∜|⋆|±|∓)",name:"keyword.operator.arithmetic.julia"},{match:"(?:∘)",name:"keyword.operator.compose.julia"},{match:"(?:::|(?<=\\s)isa(?=\\s))",name:"keyword.operator.isa.julia"},{match:"(?:(?<=\\s)in(?=\\s))",name:"keyword.operator.relation.in.julia"},{match:"(?:\\.(?=(?:@|_|\\p{L}))|\\.\\.+|…|⁝|⋮|⋱|⋰|⋯)",name:"keyword.operator.dots.julia"},{match:"(?:\\$)(?=.+)",name:"keyword.operator.interpolation.julia"},{captures:{2:{name:"keyword.operator.transposed-variable.julia"}},match:"((?:[[:alpha:]_\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{So}←-⇿])(?:[[:word:]_!\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{Mn}-¡]|[^\\P{Mc}-¡]|[^\\P{Nd}-¡]|[^\\P{Pc}-¡]|[^\\P{Sk}-¡]|[^\\P{Me}-¡]|[^\\P{No}-¡]|[′-‷⁗]|[^\\P{So}←-⇿])*)(('|(\\.'))*\\.?')"},{captures:{1:{name:"bracket.end.julia"},2:{name:"keyword.operator.transposed-matrix.julia"}},match:"(\\])((?:'|(?:\\.'))*\\.?')"},{captures:{1:{name:"bracket.end.julia"},2:{name:"keyword.operator.transposed-parens.julia"}},match:"(\\))((?:'|(?:\\.'))*\\.?')"}]},parentheses:{patterns:[{begin:"\\(",beginCaptures:{0:{name:"meta.bracket.julia"}},end:"(\\))((?:\\.)?'*)",endCaptures:{1:{name:"meta.bracket.julia"},2:{name:"keyword.operator.transpose.julia"}},patterns:[{include:"#self_no_for_block"}]}]},punctuation:{patterns:[{match:",",name:"punctuation.separator.comma.julia"},{match:";",name:"punctuation.separator.semicolon.julia"}]},self_no_for_block:{comment:"Same as $self, but does not contain #for_block. 'outer' is not valid in some contexts (e.g. generators, comprehensions, indexing), so use this when matching those in begin/end patterns. Keep this up-to-date with $self!",patterns:[{include:"#operator"},{include:"#array"},{include:"#string"},{include:"#parentheses"},{include:"#bracket"},{include:"#function_decl"},{include:"#function_call"},{include:"#keyword"},{include:"#number"},{include:"#comment"},{include:"#type_decl"},{include:"#symbol"},{include:"#punctuation"}]},string:{patterns:[{begin:'(?:(@doc)\\s((?:doc)?""")|(doc"""))',beginCaptures:{1:{name:"support.function.macro.julia"},2:{name:"punctuation.definition.string.begin.julia"}},end:'(""") ?(->)?',endCaptures:{1:{name:"punctuation.definition.string.end.julia"},2:{name:"keyword.operator.arrow.julia"}},name:"string.docstring.julia",patterns:[{include:"#string_escaped_char"},{include:"#string_dollar_sign_interpolate"}]},{begin:'(i?cxx)(""")',beginCaptures:{1:{name:"support.function.macro.julia"},2:{name:"punctuation.definition.string.begin.julia"}},contentName:"meta.embedded.inline.cpp",end:'"""',endCaptures:{0:{name:"punctuation.definition.string.end.julia"}},name:"embed.cxx.julia",patterns:[{include:"source.cpp#root_context"},{include:"#string_dollar_sign_interpolate"}]},{begin:'(py)(""")',beginCaptures:{1:{name:"support.function.macro.julia"},2:{name:"punctuation.definition.string.begin.julia"}},contentName:"meta.embedded.inline.python",end:'([\\s\\w]*)(""")',endCaptures:{2:{name:"punctuation.definition.string.end.julia"}},name:"embed.python.julia",patterns:[{include:"source.python"},{include:"#string_dollar_sign_interpolate"}]},{begin:'(js)(""")',beginCaptures:{1:{name:"support.function.macro.julia"},2:{name:"punctuation.definition.string.begin.julia"}},contentName:"meta.embedded.inline.javascript",end:'"""',endCaptures:{0:{name:"punctuation.definition.string.end.julia"}},name:"embed.js.julia",patterns:[{include:"source.js"},{include:"#string_dollar_sign_interpolate"}]},{begin:'(R)(""")',beginCaptures:{1:{name:"support.function.macro.julia"},2:{name:"punctuation.definition.string.begin.julia"}},contentName:"meta.embedded.inline.r",end:'"""',endCaptures:{0:{name:"punctuation.definition.string.end.julia"}},name:"embed.R.julia",patterns:[{include:"source.r"},{include:"#string_dollar_sign_interpolate"}]},{begin:'(raw)(""")',beginCaptures:{1:{name:"support.function.macro.julia"},2:{name:"punctuation.definition.string.begin.julia"}},end:'"""',endCaptures:{0:{name:"punctuation.definition.string.end.julia"}},name:"string.quoted.other.julia",patterns:[{include:"#string_escaped_char"}]},{begin:'(raw)(")',beginCaptures:{1:{name:"support.function.macro.julia"},2:{name:"punctuation.definition.string.begin.julia"}},end:'"',endCaptures:{0:{name:"punctuation.definition.string.end.julia"}},name:"string.quoted.other.julia",patterns:[{include:"#string_escaped_char"}]},{begin:'(sql)(""")',beginCaptures:{1:{name:"support.function.macro.julia"},2:{name:"punctuation.definition.string.begin.julia"}},contentName:"meta.embedded.inline.sql",end:'"""',endCaptures:{0:{name:"punctuation.definition.string.end.julia"}},name:"embed.sql.julia",patterns:[{include:"source.sql"},{include:"#string_dollar_sign_interpolate"}]},{begin:'var"""',end:'"""',name:"constant.other.symbol.julia",patterns:[{include:"#string_escaped_char"}]},{begin:'var"',end:'"',name:"constant.other.symbol.julia",patterns:[{include:"#string_escaped_char"}]},{begin:'^\\s?(doc)?(""")\\s?$',beginCaptures:{1:{name:"support.function.macro.julia"},2:{name:"punctuation.definition.string.begin.julia"}},comment:"This only matches docstrings that start and end with triple quotes on\ntheir own line in the void",end:'(""")',endCaptures:{1:{name:"punctuation.definition.string.end.julia"}},name:"string.docstring.julia",patterns:[{include:"#string_escaped_char"},{include:"#string_dollar_sign_interpolate"}]},{begin:"'",beginCaptures:{0:{name:"punctuation.definition.string.begin.julia"}},end:"'(?!')",endCaptures:{0:{name:"punctuation.definition.string.end.julia"}},name:"string.quoted.single.julia",patterns:[{include:"#string_escaped_char"}]},{begin:'"""',beginCaptures:{0:{name:"punctuation.definition.string.multiline.begin.julia"}},comment:"multi-line string with triple double quotes",end:'"""',endCaptures:{0:{name:"punctuation.definition.string.multiline.end.julia"}},name:"string.quoted.triple.double.julia",patterns:[{include:"#string_escaped_char"},{include:"#string_dollar_sign_interpolate"}]},{begin:'"(?!"")',beginCaptures:{0:{name:"punctuation.definition.string.begin.julia"}},comment:"String with single pair of double quotes. Regex matches isolated double quote",end:'"',endCaptures:{0:{name:"punctuation.definition.string.end.julia"}},name:"string.quoted.double.julia",patterns:[{include:"#string_escaped_char"},{include:"#string_dollar_sign_interpolate"}]},{begin:'r"""',beginCaptures:{0:{name:"punctuation.definition.string.regexp.begin.julia"}},end:'(""")([imsx]{0,4})?',endCaptures:{1:{name:"punctuation.definition.string.regexp.end.julia"},2:{comment:"I took this scope name from python regex grammar",name:"keyword.other.option-toggle.regexp.julia"}},name:"string.regexp.julia",patterns:[{include:"#string_escaped_char"}]},{begin:'r"',beginCaptures:{0:{name:"punctuation.definition.string.regexp.begin.julia"}},end:'(")([imsx]{0,4})?',endCaptures:{1:{name:"punctuation.definition.string.regexp.end.julia"},2:{comment:"I took this scope name from python regex grammar",name:"keyword.other.option-toggle.regexp.julia"}},name:"string.regexp.julia",patterns:[{include:"#string_escaped_char"}]},{begin:'(?<!")((?:[[:alpha:]_\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{So}←-⇿])(?:[[:word:]_!\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{Mn}-¡]|[^\\P{Mc}-¡]|[^\\P{Nd}-¡]|[^\\P{Pc}-¡]|[^\\P{Sk}-¡]|[^\\P{Me}-¡]|[^\\P{No}-¡]|[′-‷⁗]|[^\\P{So}←-⇿])*)"""',beginCaptures:{0:{name:"punctuation.definition.string.begin.julia"},1:{name:"support.function.macro.julia"}},end:'(""")((?:[[:alpha:]_\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{So}←-⇿])(?:[[:word:]_!\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{Mn}-¡]|[^\\P{Mc}-¡]|[^\\P{Nd}-¡]|[^\\P{Pc}-¡]|[^\\P{Sk}-¡]|[^\\P{Me}-¡]|[^\\P{No}-¡]|[′-‷⁗]|[^\\P{So}←-⇿])*)?',endCaptures:{1:{name:"punctuation.definition.string.end.julia"},2:{name:"support.function.macro.julia"}},name:"string.quoted.other.julia",patterns:[{include:"#string_escaped_char"}]},{begin:'(?<!")((?:[[:alpha:]_\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{So}←-⇿])(?:[[:word:]_!\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{Mn}-¡]|[^\\P{Mc}-¡]|[^\\P{Nd}-¡]|[^\\P{Pc}-¡]|[^\\P{Sk}-¡]|[^\\P{Me}-¡]|[^\\P{No}-¡]|[′-‷⁗]|[^\\P{So}←-⇿])*)"',beginCaptures:{0:{name:"punctuation.definition.string.begin.julia"},1:{name:"support.function.macro.julia"}},end:'(?<![^\\\\]\\\\)(")((?:[[:alpha:]_\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{So}←-⇿])(?:[[:word:]_!\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{Mn}-¡]|[^\\P{Mc}-¡]|[^\\P{Nd}-¡]|[^\\P{Pc}-¡]|[^\\P{Sk}-¡]|[^\\P{Me}-¡]|[^\\P{No}-¡]|[′-‷⁗]|[^\\P{So}←-⇿])*)?',endCaptures:{1:{name:"punctuation.definition.string.end.julia"},2:{name:"support.function.macro.julia"}},name:"string.quoted.other.julia",patterns:[{include:"#string_escaped_char"}]},{begin:"(?<!`)((?:[[:alpha:]_\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{So}←-⇿])(?:[[:word:]_!\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{Mn}-¡]|[^\\P{Mc}-¡]|[^\\P{Nd}-¡]|[^\\P{Pc}-¡]|[^\\P{Sk}-¡]|[^\\P{Me}-¡]|[^\\P{No}-¡]|[′-‷⁗]|[^\\P{So}←-⇿])*)?```",beginCaptures:{0:{name:"punctuation.definition.string.begin.julia"},1:{name:"support.function.macro.julia"}},end:"(```)((?:[[:alpha:]_\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{So}←-⇿])(?:[[:word:]_!\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{Mn}-¡]|[^\\P{Mc}-¡]|[^\\P{Nd}-¡]|[^\\P{Pc}-¡]|[^\\P{Sk}-¡]|[^\\P{Me}-¡]|[^\\P{No}-¡]|[′-‷⁗]|[^\\P{So}←-⇿])*)?",endCaptures:{1:{name:"punctuation.definition.string.end.julia"},2:{name:"support.function.macro.julia"}},name:"string.interpolated.backtick.julia",patterns:[{include:"#string_escaped_char"},{include:"#string_dollar_sign_interpolate"}]},{begin:"(?<!`)((?:[[:alpha:]_\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{So}←-⇿])(?:[[:word:]_!\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{Mn}-¡]|[^\\P{Mc}-¡]|[^\\P{Nd}-¡]|[^\\P{Pc}-¡]|[^\\P{Sk}-¡]|[^\\P{Me}-¡]|[^\\P{No}-¡]|[′-‷⁗]|[^\\P{So}←-⇿])*)?`",beginCaptures:{0:{name:"punctuation.definition.string.begin.julia"},1:{name:"support.function.macro.julia"}},end:"(?<![^\\\\]\\\\)(`)((?:[[:alpha:]_\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{So}←-⇿])(?:[[:word:]_!\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{Mn}-¡]|[^\\P{Mc}-¡]|[^\\P{Nd}-¡]|[^\\P{Pc}-¡]|[^\\P{Sk}-¡]|[^\\P{Me}-¡]|[^\\P{No}-¡]|[′-‷⁗]|[^\\P{So}←-⇿])*)?",endCaptures:{1:{name:"punctuation.definition.string.end.julia"},2:{name:"support.function.macro.julia"}},name:"string.interpolated.backtick.julia",patterns:[{include:"#string_escaped_char"},{include:"#string_dollar_sign_interpolate"}]}]},string_dollar_sign_interpolate:{patterns:[{match:"\\$(?:[[:alpha:]_\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{So}←-⇿]|[^\\p{^Sc}$])(?:[[:word:]_!\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{Mn}-¡]|[^\\P{Mc}-¡]|[^\\P{Nd}-¡]|[^\\P{Pc}-¡]|[^\\P{Sk}-¡]|[^\\P{Me}-¡]|[^\\P{No}-¡]|[′-‷⁗]|[^\\P{So}←-⇿]|[^\\p{^Sc}$])*",name:"variable.interpolation.julia"},{begin:"\\$(\\()",beginCaptures:{1:{name:"meta.bracket.julia"}},comment:"`punctuation.section.embedded`, `constant.escape`,\n& `meta.embedded.line` were considered but appear to have even spottier\nsupport among popular syntaxes.",end:"\\)",endCaptures:{0:{name:"meta.bracket.julia"}},name:"variable.interpolation.julia",patterns:[{include:"#self_no_for_block"}]}]},string_escaped_char:{patterns:[{match:"\\\\(\\\\|[0-3]\\d{,2}|[4-7]\\d?|x[a-fA-F0-9]{,2}|u[a-fA-F0-9]{,4}|U[a-fA-F0-9]{,8}|.)",name:"constant.character.escape.julia"}]},symbol:{patterns:[{comment:"This is string.quoted.symbol.julia in tpoisot's package",match:'(?<![[:word:]⁺-ₜ!′∇\\)\\]\\}]):(?:(?:[[:alpha:]_\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{So}←-⇿])(?:[[:word:]_!\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{Mn}-¡]|[^\\P{Mc}-¡]|[^\\P{Nd}-¡]|[^\\P{Pc}-¡]|[^\\P{Sk}-¡]|[^\\P{Me}-¡]|[^\\P{No}-¡]|[′-‷⁗]|[^\\P{So}←-⇿])*)(?!(?:[[:word:]_!\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{Mn}-¡]|[^\\P{Mc}-¡]|[^\\P{Nd}-¡]|[^\\P{Pc}-¡]|[^\\P{Sk}-¡]|[^\\P{Me}-¡]|[^\\P{No}-¡]|[′-‷⁗]|[^\\P{So}←-⇿]))(?!["`])',name:"constant.other.symbol.julia"}]},type_decl:{patterns:[{captures:{1:{name:"entity.name.type.julia"},2:{name:"entity.other.inherited-class.julia"},3:{name:"punctuation.separator.inheritance.julia"}},match:"(?>!:_)(?:struct|mutable\\s+struct|abstract\\s+type|primitive\\s+type)\\s+((?:[[:alpha:]_\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{So}←-⇿])(?:[[:word:]_!\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{Mn}-¡]|[^\\P{Mc}-¡]|[^\\P{Nd}-¡]|[^\\P{Pc}-¡]|[^\\P{Sk}-¡]|[^\\P{Me}-¡]|[^\\P{No}-¡]|[′-‷⁗]|[^\\P{So}←-⇿])*)(\\s*(<:)\\s*(?:[[:alpha:]_\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{So}←-⇿])(?:[[:word:]_!\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lm}\\p{Lo}\\p{Nl}\\p{Sc}⅀-⅄∿⊾⊿⊤⊥∂∅-∇∎∏∐∑∞∟∫-∳⋀-⋃◸-◿♯⟘⟙⟀⟁⦰-⦴⨀-⨆⨉-⨖⨛⨜𝛁𝛛𝛻𝜕𝜵𝝏𝝯𝞉𝞩𝟃ⁱ-⁾₁-₎∠-∢⦛-⦯℘℮゛-゜𝟎-𝟡]|[^\\P{Mn}-¡]|[^\\P{Mc}-¡]|[^\\P{Nd}-¡]|[^\\P{Pc}-¡]|[^\\P{Sk}-¡]|[^\\P{Me}-¡]|[^\\P{No}-¡]|[′-‷⁗]|[^\\P{So}←-⇿])*(?:{.*})?)?",name:"meta.type.julia"}]}},scopeName:"source.julia",embeddedLangs:["cpp","python","javascript","r","sql"],aliases:["jl"]})]));}};});
2
- //# sourceMappingURL=julia-b0cea839.cjs.js.map