Refresh master with initial release/0.24 snapshot (#332)

* Initial port of release/0.24 source code

* Fix additional headers

* Fix a typo in launch.json
This commit is contained in:
Karl Burtram
2017-12-15 15:38:57 -08:00
committed by GitHub
parent 271b3a0b82
commit 6ad0df0e3e
7118 changed files with 107999 additions and 56466 deletions

View File

@@ -1,64 +1,69 @@
// @ts-check
var gulp = require('gulp');
var util = require("gulp-util");
var replace = require('gulp-replace');
var rename = require('gulp-rename');
const languages = [
{ name: 'css', identifiers: ['css', 'css.erb'], source: 'source.css' },
{ name: 'basic', identifiers: ['html', 'htm', 'shtml', 'xhtml', 'inc', 'tmpl', 'tpl'], source: 'text.html.basic' },
{ name: 'ini', identifiers: ['ini', 'conf'], source: 'source.ini' },
{ name: 'java', identifiers: ['java', 'bsh'], source: 'source.java' },
{ name: 'lua', identifiers: ['lua'], source: 'source.lua' },
{ name: 'makefile', identifiers: ['Makefile', 'makefile', 'GNUmakefile', 'OCamlMakefile'], source: 'source.makefile' },
{ name: 'perl', identifiers: ['perl', 'pl', 'pm', 'pod', 't', 'PL', 'psgi', 'vcl'], source: 'source.perl' },
{ name: 'r', identifiers: ['R', 'r', 's', 'S', 'Rprofile'], source: 'source.r' },
{ name: 'ruby', identifiers: ['ruby', 'rb', 'rbx', 'rjs', 'Rakefile', 'rake', 'cgi', 'fcgi', 'gemspec', 'irbrc', 'Capfile', 'ru', 'prawn', 'Cheffile', 'Gemfile', 'Guardfile', 'Hobofile', 'Vagrantfile', 'Appraisals', 'Rantfile', 'Berksfile', 'Berksfile.lock', 'Thorfile', 'Puppetfile'], source: 'source.ruby' },
{ name: 'css', language: 'css', identifiers: ['css', 'css.erb'], source: 'source.css' },
{ name: 'basic', language: 'html', identifiers: ['html', 'htm', 'shtml', 'xhtml', 'inc', 'tmpl', 'tpl'], source: 'text.html.basic' },
{ name: 'ini', language: 'ini', identifiers: ['ini', 'conf'], source: 'source.ini' },
{ name: 'java', language: 'java', identifiers: ['java', 'bsh'], source: 'source.java' },
{ name: 'lua', language: 'lua', identifiers: ['lua'], source: 'source.lua' },
{ name: 'makefile', language: 'makefile', identifiers: ['Makefile', 'makefile', 'GNUmakefile', 'OCamlMakefile'], source: 'source.makefile' },
{ name: 'perl', language: 'perl', identifiers: ['perl', 'pl', 'pm', 'pod', 't', 'PL', 'psgi', 'vcl'], source: 'source.perl' },
{ name: 'r', language: 'r', identifiers: ['R', 'r', 's', 'S', 'Rprofile'], source: 'source.r' },
{ name: 'ruby', language: 'ruby', identifiers: ['ruby', 'rb', 'rbx', 'rjs', 'Rakefile', 'rake', 'cgi', 'fcgi', 'gemspec', 'irbrc', 'Capfile', 'ru', 'prawn', 'Cheffile', 'Gemfile', 'Guardfile', 'Hobofile', 'Vagrantfile', 'Appraisals', 'Rantfile', 'Berksfile', 'Berksfile.lock', 'Thorfile', 'Puppetfile'], source: 'source.ruby' },
// Left to its own devices, the PHP grammar will match HTML as a combination of operators
// and constants. Therefore, HTML must take precedence over PHP in order to get proper
// syntax highlighting.
{ name: 'php', identifiers: ['php', 'php3', 'php4', 'php5', 'phpt', 'phtml', 'aw', 'ctp'], source: ['text.html.basic', 'text.html.php#language'] },
{ name: 'sql', identifiers: ['sql', 'ddl', 'dml'], source: 'source.sql' },
{ name: 'vs_net', identifiers: ['vb'], source: 'source.asp.vb.net' },
{ name: 'xml', identifiers: ['xml', 'xsd', 'tld', 'jsp', 'pt', 'cpt', 'dtml', 'rss', 'opml'], source: 'text.xml' },
{ name: 'xsl', identifiers: ['xsl', 'xslt'], source: 'text.xml.xsl' },
{ name: 'yaml', identifiers: ['yaml', 'yml'], source: 'source.yaml' },
{ name: 'dosbatch', identifiers: ['bat', 'batch'], source: 'source.dosbatch' },
{ name: 'clojure', identifiers: ['clj', 'cljs', 'clojure'], source: 'source.clojure' },
{ name: 'coffee', identifiers: ['coffee', 'Cakefile', 'coffee.erb'], source: 'source.coffee' },
{ name: 'c', identifiers: ['c', 'h'], source: 'source.c' },
{ name: 'cpp', identifiers: ['cpp', 'c\\+\\+', 'cxx'], source: 'source.cpp' },
{ name: 'diff', identifiers: ['patch', 'diff', 'rej'], source: 'source.diff' },
{ name: 'dockerfile', identifiers: ['dockerfile', 'Dockerfile'], source: 'source.dockerfile' },
{ name: 'php', language: 'php', identifiers: ['php', 'php3', 'php4', 'php5', 'phpt', 'phtml', 'aw', 'ctp'], source: ['text.html.basic', 'text.html.php#language'] },
{ name: 'sql', language: 'sql', identifiers: ['sql', 'ddl', 'dml'], source: 'source.sql' },
{ name: 'vs_net', language: 'vs_net', identifiers: ['vb'], source: 'source.asp.vb.net' },
{ name: 'xml', language: 'xml', identifiers: ['xml', 'xsd', 'tld', 'jsp', 'pt', 'cpt', 'dtml', 'rss', 'opml'], source: 'text.xml' },
{ name: 'xsl', language: 'xsl', identifiers: ['xsl', 'xslt'], source: 'text.xml.xsl' },
{ name: 'yaml', language: 'yaml', identifiers: ['yaml', 'yml'], source: 'source.yaml' },
{ name: 'dosbatch', language: 'dosbatch', identifiers: ['bat', 'batch'], source: 'source.dosbatch' },
{ name: 'clojure', language: 'clojure', identifiers: ['clj', 'cljs', 'clojure'], source: 'source.clojure' },
{ name: 'coffee', language: 'coffee', identifiers: ['coffee', 'Cakefile', 'coffee.erb'], source: 'source.coffee' },
{ name: 'c', language: 'c', identifiers: ['c', 'h'], source: 'source.c' },
{ name: 'cpp', language: 'cpp', identifiers: ['cpp', 'c\\+\\+', 'cxx'], source: 'source.cpp' },
{ name: 'diff', language: 'diff', identifiers: ['patch', 'diff', 'rej'], source: 'source.diff' },
{ name: 'dockerfile', language: 'dockerfile', identifiers: ['dockerfile', 'Dockerfile'], source: 'source.dockerfile' },
{ name: 'git_commit', identifiers: ['COMMIT_EDITMSG', 'MERGE_MSG'], source: 'text.git-commit' },
{ name: 'git_rebase', identifiers: ['git-rebase-todo'], source: 'text.git-rebase' },
{ name: 'go', identifiers: ['go', 'golang'], source: 'source.go' },
{ name: 'groovy', identifiers: ['groovy', 'gvy'], source: 'source.groovy' },
{ name: 'jade', identifiers: ['jade', 'pug'], source: 'text.jade' },
{ name: 'go', language: 'go', identifiers: ['go', 'golang'], source: 'source.go' },
{ name: 'groovy', language: 'groovy', identifiers: ['groovy', 'gvy'], source: 'source.groovy' },
{ name: 'jade', language: 'jade', identifiers: ['jade', 'pug'], source: 'text.jade' },
{ name: 'js', identifiers: ['js', 'jsx', 'javascript', 'es6', 'mjs'], source: 'source.js' },
{ name: 'js', language: 'javascript', identifiers: ['js', 'jsx', 'javascript', 'es6', 'mjs'], source: 'source.js' },
{ name: 'js_regexp', identifiers: ['regexp'], source: 'source.js.regexp' },
{ name: 'json', identifiers: ['json', 'sublime-settings', 'sublime-menu', 'sublime-keymap', 'sublime-mousemap', 'sublime-theme', 'sublime-build', 'sublime-project', 'sublime-completions'], source: 'source.json' },
{ name: 'less', identifiers: ['less'], source: 'source.css.less' },
{ name: 'objc', identifiers: ['objectivec', 'objective-c', 'mm', 'objc', 'obj-c', 'm', 'h'], source: 'source.objc' },
{ name: 'scss', identifiers: ['scss'], source: 'source.css.scss' },
{ name: 'json', language: 'json', identifiers: ['json', 'sublime-settings', 'sublime-menu', 'sublime-keymap', 'sublime-mousemap', 'sublime-theme', 'sublime-build', 'sublime-project', 'sublime-completions'], source: 'source.json' },
{ name: 'less', language: 'less', identifiers: ['less'], source: 'source.css.less' },
{ name: 'objc', language: 'objc', identifiers: ['objectivec', 'objective-c', 'mm', 'objc', 'obj-c', 'm', 'h'], source: 'source.objc' },
{ name: 'scss', language: 'scss', identifiers: ['scss'], source: 'source.css.scss' },
{ name: 'perl6', identifiers: ['perl6', 'p6', 'pl6', 'pm6', 'nqp'], source: 'source.perl.6' },
{ name: 'powershell', identifiers: ['powershell', 'ps1', 'psm1', 'psd1'], source: 'source.powershell' },
{ name: 'python', identifiers: ['python', 'py', 'py3', 'rpy', 'pyw', 'cpy', 'SConstruct', 'Sconstruct', 'sconstruct', 'SConscript', 'gyp', 'gypi'], source: 'source.python' },
{ name: 'perl6', language: 'perl6', identifiers: ['perl6', 'p6', 'pl6', 'pm6', 'nqp'], source: 'source.perl.6' },
{ name: 'powershell', language: 'powershell', identifiers: ['powershell', 'ps1', 'psm1', 'psd1'], source: 'source.powershell' },
{ name: 'python', language: 'python', identifiers: ['python', 'py', 'py3', 'rpy', 'pyw', 'cpy', 'SConstruct', 'Sconstruct', 'sconstruct', 'SConscript', 'gyp', 'gypi'], source: 'source.python' },
{ name: 'regexp_python', identifiers: ['re'], source: 'source.regexp.python' },
{ name: 'rust', identifiers: ['rust', 'rs'], source: 'source.rust' },
{ name: 'scala', identifiers: ['scala', 'sbt'], source: 'source.scala' },
{ name: 'shell', identifiers: ['shell', 'sh', 'bash', 'zsh', 'bashrc', 'bash_profile', 'bash_login', 'profile', 'bash_logout', '.textmate_init'], source: 'source.shell' },
{ name: 'ts', identifiers: ['typescript', 'ts'], source: 'source.ts' },
{ name: 'tsx', identifiers: ['tsx'], source: 'source.tsx' },
{ name: 'csharp', identifiers: ['cs', 'csharp', 'c#'], source: 'source.cs' },
{ name: 'fsharp', identifiers: ['fs', 'fsharp', 'f#'], source: 'source.fsharp' },
{ name: 'rust', language: 'rust', identifiers: ['rust', 'rs'], source: 'source.rust' },
{ name: 'scala', language: 'scala', identifiers: ['scala', 'sbt'], source: 'source.scala' },
{ name: 'shell', language: 'shellscript', identifiers: ['shell', 'sh', 'bash', 'zsh', 'bashrc', 'bash_profile', 'bash_login', 'profile', 'bash_logout', '.textmate_init'], source: 'source.shell' },
{ name: 'ts', language: 'typescript', identifiers: ['typescript', 'ts'], source: 'source.ts' },
{ name: 'tsx', language: 'typescriptreact', identifiers: ['tsx'], source: 'source.tsx' },
{ name: 'csharp', language: 'csharp', identifiers: ['cs', 'csharp', 'c#'], source: 'source.cs' },
{ name: 'fsharp', language: 'fsharp', identifiers: ['fs', 'fsharp', 'f#'], source: 'source.fsharp' },
];
const fencedCodeBlockDefinition = (name, identifiers, sourceScope) => {
const fencedCodeBlockDefinition = (name, identifiers, sourceScope, language) => {
if (!Array.isArray(sourceScope)) {
sourceScope = [sourceScope];
}
language = language || name
const scopes = sourceScope.map(scope =>
`<dict>
<key>include</key>
@@ -106,6 +111,8 @@ const fencedCodeBlockDefinition = (name, identifiers, sourceScope) => {
<string>(^|\\G)(\\s*)(.*)</string>
<key>while</key>
<string>(^|\\G)(?!\\s*([\`~]{3,})\\s*$)</string>
<key>contentName</key>
<string>meta.embedded.block.${language}</string>
<key>patterns</key>
<array>
${indent(4, scopes)}
@@ -129,7 +136,7 @@ const fencedCodeBlockInclude = (name) =>
const fencedCodeBlockDefinitions = () =>
languages
.map(language => fencedCodeBlockDefinition(language.name, language.identifiers, language.source))
.map(language => fencedCodeBlockDefinition(language.name, language.identifiers, language.source, language.language))
.join('\n');
@@ -147,3 +154,11 @@ gulp.task('default', function () {
.pipe(rename('markdown.tmLanguage'))
.pipe(gulp.dest('.'));
});
gulp.task('embedded', function () {
const out = {}
for (const lang of languages.filter(x => x.language)) {
out['meta.embedded.block.' +lang.language] = lang.language;
}
util.log(JSON.stringify(out, undefined, 4));
});

View File

@@ -354,11 +354,11 @@
</dict>
</array>
<key>while</key>
<string>^\s*(?!&lt;/(script|style|pre)&gt;)</string>
<string>^(?!.*&lt;/(script|style|pre)&gt;)</string>
</dict>
</array>
<key>end</key>
<string>(?=&lt;/(script|style|pre)&gt;)</string>
<string>(?=.*&lt;/(script|style|pre)&gt;)</string>
</dict>
<dict>
<key>begin</key>
@@ -626,6 +626,8 @@
<string>(^|\G)(\s*)(.*)</string>
<key>while</key>
<string>(^|\G)(?!\s*([`~]{3,})\s*$)</string>
<key>contentName</key>
<string>meta.embedded.block.css</string>
<key>patterns</key>
<array>
<dict>
@@ -677,6 +679,8 @@
<string>(^|\G)(\s*)(.*)</string>
<key>while</key>
<string>(^|\G)(?!\s*([`~]{3,})\s*$)</string>
<key>contentName</key>
<string>meta.embedded.block.html</string>
<key>patterns</key>
<array>
<dict>
@@ -728,6 +732,8 @@
<string>(^|\G)(\s*)(.*)</string>
<key>while</key>
<string>(^|\G)(?!\s*([`~]{3,})\s*$)</string>
<key>contentName</key>
<string>meta.embedded.block.ini</string>
<key>patterns</key>
<array>
<dict>
@@ -779,6 +785,8 @@
<string>(^|\G)(\s*)(.*)</string>
<key>while</key>
<string>(^|\G)(?!\s*([`~]{3,})\s*$)</string>
<key>contentName</key>
<string>meta.embedded.block.java</string>
<key>patterns</key>
<array>
<dict>
@@ -830,6 +838,8 @@
<string>(^|\G)(\s*)(.*)</string>
<key>while</key>
<string>(^|\G)(?!\s*([`~]{3,})\s*$)</string>
<key>contentName</key>
<string>meta.embedded.block.lua</string>
<key>patterns</key>
<array>
<dict>
@@ -881,6 +891,8 @@
<string>(^|\G)(\s*)(.*)</string>
<key>while</key>
<string>(^|\G)(?!\s*([`~]{3,})\s*$)</string>
<key>contentName</key>
<string>meta.embedded.block.makefile</string>
<key>patterns</key>
<array>
<dict>
@@ -932,6 +944,8 @@
<string>(^|\G)(\s*)(.*)</string>
<key>while</key>
<string>(^|\G)(?!\s*([`~]{3,})\s*$)</string>
<key>contentName</key>
<string>meta.embedded.block.perl</string>
<key>patterns</key>
<array>
<dict>
@@ -983,6 +997,8 @@
<string>(^|\G)(\s*)(.*)</string>
<key>while</key>
<string>(^|\G)(?!\s*([`~]{3,})\s*$)</string>
<key>contentName</key>
<string>meta.embedded.block.r</string>
<key>patterns</key>
<array>
<dict>
@@ -1034,6 +1050,8 @@
<string>(^|\G)(\s*)(.*)</string>
<key>while</key>
<string>(^|\G)(?!\s*([`~]{3,})\s*$)</string>
<key>contentName</key>
<string>meta.embedded.block.ruby</string>
<key>patterns</key>
<array>
<dict>
@@ -1085,6 +1103,8 @@
<string>(^|\G)(\s*)(.*)</string>
<key>while</key>
<string>(^|\G)(?!\s*([`~]{3,})\s*$)</string>
<key>contentName</key>
<string>meta.embedded.block.php</string>
<key>patterns</key>
<array>
<dict>
@@ -1140,6 +1160,8 @@
<string>(^|\G)(\s*)(.*)</string>
<key>while</key>
<string>(^|\G)(?!\s*([`~]{3,})\s*$)</string>
<key>contentName</key>
<string>meta.embedded.block.sql</string>
<key>patterns</key>
<array>
<dict>
@@ -1191,6 +1213,8 @@
<string>(^|\G)(\s*)(.*)</string>
<key>while</key>
<string>(^|\G)(?!\s*([`~]{3,})\s*$)</string>
<key>contentName</key>
<string>meta.embedded.block.vs_net</string>
<key>patterns</key>
<array>
<dict>
@@ -1242,6 +1266,8 @@
<string>(^|\G)(\s*)(.*)</string>
<key>while</key>
<string>(^|\G)(?!\s*([`~]{3,})\s*$)</string>
<key>contentName</key>
<string>meta.embedded.block.xml</string>
<key>patterns</key>
<array>
<dict>
@@ -1293,6 +1319,8 @@
<string>(^|\G)(\s*)(.*)</string>
<key>while</key>
<string>(^|\G)(?!\s*([`~]{3,})\s*$)</string>
<key>contentName</key>
<string>meta.embedded.block.xsl</string>
<key>patterns</key>
<array>
<dict>
@@ -1344,6 +1372,8 @@
<string>(^|\G)(\s*)(.*)</string>
<key>while</key>
<string>(^|\G)(?!\s*([`~]{3,})\s*$)</string>
<key>contentName</key>
<string>meta.embedded.block.yaml</string>
<key>patterns</key>
<array>
<dict>
@@ -1395,6 +1425,8 @@
<string>(^|\G)(\s*)(.*)</string>
<key>while</key>
<string>(^|\G)(?!\s*([`~]{3,})\s*$)</string>
<key>contentName</key>
<string>meta.embedded.block.dosbatch</string>
<key>patterns</key>
<array>
<dict>
@@ -1446,6 +1478,8 @@
<string>(^|\G)(\s*)(.*)</string>
<key>while</key>
<string>(^|\G)(?!\s*([`~]{3,})\s*$)</string>
<key>contentName</key>
<string>meta.embedded.block.clojure</string>
<key>patterns</key>
<array>
<dict>
@@ -1497,6 +1531,8 @@
<string>(^|\G)(\s*)(.*)</string>
<key>while</key>
<string>(^|\G)(?!\s*([`~]{3,})\s*$)</string>
<key>contentName</key>
<string>meta.embedded.block.coffee</string>
<key>patterns</key>
<array>
<dict>
@@ -1548,6 +1584,8 @@
<string>(^|\G)(\s*)(.*)</string>
<key>while</key>
<string>(^|\G)(?!\s*([`~]{3,})\s*$)</string>
<key>contentName</key>
<string>meta.embedded.block.c</string>
<key>patterns</key>
<array>
<dict>
@@ -1599,6 +1637,8 @@
<string>(^|\G)(\s*)(.*)</string>
<key>while</key>
<string>(^|\G)(?!\s*([`~]{3,})\s*$)</string>
<key>contentName</key>
<string>meta.embedded.block.cpp</string>
<key>patterns</key>
<array>
<dict>
@@ -1650,6 +1690,8 @@
<string>(^|\G)(\s*)(.*)</string>
<key>while</key>
<string>(^|\G)(?!\s*([`~]{3,})\s*$)</string>
<key>contentName</key>
<string>meta.embedded.block.diff</string>
<key>patterns</key>
<array>
<dict>
@@ -1701,6 +1743,8 @@
<string>(^|\G)(\s*)(.*)</string>
<key>while</key>
<string>(^|\G)(?!\s*([`~]{3,})\s*$)</string>
<key>contentName</key>
<string>meta.embedded.block.dockerfile</string>
<key>patterns</key>
<array>
<dict>
@@ -1752,6 +1796,8 @@
<string>(^|\G)(\s*)(.*)</string>
<key>while</key>
<string>(^|\G)(?!\s*([`~]{3,})\s*$)</string>
<key>contentName</key>
<string>meta.embedded.block.git_commit</string>
<key>patterns</key>
<array>
<dict>
@@ -1803,6 +1849,8 @@
<string>(^|\G)(\s*)(.*)</string>
<key>while</key>
<string>(^|\G)(?!\s*([`~]{3,})\s*$)</string>
<key>contentName</key>
<string>meta.embedded.block.git_rebase</string>
<key>patterns</key>
<array>
<dict>
@@ -1854,6 +1902,8 @@
<string>(^|\G)(\s*)(.*)</string>
<key>while</key>
<string>(^|\G)(?!\s*([`~]{3,})\s*$)</string>
<key>contentName</key>
<string>meta.embedded.block.go</string>
<key>patterns</key>
<array>
<dict>
@@ -1905,6 +1955,8 @@
<string>(^|\G)(\s*)(.*)</string>
<key>while</key>
<string>(^|\G)(?!\s*([`~]{3,})\s*$)</string>
<key>contentName</key>
<string>meta.embedded.block.groovy</string>
<key>patterns</key>
<array>
<dict>
@@ -1956,6 +2008,8 @@
<string>(^|\G)(\s*)(.*)</string>
<key>while</key>
<string>(^|\G)(?!\s*([`~]{3,})\s*$)</string>
<key>contentName</key>
<string>meta.embedded.block.jade</string>
<key>patterns</key>
<array>
<dict>
@@ -2007,6 +2061,8 @@
<string>(^|\G)(\s*)(.*)</string>
<key>while</key>
<string>(^|\G)(?!\s*([`~]{3,})\s*$)</string>
<key>contentName</key>
<string>meta.embedded.block.javascript</string>
<key>patterns</key>
<array>
<dict>
@@ -2058,6 +2114,8 @@
<string>(^|\G)(\s*)(.*)</string>
<key>while</key>
<string>(^|\G)(?!\s*([`~]{3,})\s*$)</string>
<key>contentName</key>
<string>meta.embedded.block.js_regexp</string>
<key>patterns</key>
<array>
<dict>
@@ -2109,6 +2167,8 @@
<string>(^|\G)(\s*)(.*)</string>
<key>while</key>
<string>(^|\G)(?!\s*([`~]{3,})\s*$)</string>
<key>contentName</key>
<string>meta.embedded.block.json</string>
<key>patterns</key>
<array>
<dict>
@@ -2160,6 +2220,8 @@
<string>(^|\G)(\s*)(.*)</string>
<key>while</key>
<string>(^|\G)(?!\s*([`~]{3,})\s*$)</string>
<key>contentName</key>
<string>meta.embedded.block.less</string>
<key>patterns</key>
<array>
<dict>
@@ -2211,6 +2273,8 @@
<string>(^|\G)(\s*)(.*)</string>
<key>while</key>
<string>(^|\G)(?!\s*([`~]{3,})\s*$)</string>
<key>contentName</key>
<string>meta.embedded.block.objc</string>
<key>patterns</key>
<array>
<dict>
@@ -2262,6 +2326,8 @@
<string>(^|\G)(\s*)(.*)</string>
<key>while</key>
<string>(^|\G)(?!\s*([`~]{3,})\s*$)</string>
<key>contentName</key>
<string>meta.embedded.block.scss</string>
<key>patterns</key>
<array>
<dict>
@@ -2313,6 +2379,8 @@
<string>(^|\G)(\s*)(.*)</string>
<key>while</key>
<string>(^|\G)(?!\s*([`~]{3,})\s*$)</string>
<key>contentName</key>
<string>meta.embedded.block.perl6</string>
<key>patterns</key>
<array>
<dict>
@@ -2364,6 +2432,8 @@
<string>(^|\G)(\s*)(.*)</string>
<key>while</key>
<string>(^|\G)(?!\s*([`~]{3,})\s*$)</string>
<key>contentName</key>
<string>meta.embedded.block.powershell</string>
<key>patterns</key>
<array>
<dict>
@@ -2415,6 +2485,8 @@
<string>(^|\G)(\s*)(.*)</string>
<key>while</key>
<string>(^|\G)(?!\s*([`~]{3,})\s*$)</string>
<key>contentName</key>
<string>meta.embedded.block.python</string>
<key>patterns</key>
<array>
<dict>
@@ -2466,6 +2538,8 @@
<string>(^|\G)(\s*)(.*)</string>
<key>while</key>
<string>(^|\G)(?!\s*([`~]{3,})\s*$)</string>
<key>contentName</key>
<string>meta.embedded.block.regexp_python</string>
<key>patterns</key>
<array>
<dict>
@@ -2517,6 +2591,8 @@
<string>(^|\G)(\s*)(.*)</string>
<key>while</key>
<string>(^|\G)(?!\s*([`~]{3,})\s*$)</string>
<key>contentName</key>
<string>meta.embedded.block.rust</string>
<key>patterns</key>
<array>
<dict>
@@ -2568,6 +2644,8 @@
<string>(^|\G)(\s*)(.*)</string>
<key>while</key>
<string>(^|\G)(?!\s*([`~]{3,})\s*$)</string>
<key>contentName</key>
<string>meta.embedded.block.scala</string>
<key>patterns</key>
<array>
<dict>
@@ -2619,6 +2697,8 @@
<string>(^|\G)(\s*)(.*)</string>
<key>while</key>
<string>(^|\G)(?!\s*([`~]{3,})\s*$)</string>
<key>contentName</key>
<string>meta.embedded.block.shellscript</string>
<key>patterns</key>
<array>
<dict>
@@ -2670,6 +2750,8 @@
<string>(^|\G)(\s*)(.*)</string>
<key>while</key>
<string>(^|\G)(?!\s*([`~]{3,})\s*$)</string>
<key>contentName</key>
<string>meta.embedded.block.typescript</string>
<key>patterns</key>
<array>
<dict>
@@ -2721,6 +2803,8 @@
<string>(^|\G)(\s*)(.*)</string>
<key>while</key>
<string>(^|\G)(?!\s*([`~]{3,})\s*$)</string>
<key>contentName</key>
<string>meta.embedded.block.typescriptreact</string>
<key>patterns</key>
<array>
<dict>
@@ -2772,6 +2856,8 @@
<string>(^|\G)(\s*)(.*)</string>
<key>while</key>
<string>(^|\G)(?!\s*([`~]{3,})\s*$)</string>
<key>contentName</key>
<string>meta.embedded.block.csharp</string>
<key>patterns</key>
<array>
<dict>
@@ -2823,6 +2909,8 @@
<string>(^|\G)(\s*)(.*)</string>
<key>while</key>
<string>(^|\G)(?!\s*([`~]{3,})\s*$)</string>
<key>contentName</key>
<string>meta.embedded.block.fsharp</string>
<key>patterns</key>
<array>
<dict>
@@ -3597,12 +3685,14 @@
<key>match</key>
<string>(`+)([^`]|(?!(?&lt;!`)\1(?!`))`)*+(\1)</string>
<key>name</key>
<string>markup.inline.raw.markdown</string>
<string>markup.inline.raw.string.markdown</string>
</dict>
</dict>
</dict>
<key>frontMatter</key>
<dict>
<key>contentName</key>
<string>meta.embedded.block.frontmatter</string>
<key>begin</key>
<string>\A-{3}\s*$</string>
<key>while</key>

View File

@@ -179,11 +179,11 @@
</dict>
</array>
<key>while</key>
<string>^\s*(?!&lt;/(script|style|pre)&gt;)</string>
<string>^(?!.*&lt;/(script|style|pre)&gt;)</string>
</dict>
</array>
<key>end</key>
<string>(?=&lt;/(script|style|pre)&gt;)</string>
<string>(?=.*&lt;/(script|style|pre)&gt;)</string>
</dict>
<dict>
<key>begin</key>
@@ -1175,12 +1175,14 @@
<key>match</key>
<string>(`+)([^`]|(?!(?&lt;!`)\1(?!`))`)*+(\1)</string>
<key>name</key>
<string>markup.inline.raw.markdown</string>
<string>markup.inline.raw.string.markdown</string>
</dict>
</dict>
</dict>
<key>frontMatter</key>
<dict>
<key>contentName</key>
<string>meta.embedded.block.frontmatter</string>
<key>begin</key>
<string>\A-{3}\s*$</string>
<key>while</key>