ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

Extension VSCODE


Enviado por   •  5 de Enero de 2020  •  Apuntes  •  2.117 Palabras (9 Páginas)  •  148 Visitas

Página 1 de 9

UNIR

Computación en el cliente web

Trabajo: Creación de una extensión para VS Code.

Docente: Gabriela Camacho Villaseñor

Alumno: Héctor Lobato Silva


Código extensión.ts:

import * as vscode from 'vscode';

//Importación de la libreria vscode

export function activate(context: vscode.ExtensionContext) { 

// Secrea y se exporta la funcion activate, que se encarga de iniciar la extensión

    let disposable = vscode.commands.registerCommand('extension.gapline', () => { 

        // Se registra y almacena el comando "gapline" previamente especificado en package.json

        let options: vscode.InputBoxOptions = {

            prompt: 'Lineas?',

            placeHolder: 'Número de lineas para hacer el salto'

        

        // Se crea el json de configuracion para el input box

        const editor = vscode.window.activeTextEditor

        //Se inicializa el editor en la variable editor

        if ( editor ) {

        //Se comprueba que la variable editor no este vacia o nula,         

            const document = editor.document

            //Se inicializa la constante document a partir del valor de la llave document de la variable editor

            const lines: Array = document.getText().split('\n')

            //Se crea un array a partir del texto que tiene la variable document

            // tomando en cuenta la separacion por salto de linea

            vscode.window.showInputBox( options ).then( numberOfLines => {

            // Se renderiza el showInputBox que es el cuadrod de dialogo donde colocamos el json de conficuración

            // esta promesa nos regresa el valor ingresado en ella para poder trabajar con el. 

                if ( numberOfLines === undefined ) { return ; }

                // Verificamos que la variable numberOfLines no tenga un valor "undefined", de ser asi, se rompe la ejecución

                var newText = ""

                // Inicializamos la variable newText que almacenará el nuevo texto que crearemos con los nuevos saltos de linea.

                lines.forEach( ( line, lineIndex ) => {

                // Se hace la iteración de cada elemento del array lines.                    

                    newText += `${ line }`

                    // A la variable newText se le agrega el valor de line, que es el valor de la posicion actual del array.

                    if ( (lineIndex+1) % Number.parseInt( numberOfLines ) === 0 ) {

                    // A la variable lineIndex se le suma 1 y se parcea a entero la variable numberOfLines

                    // comprobamos que la división modular de estos 2 números sea igual a 0, esto quiere decir que es hora de

                    // agreggar un nuevo salto de linea.

                        newText += ' \n'

                        //Se agrega el salto de linea a la variable newText

                    }                   

                } )

                var textRange = new vscode.Range(

                    0// Indice de linea donde iniciar a editar

                    document.lineAt( 0 ).range.start.character, // Indice de caracter donde empeazar a editar

                    document.lineCount - 1// Indice de linea donde terminar de editar

                    document.lineAt( editor.document.lineCount - 1 ).range.end.character // Indice del ultimo caracter de la ultima linea a editar

                )

                //Se crea el rango del texto del editor que queremos que sea editable, en este caso es todo el texto.               

...

Descargar como (para miembros actualizados)  txt (9 Kb)   pdf (346 Kb)   docx (1 Mb)  
Leer 8 páginas más »
Disponible sólo en Clubensayos.com