@blocknote/core 0.17.0 → 0.18.0

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 (213) hide show
  1. package/dist/angular-html-HQGguTAE.js +33 -0
  2. package/dist/angular-html-HQGguTAE.js.map +1 -0
  3. package/dist/angular-ts-q9PqJiJb.js +22 -0
  4. package/dist/angular-ts-q9PqJiJb.js.map +1 -0
  5. package/dist/astro-0iWgpDaK.js +17 -0
  6. package/dist/astro-0iWgpDaK.js.map +1 -0
  7. package/dist/blade-C3Z8AhvY.js +19 -0
  8. package/dist/blade-C3Z8AhvY.js.map +1 -0
  9. package/dist/blocknote.js +2353 -1501
  10. package/dist/blocknote.js.map +1 -1
  11. package/dist/blocknote.umd.cjs +10 -7
  12. package/dist/blocknote.umd.cjs.map +1 -1
  13. package/dist/c-TKJGJdXV.js +7 -0
  14. package/dist/c-TKJGJdXV.js.map +1 -0
  15. package/dist/coffee-CN_y6cG3.js +9 -0
  16. package/dist/coffee-CN_y6cG3.js.map +1 -0
  17. package/dist/cpp-Be_e67JE.js +19 -0
  18. package/dist/cpp-Be_e67JE.js.map +1 -0
  19. package/dist/css-DHLSoXzW.js +7 -0
  20. package/dist/css-DHLSoXzW.js.map +1 -0
  21. package/dist/glsl-8qSUIm5B.js +9 -0
  22. package/dist/glsl-8qSUIm5B.js.map +1 -0
  23. package/dist/graphql-D7_Dk2ma.js +15 -0
  24. package/dist/graphql-D7_Dk2ma.js.map +1 -0
  25. package/dist/haml-S3dmcfEW.js +11 -0
  26. package/dist/haml-S3dmcfEW.js.map +1 -0
  27. package/dist/handlebars-DaIrqVg3.js +15 -0
  28. package/dist/handlebars-DaIrqVg3.js.map +1 -0
  29. package/dist/html-Bx3A18fV.js +11 -0
  30. package/dist/html-Bx3A18fV.js.map +1 -0
  31. package/dist/html-derivative-Cf3KTZBS.js +9 -0
  32. package/dist/html-derivative-Cf3KTZBS.js.map +1 -0
  33. package/dist/http-BphR83YX.js +15 -0
  34. package/dist/http-BphR83YX.js.map +1 -0
  35. package/dist/imba-CmP25v0O.js +9 -0
  36. package/dist/imba-CmP25v0O.js.map +1 -0
  37. package/dist/java-Dg4kxH6C.js +7 -0
  38. package/dist/java-Dg4kxH6C.js.map +1 -0
  39. package/dist/javascript-CipAzIn1.js +7 -0
  40. package/dist/javascript-CipAzIn1.js.map +1 -0
  41. package/dist/jinja-tioldiz6.js +12 -0
  42. package/dist/jinja-tioldiz6.js.map +1 -0
  43. package/dist/jison-DWJFEE_I.js +9 -0
  44. package/dist/jison-DWJFEE_I.js.map +1 -0
  45. package/dist/json-_04EL6MS.js +7 -0
  46. package/dist/json-_04EL6MS.js.map +1 -0
  47. package/dist/json5-Dwmp5XFI.js +7 -0
  48. package/dist/json5-Dwmp5XFI.js.map +1 -0
  49. package/dist/jsonc-LqD5auy0.js +7 -0
  50. package/dist/jsonc-LqD5auy0.js.map +1 -0
  51. package/dist/jsonl-B4yVuYQH.js +7 -0
  52. package/dist/jsonl-B4yVuYQH.js.map +1 -0
  53. package/dist/jsx-Mg4WaD5k.js +7 -0
  54. package/dist/jsx-Mg4WaD5k.js.map +1 -0
  55. package/dist/julia-CWi-ZdpN.js +17 -0
  56. package/dist/julia-CWi-ZdpN.js.map +1 -0
  57. package/dist/less-BBvTHIGe.js +7 -0
  58. package/dist/less-BBvTHIGe.js.map +1 -0
  59. package/dist/markdown-DAXqtk9a.js +7 -0
  60. package/dist/markdown-DAXqtk9a.js.map +1 -0
  61. package/dist/marko-0aaNgUGV.js +15 -0
  62. package/dist/marko-0aaNgUGV.js.map +1 -0
  63. package/dist/mdc-hXJ2B4O0.js +13 -0
  64. package/dist/mdc-hXJ2B4O0.js.map +1 -0
  65. package/dist/mdx-CSCKbb_f.js +7 -0
  66. package/dist/mdx-CSCKbb_f.js.map +1 -0
  67. package/dist/php-B_-4RJ09.js +19 -0
  68. package/dist/php-B_-4RJ09.js.map +1 -0
  69. package/dist/postcss-SJfTvo_B.js +7 -0
  70. package/dist/postcss-SJfTvo_B.js.map +1 -0
  71. package/dist/pug-3q2tx0nf.js +13 -0
  72. package/dist/pug-3q2tx0nf.js.map +1 -0
  73. package/dist/python-Dpup1-fE.js +7 -0
  74. package/dist/python-Dpup1-fE.js.map +1 -0
  75. package/dist/r-Chyv38Fv.js +7 -0
  76. package/dist/r-Chyv38Fv.js.map +1 -0
  77. package/dist/regexp-BF0hfxNW.js +7 -0
  78. package/dist/regexp-BF0hfxNW.js.map +1 -0
  79. package/dist/sass-p2RMoqDT.js +7 -0
  80. package/dist/sass-p2RMoqDT.js.map +1 -0
  81. package/dist/scss-DmlHSoOY.js +9 -0
  82. package/dist/scss-DmlHSoOY.js.map +1 -0
  83. package/dist/shellscript-CZpPN8_x.js +7 -0
  84. package/dist/shellscript-CZpPN8_x.js.map +1 -0
  85. package/dist/sql-DtlkUz2m.js +7 -0
  86. package/dist/sql-DtlkUz2m.js.map +1 -0
  87. package/dist/style.css +1 -1
  88. package/dist/stylus-DEr8eSLm.js +7 -0
  89. package/dist/stylus-DEr8eSLm.js.map +1 -0
  90. package/dist/svelte-BRIJF62h.js +15 -0
  91. package/dist/svelte-BRIJF62h.js.map +1 -0
  92. package/dist/ts-tags-qkUtuI0N.js +42 -0
  93. package/dist/ts-tags-qkUtuI0N.js.map +1 -0
  94. package/dist/tsx-DTfbgJxi.js +7 -0
  95. package/dist/tsx-DTfbgJxi.js.map +1 -0
  96. package/dist/typescript-CCd4aQHh.js +7 -0
  97. package/dist/typescript-CCd4aQHh.js.map +1 -0
  98. package/dist/vue-B3TdbERm.js +32 -0
  99. package/dist/vue-B3TdbERm.js.map +1 -0
  100. package/dist/vue-html-BGmTBZk0.js +11 -0
  101. package/dist/vue-html-BGmTBZk0.js.map +1 -0
  102. package/dist/wasm-VDIDph3E.js +7 -0
  103. package/dist/wasm-VDIDph3E.js.map +1 -0
  104. package/dist/webpack-stats.json +1 -1
  105. package/dist/wgsl-2np_U3Z8.js +7 -0
  106. package/dist/wgsl-2np_U3Z8.js.map +1 -0
  107. package/dist/xml-CNyphW9R.js +9 -0
  108. package/dist/xml-CNyphW9R.js.map +1 -0
  109. package/dist/yaml-DxFiVFcM.js +7 -0
  110. package/dist/yaml-DxFiVFcM.js.map +1 -0
  111. package/package.json +6 -4
  112. package/src/api/blockManipulation/commands/insertBlocks/__snapshots__/insertBlocks.test.ts.snap +30 -0
  113. package/src/api/blockManipulation/commands/mergeBlocks/__snapshots__/mergeBlocks.test.ts.snap +25 -0
  114. package/src/api/blockManipulation/commands/moveBlock/__snapshots__/moveBlock.test.ts.snap +40 -0
  115. package/src/api/blockManipulation/commands/removeBlocks/__snapshots__/removeBlocks.test.ts.snap +10 -0
  116. package/src/api/blockManipulation/commands/replaceBlocks/__snapshots__/replaceBlocks.test.ts.snap +40 -0
  117. package/src/api/blockManipulation/commands/splitBlock/__snapshots__/splitBlock.test.ts.snap +30 -0
  118. package/src/api/blockManipulation/commands/updateBlock/__snapshots__/updateBlock.test.ts.snap +87 -0
  119. package/src/api/clipboard/clipboard.test.ts +1 -1
  120. package/src/api/clipboard/fromClipboard/acceptedMIMETypes.ts +1 -0
  121. package/src/api/clipboard/fromClipboard/handleVSCodePaste.ts +49 -0
  122. package/src/api/clipboard/fromClipboard/pasteExtension.ts +6 -0
  123. package/src/api/exporters/html/__snapshots__/codeBlock/defaultLanguage/external.html +1 -0
  124. package/src/api/exporters/html/__snapshots__/codeBlock/defaultLanguage/internal.html +1 -0
  125. package/src/api/exporters/html/__snapshots__/codeBlock/empty/external.html +1 -0
  126. package/src/api/exporters/html/__snapshots__/codeBlock/empty/internal.html +1 -0
  127. package/src/api/exporters/html/__snapshots__/codeBlock/python/external.html +1 -0
  128. package/src/api/exporters/html/__snapshots__/codeBlock/python/internal.html +1 -0
  129. package/src/api/exporters/html/__snapshots__/image/basic/internal.html +1 -1
  130. package/src/api/exporters/html/__snapshots__/image/nested/internal.html +1 -1
  131. package/src/api/exporters/html/__snapshots__/image/noName/internal.html +1 -1
  132. package/src/api/exporters/html/__snapshots__/image/noPreview/internal.html +1 -1
  133. package/src/api/exporters/html/__snapshots__/lists/basic/internal.html +1 -1
  134. package/src/api/exporters/html/__snapshots__/lists/nested/internal.html +1 -1
  135. package/src/api/exporters/html/__snapshots__/simpleImage/basic/external.html +1 -1
  136. package/src/api/exporters/html/__snapshots__/simpleImage/basic/internal.html +1 -1
  137. package/src/api/exporters/html/__snapshots__/simpleImage/nested/external.html +1 -1
  138. package/src/api/exporters/html/__snapshots__/simpleImage/nested/internal.html +1 -1
  139. package/src/api/exporters/html/__snapshots__/simpleImage/noCaption/external.html +1 -1
  140. package/src/api/exporters/html/__snapshots__/simpleImage/noName/external.html +1 -1
  141. package/src/api/exporters/html/__snapshots__/simpleImage/noName/internal.html +1 -1
  142. package/src/api/exporters/html/__snapshots__/simpleImage/noPreview/external.html +1 -1
  143. package/src/api/exporters/html/__snapshots__/simpleImage/noPreview/internal.html +1 -1
  144. package/src/api/exporters/html/__snapshots__/table/allColWidths/external.html +1 -0
  145. package/src/api/exporters/html/__snapshots__/table/allColWidths/internal.html +1 -0
  146. package/src/api/exporters/html/__snapshots__/table/basic/external.html +1 -0
  147. package/src/api/exporters/html/__snapshots__/table/basic/internal.html +1 -0
  148. package/src/api/exporters/html/__snapshots__/table/mixedColWidths/external.html +1 -0
  149. package/src/api/exporters/html/__snapshots__/table/mixedColWidths/internal.html +1 -0
  150. package/src/api/exporters/html/internalHTMLSerializer.ts +2 -7
  151. package/src/api/exporters/html/util/serializeBlocksInternalHTML.ts +20 -15
  152. package/src/api/exporters/markdown/__snapshots__/codeBlock/defaultLanguage/markdown.md +3 -0
  153. package/src/api/exporters/markdown/__snapshots__/codeBlock/empty/markdown.md +2 -0
  154. package/src/api/exporters/markdown/__snapshots__/codeBlock/python/markdown.md +3 -0
  155. package/src/api/exporters/markdown/__snapshots__/table/allColWidths/markdown.md +5 -0
  156. package/src/api/exporters/markdown/__snapshots__/table/basic/markdown.md +5 -0
  157. package/src/api/exporters/markdown/__snapshots__/table/mixedColWidths/markdown.md +5 -0
  158. package/src/api/nodeConversions/__snapshots__/nodeConversions.test.ts.snap +711 -0
  159. package/src/api/nodeConversions/blockToNode.ts +13 -2
  160. package/src/api/nodeConversions/nodeToBlock.ts +11 -1
  161. package/src/api/parsers/html/__snapshots__/parse-notion-html.json +5 -0
  162. package/src/api/parsers/markdown/parseMarkdown.ts +1 -1
  163. package/src/api/testUtil/cases/defaultSchema.ts +95 -0
  164. package/src/api/testUtil/partialBlockTestUtil.ts +26 -1
  165. package/src/blocks/CodeBlockContent/CodeBlockContent.ts +369 -0
  166. package/src/blocks/CodeBlockContent/defaultSupportedLanguages.ts +96 -0
  167. package/src/blocks/FileBlockContent/fileBlockHelpers.ts +7 -0
  168. package/src/blocks/TableBlockContent/TableBlockContent.ts +83 -8
  169. package/src/blocks/TableBlockContent/TableExtension.ts +10 -1
  170. package/src/blocks/defaultBlocks.ts +4 -0
  171. package/src/editor/Block.css +49 -2
  172. package/src/editor/editor.css +33 -5
  173. package/src/extensions/FormattingToolbar/FormattingToolbarPlugin.ts +8 -0
  174. package/src/extensions/KeyboardShortcuts/KeyboardShortcutsExtension.ts +30 -29
  175. package/src/extensions/Placeholder/PlaceholderPlugin.ts +5 -0
  176. package/src/extensions/SuggestionMenu/SuggestionPlugin.ts +5 -0
  177. package/src/extensions/SuggestionMenu/getDefaultEmojiPickerItems.ts +2 -1
  178. package/src/extensions/SuggestionMenu/getDefaultSlashMenuItems.ts +18 -0
  179. package/src/extensions/TableHandles/TableHandlesPlugin.ts +224 -119
  180. package/src/i18n/locales/ar.ts +6 -0
  181. package/src/i18n/locales/de.ts +299 -294
  182. package/src/i18n/locales/en.ts +6 -0
  183. package/src/i18n/locales/es.ts +310 -274
  184. package/src/i18n/locales/fr.ts +6 -0
  185. package/src/i18n/locales/is.ts +6 -0
  186. package/src/i18n/locales/ja.ts +6 -0
  187. package/src/i18n/locales/ko.ts +6 -0
  188. package/src/i18n/locales/nl.ts +6 -0
  189. package/src/i18n/locales/pl.ts +6 -0
  190. package/src/i18n/locales/pt.ts +6 -0
  191. package/src/i18n/locales/ru.ts +6 -0
  192. package/src/i18n/locales/vi.ts +6 -0
  193. package/src/i18n/locales/zh.ts +6 -0
  194. package/src/index.ts +10 -5
  195. package/src/schema/blocks/types.ts +2 -0
  196. package/types/src/api/blockManipulation/setupTestEnv.d.ts +22 -8
  197. package/types/src/api/clipboard/fromClipboard/acceptedMIMETypes.d.ts +1 -1
  198. package/types/src/api/clipboard/fromClipboard/handleVSCodePaste.d.ts +3 -0
  199. package/types/src/api/exporters/html/util/serializeBlocksInternalHTML.d.ts +2 -3
  200. package/types/src/api/testUtil/cases/customBlocks.d.ts +22 -8
  201. package/types/src/api/testUtil/cases/customInlineContent.d.ts +22 -8
  202. package/types/src/api/testUtil/cases/customStyles.d.ts +22 -8
  203. package/types/src/blocks/CodeBlockContent/CodeBlockContent.d.ts +57 -0
  204. package/types/src/blocks/CodeBlockContent/defaultSupportedLanguages.d.ts +6 -0
  205. package/types/src/blocks/TableBlockContent/TableBlockContent.d.ts +0 -12
  206. package/types/src/blocks/TableBlockContent/TableExtension.d.ts +3 -0
  207. package/types/src/blocks/defaultBlocks.d.ts +45 -16
  208. package/types/src/extensions/TableHandles/TableHandlesPlugin.d.ts +9 -5
  209. package/types/src/i18n/locales/de.d.ts +6 -0
  210. package/types/src/i18n/locales/en.d.ts +6 -0
  211. package/types/src/i18n/locales/es.d.ts +6 -0
  212. package/types/src/index.d.ts +7 -5
  213. package/types/src/schema/blocks/types.d.ts +2 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pug-3q2tx0nf.js","sources":["../node_modules/shiki/dist/langs/pug.mjs"],"sourcesContent":["import javascript from './javascript.mjs'\nimport css from './css.mjs'\nimport html from './html.mjs'\n\nconst lang = Object.freeze(JSON.parse(\"{\\\"displayName\\\":\\\"Pug\\\",\\\"name\\\":\\\"pug\\\",\\\"patterns\\\":[{\\\"comment\\\":\\\"Doctype declaration.\\\",\\\"match\\\":\\\"^(!!!|doctype)(\\\\\\\\s*[a-zA-Z0-9-_]+)?\\\",\\\"name\\\":\\\"meta.tag.sgml.doctype.html\\\"},{\\\"begin\\\":\\\"^(\\\\\\\\s*)//-\\\",\\\"comment\\\":\\\"Unbuffered (pug-only) comments.\\\",\\\"end\\\":\\\"^(?!(\\\\\\\\1\\\\\\\\s)|\\\\\\\\s*$)\\\",\\\"name\\\":\\\"comment.unbuffered.block.pug\\\"},{\\\"begin\\\":\\\"^(\\\\\\\\s*)//\\\",\\\"comment\\\":\\\"Buffered (html) comments.\\\",\\\"end\\\":\\\"^(?!(\\\\\\\\1\\\\\\\\s)|\\\\\\\\s*$)\\\",\\\"name\\\":\\\"string.comment.buffered.block.pug\\\",\\\"patterns\\\":[{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"invalid.illegal.comment.comment.block.pug\\\"}},\\\"comment\\\":\\\"Buffered comments inside buffered comments will generate invalid html.\\\",\\\"match\\\":\\\"^\\\\\\\\s*(//)(?!-)\\\",\\\"name\\\":\\\"string.comment.buffered.block.pug\\\"}]},{\\\"begin\\\":\\\"<!--\\\",\\\"end\\\":\\\"--\\\\\\\\s*>\\\",\\\"name\\\":\\\"comment.unbuffered.block.pug\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"--\\\",\\\"name\\\":\\\"invalid.illegal.comment.comment.block.pug\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\s*)-$\\\",\\\"comment\\\":\\\"Unbuffered code block.\\\",\\\"end\\\":\\\"^(?!(\\\\\\\\1\\\\\\\\s)|\\\\\\\\s*$)\\\",\\\"name\\\":\\\"source.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.js\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\s*)(script)((\\\\\\\\.$)|(?=[^\\\\\\\\n]*((text|application)/javascript|module).*\\\\\\\\.$))\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.pug\\\"}},\\\"comment\\\":\\\"Script tag with JavaScript code.\\\",\\\"end\\\":\\\"^(?!(\\\\\\\\1\\\\\\\\s)|\\\\\\\\s*$)\\\",\\\"name\\\":\\\"meta.tag.other\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G(?=\\\\\\\\()\\\",\\\"end\\\":\\\"$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tag_attributes\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\G(?=[.#])\\\",\\\"end\\\":\\\"$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#complete_tag\\\"}]},{\\\"include\\\":\\\"source.js\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\s*)(style)((\\\\\\\\.$)|(?=[.#(].*\\\\\\\\.$))\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"entity.name.tag.pug\\\"}},\\\"comment\\\":\\\"Style tag with CSS code.\\\",\\\"end\\\":\\\"^(?!(\\\\\\\\1\\\\\\\\s)|\\\\\\\\s*$)\\\",\\\"name\\\":\\\"meta.tag.other\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G(?=\\\\\\\\()\\\",\\\"end\\\":\\\"$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tag_attributes\\\"}]},{\\\"begin\\\":\\\"\\\\\\\\G(?=[.#])\\\",\\\"end\\\":\\\"$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#complete_tag\\\"}]},{\\\"include\\\":\\\"source.css\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\s*):(sass)(?=\\\\\\\\(|$)\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"constant.language.name.sass.filter.pug\\\"}},\\\"end\\\":\\\"^(?!(\\\\\\\\1\\\\\\\\s)|\\\\\\\\s*$)\\\",\\\"name\\\":\\\"source.sass.filter.pug\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tag_attributes\\\"},{\\\"include\\\":\\\"source.sass\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\s*):(scss)(?=\\\\\\\\(|$)\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"constant.language.name.scss.filter.pug\\\"}},\\\"end\\\":\\\"^(?!(\\\\\\\\1\\\\\\\\s)|\\\\\\\\s*$)\\\",\\\"name\\\":\\\"source.css.scss.filter.pug\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tag_attributes\\\"},{\\\"include\\\":\\\"source.css.scss\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\s*):(less)(?=\\\\\\\\(|$)\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"constant.language.name.less.filter.pug\\\"}},\\\"end\\\":\\\"^(?!(\\\\\\\\1\\\\\\\\s)|\\\\\\\\s*$)\\\",\\\"name\\\":\\\"source.less.filter.pug\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tag_attributes\\\"},{\\\"include\\\":\\\"source.less\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\s*):(stylus)(?=\\\\\\\\(|$)\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"constant.language.name.stylus.filter.pug\\\"}},\\\"end\\\":\\\"^(?!(\\\\\\\\1\\\\\\\\s)|\\\\\\\\s*$)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tag_attributes\\\"},{\\\"include\\\":\\\"source.stylus\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\s*):(coffee(-?script)?)(?=\\\\\\\\(|$)\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"constant.language.name.coffeescript.filter.pug\\\"}},\\\"end\\\":\\\"^(?!(\\\\\\\\1\\\\\\\\s)|\\\\\\\\s*$)\\\",\\\"name\\\":\\\"source.coffeescript.filter.pug\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tag_attributes\\\"},{\\\"include\\\":\\\"source.coffee\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\s*):(uglify-js)(?=\\\\\\\\(|$)\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"constant.language.name.js.filter.pug\\\"}},\\\"end\\\":\\\"^(?!(\\\\\\\\1\\\\\\\\s)|\\\\\\\\s*$)\\\",\\\"name\\\":\\\"source.js.filter.pug\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tag_attributes\\\"},{\\\"include\\\":\\\"source.js\\\"}]},{\\\"begin\\\":\\\"^(\\\\\\\\s*)((:(?=.))|(:$))\\\",\\\"beginCaptures\\\":{\\\"4\\\":{\\\"name\\\":\\\"invalid.illegal.empty.generic.filter.pug\\\"}},\\\"comment\\\":\\\"Generic Pug filter.\\\",\\\"end\\\":\\\"^(?!(\\\\\\\\1\\\\\\\\s)|\\\\\\\\s*$)\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G(?<=:)(?=.)\\\",\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"name.generic.filter.pug\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\G\\\\\\\\(\\\",\\\"name\\\":\\\"invalid.illegal.name.generic.filter.pug\\\"},{\\\"match\\\":\\\"[\\\\\\\\w-]\\\",\\\"name\\\":\\\"constant.language.name.generic.filter.pug\\\"},{\\\"include\\\":\\\"#tag_attributes\\\"},{\\\"match\\\":\\\"\\\\\\\\W\\\",\\\"name\\\":\\\"invalid.illegal.name.generic.filter.pug\\\"}]}]},{\\\"begin\\\":\\\"^(\\\\\\\\s*)(?:(?=\\\\\\\\.$)|(?:(?=[\\\\\\\\w.#].*?\\\\\\\\.$)(?=(?:(?:(?:(?:(?:#[\\\\\\\\w-]+)|(?:\\\\\\\\.[\\\\\\\\w-]+))|(?:(?:[#!]\\\\\\\\{[^}]*\\\\\\\\})|(?:\\\\\\\\w(?:(?:[\\\\\\\\w:-]+[\\\\\\\\w-])|(?:[\\\\\\\\w-]*)))))(?:(?:#[\\\\\\\\w-]+)|(?:\\\\\\\\.[\\\\\\\\w-]+)|(?:\\\\\\\\((?:[^()\\\\\\\\'\\\\\\\\\\\\\\\"]*(?:(?:\\\\\\\\'(?:[^\\\\\\\\']|(?:(?<!\\\\\\\\\\\\\\\\)\\\\\\\\\\\\\\\\\\\\\\\\'))*\\\\\\\\')|(?:\\\\\\\\\\\\\\\"(?:[^\\\\\\\\\\\\\\\"]|(?:(?<!\\\\\\\\\\\\\\\\)\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"))*\\\\\\\\\\\\\\\")))*[^()]*\\\\\\\\))*)*)(?:(?:(?::\\\\\\\\s+)|(?<=\\\\\\\\)))(?:(?:(?:(?:#[\\\\\\\\w-]+)|(?:\\\\\\\\.[\\\\\\\\w-]+))|(?:(?:[#!]\\\\\\\\{[^}]*\\\\\\\\})|(?:\\\\\\\\w(?:(?:[\\\\\\\\w:-]+[\\\\\\\\w-])|(?:[\\\\\\\\w-]*)))))(?:(?:#[\\\\\\\\w-]+)|(?:\\\\\\\\.[\\\\\\\\w-]+)|(?:\\\\\\\\((?:[^()\\\\\\\\'\\\\\\\\\\\\\\\"]*(?:(?:\\\\\\\\'(?:[^\\\\\\\\']|(?:(?<!\\\\\\\\\\\\\\\\)\\\\\\\\\\\\\\\\\\\\\\\\'))*\\\\\\\\')|(?:\\\\\\\\\\\\\\\"(?:[^\\\\\\\\\\\\\\\"]|(?:(?<!\\\\\\\\\\\\\\\\)\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"))*\\\\\\\\\\\\\\\")))*[^()]*\\\\\\\\))*)*))*)\\\\\\\\.$)(?:(?:(#[\\\\\\\\w-]+)|(\\\\\\\\.[\\\\\\\\w-]+))|((?:[#!]\\\\\\\\{[^}]*\\\\\\\\})|(?:\\\\\\\\w(?:(?:[\\\\\\\\w:-]+[\\\\\\\\w-])|(?:[\\\\\\\\w-]*)))))))\\\",\\\"beginCaptures\\\":{\\\"2\\\":{\\\"name\\\":\\\"meta.selector.css entity.other.attribute-name.id.css.pug\\\"},\\\"3\\\":{\\\"name\\\":\\\"meta.selector.css entity.other.attribute-name.class.css.pug\\\"},\\\"4\\\":{\\\"name\\\":\\\"meta.tag.other entity.name.tag.pug\\\"}},\\\"comment\\\":\\\"Generated from dot_block_tag.py\\\",\\\"end\\\":\\\"^(?!(\\\\\\\\1\\\\\\\\s)|\\\\\\\\s*$)\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"\\\\\\\\.$\\\",\\\"name\\\":\\\"storage.type.function.pug.dot-block-dot\\\"},{\\\"include\\\":\\\"#tag_attributes\\\"},{\\\"include\\\":\\\"#complete_tag\\\"},{\\\"begin\\\":\\\"^(?=.)\\\",\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"text.block.pug\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_pug\\\"},{\\\"include\\\":\\\"#embedded_html\\\"},{\\\"include\\\":\\\"#html_entity\\\"},{\\\"include\\\":\\\"#interpolated_value\\\"},{\\\"include\\\":\\\"#interpolated_error\\\"}]}]},{\\\"begin\\\":\\\"^\\\\\\\\s*\\\",\\\"comment\\\":\\\"All constructs that generally span a single line starting with any number of white-spaces.\\\",\\\"end\\\":\\\"$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_pug\\\"},{\\\"include\\\":\\\"#blocks_and_includes\\\"},{\\\"include\\\":\\\"#unbuffered_code\\\"},{\\\"include\\\":\\\"#mixin_definition\\\"},{\\\"include\\\":\\\"#mixin_call\\\"},{\\\"include\\\":\\\"#flow_control\\\"},{\\\"include\\\":\\\"#flow_control_each\\\"},{\\\"include\\\":\\\"#case_conds\\\"},{\\\"begin\\\":\\\"\\\\\\\\|\\\",\\\"comment\\\":\\\"Tag pipe text line.\\\",\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"text.block.pipe.pug\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_pug\\\"},{\\\"include\\\":\\\"#embedded_html\\\"},{\\\"include\\\":\\\"#html_entity\\\"},{\\\"include\\\":\\\"#interpolated_value\\\"},{\\\"include\\\":\\\"#interpolated_error\\\"}]},{\\\"include\\\":\\\"#printed_expression\\\"},{\\\"begin\\\":\\\"\\\\\\\\G(?=(#[^{\\\\\\\\w-])|[^\\\\\\\\w.#])\\\",\\\"comment\\\":\\\"Line starting with characters incompatible with tag name/id/class is standalone text.\\\",\\\"end\\\":\\\"$\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"</?(?=[!#])\\\",\\\"end\\\":\\\">|$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_pug\\\"},{\\\"include\\\":\\\"#interpolated_value\\\"},{\\\"include\\\":\\\"#interpolated_error\\\"}]},{\\\"include\\\":\\\"#inline_pug\\\"},{\\\"include\\\":\\\"#embedded_html\\\"},{\\\"include\\\":\\\"#html_entity\\\"},{\\\"include\\\":\\\"#interpolated_value\\\"},{\\\"include\\\":\\\"#interpolated_error\\\"}]},{\\\"include\\\":\\\"#complete_tag\\\"}]}],\\\"repository\\\":{\\\"babel_parens\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"end\\\":\\\"\\\\\\\\)|(({\\\\\\\\s*)?$)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#babel_parens\\\"},{\\\"include\\\":\\\"source.js\\\"}]},\\\"blocks_and_includes\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.import.include.pug\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.control.import.include.pug\\\"}},\\\"comment\\\":\\\"Template blocks and includes.\\\",\\\"match\\\":\\\"(extends|include|yield|append|prepend|block( (append|prepend))?)\\\\\\\\s+(.*)$\\\",\\\"name\\\":\\\"meta.first-class.pug\\\"},\\\"case_conds\\\":{\\\"begin\\\":\\\"(default|when)((\\\\\\\\s+|(?=:))|$)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.function.pug\\\"}},\\\"comment\\\":\\\"Pug case conditionals.\\\",\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"meta.control.flow.pug\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G(?!:)\\\",\\\"end\\\":\\\"(?=:\\\\\\\\s+)|$\\\",\\\"name\\\":\\\"js.embedded.control.flow.pug\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#case_when_paren\\\"},{\\\"include\\\":\\\"source.js\\\"}]},{\\\"begin\\\":\\\":\\\\\\\\s+\\\",\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"tag.case.control.flow.pug\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#complete_tag\\\"}]}]},\\\"case_when_paren\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"name\\\":\\\"js.when.control.flow.pug\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#case_when_paren\\\"},{\\\"match\\\":\\\":\\\",\\\"name\\\":\\\"invalid.illegal.name.tag.pug\\\"},{\\\"include\\\":\\\"source.js\\\"}]},\\\"complete_tag\\\":{\\\"begin\\\":\\\"(?=[\\\\\\\\w.#])|(:\\\\\\\\s*)\\\",\\\"end\\\":\\\"(\\\\\\\\.?$)|(?=:.)\\\",\\\"endCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.function.pug.dot-block-dot\\\"}},\\\"patterns\\\":[{\\\"include\\\":\\\"#blocks_and_includes\\\"},{\\\"include\\\":\\\"#unbuffered_code\\\"},{\\\"include\\\":\\\"#mixin_call\\\"},{\\\"include\\\":\\\"#flow_control\\\"},{\\\"include\\\":\\\"#flow_control_each\\\"},{\\\"match\\\":\\\"(?<=:)\\\\\\\\w.*$\\\",\\\"name\\\":\\\"invalid.illegal.name.tag.pug\\\"},{\\\"include\\\":\\\"#tag_name\\\"},{\\\"include\\\":\\\"#tag_id\\\"},{\\\"include\\\":\\\"#tag_classes\\\"},{\\\"include\\\":\\\"#tag_attributes\\\"},{\\\"include\\\":\\\"#tag_mixin_attributes\\\"},{\\\"captures\\\":{\\\"2\\\":{\\\"name\\\":\\\"invalid.illegal.end.tag.pug\\\"},\\\"4\\\":{\\\"name\\\":\\\"invalid.illegal.end.tag.pug\\\"}},\\\"match\\\":\\\"((\\\\\\\\.)\\\\\\\\s+$)|((:)\\\\\\\\s*$)\\\"},{\\\"include\\\":\\\"#printed_expression\\\"},{\\\"include\\\":\\\"#tag_text\\\"}]},\\\"embedded_html\\\":{\\\"begin\\\":\\\"(?=<[^>]*>)\\\",\\\"end\\\":\\\"$|(?=>)\\\",\\\"name\\\":\\\"html\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"text.html.basic\\\"},{\\\"include\\\":\\\"#interpolated_value\\\"},{\\\"include\\\":\\\"#interpolated_error\\\"}]},\\\"flow_control\\\":{\\\"begin\\\":\\\"(for|if|else if|else|until|while|unless|case)(\\\\\\\\s+|$)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.function.pug\\\"}},\\\"comment\\\":\\\"Pug control flow.\\\",\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"meta.control.flow.pug\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\",\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"js.embedded.control.flow.pug\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.js\\\"}]}]},\\\"flow_control_each\\\":{\\\"begin\\\":\\\"(each)(\\\\\\\\s+|$)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.function.pug\\\"}},\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"meta.control.flow.pug.each\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"([\\\\\\\\w$_]+)(?:\\\\\\\\s*,\\\\\\\\s*([\\\\\\\\w$_]+))?\\\",\\\"name\\\":\\\"variable.other.pug.each-var\\\"},{\\\"begin\\\":\\\"\\\",\\\"end\\\":\\\"$\\\",\\\"name\\\":\\\"js.embedded.control.flow.pug\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"source.js\\\"}]}]},\\\"html_entity\\\":{\\\"patterns\\\":[{\\\"match\\\":\\\"(&)([a-zA-Z0-9]+|#\\\\\\\\d+|#x[0-9a-fA-F]+)(;)\\\",\\\"name\\\":\\\"constant.character.entity.html.text.pug\\\"},{\\\"match\\\":\\\"[<>&]\\\",\\\"name\\\":\\\"invalid.illegal.html_entity.text.pug\\\"}]},\\\"inline_pug\\\":{\\\"begin\\\":\\\"(?<!\\\\\\\\\\\\\\\\)(#\\\\\\\\[)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.pug\\\"},\\\"2\\\":{\\\"name\\\":\\\"entity.name.function.pug\\\"}},\\\"end\\\":\\\"(\\\\\\\\])\\\",\\\"name\\\":\\\"inline.pug\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_pug\\\"},{\\\"include\\\":\\\"#mixin_call\\\"},{\\\"begin\\\":\\\"(?<!\\\\\\\\])(?=[\\\\\\\\w.#])|(:\\\\\\\\s*)\\\",\\\"end\\\":\\\"(?=\\\\\\\\]|(:.)|=|\\\\\\\\s)\\\",\\\"name\\\":\\\"tag.inline.pug\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tag_name\\\"},{\\\"include\\\":\\\"#tag_id\\\"},{\\\"include\\\":\\\"#tag_classes\\\"},{\\\"include\\\":\\\"#tag_attributes\\\"},{\\\"include\\\":\\\"#tag_mixin_attributes\\\"},{\\\"include\\\":\\\"#inline_pug\\\"},{\\\"match\\\":\\\"\\\\\\\\[\\\",\\\"name\\\":\\\"invalid.illegal.tag.pug\\\"}]},{\\\"include\\\":\\\"#unbuffered_code\\\"},{\\\"include\\\":\\\"#printed_expression\\\"},{\\\"match\\\":\\\"\\\\\\\\[\\\",\\\"name\\\":\\\"invalid.illegal.tag.pug\\\"},{\\\"include\\\":\\\"#inline_pug_text\\\"}]},\\\"inline_pug_text\\\":{\\\"begin\\\":\\\"\\\",\\\"end\\\":\\\"(?=\\\\\\\\])\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_pug_text\\\"}]},{\\\"include\\\":\\\"#inline_pug\\\"},{\\\"include\\\":\\\"#embedded_html\\\"},{\\\"include\\\":\\\"#html_entity\\\"},{\\\"include\\\":\\\"#interpolated_value\\\"},{\\\"include\\\":\\\"#interpolated_error\\\"}]},\\\"interpolated_error\\\":{\\\"match\\\":\\\"(?<!\\\\\\\\\\\\\\\\)[#!]\\\\\\\\{(?=[^}]*$)\\\",\\\"name\\\":\\\"invalid.illegal.tag.pug\\\"},\\\"interpolated_value\\\":{\\\"begin\\\":\\\"(?<!\\\\\\\\\\\\\\\\)[#!]\\\\\\\\{(?=.*?\\\\\\\\})\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"name\\\":\\\"string.interpolated.pug\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"{\\\",\\\"name\\\":\\\"invalid.illegal.tag.pug\\\"},{\\\"include\\\":\\\"source.js\\\"}]},\\\"js_braces\\\":{\\\"begin\\\":\\\"\\\\\\\\{\\\",\\\"end\\\":\\\"\\\\\\\\}\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#js_braces\\\"},{\\\"include\\\":\\\"source.js\\\"}]},\\\"js_brackets\\\":{\\\"begin\\\":\\\"\\\\\\\\[\\\",\\\"end\\\":\\\"\\\\\\\\]\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#js_brackets\\\"},{\\\"include\\\":\\\"source.js\\\"}]},\\\"js_parens\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#js_parens\\\"},{\\\"include\\\":\\\"source.js\\\"}]},\\\"mixin_call\\\":{\\\"begin\\\":\\\"((?:mixin\\\\\\\\s+)|\\\\\\\\+)([\\\\\\\\w-]+)\\\",\\\"beginCaptures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.function.pug\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.tag.other entity.name.function.pug\\\"}},\\\"end\\\":\\\"(?!\\\\\\\\()|$\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"(?<!\\\\\\\\))\\\\\\\\(\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"name\\\":\\\"args.mixin.pug\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#js_parens\\\"},{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"meta.tag.other entity.other.attribute-name.tag.pug\\\"}},\\\"match\\\":\\\"([^\\\\\\\\s(),=/]+)\\\\\\\\s*=\\\\\\\\s*\\\"},{\\\"include\\\":\\\"source.js\\\"}]},{\\\"include\\\":\\\"#tag_attributes\\\"}]},\\\"mixin_definition\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"storage.type.function.pug\\\"},\\\"2\\\":{\\\"name\\\":\\\"meta.tag.other entity.name.function.pug\\\"},\\\"3\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.js\\\"},\\\"4\\\":{\\\"name\\\":\\\"variable.parameter.function.js\\\"},\\\"5\\\":{\\\"name\\\":\\\"punctuation.definition.parameters.begin.js\\\"}},\\\"match\\\":\\\"(mixin\\\\\\\\s+)([\\\\\\\\w-]+)(?:(\\\\\\\\()\\\\\\\\s*((?:[a-zA-Z_]\\\\\\\\w*\\\\\\\\s*)(?:,\\\\\\\\s*[a-zA-Z_]\\\\\\\\w*\\\\\\\\s*)*)(\\\\\\\\)))?$\\\"},\\\"printed_expression\\\":{\\\"begin\\\":\\\"(!?=)\\\\\\\\s*\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant\\\"}},\\\"end\\\":\\\"(?=\\\\\\\\])|$\\\",\\\"name\\\":\\\"source.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#js_brackets\\\"},{\\\"include\\\":\\\"source.js\\\"}]},\\\"tag_attribute_name\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.other.attribute-name.tag.pug\\\"}},\\\"match\\\":\\\"([^\\\\\\\\s(),=/!]+)\\\\\\\\s*\\\"},\\\"tag_attribute_name_paren\\\":{\\\"begin\\\":\\\"\\\\\\\\(\\\\\\\\s*\\\",\\\"end\\\":\\\"\\\\\\\\)\\\",\\\"name\\\":\\\"entity.other.attribute-name.tag.pug\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tag_attribute_name_paren\\\"},{\\\"include\\\":\\\"#tag_attribute_name\\\"}]},\\\"tag_attributes\\\":{\\\"begin\\\":\\\"(\\\\\\\\(\\\\\\\\s*)\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"constant.name.attribute.tag.pug\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"name\\\":\\\"meta.tag.other\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#tag_attribute_name_paren\\\"},{\\\"include\\\":\\\"#tag_attribute_name\\\"},{\\\"match\\\":\\\"!(?!=)\\\",\\\"name\\\":\\\"invalid.illegal.tag.pug\\\"},{\\\"begin\\\":\\\"=\\\\\\\\s*\\\",\\\"end\\\":\\\"$|(?=,|(?:\\\\\\\\s+[^!%&*\\\\\\\\-+~|<>?/])|\\\\\\\\))\\\",\\\"name\\\":\\\"attribute_value\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#js_parens\\\"},{\\\"include\\\":\\\"#js_brackets\\\"},{\\\"include\\\":\\\"#js_braces\\\"},{\\\"include\\\":\\\"source.js\\\"}]},{\\\"begin\\\":\\\"(?<=[%&*\\\\\\\\-+~|<>:?/])\\\\\\\\s+\\\",\\\"end\\\":\\\"$|(?=,|(?:\\\\\\\\s+[^!%&*\\\\\\\\-+~|<>?/])|\\\\\\\\))\\\",\\\"name\\\":\\\"attribute_value2\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#js_parens\\\"},{\\\"include\\\":\\\"#js_brackets\\\"},{\\\"include\\\":\\\"#js_braces\\\"},{\\\"include\\\":\\\"source.js\\\"}]}]},\\\"tag_classes\\\":{\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"invalid.illegal.tag.pug\\\"}},\\\"match\\\":\\\"\\\\\\\\.([^\\\\\\\\w-])?[\\\\\\\\w-]*\\\",\\\"name\\\":\\\"meta.selector.css entity.other.attribute-name.class.css.pug\\\"},\\\"tag_id\\\":{\\\"match\\\":\\\"#[\\\\\\\\w-]+\\\",\\\"name\\\":\\\"meta.selector.css entity.other.attribute-name.id.css.pug\\\"},\\\"tag_mixin_attributes\\\":{\\\"begin\\\":\\\"(&attributes\\\\\\\\()\\\",\\\"captures\\\":{\\\"1\\\":{\\\"name\\\":\\\"entity.name.function.pug\\\"}},\\\"end\\\":\\\"(\\\\\\\\))\\\",\\\"name\\\":\\\"meta.tag.other\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"attributes(?=\\\\\\\\))\\\",\\\"name\\\":\\\"storage.type.keyword.pug\\\"},{\\\"include\\\":\\\"source.js\\\"}]},\\\"tag_name\\\":{\\\"begin\\\":\\\"([#!]\\\\\\\\{(?=.*?\\\\\\\\}))|(\\\\\\\\w(([\\\\\\\\w:-]+[\\\\\\\\w-])|([\\\\\\\\w-]*)))\\\",\\\"end\\\":\\\"(\\\\\\\\G(?<!\\\\\\\\5[^\\\\\\\\w-]))|\\\\\\\\}|$\\\",\\\"name\\\":\\\"meta.tag.other entity.name.tag.pug\\\",\\\"patterns\\\":[{\\\"begin\\\":\\\"\\\\\\\\G(?<=\\\\\\\\{)\\\",\\\"end\\\":\\\"(?=\\\\\\\\})\\\",\\\"name\\\":\\\"meta.tag.other entity.name.tag.pug\\\",\\\"patterns\\\":[{\\\"match\\\":\\\"{\\\",\\\"name\\\":\\\"invalid.illegal.tag.pug\\\"},{\\\"include\\\":\\\"source.js\\\"}]}]},\\\"tag_text\\\":{\\\"begin\\\":\\\"(?=.)\\\",\\\"end\\\":\\\"$\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#inline_pug\\\"},{\\\"include\\\":\\\"#embedded_html\\\"},{\\\"include\\\":\\\"#html_entity\\\"},{\\\"include\\\":\\\"#interpolated_value\\\"},{\\\"include\\\":\\\"#interpolated_error\\\"}]},\\\"unbuffered_code\\\":{\\\"begin\\\":\\\"(-|((\\\\\\\\w+)\\\\\\\\s+=))\\\",\\\"beginCaptures\\\":{\\\"3\\\":{\\\"name\\\":\\\"variable.parameter.javascript.embedded.pug\\\"}},\\\"comment\\\":\\\"name = function() {}\\\",\\\"end\\\":\\\"(?=\\\\\\\\])|(({\\\\\\\\s*)?$)\\\",\\\"name\\\":\\\"source.js\\\",\\\"patterns\\\":[{\\\"include\\\":\\\"#js_brackets\\\"},{\\\"include\\\":\\\"#babel_parens\\\"},{\\\"include\\\":\\\"source.js\\\"}]}},\\\"scopeName\\\":\\\"text.pug\\\",\\\"embeddedLangs\\\":[\\\"javascript\\\",\\\"css\\\",\\\"html\\\"],\\\"aliases\\\":[\\\"jade\\\"],\\\"embeddedLangsLazy\\\":[\\\"sass\\\",\\\"scss\\\",\\\"stylus\\\",\\\"coffee\\\"]}\"))\n\nexport default [\n...javascript,\n...css,\n...html,\nlang\n]\n"],"names":["lang","pug","javascript","css","html"],"mappings":";;;AAIA,MAAMA,IAAO,OAAO,OAAO,KAAK,MAAM,m2cAAyogB,CAAC,GAEjqgBC,IAAA;AAAA,EACf,GAAGC;AAAA,EACH,GAAGC;AAAA,EACH,GAAGC;AAAA,EACHJ;AACA;","x_google_ignoreList":[0]}
@@ -0,0 +1,7 @@
1
+ const e = Object.freeze(JSON.parse(`{"displayName":"Python","name":"python","patterns":[{"include":"#statement"},{"include":"#expression"}],"repository":{"annotated-parameter":{"begin":"\\\\b([A-Za-z_]\\\\w*)\\\\s*(:)","beginCaptures":{"1":{"name":"variable.parameter.function.language.python"},"2":{"name":"punctuation.separator.annotation.python"}},"end":"(,)|(?=\\\\))","endCaptures":{"1":{"name":"punctuation.separator.parameters.python"}},"patterns":[{"include":"#expression"},{"match":"=(?!=)","name":"keyword.operator.assignment.python"}]},"assignment-operator":{"match":"<<=|>>=|//=|\\\\*\\\\*=|\\\\+=|-=|/=|@=|\\\\*=|%=|~=|\\\\^=|&=|\\\\|=|=(?!=)","name":"keyword.operator.assignment.python"},"backticks":{"begin":"\\\\\`","end":"(?:\\\\\`|(?<!\\\\\\\\)(\\\\n))","name":"invalid.deprecated.backtick.python","patterns":[{"include":"#expression"}]},"builtin-callables":{"patterns":[{"include":"#illegal-names"},{"include":"#illegal-object-name"},{"include":"#builtin-exceptions"},{"include":"#builtin-functions"},{"include":"#builtin-types"}]},"builtin-exceptions":{"match":"(?<!\\\\.)\\\\b((Arithmetic|Assertion|Attribute|Buffer|BlockingIO|BrokenPipe|ChildProcess|(Connection(Aborted|Refused|Reset)?)|EOF|Environment|FileExists|FileNotFound|FloatingPoint|IO|Import|Indentation|Index|Interrupted|IsADirectory|NotADirectory|Permission|ProcessLookup|Timeout|Key|Lookup|Memory|Name|NotImplemented|OS|Overflow|Reference|Runtime|Recursion|Syntax|System|Tab|Type|UnboundLocal|Unicode(Encode|Decode|Translate)?|Value|Windows|ZeroDivision|ModuleNotFound)Error|((Pending)?Deprecation|Runtime|Syntax|User|Future|Import|Unicode|Bytes|Resource)?Warning|SystemExit|Stop(Async)?Iteration|KeyboardInterrupt|GeneratorExit|(Base)?Exception)\\\\b","name":"support.type.exception.python"},"builtin-functions":{"patterns":[{"match":"(?<!\\\\.)\\\\b(__import__|abs|aiter|all|any|anext|ascii|bin|breakpoint|callable|chr|compile|copyright|credits|delattr|dir|divmod|enumerate|eval|exec|exit|filter|format|getattr|globals|hasattr|hash|help|hex|id|input|isinstance|issubclass|iter|len|license|locals|map|max|memoryview|min|next|oct|open|ord|pow|print|quit|range|reload|repr|reversed|round|setattr|sorted|sum|vars|zip)\\\\b","name":"support.function.builtin.python"},{"match":"(?<!\\\\.)\\\\b(file|reduce|intern|raw_input|unicode|cmp|basestring|execfile|long|xrange)\\\\b","name":"variable.legacy.builtin.python"}]},"builtin-possible-callables":{"patterns":[{"include":"#builtin-callables"},{"include":"#magic-names"}]},"builtin-types":{"match":"(?<!\\\\.)\\\\b(bool|bytearray|bytes|classmethod|complex|dict|float|frozenset|int|list|object|property|set|slice|staticmethod|str|tuple|type|super)\\\\b","name":"support.type.python"},"call-wrapper-inheritance":{"begin":"\\\\b(?=([A-Za-z_]\\\\w*)\\\\s*(\\\\())","comment":"same as a function call, but in inheritance context","end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.definition.arguments.end.python"}},"name":"meta.function-call.python","patterns":[{"include":"#inheritance-name"},{"include":"#function-arguments"}]},"class-declaration":{"patterns":[{"begin":"\\\\s*(class)\\\\s+(?=[A-Za-z_]\\\\w*\\\\s*(:|\\\\())","beginCaptures":{"1":{"name":"storage.type.class.python"}},"end":"(:)","endCaptures":{"1":{"name":"punctuation.section.class.begin.python"}},"name":"meta.class.python","patterns":[{"include":"#class-name"},{"include":"#class-inheritance"}]}]},"class-inheritance":{"begin":"(\\\\()","beginCaptures":{"1":{"name":"punctuation.definition.inheritance.begin.python"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.definition.inheritance.end.python"}},"name":"meta.class.inheritance.python","patterns":[{"match":"(\\\\*\\\\*|\\\\*)","name":"keyword.operator.unpacking.arguments.python"},{"match":",","name":"punctuation.separator.inheritance.python"},{"match":"=(?!=)","name":"keyword.operator.assignment.python"},{"match":"\\\\bmetaclass\\\\b","name":"support.type.metaclass.python"},{"include":"#illegal-names"},{"include":"#class-kwarg"},{"include":"#call-wrapper-inheritance"},{"include":"#expression-base"},{"include":"#member-access-class"},{"include":"#inheritance-identifier"}]},"class-kwarg":{"captures":{"1":{"name":"entity.other.inherited-class.python variable.parameter.class.python"},"2":{"name":"keyword.operator.assignment.python"}},"match":"\\\\b([A-Za-z_]\\\\w*)\\\\s*(=)(?!=)"},"class-name":{"patterns":[{"include":"#illegal-object-name"},{"include":"#builtin-possible-callables"},{"match":"\\\\b([A-Za-z_]\\\\w*)\\\\b","name":"entity.name.type.class.python"}]},"codetags":{"captures":{"1":{"name":"keyword.codetag.notation.python"}},"match":"(?:\\\\b(NOTE|XXX|HACK|FIXME|BUG|TODO)\\\\b)"},"comments":{"patterns":[{"begin":"(?:\\\\#\\\\s*(type:)\\\\s*+(?!$|\\\\#))","beginCaptures":{"0":{"name":"meta.typehint.comment.python"},"1":{"name":"comment.typehint.directive.notation.python"}},"contentName":"meta.typehint.comment.python","end":"(?:$|(?=\\\\#))","name":"comment.line.number-sign.python","patterns":[{"match":"\\\\Gignore(?=\\\\s*(?:$|\\\\#))","name":"comment.typehint.ignore.notation.python"},{"match":"(?<!\\\\.)\\\\b(bool|bytes|float|int|object|str|List|Dict|Iterable|Sequence|Set|FrozenSet|Callable|Union|Tuple|Any|None)\\\\b","name":"comment.typehint.type.notation.python"},{"match":"([\\\\[\\\\](),\\\\.=\\\\*]|(->))","name":"comment.typehint.punctuation.notation.python"},{"match":"([A-Za-z_]\\\\w*)","name":"comment.typehint.variable.notation.python"}]},{"include":"#comments-base"}]},"comments-base":{"begin":"(\\\\#)","beginCaptures":{"1":{"name":"punctuation.definition.comment.python"}},"end":"($)","name":"comment.line.number-sign.python","patterns":[{"include":"#codetags"}]},"comments-string-double-three":{"begin":"(\\\\#)","beginCaptures":{"1":{"name":"punctuation.definition.comment.python"}},"end":"($|(?=\\"\\"\\"))","name":"comment.line.number-sign.python","patterns":[{"include":"#codetags"}]},"comments-string-single-three":{"begin":"(\\\\#)","beginCaptures":{"1":{"name":"punctuation.definition.comment.python"}},"end":"($|(?='''))","name":"comment.line.number-sign.python","patterns":[{"include":"#codetags"}]},"curly-braces":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.dict.begin.python"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.dict.end.python"}},"patterns":[{"match":":","name":"punctuation.separator.dict.python"},{"include":"#expression"}]},"decorator":{"begin":"^\\\\s*((@))\\\\s*(?=[A-Za-z_]\\\\w*)","beginCaptures":{"1":{"name":"entity.name.function.decorator.python"},"2":{"name":"punctuation.definition.decorator.python"}},"end":"(\\\\))(?:(.*?)(?=\\\\s*(?:\\\\#|$)))|(?=\\\\n|\\\\#)","endCaptures":{"1":{"name":"punctuation.definition.arguments.end.python"},"2":{"name":"invalid.illegal.decorator.python"}},"name":"meta.function.decorator.python","patterns":[{"include":"#decorator-name"},{"include":"#function-arguments"}]},"decorator-name":{"patterns":[{"include":"#builtin-callables"},{"include":"#illegal-object-name"},{"captures":{"2":{"name":"punctuation.separator.period.python"}},"match":"([A-Za-z_]\\\\w*)|(\\\\.)","name":"entity.name.function.decorator.python"},{"include":"#line-continuation"},{"captures":{"1":{"name":"invalid.illegal.decorator.python"}},"match":"\\\\s*([^(A-Za-z\\\\s_\\\\.#\\\\\\\\].*?)(?=\\\\#|$)","name":"invalid.illegal.decorator.python"}]},"docstring":{"patterns":[{"begin":"(\\\\'\\\\'\\\\'|\\\\\\"\\\\\\"\\\\\\")","beginCaptures":{"1":{"name":"punctuation.definition.string.begin.python"}},"end":"(\\\\1)","endCaptures":{"1":{"name":"punctuation.definition.string.end.python"}},"name":"string.quoted.docstring.multi.python","patterns":[{"include":"#docstring-prompt"},{"include":"#codetags"},{"include":"#docstring-guts-unicode"}]},{"begin":"([rR])(\\\\'\\\\'\\\\'|\\\\\\"\\\\\\"\\\\\\")","beginCaptures":{"1":{"name":"storage.type.string.python"},"2":{"name":"punctuation.definition.string.begin.python"}},"end":"(\\\\2)","endCaptures":{"1":{"name":"punctuation.definition.string.end.python"}},"name":"string.quoted.docstring.raw.multi.python","patterns":[{"include":"#string-consume-escape"},{"include":"#docstring-prompt"},{"include":"#codetags"}]},{"begin":"(\\\\'|\\\\\\")","beginCaptures":{"1":{"name":"punctuation.definition.string.begin.python"}},"end":"(\\\\1)|(\\\\n)","endCaptures":{"1":{"name":"punctuation.definition.string.end.python"},"2":{"name":"invalid.illegal.newline.python"}},"name":"string.quoted.docstring.single.python","patterns":[{"include":"#codetags"},{"include":"#docstring-guts-unicode"}]},{"begin":"([rR])(\\\\'|\\\\\\")","beginCaptures":{"1":{"name":"storage.type.string.python"},"2":{"name":"punctuation.definition.string.begin.python"}},"end":"(\\\\2)|(\\\\n)","endCaptures":{"1":{"name":"punctuation.definition.string.end.python"},"2":{"name":"invalid.illegal.newline.python"}},"name":"string.quoted.docstring.raw.single.python","patterns":[{"include":"#string-consume-escape"},{"include":"#codetags"}]}]},"docstring-guts-unicode":{"patterns":[{"include":"#escape-sequence-unicode"},{"include":"#escape-sequence"},{"include":"#string-line-continuation"}]},"docstring-prompt":{"captures":{"1":{"name":"keyword.control.flow.python"}},"match":"(?:(?:^|\\\\G)\\\\s*((?:>>>|\\\\.\\\\.\\\\.)\\\\s)(?=\\\\s*\\\\S))"},"docstring-statement":{"begin":"^(?=\\\\s*[rR]?(\\\\'\\\\'\\\\'|\\\\\\"\\\\\\"\\\\\\"|\\\\'|\\\\\\"))","comment":"the string either terminates correctly or by the beginning of a new line (this is for single line docstrings that aren't terminated) AND it's not followed by another docstring","end":"((?<=\\\\1)|^)(?!\\\\s*[rR]?(\\\\'\\\\'\\\\'|\\\\\\"\\\\\\"\\\\\\"|\\\\'|\\\\\\"))","patterns":[{"include":"#docstring"}]},"double-one-regexp-character-set":{"patterns":[{"match":"\\\\[\\\\^?\\\\](?!.*?\\\\])"},{"begin":"(\\\\[)(\\\\^)?(\\\\])?","beginCaptures":{"1":{"name":"punctuation.character.set.begin.regexp constant.other.set.regexp"},"2":{"name":"keyword.operator.negation.regexp"},"3":{"name":"constant.character.set.regexp"}},"end":"(\\\\]|(?=\\"))|((?=(?<!\\\\\\\\)\\\\n))","endCaptures":{"1":{"name":"punctuation.character.set.end.regexp constant.other.set.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"name":"meta.character.set.regexp","patterns":[{"include":"#regexp-charecter-set-escapes"},{"match":"[^\\\\n]","name":"constant.character.set.regexp"}]}]},"double-one-regexp-comments":{"begin":"\\\\(\\\\?#","beginCaptures":{"0":{"name":"punctuation.comment.begin.regexp"}},"end":"(\\\\)|(?=\\"))|((?=(?<!\\\\\\\\)\\\\n))","endCaptures":{"1":{"name":"punctuation.comment.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"name":"comment.regexp","patterns":[{"include":"#codetags"}]},"double-one-regexp-conditional":{"begin":"(\\\\()\\\\?\\\\((\\\\w+(?:\\\\s+[0-9A-Za-z]+)?|\\\\d+)\\\\)","beginCaptures":{"0":{"name":"keyword.operator.conditional.regexp"},"1":{"name":"punctuation.parenthesis.conditional.begin.regexp"}},"end":"(\\\\)|(?=\\"))|((?=(?<!\\\\\\\\)\\\\n))","endCaptures":{"1":{"name":"keyword.operator.conditional.negative.regexp punctuation.parenthesis.conditional.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#double-one-regexp-expression"}]},"double-one-regexp-expression":{"patterns":[{"include":"#regexp-base-expression"},{"include":"#double-one-regexp-character-set"},{"include":"#double-one-regexp-comments"},{"include":"#regexp-flags"},{"include":"#double-one-regexp-named-group"},{"include":"#regexp-backreference"},{"include":"#double-one-regexp-lookahead"},{"include":"#double-one-regexp-lookahead-negative"},{"include":"#double-one-regexp-lookbehind"},{"include":"#double-one-regexp-lookbehind-negative"},{"include":"#double-one-regexp-conditional"},{"include":"#double-one-regexp-parentheses-non-capturing"},{"include":"#double-one-regexp-parentheses"}]},"double-one-regexp-lookahead":{"begin":"(\\\\()\\\\?=","beginCaptures":{"0":{"name":"keyword.operator.lookahead.regexp"},"1":{"name":"punctuation.parenthesis.lookahead.begin.regexp"}},"end":"(\\\\)|(?=\\"))|((?=(?<!\\\\\\\\)\\\\n))","endCaptures":{"1":{"name":"keyword.operator.lookahead.regexp punctuation.parenthesis.lookahead.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#double-one-regexp-expression"}]},"double-one-regexp-lookahead-negative":{"begin":"(\\\\()\\\\?!","beginCaptures":{"0":{"name":"keyword.operator.lookahead.negative.regexp"},"1":{"name":"punctuation.parenthesis.lookahead.begin.regexp"}},"end":"(\\\\)|(?=\\"))|((?=(?<!\\\\\\\\)\\\\n))","endCaptures":{"1":{"name":"keyword.operator.lookahead.negative.regexp punctuation.parenthesis.lookahead.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#double-one-regexp-expression"}]},"double-one-regexp-lookbehind":{"begin":"(\\\\()\\\\?<=","beginCaptures":{"0":{"name":"keyword.operator.lookbehind.regexp"},"1":{"name":"punctuation.parenthesis.lookbehind.begin.regexp"}},"end":"(\\\\)|(?=\\"))|((?=(?<!\\\\\\\\)\\\\n))","endCaptures":{"1":{"name":"keyword.operator.lookbehind.regexp punctuation.parenthesis.lookbehind.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#double-one-regexp-expression"}]},"double-one-regexp-lookbehind-negative":{"begin":"(\\\\()\\\\?<!","beginCaptures":{"0":{"name":"keyword.operator.lookbehind.negative.regexp"},"1":{"name":"punctuation.parenthesis.lookbehind.begin.regexp"}},"end":"(\\\\)|(?=\\"))|((?=(?<!\\\\\\\\)\\\\n))","endCaptures":{"1":{"name":"keyword.operator.lookbehind.negative.regexp punctuation.parenthesis.lookbehind.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#double-one-regexp-expression"}]},"double-one-regexp-named-group":{"begin":"(\\\\()(\\\\?P<\\\\w+(?:\\\\s+[0-9A-Za-z]+)?>)","beginCaptures":{"1":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.named.begin.regexp"},"2":{"name":"entity.name.tag.named.group.regexp"}},"end":"(\\\\)|(?=\\"))|((?=(?<!\\\\\\\\)\\\\n))","endCaptures":{"1":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.named.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"name":"meta.named.regexp","patterns":[{"include":"#double-one-regexp-expression"}]},"double-one-regexp-parentheses":{"begin":"\\\\(","beginCaptures":{"0":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.begin.regexp"}},"end":"(\\\\)|(?=\\"))|((?=(?<!\\\\\\\\)\\\\n))","endCaptures":{"1":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#double-one-regexp-expression"}]},"double-one-regexp-parentheses-non-capturing":{"begin":"\\\\(\\\\?:","beginCaptures":{"0":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.non-capturing.begin.regexp"}},"end":"(\\\\)|(?=\\"))|((?=(?<!\\\\\\\\)\\\\n))","endCaptures":{"1":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.non-capturing.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#double-one-regexp-expression"}]},"double-three-regexp-character-set":{"patterns":[{"match":"\\\\[\\\\^?\\\\](?!.*?\\\\])"},{"begin":"(\\\\[)(\\\\^)?(\\\\])?","beginCaptures":{"1":{"name":"punctuation.character.set.begin.regexp constant.other.set.regexp"},"2":{"name":"keyword.operator.negation.regexp"},"3":{"name":"constant.character.set.regexp"}},"end":"(\\\\]|(?=\\"\\"\\"))","endCaptures":{"1":{"name":"punctuation.character.set.end.regexp constant.other.set.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"name":"meta.character.set.regexp","patterns":[{"include":"#regexp-charecter-set-escapes"},{"match":"[^\\\\n]","name":"constant.character.set.regexp"}]}]},"double-three-regexp-comments":{"begin":"\\\\(\\\\?#","beginCaptures":{"0":{"name":"punctuation.comment.begin.regexp"}},"end":"(\\\\)|(?=\\"\\"\\"))","endCaptures":{"1":{"name":"punctuation.comment.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"name":"comment.regexp","patterns":[{"include":"#codetags"}]},"double-three-regexp-conditional":{"begin":"(\\\\()\\\\?\\\\((\\\\w+(?:\\\\s+[0-9A-Za-z]+)?|\\\\d+)\\\\)","beginCaptures":{"0":{"name":"keyword.operator.conditional.regexp"},"1":{"name":"punctuation.parenthesis.conditional.begin.regexp"}},"end":"(\\\\)|(?=\\"\\"\\"))","endCaptures":{"1":{"name":"keyword.operator.conditional.negative.regexp punctuation.parenthesis.conditional.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#double-three-regexp-expression"},{"include":"#comments-string-double-three"}]},"double-three-regexp-expression":{"patterns":[{"include":"#regexp-base-expression"},{"include":"#double-three-regexp-character-set"},{"include":"#double-three-regexp-comments"},{"include":"#regexp-flags"},{"include":"#double-three-regexp-named-group"},{"include":"#regexp-backreference"},{"include":"#double-three-regexp-lookahead"},{"include":"#double-three-regexp-lookahead-negative"},{"include":"#double-three-regexp-lookbehind"},{"include":"#double-three-regexp-lookbehind-negative"},{"include":"#double-three-regexp-conditional"},{"include":"#double-three-regexp-parentheses-non-capturing"},{"include":"#double-three-regexp-parentheses"},{"include":"#comments-string-double-three"}]},"double-three-regexp-lookahead":{"begin":"(\\\\()\\\\?=","beginCaptures":{"0":{"name":"keyword.operator.lookahead.regexp"},"1":{"name":"punctuation.parenthesis.lookahead.begin.regexp"}},"end":"(\\\\)|(?=\\"\\"\\"))","endCaptures":{"1":{"name":"keyword.operator.lookahead.regexp punctuation.parenthesis.lookahead.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#double-three-regexp-expression"},{"include":"#comments-string-double-three"}]},"double-three-regexp-lookahead-negative":{"begin":"(\\\\()\\\\?!","beginCaptures":{"0":{"name":"keyword.operator.lookahead.negative.regexp"},"1":{"name":"punctuation.parenthesis.lookahead.begin.regexp"}},"end":"(\\\\)|(?=\\"\\"\\"))","endCaptures":{"1":{"name":"keyword.operator.lookahead.negative.regexp punctuation.parenthesis.lookahead.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#double-three-regexp-expression"},{"include":"#comments-string-double-three"}]},"double-three-regexp-lookbehind":{"begin":"(\\\\()\\\\?<=","beginCaptures":{"0":{"name":"keyword.operator.lookbehind.regexp"},"1":{"name":"punctuation.parenthesis.lookbehind.begin.regexp"}},"end":"(\\\\)|(?=\\"\\"\\"))","endCaptures":{"1":{"name":"keyword.operator.lookbehind.regexp punctuation.parenthesis.lookbehind.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#double-three-regexp-expression"},{"include":"#comments-string-double-three"}]},"double-three-regexp-lookbehind-negative":{"begin":"(\\\\()\\\\?<!","beginCaptures":{"0":{"name":"keyword.operator.lookbehind.negative.regexp"},"1":{"name":"punctuation.parenthesis.lookbehind.begin.regexp"}},"end":"(\\\\)|(?=\\"\\"\\"))","endCaptures":{"1":{"name":"keyword.operator.lookbehind.negative.regexp punctuation.parenthesis.lookbehind.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#double-three-regexp-expression"},{"include":"#comments-string-double-three"}]},"double-three-regexp-named-group":{"begin":"(\\\\()(\\\\?P<\\\\w+(?:\\\\s+[0-9A-Za-z]+)?>)","beginCaptures":{"1":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.named.begin.regexp"},"2":{"name":"entity.name.tag.named.group.regexp"}},"end":"(\\\\)|(?=\\"\\"\\"))","endCaptures":{"1":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.named.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"name":"meta.named.regexp","patterns":[{"include":"#double-three-regexp-expression"},{"include":"#comments-string-double-three"}]},"double-three-regexp-parentheses":{"begin":"\\\\(","beginCaptures":{"0":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.begin.regexp"}},"end":"(\\\\)|(?=\\"\\"\\"))","endCaptures":{"1":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#double-three-regexp-expression"},{"include":"#comments-string-double-three"}]},"double-three-regexp-parentheses-non-capturing":{"begin":"\\\\(\\\\?:","beginCaptures":{"0":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.non-capturing.begin.regexp"}},"end":"(\\\\)|(?=\\"\\"\\"))","endCaptures":{"1":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.non-capturing.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#double-three-regexp-expression"},{"include":"#comments-string-double-three"}]},"ellipsis":{"match":"\\\\.\\\\.\\\\.","name":"constant.other.ellipsis.python"},"escape-sequence":{"match":"\\\\\\\\(x[0-9A-Fa-f]{2}|[0-7]{1,3}|[\\\\\\\\\\"'abfnrtv])","name":"constant.character.escape.python"},"escape-sequence-unicode":{"patterns":[{"match":"\\\\\\\\(u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8}|N\\\\{[\\\\w\\\\s]+?\\\\})","name":"constant.character.escape.python"}]},"expression":{"comment":"All valid Python expressions","patterns":[{"include":"#expression-base"},{"include":"#member-access"},{"comment":"Tokenize identifiers to help linters","match":"\\\\b([A-Za-z_]\\\\w*)\\\\b"}]},"expression-bare":{"comment":"valid Python expressions w/o comments and line continuation","patterns":[{"include":"#backticks"},{"include":"#illegal-anno"},{"include":"#literal"},{"include":"#regexp"},{"include":"#string"},{"include":"#lambda"},{"include":"#generator"},{"include":"#illegal-operator"},{"include":"#operator"},{"include":"#curly-braces"},{"include":"#item-access"},{"include":"#list"},{"include":"#odd-function-call"},{"include":"#round-braces"},{"include":"#function-call"},{"include":"#builtin-functions"},{"include":"#builtin-types"},{"include":"#builtin-exceptions"},{"include":"#magic-names"},{"include":"#special-names"},{"include":"#illegal-names"},{"include":"#special-variables"},{"include":"#ellipsis"},{"include":"#punctuation"},{"include":"#line-continuation"}]},"expression-base":{"comment":"valid Python expressions with comments and line continuation","patterns":[{"include":"#comments"},{"include":"#expression-bare"},{"include":"#line-continuation"}]},"f-expression":{"comment":"All valid Python expressions, except comments and line continuation","patterns":[{"include":"#expression-bare"},{"include":"#member-access"},{"comment":"Tokenize identifiers to help linters","match":"\\\\b([A-Za-z_]\\\\w*)\\\\b"}]},"fregexp-base-expression":{"patterns":[{"include":"#fregexp-quantifier"},{"include":"#fstring-formatting-braces"},{"match":"\\\\{.*?\\\\}"},{"include":"#regexp-base-common"}]},"fregexp-quantifier":{"match":"\\\\{\\\\{(\\\\d+|\\\\d+,(\\\\d+)?|,\\\\d+)\\\\}\\\\}","name":"keyword.operator.quantifier.regexp"},"fstring-fnorm-quoted-multi-line":{"begin":"(\\\\b[fF])([bBuU])?('''|\\"\\"\\")","beginCaptures":{"1":{"name":"string.interpolated.python string.quoted.multi.python storage.type.string.python"},"2":{"name":"invalid.illegal.prefix.python"},"3":{"name":"punctuation.definition.string.begin.python string.interpolated.python string.quoted.multi.python"}},"end":"(\\\\3)","endCaptures":{"1":{"name":"punctuation.definition.string.end.python string.interpolated.python string.quoted.multi.python"},"2":{"name":"invalid.illegal.newline.python"}},"name":"meta.fstring.python","patterns":[{"include":"#fstring-guts"},{"include":"#fstring-illegal-multi-brace"},{"include":"#fstring-multi-brace"},{"include":"#fstring-multi-core"}]},"fstring-fnorm-quoted-single-line":{"begin":"(\\\\b[fF])([bBuU])?((['\\"]))","beginCaptures":{"1":{"name":"string.interpolated.python string.quoted.single.python storage.type.string.python"},"2":{"name":"invalid.illegal.prefix.python"},"3":{"name":"punctuation.definition.string.begin.python string.interpolated.python string.quoted.single.python"}},"end":"(\\\\3)|((?<!\\\\\\\\)\\\\n)","endCaptures":{"1":{"name":"punctuation.definition.string.end.python string.interpolated.python string.quoted.single.python"},"2":{"name":"invalid.illegal.newline.python"}},"name":"meta.fstring.python","patterns":[{"include":"#fstring-guts"},{"include":"#fstring-illegal-single-brace"},{"include":"#fstring-single-brace"},{"include":"#fstring-single-core"}]},"fstring-formatting":{"patterns":[{"include":"#fstring-formatting-braces"},{"include":"#fstring-formatting-singe-brace"}]},"fstring-formatting-braces":{"patterns":[{"captures":{"1":{"name":"constant.character.format.placeholder.other.python"},"2":{"name":"invalid.illegal.brace.python"},"3":{"name":"constant.character.format.placeholder.other.python"}},"comment":"empty braces are illegal","match":"({)(\\\\s*?)(})"},{"match":"({{|}})","name":"constant.character.escape.python"}]},"fstring-formatting-singe-brace":{"match":"(}(?!}))","name":"invalid.illegal.brace.python"},"fstring-guts":{"patterns":[{"include":"#escape-sequence-unicode"},{"include":"#escape-sequence"},{"include":"#string-line-continuation"},{"include":"#fstring-formatting"}]},"fstring-illegal-multi-brace":{"patterns":[{"include":"#impossible"}]},"fstring-illegal-single-brace":{"begin":"(\\\\{)(?=[^\\\\n}]*$\\\\n?)","beginCaptures":{"1":{"name":"constant.character.format.placeholder.other.python"}},"comment":"it is illegal to have a multiline brace inside a single-line string","end":"(\\\\})|(?=\\\\n)","endCaptures":{"1":{"name":"constant.character.format.placeholder.other.python"}},"patterns":[{"include":"#fstring-terminator-single"},{"include":"#f-expression"}]},"fstring-multi-brace":{"begin":"(\\\\{)","beginCaptures":{"1":{"name":"constant.character.format.placeholder.other.python"}},"comment":"value interpolation using { ... }","end":"(\\\\})","endCaptures":{"1":{"name":"constant.character.format.placeholder.other.python"}},"patterns":[{"include":"#fstring-terminator-multi"},{"include":"#f-expression"}]},"fstring-multi-core":{"match":"(.+?)(($\\\\n?)|(?=[\\\\\\\\}{]|'''|\\"\\"\\"))|\\\\n","name":"string.interpolated.python string.quoted.multi.python"},"fstring-normf-quoted-multi-line":{"begin":"(\\\\b[bBuU])([fF])('''|\\"\\"\\")","beginCaptures":{"1":{"name":"invalid.illegal.prefix.python"},"2":{"name":"string.interpolated.python string.quoted.multi.python storage.type.string.python"},"3":{"name":"punctuation.definition.string.begin.python string.quoted.multi.python"}},"end":"(\\\\3)","endCaptures":{"1":{"name":"punctuation.definition.string.end.python string.interpolated.python string.quoted.multi.python"},"2":{"name":"invalid.illegal.newline.python"}},"name":"meta.fstring.python","patterns":[{"include":"#fstring-guts"},{"include":"#fstring-illegal-multi-brace"},{"include":"#fstring-multi-brace"},{"include":"#fstring-multi-core"}]},"fstring-normf-quoted-single-line":{"begin":"(\\\\b[bBuU])([fF])((['\\"]))","beginCaptures":{"1":{"name":"invalid.illegal.prefix.python"},"2":{"name":"string.interpolated.python string.quoted.single.python storage.type.string.python"},"3":{"name":"punctuation.definition.string.begin.python string.quoted.single.python"}},"end":"(\\\\3)|((?<!\\\\\\\\)\\\\n)","endCaptures":{"1":{"name":"punctuation.definition.string.end.python string.interpolated.python string.quoted.single.python"},"2":{"name":"invalid.illegal.newline.python"}},"name":"meta.fstring.python","patterns":[{"include":"#fstring-guts"},{"include":"#fstring-illegal-single-brace"},{"include":"#fstring-single-brace"},{"include":"#fstring-single-core"}]},"fstring-raw-guts":{"patterns":[{"include":"#string-consume-escape"},{"include":"#fstring-formatting"}]},"fstring-raw-multi-core":{"match":"(.+?)(($\\\\n?)|(?=[\\\\\\\\}{]|'''|\\"\\"\\"))|\\\\n","name":"string.interpolated.python string.quoted.raw.multi.python"},"fstring-raw-quoted-multi-line":{"begin":"(\\\\b(?:[rR][fF]|[fF][rR]))('''|\\"\\"\\")","beginCaptures":{"1":{"name":"string.interpolated.python string.quoted.raw.multi.python storage.type.string.python"},"2":{"name":"punctuation.definition.string.begin.python string.quoted.raw.multi.python"}},"end":"(\\\\2)","endCaptures":{"1":{"name":"punctuation.definition.string.end.python string.interpolated.python string.quoted.raw.multi.python"},"2":{"name":"invalid.illegal.newline.python"}},"name":"meta.fstring.python","patterns":[{"include":"#fstring-raw-guts"},{"include":"#fstring-illegal-multi-brace"},{"include":"#fstring-multi-brace"},{"include":"#fstring-raw-multi-core"}]},"fstring-raw-quoted-single-line":{"begin":"(\\\\b(?:[rR][fF]|[fF][rR]))((['\\"]))","beginCaptures":{"1":{"name":"string.interpolated.python string.quoted.raw.single.python storage.type.string.python"},"2":{"name":"punctuation.definition.string.begin.python string.quoted.raw.single.python"}},"end":"(\\\\2)|((?<!\\\\\\\\)\\\\n)","endCaptures":{"1":{"name":"punctuation.definition.string.end.python string.interpolated.python string.quoted.raw.single.python"},"2":{"name":"invalid.illegal.newline.python"}},"name":"meta.fstring.python","patterns":[{"include":"#fstring-raw-guts"},{"include":"#fstring-illegal-single-brace"},{"include":"#fstring-single-brace"},{"include":"#fstring-raw-single-core"}]},"fstring-raw-single-core":{"match":"(.+?)(($\\\\n?)|(?=[\\\\\\\\}{]|(['\\"])|((?<!\\\\\\\\)\\\\n)))|\\\\n","name":"string.interpolated.python string.quoted.raw.single.python"},"fstring-single-brace":{"begin":"(\\\\{)","beginCaptures":{"1":{"name":"constant.character.format.placeholder.other.python"}},"comment":"value interpolation using { ... }","end":"(\\\\})|(?=\\\\n)","endCaptures":{"1":{"name":"constant.character.format.placeholder.other.python"}},"patterns":[{"include":"#fstring-terminator-single"},{"include":"#f-expression"}]},"fstring-single-core":{"match":"(.+?)(($\\\\n?)|(?=[\\\\\\\\}{]|(['\\"])|((?<!\\\\\\\\)\\\\n)))|\\\\n","name":"string.interpolated.python string.quoted.single.python"},"fstring-terminator-multi":{"patterns":[{"match":"(=(![rsa])?)(?=})","name":"storage.type.format.python"},{"match":"(=?![rsa])(?=})","name":"storage.type.format.python"},{"captures":{"1":{"name":"storage.type.format.python"},"2":{"name":"storage.type.format.python"}},"match":"((?:=?)(?:![rsa])?)(:\\\\w?[<>=^]?[-+ ]?\\\\#?\\\\d*,?(\\\\.\\\\d+)?[bcdeEfFgGnosxX%]?)(?=})"},{"include":"#fstring-terminator-multi-tail"}]},"fstring-terminator-multi-tail":{"begin":"((?:=?)(?:![rsa])?)(:)(?=.*?{)","beginCaptures":{"1":{"name":"storage.type.format.python"},"2":{"name":"storage.type.format.python"}},"end":"(?=})","patterns":[{"include":"#fstring-illegal-multi-brace"},{"include":"#fstring-multi-brace"},{"match":"([bcdeEfFgGnosxX%])(?=})","name":"storage.type.format.python"},{"match":"(\\\\.\\\\d+)","name":"storage.type.format.python"},{"match":"(,)","name":"storage.type.format.python"},{"match":"(\\\\d+)","name":"storage.type.format.python"},{"match":"(\\\\#)","name":"storage.type.format.python"},{"match":"([-+ ])","name":"storage.type.format.python"},{"match":"([<>=^])","name":"storage.type.format.python"},{"match":"(\\\\w)","name":"storage.type.format.python"}]},"fstring-terminator-single":{"patterns":[{"match":"(=(![rsa])?)(?=})","name":"storage.type.format.python"},{"match":"(=?![rsa])(?=})","name":"storage.type.format.python"},{"captures":{"1":{"name":"storage.type.format.python"},"2":{"name":"storage.type.format.python"}},"match":"((?:=?)(?:![rsa])?)(:\\\\w?[<>=^]?[-+ ]?\\\\#?\\\\d*,?(\\\\.\\\\d+)?[bcdeEfFgGnosxX%]?)(?=})"},{"include":"#fstring-terminator-single-tail"}]},"fstring-terminator-single-tail":{"begin":"((?:=?)(?:![rsa])?)(:)(?=.*?{)","beginCaptures":{"1":{"name":"storage.type.format.python"},"2":{"name":"storage.type.format.python"}},"end":"(?=})|(?=\\\\n)","patterns":[{"include":"#fstring-illegal-single-brace"},{"include":"#fstring-single-brace"},{"match":"([bcdeEfFgGnosxX%])(?=})","name":"storage.type.format.python"},{"match":"(\\\\.\\\\d+)","name":"storage.type.format.python"},{"match":"(,)","name":"storage.type.format.python"},{"match":"(\\\\d+)","name":"storage.type.format.python"},{"match":"(\\\\#)","name":"storage.type.format.python"},{"match":"([-+ ])","name":"storage.type.format.python"},{"match":"([<>=^])","name":"storage.type.format.python"},{"match":"(\\\\w)","name":"storage.type.format.python"}]},"function-arguments":{"begin":"(\\\\()","beginCaptures":{"1":{"name":"punctuation.definition.arguments.begin.python"}},"contentName":"meta.function-call.arguments.python","end":"(?=\\\\))(?!\\\\)\\\\s*\\\\()","patterns":[{"match":"(,)","name":"punctuation.separator.arguments.python"},{"captures":{"1":{"name":"keyword.operator.unpacking.arguments.python"}},"match":"(?:(?<=[,(])|^)\\\\s*(\\\\*{1,2})"},{"include":"#lambda-incomplete"},{"include":"#illegal-names"},{"captures":{"1":{"name":"variable.parameter.function-call.python"},"2":{"name":"keyword.operator.assignment.python"}},"match":"\\\\b([A-Za-z_]\\\\w*)\\\\s*(=)(?!=)"},{"match":"=(?!=)","name":"keyword.operator.assignment.python"},{"include":"#expression"},{"captures":{"1":{"name":"punctuation.definition.arguments.end.python"},"2":{"name":"punctuation.definition.arguments.begin.python"}},"match":"\\\\s*(\\\\))\\\\s*(\\\\()"}]},"function-call":{"begin":"\\\\b(?=([A-Za-z_]\\\\w*)\\\\s*(\\\\())","comment":"Regular function call of the type \\"name(args)\\"","end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.definition.arguments.end.python"}},"name":"meta.function-call.python","patterns":[{"include":"#special-variables"},{"include":"#function-name"},{"include":"#function-arguments"}]},"function-declaration":{"begin":"\\\\s*(?:\\\\b(async)\\\\s+)?\\\\b(def)\\\\s+(?=[A-Za-z_][\\\\w]*\\\\s*\\\\()","beginCaptures":{"1":{"name":"storage.type.function.async.python"},"2":{"name":"storage.type.function.python"}},"end":"(:|(?=[#'\\"\\\\n]))","endCaptures":{"1":{"name":"punctuation.section.function.begin.python"}},"name":"meta.function.python","patterns":[{"include":"#function-def-name"},{"include":"#parameters"},{"include":"#line-continuation"},{"include":"#return-annotation"}]},"function-def-name":{"patterns":[{"include":"#illegal-object-name"},{"include":"#builtin-possible-callables"},{"match":"\\\\b([A-Za-z_]\\\\w*)\\\\b","name":"entity.name.function.python"}]},"function-name":{"patterns":[{"include":"#builtin-possible-callables"},{"comment":"Some color schemas support meta.function-call.generic scope","match":"\\\\b([A-Za-z_]\\\\w*)\\\\b","name":"meta.function-call.generic.python"}]},"generator":{"begin":"\\\\bfor\\\\b","beginCaptures":{"0":{"name":"keyword.control.flow.python"}},"comment":"Match \\"for ... in\\" construct used in generators and for loops to\\ncorrectly identify the \\"in\\" as a control flow keyword.\\n","end":"\\\\bin\\\\b","endCaptures":{"0":{"name":"keyword.control.flow.python"}},"patterns":[{"include":"#expression"}]},"illegal-anno":{"match":"->","name":"invalid.illegal.annotation.python"},"illegal-names":{"captures":{"1":{"name":"keyword.control.flow.python"},"2":{"name":"keyword.control.import.python"}},"match":"\\\\b(?:(and|assert|async|await|break|class|continue|def|del|elif|else|except|finally|for|from|global|if|in|is|(?<=\\\\.)lambda|lambda(?=\\\\s*[\\\\.=])|nonlocal|not|or|pass|raise|return|try|while|with|yield)|(as|import))\\\\b"},"illegal-object-name":{"comment":"It's illegal to name class or function \\"True\\"","match":"\\\\b(True|False|None)\\\\b","name":"keyword.illegal.name.python"},"illegal-operator":{"patterns":[{"match":"&&|\\\\|\\\\||--|\\\\+\\\\+","name":"invalid.illegal.operator.python"},{"match":"[?$]","name":"invalid.illegal.operator.python"},{"comment":"We don't want \`!\` to flash when we're typing \`!=\`","match":"!\\\\b","name":"invalid.illegal.operator.python"}]},"import":{"comment":"Import statements used to correctly mark \`from\`, \`import\`, and \`as\`\\n","patterns":[{"begin":"\\\\b(?<!\\\\.)(from)\\\\b(?=.+import)","beginCaptures":{"1":{"name":"keyword.control.import.python"}},"end":"$|(?=import)","patterns":[{"match":"\\\\.+","name":"punctuation.separator.period.python"},{"include":"#expression"}]},{"begin":"\\\\b(?<!\\\\.)(import)\\\\b","beginCaptures":{"1":{"name":"keyword.control.import.python"}},"end":"$","patterns":[{"match":"\\\\b(?<!\\\\.)as\\\\b","name":"keyword.control.import.python"},{"include":"#expression"}]}]},"impossible":{"comment":"This is a special rule that should be used where no match is desired. It is not a good idea to match something like '1{0}' because in some cases that can result in infinite loops in token generation. So the rule instead matches and impossible expression to allow a match to fail and move to the next token.","match":"$.^"},"inheritance-identifier":{"captures":{"1":{"name":"entity.other.inherited-class.python"}},"match":"\\\\b([A-Za-z_]\\\\w*)\\\\b"},"inheritance-name":{"patterns":[{"include":"#lambda-incomplete"},{"include":"#builtin-possible-callables"},{"include":"#inheritance-identifier"}]},"item-access":{"patterns":[{"begin":"\\\\b(?=[A-Za-z_]\\\\w*\\\\s*\\\\[)","end":"(\\\\])","endCaptures":{"1":{"name":"punctuation.definition.arguments.end.python"}},"name":"meta.item-access.python","patterns":[{"include":"#item-name"},{"include":"#item-index"},{"include":"#expression"}]}]},"item-index":{"begin":"(\\\\[)","beginCaptures":{"1":{"name":"punctuation.definition.arguments.begin.python"}},"contentName":"meta.item-access.arguments.python","end":"(?=\\\\])","patterns":[{"match":":","name":"punctuation.separator.slice.python"},{"include":"#expression"}]},"item-name":{"patterns":[{"include":"#special-variables"},{"include":"#builtin-functions"},{"include":"#special-names"},{"match":"\\\\b([A-Za-z_]\\\\w*)\\\\b","name":"meta.indexed-name.python"}]},"lambda":{"patterns":[{"captures":{"1":{"name":"keyword.control.flow.python"}},"match":"((?<=\\\\.)lambda|lambda(?=\\\\s*[\\\\.=]))"},{"captures":{"1":{"name":"storage.type.function.lambda.python"}},"match":"\\\\b(lambda)\\\\s*?(?=[,\\\\n]|$)"},{"begin":"\\\\b(lambda)\\\\b","beginCaptures":{"1":{"name":"storage.type.function.lambda.python"}},"contentName":"meta.function.lambda.parameters.python","end":"(:)|(\\\\n)","endCaptures":{"1":{"name":"punctuation.section.function.lambda.begin.python"}},"name":"meta.lambda-function.python","patterns":[{"match":"/","name":"keyword.operator.positional.parameter.python"},{"match":"(\\\\*\\\\*|\\\\*)","name":"keyword.operator.unpacking.parameter.python"},{"include":"#lambda-nested-incomplete"},{"include":"#illegal-names"},{"captures":{"1":{"name":"variable.parameter.function.language.python"},"2":{"name":"punctuation.separator.parameters.python"}},"match":"([A-Za-z_]\\\\w*)\\\\s*(?:(,)|(?=:|$))"},{"include":"#comments"},{"include":"#backticks"},{"include":"#illegal-anno"},{"include":"#lambda-parameter-with-default"},{"include":"#line-continuation"},{"include":"#illegal-operator"}]}]},"lambda-incomplete":{"match":"\\\\blambda(?=\\\\s*[,)])","name":"storage.type.function.lambda.python"},"lambda-nested-incomplete":{"match":"\\\\blambda(?=\\\\s*[:,)])","name":"storage.type.function.lambda.python"},"lambda-parameter-with-default":{"begin":"\\\\b([A-Za-z_]\\\\w*)\\\\s*(=)","beginCaptures":{"1":{"name":"variable.parameter.function.language.python"},"2":{"name":"keyword.operator.python"}},"end":"(,)|(?=:|$)","endCaptures":{"1":{"name":"punctuation.separator.parameters.python"}},"patterns":[{"include":"#expression"}]},"line-continuation":{"patterns":[{"captures":{"1":{"name":"punctuation.separator.continuation.line.python"},"2":{"name":"invalid.illegal.line.continuation.python"}},"match":"(\\\\\\\\)\\\\s*(\\\\S.*$\\\\n?)"},{"begin":"(\\\\\\\\)\\\\s*$\\\\n?","beginCaptures":{"1":{"name":"punctuation.separator.continuation.line.python"}},"end":"(?=^\\\\s*$)|(?!(\\\\s*[rR]?(\\\\'\\\\'\\\\'|\\\\\\"\\\\\\"\\\\\\"|\\\\'|\\\\\\"))|(\\\\G$))","patterns":[{"include":"#regexp"},{"include":"#string"}]}]},"list":{"begin":"\\\\[","beginCaptures":{"0":{"name":"punctuation.definition.list.begin.python"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.definition.list.end.python"}},"patterns":[{"include":"#expression"}]},"literal":{"patterns":[{"match":"\\\\b(True|False|None|NotImplemented|Ellipsis)\\\\b","name":"constant.language.python"},{"include":"#number"}]},"loose-default":{"begin":"(=)","beginCaptures":{"1":{"name":"keyword.operator.python"}},"end":"(,)|(?=\\\\))","endCaptures":{"1":{"name":"punctuation.separator.parameters.python"}},"patterns":[{"include":"#expression"}]},"magic-function-names":{"captures":{"1":{"name":"support.function.magic.python"}},"comment":"these methods have magic interpretation by python and are generally called\\nindirectly through syntactic constructs\\n","match":"\\\\b(__(?:abs|add|aenter|aexit|aiter|and|anext|await|bool|call|ceil|class_getitem|cmp|coerce|complex|contains|copy|deepcopy|del|delattr|delete|delitem|delslice|dir|div|divmod|enter|eq|exit|float|floor|floordiv|format|ge|get|getattr|getattribute|getinitargs|getitem|getnewargs|getslice|getstate|gt|hash|hex|iadd|iand|idiv|ifloordiv||ilshift|imod|imul|index|init|instancecheck|int|invert|ior|ipow|irshift|isub|iter|itruediv|ixor|le|len|long|lshift|lt|missing|mod|mul|ne|neg|new|next|nonzero|oct|or|pos|pow|radd|rand|rdiv|rdivmod|reduce|reduce_ex|repr|reversed|rfloordiv||rlshift|rmod|rmul|ror|round|rpow|rrshift|rshift|rsub|rtruediv|rxor|set|setattr|setitem|set_name|setslice|setstate|sizeof|str|sub|subclasscheck|truediv|trunc|unicode|xor|matmul|rmatmul|imatmul|init_subclass|set_name|fspath|bytes|prepare|length_hint)__)\\\\b"},"magic-names":{"patterns":[{"include":"#magic-function-names"},{"include":"#magic-variable-names"}]},"magic-variable-names":{"captures":{"1":{"name":"support.variable.magic.python"}},"comment":"magic variables which a class/module may have.","match":"\\\\b(__(?:all|annotations|bases|builtins|class|closure|code|debug|defaults|dict|doc|file|func|globals|kwdefaults|match_args|members|metaclass|methods|module|mro|mro_entries|name|qualname|post_init|self|signature|slots|subclasses|version|weakref|wrapped|classcell|spec|path|package|future|traceback)__)\\\\b"},"member-access":{"begin":"(\\\\.)\\\\s*(?!\\\\.)","beginCaptures":{"1":{"name":"punctuation.separator.period.python"}},"end":"(?<=\\\\S)(?=\\\\W)|(^|(?<=\\\\s))(?=[^\\\\\\\\\\\\w\\\\s])|$","name":"meta.member.access.python","patterns":[{"include":"#function-call"},{"include":"#member-access-base"},{"include":"#member-access-attribute"}]},"member-access-attribute":{"comment":"Highlight attribute access in otherwise non-specialized cases.","match":"\\\\b([A-Za-z_]\\\\w*)\\\\b","name":"meta.attribute.python"},"member-access-base":{"patterns":[{"include":"#magic-names"},{"include":"#illegal-names"},{"include":"#illegal-object-name"},{"include":"#special-names"},{"include":"#line-continuation"},{"include":"#item-access"}]},"member-access-class":{"begin":"(\\\\.)\\\\s*(?!\\\\.)","beginCaptures":{"1":{"name":"punctuation.separator.period.python"}},"end":"(?<=\\\\S)(?=\\\\W)|$","name":"meta.member.access.python","patterns":[{"include":"#call-wrapper-inheritance"},{"include":"#member-access-base"},{"include":"#inheritance-identifier"}]},"number":{"name":"constant.numeric.python","patterns":[{"include":"#number-float"},{"include":"#number-dec"},{"include":"#number-hex"},{"include":"#number-oct"},{"include":"#number-bin"},{"include":"#number-long"},{"match":"\\\\b\\\\d+\\\\w+","name":"invalid.illegal.name.python"}]},"number-bin":{"captures":{"1":{"name":"storage.type.number.python"}},"match":"(?<![\\\\w\\\\.])(0[bB])(_?[01])+\\\\b","name":"constant.numeric.bin.python"},"number-dec":{"captures":{"1":{"name":"storage.type.imaginary.number.python"},"2":{"name":"invalid.illegal.dec.python"}},"match":"(?<![\\\\w\\\\.])(?:[1-9](?:_?\\\\d)*|0+|\\\\d(?:_?\\\\d)*([jJ])|0(\\\\d+)(?![eE\\\\.]))\\\\b","name":"constant.numeric.dec.python"},"number-float":{"captures":{"1":{"name":"storage.type.imaginary.number.python"}},"match":"(?<!\\\\w)(?:(?:\\\\.\\\\d(?:_?\\\\d)*|\\\\d(?:_?\\\\d)*\\\\.\\\\d(?:_?\\\\d)*|\\\\d(?:_?\\\\d)*\\\\.)(?:[eE][+-]?\\\\d(?:_?\\\\d)*)?|\\\\d(?:_?\\\\d)*(?:[eE][+-]?\\\\d(?:_?\\\\d)*))([jJ])?\\\\b","name":"constant.numeric.float.python"},"number-hex":{"captures":{"1":{"name":"storage.type.number.python"}},"match":"(?<![\\\\w\\\\.])(0[xX])(_?[0-9a-fA-F])+\\\\b","name":"constant.numeric.hex.python"},"number-long":{"captures":{"2":{"name":"storage.type.number.python"}},"comment":"this is to support python2 syntax for long ints","match":"(?<![\\\\w\\\\.])([1-9]\\\\d*|0)([lL])\\\\b","name":"constant.numeric.bin.python"},"number-oct":{"captures":{"1":{"name":"storage.type.number.python"}},"match":"(?<![\\\\w\\\\.])(0[oO])(_?[0-7])+\\\\b","name":"constant.numeric.oct.python"},"odd-function-call":{"begin":"(?<=\\\\]|\\\\))\\\\s*(?=\\\\()","comment":"A bit obscured function call where there may have been an\\narbitrary number of other operations to get the function.\\nE.g. \\"arr[idx](args)\\"\\n","end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.definition.arguments.end.python"}},"patterns":[{"include":"#function-arguments"}]},"operator":{"captures":{"1":{"name":"keyword.operator.logical.python"},"2":{"name":"keyword.control.flow.python"},"3":{"name":"keyword.operator.bitwise.python"},"4":{"name":"keyword.operator.arithmetic.python"},"5":{"name":"keyword.operator.comparison.python"},"6":{"name":"keyword.operator.assignment.python"}},"match":"\\\\b(?<!\\\\.)(?:(and|or|not|in|is)|(for|if|else|await|(?:yield(?:\\\\s+from)?)))(?!\\\\s*:)\\\\b|(<<|>>|&|\\\\||\\\\^|~)|(\\\\*\\\\*|\\\\*|\\\\+|-|%|//|/|@)|(!=|==|>=|<=|<|>)|(:=)"},"parameter-special":{"captures":{"1":{"name":"variable.parameter.function.language.python"},"2":{"name":"variable.parameter.function.language.special.self.python"},"3":{"name":"variable.parameter.function.language.special.cls.python"},"4":{"name":"punctuation.separator.parameters.python"}},"match":"\\\\b((self)|(cls))\\\\b\\\\s*(?:(,)|(?=\\\\)))"},"parameters":{"begin":"(\\\\()","beginCaptures":{"1":{"name":"punctuation.definition.parameters.begin.python"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.definition.parameters.end.python"}},"name":"meta.function.parameters.python","patterns":[{"match":"/","name":"keyword.operator.positional.parameter.python"},{"match":"(\\\\*\\\\*|\\\\*)","name":"keyword.operator.unpacking.parameter.python"},{"include":"#lambda-incomplete"},{"include":"#illegal-names"},{"include":"#illegal-object-name"},{"include":"#parameter-special"},{"captures":{"1":{"name":"variable.parameter.function.language.python"},"2":{"name":"punctuation.separator.parameters.python"}},"match":"([A-Za-z_]\\\\w*)\\\\s*(?:(,)|(?=[)#\\\\n=]))"},{"include":"#comments"},{"include":"#loose-default"},{"include":"#annotated-parameter"}]},"punctuation":{"patterns":[{"match":":","name":"punctuation.separator.colon.python"},{"match":",","name":"punctuation.separator.element.python"}]},"regexp":{"patterns":[{"include":"#regexp-single-three-line"},{"include":"#regexp-double-three-line"},{"include":"#regexp-single-one-line"},{"include":"#regexp-double-one-line"}]},"regexp-backreference":{"captures":{"1":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.backreference.named.begin.regexp"},"2":{"name":"entity.name.tag.named.backreference.regexp"},"3":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.backreference.named.end.regexp"}},"match":"(\\\\()(\\\\?P=\\\\w+(?:\\\\s+[0-9A-Za-z]+)?)(\\\\))","name":"meta.backreference.named.regexp"},"regexp-backreference-number":{"captures":{"1":{"name":"entity.name.tag.backreference.regexp"}},"match":"(\\\\\\\\[1-9]\\\\d?)","name":"meta.backreference.regexp"},"regexp-base-common":{"patterns":[{"match":"\\\\.","name":"support.other.match.any.regexp"},{"match":"\\\\^","name":"support.other.match.begin.regexp"},{"match":"\\\\$","name":"support.other.match.end.regexp"},{"match":"[+*?]\\\\??","name":"keyword.operator.quantifier.regexp"},{"match":"\\\\|","name":"keyword.operator.disjunction.regexp"},{"include":"#regexp-escape-sequence"}]},"regexp-base-expression":{"patterns":[{"include":"#regexp-quantifier"},{"include":"#regexp-base-common"}]},"regexp-charecter-set-escapes":{"patterns":[{"match":"\\\\\\\\[abfnrtv\\\\\\\\]","name":"constant.character.escape.regexp"},{"include":"#regexp-escape-special"},{"match":"\\\\\\\\([0-7]{1,3})","name":"constant.character.escape.regexp"},{"include":"#regexp-escape-character"},{"include":"#regexp-escape-unicode"},{"include":"#regexp-escape-catchall"}]},"regexp-double-one-line":{"begin":"\\\\b(([uU]r)|([bB]r)|(r[bB]?))(\\")","beginCaptures":{"2":{"name":"invalid.deprecated.prefix.python"},"3":{"name":"storage.type.string.python"},"4":{"name":"storage.type.string.python"},"5":{"name":"punctuation.definition.string.begin.python"}},"end":"(\\")|(?<!\\\\\\\\)(\\\\n)","endCaptures":{"1":{"name":"punctuation.definition.string.end.python"},"2":{"name":"invalid.illegal.newline.python"}},"name":"string.regexp.quoted.single.python","patterns":[{"include":"#double-one-regexp-expression"}]},"regexp-double-three-line":{"begin":"\\\\b(([uU]r)|([bB]r)|(r[bB]?))(\\"\\"\\")","beginCaptures":{"2":{"name":"invalid.deprecated.prefix.python"},"3":{"name":"storage.type.string.python"},"4":{"name":"storage.type.string.python"},"5":{"name":"punctuation.definition.string.begin.python"}},"end":"(\\"\\"\\")","endCaptures":{"1":{"name":"punctuation.definition.string.end.python"},"2":{"name":"invalid.illegal.newline.python"}},"name":"string.regexp.quoted.multi.python","patterns":[{"include":"#double-three-regexp-expression"}]},"regexp-escape-catchall":{"match":"\\\\\\\\(.|\\\\n)","name":"constant.character.escape.regexp"},"regexp-escape-character":{"match":"\\\\\\\\(x[0-9A-Fa-f]{2}|0[0-7]{1,2}|[0-7]{3})","name":"constant.character.escape.regexp"},"regexp-escape-sequence":{"patterns":[{"include":"#regexp-escape-special"},{"include":"#regexp-escape-character"},{"include":"#regexp-escape-unicode"},{"include":"#regexp-backreference-number"},{"include":"#regexp-escape-catchall"}]},"regexp-escape-special":{"match":"\\\\\\\\([AbBdDsSwWZ])","name":"support.other.escape.special.regexp"},"regexp-escape-unicode":{"match":"\\\\\\\\(u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})","name":"constant.character.unicode.regexp"},"regexp-flags":{"match":"\\\\(\\\\?[aiLmsux]+\\\\)","name":"storage.modifier.flag.regexp"},"regexp-quantifier":{"match":"\\\\{(\\\\d+|\\\\d+,(\\\\d+)?|,\\\\d+)\\\\}","name":"keyword.operator.quantifier.regexp"},"regexp-single-one-line":{"begin":"\\\\b(([uU]r)|([bB]r)|(r[bB]?))(\\\\')","beginCaptures":{"2":{"name":"invalid.deprecated.prefix.python"},"3":{"name":"storage.type.string.python"},"4":{"name":"storage.type.string.python"},"5":{"name":"punctuation.definition.string.begin.python"}},"end":"(\\\\')|(?<!\\\\\\\\)(\\\\n)","endCaptures":{"1":{"name":"punctuation.definition.string.end.python"},"2":{"name":"invalid.illegal.newline.python"}},"name":"string.regexp.quoted.single.python","patterns":[{"include":"#single-one-regexp-expression"}]},"regexp-single-three-line":{"begin":"\\\\b(([uU]r)|([bB]r)|(r[bB]?))(\\\\'\\\\'\\\\')","beginCaptures":{"2":{"name":"invalid.deprecated.prefix.python"},"3":{"name":"storage.type.string.python"},"4":{"name":"storage.type.string.python"},"5":{"name":"punctuation.definition.string.begin.python"}},"end":"(\\\\'\\\\'\\\\')","endCaptures":{"1":{"name":"punctuation.definition.string.end.python"},"2":{"name":"invalid.illegal.newline.python"}},"name":"string.regexp.quoted.multi.python","patterns":[{"include":"#single-three-regexp-expression"}]},"return-annotation":{"begin":"(->)","beginCaptures":{"1":{"name":"punctuation.separator.annotation.result.python"}},"end":"(?=:)","patterns":[{"include":"#expression"}]},"round-braces":{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.parenthesis.begin.python"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.parenthesis.end.python"}},"patterns":[{"include":"#expression"}]},"semicolon":{"patterns":[{"match":"\\\\;$","name":"invalid.deprecated.semicolon.python"}]},"single-one-regexp-character-set":{"patterns":[{"match":"\\\\[\\\\^?\\\\](?!.*?\\\\])"},{"begin":"(\\\\[)(\\\\^)?(\\\\])?","beginCaptures":{"1":{"name":"punctuation.character.set.begin.regexp constant.other.set.regexp"},"2":{"name":"keyword.operator.negation.regexp"},"3":{"name":"constant.character.set.regexp"}},"end":"(\\\\]|(?=\\\\'))|((?=(?<!\\\\\\\\)\\\\n))","endCaptures":{"1":{"name":"punctuation.character.set.end.regexp constant.other.set.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"name":"meta.character.set.regexp","patterns":[{"include":"#regexp-charecter-set-escapes"},{"match":"[^\\\\n]","name":"constant.character.set.regexp"}]}]},"single-one-regexp-comments":{"begin":"\\\\(\\\\?#","beginCaptures":{"0":{"name":"punctuation.comment.begin.regexp"}},"end":"(\\\\)|(?=\\\\'))|((?=(?<!\\\\\\\\)\\\\n))","endCaptures":{"1":{"name":"punctuation.comment.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"name":"comment.regexp","patterns":[{"include":"#codetags"}]},"single-one-regexp-conditional":{"begin":"(\\\\()\\\\?\\\\((\\\\w+(?:\\\\s+[0-9A-Za-z]+)?|\\\\d+)\\\\)","beginCaptures":{"0":{"name":"keyword.operator.conditional.regexp"},"1":{"name":"punctuation.parenthesis.conditional.begin.regexp"}},"end":"(\\\\)|(?=\\\\'))|((?=(?<!\\\\\\\\)\\\\n))","endCaptures":{"1":{"name":"keyword.operator.conditional.negative.regexp punctuation.parenthesis.conditional.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#single-one-regexp-expression"}]},"single-one-regexp-expression":{"patterns":[{"include":"#regexp-base-expression"},{"include":"#single-one-regexp-character-set"},{"include":"#single-one-regexp-comments"},{"include":"#regexp-flags"},{"include":"#single-one-regexp-named-group"},{"include":"#regexp-backreference"},{"include":"#single-one-regexp-lookahead"},{"include":"#single-one-regexp-lookahead-negative"},{"include":"#single-one-regexp-lookbehind"},{"include":"#single-one-regexp-lookbehind-negative"},{"include":"#single-one-regexp-conditional"},{"include":"#single-one-regexp-parentheses-non-capturing"},{"include":"#single-one-regexp-parentheses"}]},"single-one-regexp-lookahead":{"begin":"(\\\\()\\\\?=","beginCaptures":{"0":{"name":"keyword.operator.lookahead.regexp"},"1":{"name":"punctuation.parenthesis.lookahead.begin.regexp"}},"end":"(\\\\)|(?=\\\\'))|((?=(?<!\\\\\\\\)\\\\n))","endCaptures":{"1":{"name":"keyword.operator.lookahead.regexp punctuation.parenthesis.lookahead.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#single-one-regexp-expression"}]},"single-one-regexp-lookahead-negative":{"begin":"(\\\\()\\\\?!","beginCaptures":{"0":{"name":"keyword.operator.lookahead.negative.regexp"},"1":{"name":"punctuation.parenthesis.lookahead.begin.regexp"}},"end":"(\\\\)|(?=\\\\'))|((?=(?<!\\\\\\\\)\\\\n))","endCaptures":{"1":{"name":"keyword.operator.lookahead.negative.regexp punctuation.parenthesis.lookahead.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#single-one-regexp-expression"}]},"single-one-regexp-lookbehind":{"begin":"(\\\\()\\\\?<=","beginCaptures":{"0":{"name":"keyword.operator.lookbehind.regexp"},"1":{"name":"punctuation.parenthesis.lookbehind.begin.regexp"}},"end":"(\\\\)|(?=\\\\'))|((?=(?<!\\\\\\\\)\\\\n))","endCaptures":{"1":{"name":"keyword.operator.lookbehind.regexp punctuation.parenthesis.lookbehind.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#single-one-regexp-expression"}]},"single-one-regexp-lookbehind-negative":{"begin":"(\\\\()\\\\?<!","beginCaptures":{"0":{"name":"keyword.operator.lookbehind.negative.regexp"},"1":{"name":"punctuation.parenthesis.lookbehind.begin.regexp"}},"end":"(\\\\)|(?=\\\\'))|((?=(?<!\\\\\\\\)\\\\n))","endCaptures":{"1":{"name":"keyword.operator.lookbehind.negative.regexp punctuation.parenthesis.lookbehind.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#single-one-regexp-expression"}]},"single-one-regexp-named-group":{"begin":"(\\\\()(\\\\?P<\\\\w+(?:\\\\s+[0-9A-Za-z]+)?>)","beginCaptures":{"1":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.named.begin.regexp"},"2":{"name":"entity.name.tag.named.group.regexp"}},"end":"(\\\\)|(?=\\\\'))|((?=(?<!\\\\\\\\)\\\\n))","endCaptures":{"1":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.named.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"name":"meta.named.regexp","patterns":[{"include":"#single-one-regexp-expression"}]},"single-one-regexp-parentheses":{"begin":"\\\\(","beginCaptures":{"0":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.begin.regexp"}},"end":"(\\\\)|(?=\\\\'))|((?=(?<!\\\\\\\\)\\\\n))","endCaptures":{"1":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#single-one-regexp-expression"}]},"single-one-regexp-parentheses-non-capturing":{"begin":"\\\\(\\\\?:","beginCaptures":{"0":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.non-capturing.begin.regexp"}},"end":"(\\\\)|(?=\\\\'))|((?=(?<!\\\\\\\\)\\\\n))","endCaptures":{"1":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.non-capturing.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#single-one-regexp-expression"}]},"single-three-regexp-character-set":{"patterns":[{"match":"\\\\[\\\\^?\\\\](?!.*?\\\\])"},{"begin":"(\\\\[)(\\\\^)?(\\\\])?","beginCaptures":{"1":{"name":"punctuation.character.set.begin.regexp constant.other.set.regexp"},"2":{"name":"keyword.operator.negation.regexp"},"3":{"name":"constant.character.set.regexp"}},"end":"(\\\\]|(?=\\\\'\\\\'\\\\'))","endCaptures":{"1":{"name":"punctuation.character.set.end.regexp constant.other.set.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"name":"meta.character.set.regexp","patterns":[{"include":"#regexp-charecter-set-escapes"},{"match":"[^\\\\n]","name":"constant.character.set.regexp"}]}]},"single-three-regexp-comments":{"begin":"\\\\(\\\\?#","beginCaptures":{"0":{"name":"punctuation.comment.begin.regexp"}},"end":"(\\\\)|(?=\\\\'\\\\'\\\\'))","endCaptures":{"1":{"name":"punctuation.comment.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"name":"comment.regexp","patterns":[{"include":"#codetags"}]},"single-three-regexp-conditional":{"begin":"(\\\\()\\\\?\\\\((\\\\w+(?:\\\\s+[0-9A-Za-z]+)?|\\\\d+)\\\\)","beginCaptures":{"0":{"name":"keyword.operator.conditional.regexp"},"1":{"name":"punctuation.parenthesis.conditional.begin.regexp"}},"end":"(\\\\)|(?=\\\\'\\\\'\\\\'))","endCaptures":{"1":{"name":"keyword.operator.conditional.negative.regexp punctuation.parenthesis.conditional.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#single-three-regexp-expression"},{"include":"#comments-string-single-three"}]},"single-three-regexp-expression":{"patterns":[{"include":"#regexp-base-expression"},{"include":"#single-three-regexp-character-set"},{"include":"#single-three-regexp-comments"},{"include":"#regexp-flags"},{"include":"#single-three-regexp-named-group"},{"include":"#regexp-backreference"},{"include":"#single-three-regexp-lookahead"},{"include":"#single-three-regexp-lookahead-negative"},{"include":"#single-three-regexp-lookbehind"},{"include":"#single-three-regexp-lookbehind-negative"},{"include":"#single-three-regexp-conditional"},{"include":"#single-three-regexp-parentheses-non-capturing"},{"include":"#single-three-regexp-parentheses"},{"include":"#comments-string-single-three"}]},"single-three-regexp-lookahead":{"begin":"(\\\\()\\\\?=","beginCaptures":{"0":{"name":"keyword.operator.lookahead.regexp"},"1":{"name":"punctuation.parenthesis.lookahead.begin.regexp"}},"end":"(\\\\)|(?=\\\\'\\\\'\\\\'))","endCaptures":{"1":{"name":"keyword.operator.lookahead.regexp punctuation.parenthesis.lookahead.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#single-three-regexp-expression"},{"include":"#comments-string-single-three"}]},"single-three-regexp-lookahead-negative":{"begin":"(\\\\()\\\\?!","beginCaptures":{"0":{"name":"keyword.operator.lookahead.negative.regexp"},"1":{"name":"punctuation.parenthesis.lookahead.begin.regexp"}},"end":"(\\\\)|(?=\\\\'\\\\'\\\\'))","endCaptures":{"1":{"name":"keyword.operator.lookahead.negative.regexp punctuation.parenthesis.lookahead.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#single-three-regexp-expression"},{"include":"#comments-string-single-three"}]},"single-three-regexp-lookbehind":{"begin":"(\\\\()\\\\?<=","beginCaptures":{"0":{"name":"keyword.operator.lookbehind.regexp"},"1":{"name":"punctuation.parenthesis.lookbehind.begin.regexp"}},"end":"(\\\\)|(?=\\\\'\\\\'\\\\'))","endCaptures":{"1":{"name":"keyword.operator.lookbehind.regexp punctuation.parenthesis.lookbehind.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#single-three-regexp-expression"},{"include":"#comments-string-single-three"}]},"single-three-regexp-lookbehind-negative":{"begin":"(\\\\()\\\\?<!","beginCaptures":{"0":{"name":"keyword.operator.lookbehind.negative.regexp"},"1":{"name":"punctuation.parenthesis.lookbehind.begin.regexp"}},"end":"(\\\\)|(?=\\\\'\\\\'\\\\'))","endCaptures":{"1":{"name":"keyword.operator.lookbehind.negative.regexp punctuation.parenthesis.lookbehind.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#single-three-regexp-expression"},{"include":"#comments-string-single-three"}]},"single-three-regexp-named-group":{"begin":"(\\\\()(\\\\?P<\\\\w+(?:\\\\s+[0-9A-Za-z]+)?>)","beginCaptures":{"1":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.named.begin.regexp"},"2":{"name":"entity.name.tag.named.group.regexp"}},"end":"(\\\\)|(?=\\\\'\\\\'\\\\'))","endCaptures":{"1":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.named.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"name":"meta.named.regexp","patterns":[{"include":"#single-three-regexp-expression"},{"include":"#comments-string-single-three"}]},"single-three-regexp-parentheses":{"begin":"\\\\(","beginCaptures":{"0":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.begin.regexp"}},"end":"(\\\\)|(?=\\\\'\\\\'\\\\'))","endCaptures":{"1":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#single-three-regexp-expression"},{"include":"#comments-string-single-three"}]},"single-three-regexp-parentheses-non-capturing":{"begin":"\\\\(\\\\?:","beginCaptures":{"0":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.non-capturing.begin.regexp"}},"end":"(\\\\)|(?=\\\\'\\\\'\\\\'))","endCaptures":{"1":{"name":"support.other.parenthesis.regexp punctuation.parenthesis.non-capturing.end.regexp"},"2":{"name":"invalid.illegal.newline.python"}},"patterns":[{"include":"#single-three-regexp-expression"},{"include":"#comments-string-single-three"}]},"special-names":{"match":"\\\\b(_*[A-Z][_\\\\d]*[A-Z])[A-Z\\\\d]*(_\\\\w*)?\\\\b","name":"constant.other.caps.python"},"special-variables":{"captures":{"1":{"name":"variable.language.special.self.python"},"2":{"name":"variable.language.special.cls.python"}},"match":"\\\\b(?<!\\\\.)(?:(self)|(cls))\\\\b"},"statement":{"patterns":[{"include":"#import"},{"include":"#class-declaration"},{"include":"#function-declaration"},{"include":"#generator"},{"include":"#statement-keyword"},{"include":"#assignment-operator"},{"include":"#decorator"},{"include":"#docstring-statement"},{"include":"#semicolon"}]},"statement-keyword":{"patterns":[{"match":"\\\\b((async\\\\s+)?\\\\s*def)\\\\b","name":"storage.type.function.python"},{"comment":"if \`as\` is eventually followed by \`:\` or line continuation\\nit's probably control flow like:\\n with foo as bar, \\\\\\n Foo as Bar:\\n try:\\n do_stuff()\\n except Exception as e:\\n pass\\n","match":"\\\\b(?<!\\\\.)as\\\\b(?=.*[:\\\\\\\\])","name":"keyword.control.flow.python"},{"comment":"other legal use of \`as\` is in an import","match":"\\\\b(?<!\\\\.)as\\\\b","name":"keyword.control.import.python"},{"match":"\\\\b(?<!\\\\.)(async|continue|del|assert|break|finally|for|from|elif|else|if|except|pass|raise|return|try|while|with)\\\\b","name":"keyword.control.flow.python"},{"match":"\\\\b(?<!\\\\.)(global|nonlocal)\\\\b","name":"storage.modifier.declaration.python"},{"match":"\\\\b(?<!\\\\.)(class)\\\\b","name":"storage.type.class.python"},{"captures":{"1":{"name":"keyword.control.flow.python"}},"match":"^\\\\s*(case|match)(?=\\\\s*([-+\\\\w\\\\d(\\\\[{'\\":#]|$))\\\\b"}]},"string":{"patterns":[{"include":"#string-quoted-multi-line"},{"include":"#string-quoted-single-line"},{"include":"#string-bin-quoted-multi-line"},{"include":"#string-bin-quoted-single-line"},{"include":"#string-raw-quoted-multi-line"},{"include":"#string-raw-quoted-single-line"},{"include":"#string-raw-bin-quoted-multi-line"},{"include":"#string-raw-bin-quoted-single-line"},{"include":"#fstring-fnorm-quoted-multi-line"},{"include":"#fstring-fnorm-quoted-single-line"},{"include":"#fstring-normf-quoted-multi-line"},{"include":"#fstring-normf-quoted-single-line"},{"include":"#fstring-raw-quoted-multi-line"},{"include":"#fstring-raw-quoted-single-line"}]},"string-bin-quoted-multi-line":{"begin":"(\\\\b[bB])('''|\\"\\"\\")","beginCaptures":{"1":{"name":"storage.type.string.python"},"2":{"name":"punctuation.definition.string.begin.python"}},"end":"(\\\\2)","endCaptures":{"1":{"name":"punctuation.definition.string.end.python"},"2":{"name":"invalid.illegal.newline.python"}},"name":"string.quoted.binary.multi.python","patterns":[{"include":"#string-entity"}]},"string-bin-quoted-single-line":{"begin":"(\\\\b[bB])((['\\"]))","beginCaptures":{"1":{"name":"storage.type.string.python"},"2":{"name":"punctuation.definition.string.begin.python"}},"end":"(\\\\2)|((?<!\\\\\\\\)\\\\n)","endCaptures":{"1":{"name":"punctuation.definition.string.end.python"},"2":{"name":"invalid.illegal.newline.python"}},"name":"string.quoted.binary.single.python","patterns":[{"include":"#string-entity"}]},"string-brace-formatting":{"patterns":[{"captures":{"1":{"name":"constant.character.format.placeholder.other.python"},"3":{"name":"storage.type.format.python"},"4":{"name":"storage.type.format.python"}},"match":"({{|}}|(?:{\\\\w*(\\\\.[A-Za-z_]\\\\w*|\\\\[[^\\\\]'\\"]+\\\\])*(![rsa])?(:\\\\w?[<>=^]?[-+ ]?\\\\#?\\\\d*,?(\\\\.\\\\d+)?[bcdeEfFgGnosxX%]?)?}))","name":"meta.format.brace.python"},{"captures":{"1":{"name":"constant.character.format.placeholder.other.python"},"3":{"name":"storage.type.format.python"},"4":{"name":"storage.type.format.python"}},"match":"({\\\\w*(\\\\.[A-Za-z_]\\\\w*|\\\\[[^\\\\]'\\"]+\\\\])*(![rsa])?(:)[^'\\"{}\\\\n]*(?:\\\\{[^'\\"}\\\\n]*?\\\\}[^'\\"{}\\\\n]*)*})","name":"meta.format.brace.python"}]},"string-consume-escape":{"match":"\\\\\\\\['\\"\\\\n\\\\\\\\]"},"string-entity":{"patterns":[{"include":"#escape-sequence"},{"include":"#string-line-continuation"},{"include":"#string-formatting"}]},"string-formatting":{"captures":{"1":{"name":"constant.character.format.placeholder.other.python"}},"match":"(%(\\\\([\\\\w\\\\s]*\\\\))?[-+#0 ]*(\\\\d+|\\\\*)?(\\\\.(\\\\d+|\\\\*))?([hlL])?[diouxXeEfFgGcrsab%])","name":"meta.format.percent.python"},"string-line-continuation":{"match":"\\\\\\\\$","name":"constant.language.python"},"string-multi-bad-brace1-formatting-raw":{"begin":"(?=\\\\{%(.*?(?!'''|\\"\\"\\"))%\\\\})","comment":"template using {% ... %}","end":"(?='''|\\"\\"\\")","patterns":[{"include":"#string-consume-escape"}]},"string-multi-bad-brace1-formatting-unicode":{"begin":"(?=\\\\{%(.*?(?!'''|\\"\\"\\"))%\\\\})","comment":"template using {% ... %}","end":"(?='''|\\"\\"\\")","patterns":[{"include":"#escape-sequence-unicode"},{"include":"#escape-sequence"},{"include":"#string-line-continuation"}]},"string-multi-bad-brace2-formatting-raw":{"begin":"(?!\\\\{\\\\{)(?=\\\\{(\\\\w*?(?!'''|\\"\\"\\")[^!:\\\\.\\\\[}\\\\w]).*?(?!'''|\\"\\"\\")\\\\})","comment":"odd format or format-like syntax","end":"(?='''|\\"\\"\\")","patterns":[{"include":"#string-consume-escape"},{"include":"#string-formatting"}]},"string-multi-bad-brace2-formatting-unicode":{"begin":"(?!\\\\{\\\\{)(?=\\\\{(\\\\w*?(?!'''|\\"\\"\\")[^!:\\\\.\\\\[}\\\\w]).*?(?!'''|\\"\\"\\")\\\\})","comment":"odd format or format-like syntax","end":"(?='''|\\"\\"\\")","patterns":[{"include":"#escape-sequence-unicode"},{"include":"#string-entity"}]},"string-quoted-multi-line":{"begin":"(?:\\\\b([rR])(?=[uU]))?([uU])?('''|\\"\\"\\")","beginCaptures":{"1":{"name":"invalid.illegal.prefix.python"},"2":{"name":"storage.type.string.python"},"3":{"name":"punctuation.definition.string.begin.python"}},"end":"(\\\\3)","endCaptures":{"1":{"name":"punctuation.definition.string.end.python"},"2":{"name":"invalid.illegal.newline.python"}},"name":"string.quoted.multi.python","patterns":[{"include":"#string-multi-bad-brace1-formatting-unicode"},{"include":"#string-multi-bad-brace2-formatting-unicode"},{"include":"#string-unicode-guts"}]},"string-quoted-single-line":{"begin":"(?:\\\\b([rR])(?=[uU]))?([uU])?((['\\"]))","beginCaptures":{"1":{"name":"invalid.illegal.prefix.python"},"2":{"name":"storage.type.string.python"},"3":{"name":"punctuation.definition.string.begin.python"}},"end":"(\\\\3)|((?<!\\\\\\\\)\\\\n)","endCaptures":{"1":{"name":"punctuation.definition.string.end.python"},"2":{"name":"invalid.illegal.newline.python"}},"name":"string.quoted.single.python","patterns":[{"include":"#string-single-bad-brace1-formatting-unicode"},{"include":"#string-single-bad-brace2-formatting-unicode"},{"include":"#string-unicode-guts"}]},"string-raw-bin-guts":{"patterns":[{"include":"#string-consume-escape"},{"include":"#string-formatting"}]},"string-raw-bin-quoted-multi-line":{"begin":"(\\\\b(?:R[bB]|[bB]R))('''|\\"\\"\\")","beginCaptures":{"1":{"name":"storage.type.string.python"},"2":{"name":"punctuation.definition.string.begin.python"}},"end":"(\\\\2)","endCaptures":{"1":{"name":"punctuation.definition.string.end.python"},"2":{"name":"invalid.illegal.newline.python"}},"name":"string.quoted.raw.binary.multi.python","patterns":[{"include":"#string-raw-bin-guts"}]},"string-raw-bin-quoted-single-line":{"begin":"(\\\\b(?:R[bB]|[bB]R))((['\\"]))","beginCaptures":{"1":{"name":"storage.type.string.python"},"2":{"name":"punctuation.definition.string.begin.python"}},"end":"(\\\\2)|((?<!\\\\\\\\)\\\\n)","endCaptures":{"1":{"name":"punctuation.definition.string.end.python"},"2":{"name":"invalid.illegal.newline.python"}},"name":"string.quoted.raw.binary.single.python","patterns":[{"include":"#string-raw-bin-guts"}]},"string-raw-guts":{"patterns":[{"include":"#string-consume-escape"},{"include":"#string-formatting"},{"include":"#string-brace-formatting"}]},"string-raw-quoted-multi-line":{"begin":"\\\\b(([uU]R)|(R))('''|\\"\\"\\")","beginCaptures":{"2":{"name":"invalid.deprecated.prefix.python"},"3":{"name":"storage.type.string.python"},"4":{"name":"punctuation.definition.string.begin.python"}},"end":"(\\\\4)","endCaptures":{"1":{"name":"punctuation.definition.string.end.python"},"2":{"name":"invalid.illegal.newline.python"}},"name":"string.quoted.raw.multi.python","patterns":[{"include":"#string-multi-bad-brace1-formatting-raw"},{"include":"#string-multi-bad-brace2-formatting-raw"},{"include":"#string-raw-guts"}]},"string-raw-quoted-single-line":{"begin":"\\\\b(([uU]R)|(R))((['\\"]))","beginCaptures":{"2":{"name":"invalid.deprecated.prefix.python"},"3":{"name":"storage.type.string.python"},"4":{"name":"punctuation.definition.string.begin.python"}},"end":"(\\\\4)|((?<!\\\\\\\\)\\\\n)","endCaptures":{"1":{"name":"punctuation.definition.string.end.python"},"2":{"name":"invalid.illegal.newline.python"}},"name":"string.quoted.raw.single.python","patterns":[{"include":"#string-single-bad-brace1-formatting-raw"},{"include":"#string-single-bad-brace2-formatting-raw"},{"include":"#string-raw-guts"}]},"string-single-bad-brace1-formatting-raw":{"begin":"(?=\\\\{%(.*?(?!(['\\"])|((?<!\\\\\\\\)\\\\n)))%\\\\})","comment":"template using {% ... %}","end":"(?=(['\\"])|((?<!\\\\\\\\)\\\\n))","patterns":[{"include":"#string-consume-escape"}]},"string-single-bad-brace1-formatting-unicode":{"begin":"(?=\\\\{%(.*?(?!(['\\"])|((?<!\\\\\\\\)\\\\n)))%\\\\})","comment":"template using {% ... %}","end":"(?=(['\\"])|((?<!\\\\\\\\)\\\\n))","patterns":[{"include":"#escape-sequence-unicode"},{"include":"#escape-sequence"},{"include":"#string-line-continuation"}]},"string-single-bad-brace2-formatting-raw":{"begin":"(?!\\\\{\\\\{)(?=\\\\{(\\\\w*?(?!(['\\"])|((?<!\\\\\\\\)\\\\n))[^!:\\\\.\\\\[}\\\\w]).*?(?!(['\\"])|((?<!\\\\\\\\)\\\\n))\\\\})","comment":"odd format or format-like syntax","end":"(?=(['\\"])|((?<!\\\\\\\\)\\\\n))","patterns":[{"include":"#string-consume-escape"},{"include":"#string-formatting"}]},"string-single-bad-brace2-formatting-unicode":{"begin":"(?!\\\\{\\\\{)(?=\\\\{(\\\\w*?(?!(['\\"])|((?<!\\\\\\\\)\\\\n))[^!:\\\\.\\\\[}\\\\w]).*?(?!(['\\"])|((?<!\\\\\\\\)\\\\n))\\\\})","comment":"odd format or format-like syntax","end":"(?=(['\\"])|((?<!\\\\\\\\)\\\\n))","patterns":[{"include":"#escape-sequence-unicode"},{"include":"#string-entity"}]},"string-unicode-guts":{"patterns":[{"include":"#escape-sequence-unicode"},{"include":"#string-entity"},{"include":"#string-brace-formatting"}]}},"scopeName":"source.python","aliases":["py"]}`)), n = [
2
+ e
3
+ ];
4
+ export {
5
+ n as default
6
+ };
7
+ //# sourceMappingURL=python-Dpup1-fE.js.map