https://manuais.iessanclemente.net/index.php?title=Tutorial_sobre_Visual_Studio_Code&feed=atom&action=historyTutorial sobre Visual Studio Code - Historial de revisiones2024-03-28T14:38:39ZHistorial de revisiones de esta página en el wikiMediaWiki 1.36.2https://manuais.iessanclemente.net/index.php?title=Tutorial_sobre_Visual_Studio_Code&diff=69824&oldid=prevVeiga: /* Snippets de PHP */2021-10-19T08:58:48Z<p><span dir="auto"><span class="autocomment">Snippets de PHP</span></span></p>
<p><b>Página nueva</b></p><div>= Cómo convertir las claves generadas por PUTTY para Visual Studio Code =<br />
<br />
# Abrir Puttygen<br />
# Pulsar en Load<br />
# Cargar nuestra clave privada<br />
# Ir a Conversions->Export OpenSSH y exportar nuestra clave privada.<br />
# Copiar la clave privada a la carpeta que queramos o si estamos en Linux a : ~/.ssh/id_dsa (or id_rsa).<br />
# Crear la versión FRC 4716 de nuestra clave pública utilizando ssh-keygen<br />
<source lang="bash"><br />
ssh-keygen -e -f ~/.ssh/id_dsa > ~/.ssh/id_dsa_com.pub<br />
</source><br />
# Convertir la versión RFC 4716 de nuestra clave pública a formato de OpenSSH:<br />
<source lang="bash"><br />
ssh-keygen -i -f ~/.ssh/id_dsa_com.pub > ~/.ssh/id_dsa.pub<br />
</source><br />
<br />
== Extensiones recomendables para PHP ==<br />
<br />
* '''Spanish Language Pack for Visual Studio Code (Microsoft https://marketplace.visualstudio.com/items?itemName=MS-CEINTL.vscode-language-pack-es)'''<br />
* '''PHP Intelephense (Ben Mewburn https://marketplace.visualstudio.com/items?itemName=bmewburn.vscode-intelephense-client)''' <br />
* '''PHP Namespace Resolver (Mehedi Hassan https://marketplace.visualstudio.com/items?itemName=MehediDracula.php-namespace-resolver)'''<br />
* '''PHP Open PHP/HTML/Js In Browser (PrimaFuture https://marketplace.visualstudio.com/items?itemName=PrimaFuture.open-php-html-js-in-browser)''' (Configurar el '''Document Root Folder''') '''Mayus+F6''' para abrir fichero.<br />
* '''PHP Getters & Setters (phproberto https://marketplace.visualstudio.com/items?itemName=phproberto.vscode-php-getters-setters)'''<br />
* '''PHP Constructor (Mehedi Hassan https://marketplace.visualstudio.com/items?itemName=MehediDracula.php-constructor)'''<br />
* '''PHP Debug (Felix Becker https://marketplace.visualstudio.com/items?itemName=felixfbecker.php-debug)'''<br />
* '''PHP Server (brapifra https://marketplace.visualstudio.com/items?itemName=brapifra.phpserver)'''<br />
* '''PHP DocBlocker (Neil Brayfield https://marketplace.visualstudio.com/items?itemName=neilbrayfield.php-docblocker)'''<br />
* '''Auto Rename Tag (Jun Han https://marketplace.visualstudio.com/items?itemName=formulahendry.auto-rename-tag)'''<br />
* '''SFTP (liximomo https://marketplace.visualstudio.com/items?itemName=liximomo.sftp)'''<br />
* '''MySQL (cewijan https://marketplace.visualstudio.com/items?itemName=cweijan.vscode-mysql-client2 )'''<br />
* '''Auto Rename Tag (Jun Han https://marketplace.visualstudio.com/items?itemName=formulahendry.auto-rename-tag )''' <br />
* '''Material Icon Theme (Philipp Kief https://marketplace.visualstudio.com/items?itemName=PKief.material-icon-theme)'''<br />
<br />
A continuación '''configuraremos lo siguiente''':<br />
* Agregaremos en '''variables de entorno de Windows''' en el apartado de PATH: '''la ruta dónde tenemos nuestro PHP instalado''':<br />
** Botón derecho propiedades de Mi PC -> Configuración avanzada -> '''Editamos la variable del sistema PATH y agregamos la ruta dónde tenemos instalado el PHP''': '''C:\tools\php74\php.exe'''<br />
<br />
== Snippets de PHP ==<br />
<br />
* Vamos a '''Archivo -> Preferencias -> Fragmentos de código del usuario -> y Tecleamos HTML.json'''<br />
* En ese archivo añadimos lo siguiente:<br />
<br />
<source lang="bash"><br />
<br />
"php": {<br />
"prefix": "php",<br />
"body": [<br />
"<?php \n\t$1\n?>"<br />
],<br />
"description": "php tag"<br />
}<br />
<br />
</source><br />
<br />
* De esta manera cuando estemos editando '''código HTML''' y tecleemos '''PHP''' y le demos a '''TAB''' se creará automáticamente el bloque de PHP dentro de nuestro bloque HTML.<br />
<br />
* También podemos crear un snippet para PHP, por ejemplo cuando escribamos _try nos escribirá el bloque try catch para PDO.<br />
* Vamos a '''Archivo -> Preferencias -> Fragmentos de código del usuario ->''' Buscaremos '''php.json''' y lo editamos:<br />
* Código de ejemplo del fichero '''php.json''':<br />
<br />
<source lang="bash"><br />
{<br />
// Place your snippets for php here. Each snippet is defined under a snippet name and has a prefix, body and <br />
// description. The prefix is what is used to trigger the snippet and the body will be expanded and inserted. Possible variables are:<br />
// $1, $2 for tab stops, $0 for the final cursor position, and ${1:label}, ${2:another} for placeholders. Placeholders with the <br />
// same ids are connected.<br />
// Example:<br />
// "Print to console": {<br />
// "prefix": "log",<br />
// "body": [<br />
// "console.log('$1');",<br />
// "$2"<br />
// ],<br />
// "description": "Log output to console"<br />
// }<br />
"try catch PDO": {<br />
"prefix": "_try",<br />
"body": [<br />
"try {\r",<br />
"\t$1",<br />
"} catch (PDOException \\$error) {\r",<br />
"\tdie (\"Error en consulta de MySQL: {\\$error->getMessage()}.\");",<br />
"\t//die (\"Error en consulta de MySQL.\");",<br />
"}"<br />
],<br />
"description": "Try catch PDO."<br />
}<br />
}<br />
</source><br />
<br />
* Cuando en un fichero .php tecleemos _try nos aparecerá la sugerencia del snippet para generar el código automáticamente.<br />
<br />
== Asociación de archivos blade con html ==<br />
<br />
Cuando estamos trabajando con Laravel por ejemplo, podemos asociar las plantillas de Blade para que las reconozca como html.<br />
<br />
<source lang="bash"><br />
# Pulsamos CTRL + MAYUS + P<br />
<br />
# Abrimos el fichero settings.json<br />
<br />
# Pegamos al final del archivo esta configuración y la guardamos:<br />
<br />
"files.associations": {<br />
"*.blade.php": "html",<br />
"*.tpl": "html"<br />
}<br />
<br />
</source><br />
<br />
== Solución de problema de plugin VSCODE al trabajar con vuestro servidor por SSH ==<br />
<br />
Para la gente que os está dando fallos en el plugin sftp de Visual Studio con el error "'''No Such file'''" en VScode, una solución es:<br />
<br />
<source lang="bash"><br />
# Editar este archivo dentro de vuestro usuario:<br />
c:\Usuarios\xxxxxxxxx\.vscode\extensions\liximomo.sftp-1.12.9\node_modules\ssh2-streams\lib\sftp.js<br />
<br />
# Modificar la línea 388:<br />
if (code === STATUS_CODE.OK) {<br />
<br />
# Por esta otra:<br />
if (code === STATUS_CODE.OK || code === STATUS_CODE.NO_SUCH_FILE) {<br />
<br />
# Guardar y reiniciar VSCode.<br />
<br />
</source><br />
<br />
== Si tenéis problemas con la clave de Amazon ppk para conectar con AWS ==<br />
<br />
'''https://code.visualstudio.com/docs/remote/troubleshooting#_reusing-a-key-generated-in-puttygen'''<br />
<br />
== Configuración de VSCode para PHP ==<br />
<br />
Para abrir el fichero de configuración '''settings.json''':<br />
* Pulsar '''CTRL + P'''<br />
* Teclear '''settings.json'''<br />
* Abrir el fichero y editarlo:<br />
<br />
<source lang="bash"><br />
<br />
{<br />
"php.validate.executablePath": "C:\\tools\\php74\\php.exe",<br />
"php.validate.enable": true,<br />
"php.validate.run": "onSave",<br />
"editor.formatOnSave":true,<br />
<br />
<br />
}<br />
<br />
</source><br />
<br />
== Ejemplo de una configuración más ampliada de settings.json ==<br />
<br />
Para abrir el fichero de configuración '''settings.json''':<br />
* Pulsar '''CTRL + P'''<br />
* Teclear '''settings.json'''<br />
* Abrir el fichero y editarlo:<br />
<br />
<source lang="bash"><br />
{<br />
"editor.formatOnSave": true,<br />
"php.validate.executablePath": "C:\\tools\\php74\\php.exe",<br />
"php.validate.enable": false,<br />
"php.suggest.basic": false,<br />
"search.collapseResults": "alwaysCollapse",<br />
"search.exclude": {<br />
"**/node_modules": true,<br />
"**/bower_components": true,<br />
"**/.git": true,<br />
"**/storage": true,<br />
"**/tests": true,<br />
"_ide_helper.php": true,<br />
"_ide_helper_models.php": true,<br />
"package-lock.json": true<br />
},<br />
"files.eol": "\n",<br />
"files.insertFinalNewline": true,<br />
"files.trimTrailingWhitespace": true,<br />
"editor.fontSize": 16,<br />
"editor.letterSpacing": 0.5,<br />
"editor.lineHeight": 24,<br />
"editor.cursorBlinking": "smooth",<br />
"editor.fontLigatures": false,<br />
"editor.formatOnType": false,<br />
"editor.formatOnPaste": false,<br />
"editor.autoIndent": "advanced",<br />
"editor.wordWrap": "on",<br />
"git.showPushSuccessNotification": true,<br />
"editor.gotoLocation.multipleDefinitions": "goto",<br />
"editor.snippetSuggestions": "bottom",<br />
"workbench.editor.enablePreview": false,<br />
"workbench.editor.enablePreviewFromQuickOpen": false,<br />
"editor.renameOnType": true,<br />
"workbench.iconTheme": "Monokai Pro (Filter Spectrum) Icons",<br />
"workbench.startupEditor": "newUntitledFile",<br />
"explorer.confirmDelete": false,<br />
"explorer.confirmDragAndDrop": false,<br />
"workbench.editor.untitled.hint": "hidden",<br />
"workbench.colorTheme": "Monokai Pro (Filter Spectrum)",<br />
"terminal.integrated.fontWeightBold": null,<br />
"open-php-html-js-in-browser.selectedBrowser": "Chrome",<br />
"open-php-html-js-in-browser.documentRootFolder": "D:\\xampp\\htdocs\\cursophp"<br />
}<br />
</source></div>Veiga