From 21324f6ab60f4a889afc323c4786ea94be626807 Mon Sep 17 00:00:00 2001 From: Mike Phares Date: Wed, 20 Oct 2021 09:47:27 -0700 Subject: [PATCH] Search Google - Selection --- type-script-helper-1.2.5.vsix | Bin 0 -> 9798 bytes type-script-helper-1.2.6.vsix | Bin 0 -> 9828 bytes type-script-helper-1.2.7.vsix | Bin 0 -> 9824 bytes type-script-helper-1.2.8.vsix | Bin 0 -> 9887 bytes type-script-helper/README.md | 10 +++ type-script-helper/package.json | 68 +++++++++--------- type-script-helper/src/extension.ts | 33 ++++----- type-script-helper/src/readOnlyLinesHelper.ts | 51 +++++++++++++ .../src/{helper.ts => replaceLinesHelper.ts} | 12 ---- 9 files changed, 112 insertions(+), 62 deletions(-) create mode 100644 type-script-helper-1.2.5.vsix create mode 100644 type-script-helper-1.2.6.vsix create mode 100644 type-script-helper-1.2.7.vsix create mode 100644 type-script-helper-1.2.8.vsix create mode 100644 type-script-helper/src/readOnlyLinesHelper.ts rename type-script-helper/src/{helper.ts => replaceLinesHelper.ts} (96%) diff --git a/type-script-helper-1.2.5.vsix b/type-script-helper-1.2.5.vsix new file mode 100644 index 0000000000000000000000000000000000000000..9af884a689cd907cafe21e3b8e9946b286407b75 GIT binary patch literal 9798 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 T3HAF=u$rSks(pMmi( literal 0 HcmV?d00001 diff --git a/type-script-helper-1.2.8.vsix b/type-script-helper-1.2.8.vsix new file mode 100644 index 0000000000000000000000000000000000000000..ae9cbb6e36098553929404612d9471a049310417 GIT binary patch literal 9887 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 afAfi=49u$$0{|erem=e0GD!dR=lnkytTOHZ literal 0 HcmV?d00001 diff --git a/type-script-helper/README.md b/type-script-helper/README.md index 2518eb0..9b72084 100644 --- a/type-script-helper/README.md +++ b/type-script-helper/README.md @@ -57,3 +57,13 @@ Added split(' group by ').join('\r\n GROUP BY '). ## Working with Markdown ### For more information + +### 1.2.4 +----------------------------------------------------------------------------------------------------------- + +## Search Google + +### 1.2.8 +----------------------------------------------------------------------------------------------------------- + +## Search Google (Read Only Lines Helper) diff --git a/type-script-helper/package.json b/type-script-helper/package.json index 02e6ed3..b32bd50 100644 --- a/type-script-helper/package.json +++ b/type-script-helper/package.json @@ -4,7 +4,7 @@ "description": "Helper for VS Code in TypeScript", "publisher": "IFX", "repository": "https://github.com/mikepharesjr/YO-VSCode/tree/master/type-script-helper", - "version": "1.2.4", + "version": "1.2.8", "engines": { "vscode": "^1.40.0" }, @@ -13,43 +13,43 @@ ], "main": "./out/extension.js", "activationEvents": [ - "onCommand:helper.addCSharpComment", - "onCommand:helper.addVBComment", - "onCommand:helper.convertToRegularExpression", - "onCommand:helper.cutEachLine", - "onCommand:helper.expandSql", - "onCommand:helper.listToListFamily", - "onCommand:helper.listToListWrappedComma", - "onCommand:helper.prettySql", - "onCommand:helper.removeComment", - "onCommand:helper.searchGoogle", - "onCommand:helper.sortLength", - "onCommand:helper.sortNormal", - "onCommand:helper.unwrapSql", - "onCommand:helper.wrapSqlCSharp", - "onCommand:helper.wrapSqlVB" + "onCommand:readOnlyLinesHelper.searchGoogle", + "onCommand:replaceLinesHelper.addCSharpComment", + "onCommand:replaceLinesHelper.addVBComment", + "onCommand:replaceLinesHelper.convertToRegularExpression", + "onCommand:replaceLinesHelper.cutEachLine", + "onCommand:replaceLinesHelper.expandSql", + "onCommand:replaceLinesHelper.listToListFamily", + "onCommand:replaceLinesHelper.listToListWrappedComma", + "onCommand:replaceLinesHelper.prettySql", + "onCommand:replaceLinesHelper.removeComment", + "onCommand:replaceLinesHelper.sortLength", + "onCommand:replaceLinesHelper.sortNormal", + "onCommand:replaceLinesHelper.unwrapSql", + "onCommand:replaceLinesHelper.wrapSqlCSharp", + "onCommand:replaceLinesHelper.wrapSqlVB" ], "contributes": { "commands": [ - { "command": "helper.addCSharpComment", "title": "Add C# Comment" }, - { "command": "helper.addVBComment", "title": "Add VB Comment" }, - { "command": "helper.convertToRegularExpression", "title": "Convert to Regular Expression" }, - { "command": "helper.cutEachLine", "title": "Cut each line after |||" }, - { "command": "helper.expandSql", "title": "Expand Sql" }, - { "command": "helper.listToListFamily", "title": "List to list family (Kristy, Mike ...)" }, - { "command": "helper.listToListWrappedComma", "title": "List to list wrapped comma" }, - { "command": "helper.prettySql", "title": "Pretty Sql" }, - { "command": "helper.removeComment", "title": "Remove comment" }, - { "command": "helper.searchGoogle", "title": "Search Google" }, - { "command": "helper.sortLength", "title": "Sort by Length" }, - { "command": "helper.sortNormal", "title": "My Sort lines (ascending, case sensitive)" }, - { "command": "helper.unwrapSql", "title": "Un-wrap Sql" }, - { "command": "helper.wrapSqlCSharp", "title": "Wrap Sql for C#" }, - { "command": "helper.wrapSqlVB", "title": "Wrap Sql for VB" } + { "command": "readOnlyLinesHelper.searchGoogle", "title": "Search Google" }, + { "command": "replaceLinesHelper.addCSharpComment", "title": "Add C# Comment" }, + { "command": "replaceLinesHelper.addVBComment", "title": "Add VB Comment" }, + { "command": "replaceLinesHelper.convertToRegularExpression", "title": "Convert to Regular Expression" }, + { "command": "replaceLinesHelper.cutEachLine", "title": "Cut each line after |||" }, + { "command": "replaceLinesHelper.expandSql", "title": "Expand Sql" }, + { "command": "replaceLinesHelper.listToListFamily", "title": "List to list family (Kristy, Mike ...)" }, + { "command": "replaceLinesHelper.listToListWrappedComma", "title": "List to list wrapped comma" }, + { "command": "replaceLinesHelper.prettySql", "title": "Pretty Sql" }, + { "command": "replaceLinesHelper.removeComment", "title": "Remove comment" }, + { "command": "replaceLinesHelper.sortLength", "title": "Sort by Length" }, + { "command": "replaceLinesHelper.sortNormal", "title": "My Sort lines (ascending, case sensitive)" }, + { "command": "replaceLinesHelper.unwrapSql", "title": "Un-wrap Sql" }, + { "command": "replaceLinesHelper.wrapSqlCSharp", "title": "Wrap Sql for C#" }, + { "command": "replaceLinesHelper.wrapSqlVB", "title": "Wrap Sql for VB" } ], "keybindings": [ { - "command": "helper.unwrapSql", + "command": "replaceLinesHelper.unwrapSql", "key": "shift + f9", "when": "editorTextFocus" } @@ -57,9 +57,9 @@ "menus": { "editor/context": [ { - "command": "helper.unwrapSql", + "command": "replaceLinesHelper.unwrapSql", "when": "editorTextFocus", - "group": "helper@1" + "group": "replaceLinesHelper@1" } ] } diff --git a/type-script-helper/src/extension.ts b/type-script-helper/src/extension.ts index 011d79c..7993378 100644 --- a/type-script-helper/src/extension.ts +++ b/type-script-helper/src/extension.ts @@ -1,7 +1,8 @@ // The module 'vscode' contains the VS Code extensibility API // Import the module and reference it with the alias vscode in your code below import * as vscode from 'vscode'; -import * as helper from './helper'; +import * as replaceLinesHelper from './replaceLinesHelper'; +import * as readOnlyLinesHelper from './readOnlyLinesHelper'; // this method is called when your extension is activated // your extension is activated the very first time the command is executed @@ -25,21 +26,21 @@ export function activate(context: vscode.ExtensionContext) { // context.subscriptions.push(disposable); const commands = [ - vscode.commands.registerCommand('helper.addCSharpComment', helper.addCSharpComment), - vscode.commands.registerCommand('helper.addVBComment', helper.addVBComment), - vscode.commands.registerCommand('helper.convertToRegularExpression', helper.convertToRegularExpression), - vscode.commands.registerCommand('helper.cutEachLine', helper.cutEachLine), - vscode.commands.registerCommand('helper.expandSql', helper.expandSql), - vscode.commands.registerCommand('helper.listToListFamily', helper.listToListFamily), - vscode.commands.registerCommand('helper.listToListWrappedComma', helper.listToListWrappedComma), - vscode.commands.registerCommand('helper.prettySql', helper.prettySql), - vscode.commands.registerCommand('helper.removeComment', helper.removeComment), - vscode.commands.registerCommand('helper.searchGoogle', helper.searchGoogle), - vscode.commands.registerCommand('helper.sortLength', helper.sortLength), - vscode.commands.registerCommand('helper.sortNormal', helper.sortNormal), - vscode.commands.registerCommand('helper.unwrapSql', helper.unwrapSql), - vscode.commands.registerCommand('helper.wrapSqlCSharp', helper.wrapSqlCSharp), - vscode.commands.registerCommand('helper.wrapSqlVB', helper.wrapSqlVB) + vscode.commands.registerCommand('readOnlyLinesHelper.searchGoogle', readOnlyLinesHelper.searchGoogle), + vscode.commands.registerCommand('replaceLinesHelper.addCSharpComment', replaceLinesHelper.addCSharpComment), + vscode.commands.registerCommand('replaceLinesHelper.addVBComment', replaceLinesHelper.addVBComment), + vscode.commands.registerCommand('replaceLinesHelper.convertToRegularExpression', replaceLinesHelper.convertToRegularExpression), + vscode.commands.registerCommand('replaceLinesHelper.cutEachLine', replaceLinesHelper.cutEachLine), + vscode.commands.registerCommand('replaceLinesHelper.expandSql', replaceLinesHelper.expandSql), + vscode.commands.registerCommand('replaceLinesHelper.listToListFamily', replaceLinesHelper.listToListFamily), + vscode.commands.registerCommand('replaceLinesHelper.listToListWrappedComma', replaceLinesHelper.listToListWrappedComma), + vscode.commands.registerCommand('replaceLinesHelper.prettySql', replaceLinesHelper.prettySql), + vscode.commands.registerCommand('replaceLinesHelper.removeComment', replaceLinesHelper.removeComment), + vscode.commands.registerCommand('replaceLinesHelper.sortLength', replaceLinesHelper.sortLength), + vscode.commands.registerCommand('replaceLinesHelper.sortNormal', replaceLinesHelper.sortNormal), + vscode.commands.registerCommand('replaceLinesHelper.unwrapSql', replaceLinesHelper.unwrapSql), + vscode.commands.registerCommand('replaceLinesHelper.wrapSqlCSharp', replaceLinesHelper.wrapSqlCSharp), + vscode.commands.registerCommand('replaceLinesHelper.wrapSqlVB', replaceLinesHelper.wrapSqlVB) ]; commands.forEach(command => context.subscriptions.push(command)); diff --git a/type-script-helper/src/readOnlyLinesHelper.ts b/type-script-helper/src/readOnlyLinesHelper.ts new file mode 100644 index 0000000..d616fc1 --- /dev/null +++ b/type-script-helper/src/readOnlyLinesHelper.ts @@ -0,0 +1,51 @@ +import * as vscode from 'vscode'; + +enum LinesAction { + searchGoogle +} + +function searchGoogleLogic(text: string, lines: string[]): void { + if (text.length > 0) { + vscode.env.openExternal( + vscode.Uri.parse(`https://www.google.com/search?q=${text.trim()}`) + ) + } + else if (lines.length > 0) { + vscode.env.openExternal( + vscode.Uri.parse(`https://www.google.com/search?q=${lines[0].trim()}`) + ) + } +} + +function getLines(textEditor: vscode.TextEditor, startLine: number, endLine: number) { + let results: string[] = []; + for (let i = startLine; i <= endLine; i++) { + results.push(textEditor.document.lineAt(i).text); + } + return results; +} + +function linesFunction(linesAction: LinesAction): Thenable | undefined { + const textEditor = vscode.window.activeTextEditor; + if (!textEditor) { + return undefined; + } + let text = ''; + var startLine = 0; + var endLine = textEditor.document.lineCount - 1; + const selection = textEditor.selection; + if (!selection.isEmpty) { + startLine = selection.start.line; + endLine = selection.end.line; + let range = new vscode.Range(selection.start, selection.end) + text = textEditor.document.getText(range); + } + let lines: string[] = getLines(textEditor, startLine, endLine); + switch (linesAction) { + case LinesAction.searchGoogle: { searchGoogleLogic(text, lines); break; } + default: { throw new Error(); } + } + return undefined; +} + +export const searchGoogle = () => linesFunction(LinesAction.searchGoogle); \ No newline at end of file diff --git a/type-script-helper/src/helper.ts b/type-script-helper/src/replaceLinesHelper.ts similarity index 96% rename from type-script-helper/src/helper.ts rename to type-script-helper/src/replaceLinesHelper.ts index 91a8e14..c38291f 100644 --- a/type-script-helper/src/helper.ts +++ b/type-script-helper/src/replaceLinesHelper.ts @@ -1,5 +1,4 @@ import * as vscode from 'vscode'; -import { stringify } from 'querystring'; type ArrayTransformer = (lines: string[]) => string[]; type SortingAlgorithm = (a: string, b: string) => number; @@ -15,7 +14,6 @@ enum LinesAction { prettySql, pdsfToFixedWidth, removeComment, - searchGoogle, sortLength, sortNormal, unwrapSql, @@ -158,14 +156,6 @@ function removeCommentLogic(lines: string[]): void { } } -function searchGoogleLogic(lines: string[]): void { - for (let i = 0; i < lines.length; ++i) { - vscode.env.openExternal( - vscode.Uri.parse(`https://www.google.com/search?q=${lines[i]}`) - ) - } -} - function makeSorter(algorithm?: SortingAlgorithm): ArrayTransformer { return function (lines: string[]): string[] { return lines.sort(algorithm); @@ -276,7 +266,6 @@ function linesFunction(linesAction: LinesAction): Thenable | undefined case LinesAction.listToListWrappedComma: { listToListWrappedCommaLogic(lines); break; } case LinesAction.prettySql: { prettySqlLogic(lines); break; } case LinesAction.removeComment: { removeCommentLogic(lines); break; } - case LinesAction.searchGoogle: { searchGoogleLogic(lines); break; } case LinesAction.sortLength: { sortLengthLogic(lines); break; } case LinesAction.sortNormal: { sortNormalLogic(lines); break; } case LinesAction.unwrapSql: { unwrapSqlLogic(lines); break; } @@ -297,7 +286,6 @@ export const listToListWrappedComma = () => linesFunction(LinesAction.listToList export const prettySql = () => linesFunction(LinesAction.prettySql); export const pdsfToFixedWidth = () => linesFunction(LinesAction.pdsfToFixedWidth); export const removeComment = () => linesFunction(LinesAction.removeComment); -export const searchGoogle = () => linesFunction(LinesAction.searchGoogle); export const sortLength = () => linesFunction(LinesAction.sortLength); export const sortNormal = () => linesFunction(LinesAction.sortNormal); export const unwrapSql = () => linesFunction(LinesAction.unwrapSql);