diff --git a/out/extension.js b/out/extension.js index fa4e0f0..bd2540e 100644 --- a/out/extension.js +++ b/out/extension.js @@ -9,6 +9,7 @@ function activate(context) { const regexRegex = /(^|\s|[()={},:?;])(\/((?:\\\/|\[[^\]]*\]|[^/])+)\/([gimuy]*))(\s|[()={},:?;]|$)/g; const phpRegexRegex = /(^|\s|[()={},:?;])['|"](\/((?:\\\/|\[[^\]]*\]|[^/])+)\/([gimuy]*))['|"](\s|[()={},:?;]|$)/g; const haxeRegexRegex = /(^|\s|[()={},:?;])(~\/((?:\\\/|\[[^\]]*\]|[^/])+)\/([gimsu]*))(\s|[.()={},:?;]|$)/g; + const pyRegexRegex = /(^|\s|[()={},:?;])['|"](((?:\\\/|\[[^\]]*\]|[^/])+)([gimuy]*))['|"](\s|[()={},:?;]|$)/g; const regexHighlight = vscode.window.createTextEditorDecorationType({ backgroundColor: 'rgba(100,100,100,.35)' }); const matchHighlight = vscode.window.createTextEditorDecorationType({ backgroundColor: 'rgba(255,255,0,.35)' }); const matchesFileContent = `Lorem ipsum dolor sit amet, consectetur adipiscing elit, @@ -29,7 +30,7 @@ www.demo.com http://foo.co.uk/ https://marketplace.visualstudio.com/items?itemName=chrmarti.regex https://github.com/chrmarti/vscode-regex `; - const languages = ['javascript', 'javascriptreact', 'typescript', 'typescriptreact', 'vue', 'php', 'haxe']; + const languages = ['javascript', 'javascriptreact', 'typescript', 'typescriptreact', 'vue', 'php', 'haxe', 'python']; const decorators = new Map(); context.subscriptions.push(vscode.commands.registerCommand('extension.toggleRegexPreview', toggleRegexPreview)); languages.forEach(language => { @@ -244,6 +245,9 @@ https://github.com/chrmarti/vscode-regex else if (languageId == 'php') { return phpRegexRegex; } + else if (languageId == 'python') { + return pyRegexRegex; + } return regexRegex; } function createRegexMatch(document, line, match) { diff --git a/out/extension.js.map b/out/extension.js.map index 8fe9a8f..88bee28 100644 --- a/out/extension.js.map +++ b/out/extension.js.map @@ -1 +1 @@ -{"version":3,"file":"extension.js","sourceRoot":"","sources":["../src/extension.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"extension.js","sourceRoot":"","sources":["../src/extension.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/package.json b/package.json index 7fce48e..d020344 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "regex", "displayName": "Regex Previewer", - "description": "Regex matches previewer for JavaScript, TypeScript, PHP and Haxe in Visual Studio Code.", + "description": "Regex matches previewer for JavaScript, TypeScript, PHP, Haxe and Python in Visual Studio Code.", "version": "0.4.0", "publisher": "chrmarti", "repository": { @@ -27,7 +27,8 @@ "onLanguage:vue", "onLanguage:php", "onLanguage:haxe", - "onCommand:extension.toggleRegexPreview" + "onCommand:extension.toggleRegexPreview", + "onLanguage:python" ], "main": "./out/extension", "browser": "./out/extension", @@ -69,4 +70,4 @@ "@types/vscode": "^1.1.0", "typescript": "^4.2.2" } -} \ No newline at end of file +} diff --git a/src/extension.ts b/src/extension.ts index 521e509..e73647f 100644 --- a/src/extension.ts +++ b/src/extension.ts @@ -14,6 +14,7 @@ export function activate(context: vscode.ExtensionContext) { const regexRegex = /(^|\s|[()={},:?;])(\/((?:\\\/|\[[^\]]*\]|[^/])+)\/([gimuy]*))(\s|[()={},:?;]|$)/g; const phpRegexRegex = /(^|\s|[()={},:?;])['|"](\/((?:\\\/|\[[^\]]*\]|[^/])+)\/([gimuy]*))['|"](\s|[()={},:?;]|$)/g; const haxeRegexRegex = /(^|\s|[()={},:?;])(~\/((?:\\\/|\[[^\]]*\]|[^/])+)\/([gimsu]*))(\s|[.()={},:?;]|$)/g; + const pyRegexRegex = /(^|\s|[()={},:?;])['|"](((?:\\\/|\[[^\]]*\]|[^/])+)([gimuy]*))['|"](\s|[()={},:?;]|$)/g; const regexHighlight = vscode.window.createTextEditorDecorationType({ backgroundColor: 'rgba(100,100,100,.35)' }); const matchHighlight = vscode.window.createTextEditorDecorationType({ backgroundColor: 'rgba(255,255,0,.35)' }); @@ -35,7 +36,7 @@ www.demo.com http://foo.co.uk/ https://marketplace.visualstudio.com/items?itemName=chrmarti.regex https://github.com/chrmarti/vscode-regex `; - const languages = ['javascript', 'javascriptreact', 'typescript', 'typescriptreact', 'vue', 'php', 'haxe']; + const languages = ['javascript', 'javascriptreact', 'typescript', 'typescriptreact', 'vue', 'php', 'haxe', 'python']; const decorators = new Map(); @@ -292,6 +293,8 @@ https://github.com/chrmarti/vscode-regex return haxeRegexRegex; } else if (languageId == 'php') { return phpRegexRegex; + } else if (languageId == 'python'){ + return pyRegexRegex; } return regexRegex; }