diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/extension.ts | 33 | 
1 files changed, 26 insertions, 7 deletions
diff --git a/src/extension.ts b/src/extension.ts index 4ee29f0..0b16250 100644 --- a/src/extension.ts +++ b/src/extension.ts @@ -3,6 +3,7 @@  // Import the module and reference it with the alias vscode in your code below  import * as vscode from 'vscode';  import axios from 'axios'; +import * as ncp from 'copy-paste';  // this method is called when your extension is activated  // your extension is activated the very first time the command is executed @@ -11,21 +12,24 @@ export function activate(context: vscode.ExtensionContext) {      // Use the console to output diagnostic information (console.log) and errors (console.error)      // This line of code will only be executed once when your extension is activated      console.log('Congratulations, your extension "kopy-io-plugin" is now active!'); +    console.log(ncp);      // The command has been defined in the package.json file      // Now provide the implementation of the command with  registerCommand      // The commandId parameter must match the command field in package.json - +          let olaCommand = vscode.commands.registerCommand('extension.kopyit', (data) => {          // The code you place here will be executed every time your command is executed          const editor = vscode.window.activeTextEditor;          const document = editor.document; -        console.log(editor.selection); +        // console.log(editor.selection);          let selectedText = document.getText(new vscode.Range(editor.selection.start, editor.selection.end)); -        console.log(selectedText); - +        // console.log(selectedText); +        ncp.copy(selectedText, () => { +            console.log("Copied to Clipboard"); +        });          axios({              method: 'post',              url: 'http://kopy.io/documents', @@ -33,12 +37,27 @@ export function activate(context: vscode.ExtensionContext) {          }).then((response) => {              if(response.status===200){                  // vscode.window.showInformationMessage('kopy.io Url : https://kopy.io/'+response.data.key); -                vscode.window.showInformationMessage('Kopy.io It successfully',...['open']).then((selection) => { -                    vscode.commands.executeCommand('vscode.open', vscode.Uri.parse('https://kopy.io/'+response.data.key)) -                }); +                // vscode.window.showInformationMessage('Kopy.io It successfully',...['Open kopy.io',]).then((selection) => { +                //     vscode.commands.executeCommand('vscode.open', vscode.Uri.parse('https://kopy.io/'+response.data.key)) +                // }); +                vscode.window.showQuickPick(['Open kopy.io', 'Copy URL to Clipboard', 'Close']) +                    .then((val) => { +                        // vscode.window.showInformationMessage('You picked ' + val) +                        if (val === 'Open kopy.io') { +                            vscode.commands.executeCommand('vscode.open', vscode.Uri.parse('https://kopy.io/'+response.data.key)) +                        } else if (val === 'Copy URL to Clipboard') { +                            ncp.copy('https://kopy.io/' + response.data.key, () => { +                                vscode.window.showInformationMessage('URL is on your Clipboard'); +                            }); +                        } else { +                            return false; +                        } +                    });              }else{                  vscode.window.showErrorMessage('Cannot post the selected text to kopy.io');              } +             +                     }).catch((error) => {              console.log("kopy.io Error", error);              vscode.window.showErrorMessage('Cannot post the selected text to kopy.io');  | 
