Skip to content

Commit d715070

Browse files
José Miguel Sánchez AlésJosé Miguel Sánchez Alés
authored andcommitted
Mejora las instrucciones sobre Visual Studio Code
1 parent 0ddc43d commit d715070

File tree

7 files changed

+335
-201
lines changed

7 files changed

+335
-201
lines changed

docs/98.apendices/99.tools/vscode.html

Lines changed: 90 additions & 46 deletions
Large diffs are not rendered by default.

docs/_images/task-addkeybinding.png

71.8 KB
Loading

docs/_sources/98.apendices/99.tools/vscode.rst.txt

Lines changed: 122 additions & 77 deletions
Original file line numberDiff line numberDiff line change
@@ -33,18 +33,20 @@ Generalidades
3333
consola que muestra los errores derivados de una determinada acción. Por
3434
ejemplo, los errores de validación.
3535

36-
**Personalización**
37-
El entorno es muy, muy configurable y permite alterar su comportamiento
38-
mediante la manipulación de varios aspectos cuya descripción se almacena en
39-
archivos de configuración |JSON|:
40-
41-
+ Los :ref:`parámetros de configuración <vscode-config>` propiamente dichos
42-
(:file:`settings.json`).
43-
+ Las :ref:`extensiones <vscode-extensions>` (:file:`extensions.json`).
44-
+ Las :ref:`tareas <vscode-tasks>` (:file:`tasks.json`).
45-
+ Los lanzadores (:file:`launch.json`).
46-
+ Las asociaciones a teclas o atajos de teclado (:file:`keybindings.json`).
47-
36+
Personalización
37+
===============
38+
El entorno es muy, muy configurable y permite alterar su comportamiento
39+
mediante la manipulación de varios aspectos cuya descripción se almacena en
40+
archivos de configuración |JSON|:
41+
42+
+ Los :ref:`parámetros de configuración <vscode-config>` propiamente dichos
43+
(:file:`settings.json`).
44+
+ Las :ref:`extensiones <vscode-extensions>` (:file:`extensions.json`).
45+
+ Las :ref:`tareas <vscode-tasks>` (:file:`tasks.json`).
46+
+ La depuración (:file:`launch.json`).
47+
+ Las asociaciones a teclas o atajos de teclado (:file:`keybindings.json`).
48+
49+
**Niveles de personalización**
4850
Además, estas personalizaciones podemos hacerlas a dos niveles:
4951

5052
.. _vscode-profile:
@@ -108,7 +110,12 @@ Generalidades
108110
Las áreas de trabajo también se pueden personalizar, de modo que la
109111
personalización que disfrutemos al trabajar será la suma de la que hayamos
110112
hecho para el perfil que estamos usando más la que apliquemos al área de
111-
trabajo.
113+
trabajo. De hecho, *Visual Studio Code* recuerda el perfil que se usó la
114+
última vez que se estuvo trabajando sobre un área de trabajo a fin de que
115+
cuando abramos un área, se cambie automáticamente de perfil. Por ejemplo,
116+
si trabajando sobre un proyecto de Java (área de trabajo), para el que
117+
lógicamente tendremos activo el perfil de Java, decidimos
118+
cambiar de proyecto y acceder
112119

113120
Los archivos |JSON| de personalización del área de trabajo se almacenan
114121
dentro del subdirectorio :file:`.vscode/` incluido en la carpeta raíz del
@@ -158,16 +165,28 @@ Generalidades
158165

159166
**Atajos de teclado**
160167
El programa da la posibilidad de asociar combinaciones de teclas a
161-
determinadas acciones, lo cual puede ahorrarnos mucho tiempo. El
162-
acceso a estas asociaciones se logra pulsando
163-
:kbd:`Ctrl`\ +\ :kbd:`k`\ -\ :kbd:`Ctrl`\ +\ :kbd:`s`. Si deseamos añadir
164-
alguna asociacion extra a las ya existentes podemos editar el archivo
165-
:file:`keybindings.json` asociado al perfil pulsando aquí:
168+
las distintas tareas definidas. Las asociaciones se puede hacer de
169+
distintos modos:
170+
171+
.. rst-class:: simple
172+
173+
+ Pulsando :kbd:`Ctrl`\ +\ :kbd:`Shift`\ +\ :kbd:`P` para abrir el diálogo
174+
que permite ejecutar tareas y, en vez de ejecutarla, pulsar sobre la
175+
ruedecilla dentada asociada:
176+
177+
.. image:: files/task-addkeybinding.png
178+
179+
+ Pulsando :kbd:`Ctrl`\ +\ :kbd:`k`\ -\ :kbd:`Ctrl`\ +\ :kbd:`s` para ver la
180+
lista de asociaciones a tareas y buscar en ella la tarea que nos interese.
181+
182+
+ Editar directamente el archivo :file:`keybindings.json` del perfil. Lo más
183+
cómodo, en vez de buscarlo en el sistema de archivos, es acceder a la lista
184+
de asociaciones que se acaba de citar, y pulsar aquí:
166185

167-
.. image:: files/addkeybinding.png
186+
.. image:: files/addkeybinding.png
168187

169-
El archivo contiene de un array en que cada *ítem* es una de esas
170-
asociaciones. Más adelante se sugerirán algunos.
188+
El archivo contiene de un array en que cada *ítem* es una de esas
189+
asociaciones. Más adelante se sugerirán algunos.
171190

172191
.. note:: Los atajos de teclado sólo se pueden definir para perfiles, no para
173192
áreas de trabajo.
@@ -178,6 +197,16 @@ Generalidades
178197
.. _vscode-tasks:
179198

180199
**Tareas**
200+
.. todo:: Tratar cómo crear tareas.
201+
202+
.. seealso:: Para más información, consulte `cómo crear tareas
203+
<https://code.visualstudio.com/docs/editor/tasks>`_.
204+
205+
.. _vscode-launch:
206+
207+
**Depuración**
208+
209+
.. https://gigi.nullneuron.net/gigilabs/working-with-vs-code-launch-configurations/
181210
182211
.. _vscode-start:
183212

@@ -201,17 +230,22 @@ importarlo como base de cada nuevo perfil que creemos para hacer desarrollos
201230
con una herramienta determinada. En particular, para este curso nos interesará
202231
crear perfiles independientes para:
203232

204-
#. |XML|.
205-
#. |JSON|.
206-
#. |YAML|.
207-
#. |HTML|\ /\ |CSS|.
233+
#. :ref:`XML <vscode-xml>`.
234+
#. :ref:`JSON <vscode-json>`.
235+
#. :ref:`YAML <vscode-yaml>`.
236+
#. :ref:`HTML/CSS <vscode-html>`.
208237
#. Desarrollo *web*, que consistirá en añadir al perfil anterior, configuración
209-
apropiada para desarrollar en *Javascript*.
238+
apropiada para desarrollar en :ref:`Javascript <vscode-javascript>`.
210239

211240
.. _vscode-xml:
212241

213242
|XML|
214243
=====
244+
Para manipular documentos |XML| son recomendables las siguientes extensiones:
245+
246+
* `XML de RedHat`_.
247+
* `XML Tools`_.
248+
215249
La comprobación de que el documento es bien formado, además de otras
216250
funcionalidades como cerrar automáticamente la etiqueta que se acaba de abrir,
217251
se puede lograr instalando la extensión `XML de RedHat
@@ -221,66 +255,77 @@ Esa misma extensión también permite la validación con |DTD| si se define
221255
correctamente la :ref:`declaración de tipo de documento <dtd-doctype>`. Ahora
222256
bien, por defecto, la extensión no atiende las definiciones hechas en un |DTD|
223257
referido desde otro |DTD| mediante una :ref:`entidad parámetro <dtd-ent-par>`,
224-
lo que malogra una gramática que querramos hacer modular. Puede corregirse
225-
esto haciendo verdadera la opción ``xml.validation.resolveExternalEntities``:
258+
lo que malogra una gramática que queramos hacer modular. Puede corregirse
259+
esto ajustando a verdadera la opción ``xml.validation.resolveExternalEntities``:
226260

227261
.. code-block:: json
228262
229263
{
230264
"xml.validation.resolveExternalEntities": true
231265
}
232266
233-
Si nuestra intención es evaluar expresiones *XPath* o *XQuery*, tenemos varias
234-
opciones:
235-
236-
* Instalar la extensión `XPath Tester
237-
<https://marketplace.visualstudio.com/items?itemName=creinbacher.xpathtester>`_,
238-
que permite evaluar expresiones *XPath* 1.0. Para evaluarlas, basta con pulsar
239-
:kbd:`Ctrl`\ +\ :kbd:`Shift`\ +\ :kbd:`P` y buscar *XPath* para que accedamos
240-
al cuadro de diálogo que nos permite hacer evaluaciones.
241-
242-
* Utilizar, en realidad, :ref:`BaseX` a través de :program:`Visual Studio Code`
243-
para lo cual necesitamos:
244-
245-
.. rst-class:: simple
246-
247-
#. Instalar previamente :ref:`BaseX`.
248-
249-
#. Configurar la extensión `XML Tools
250-
<https://marketplace.visualstudio.com/items?itemName=DotJoshJohnson.xml>`_
251-
para que use *BaseX* como procesador. Para ello, necesitamos editar la
252-
configuración y añadir:
267+
Para evaluar expresiones *XPath* o *XQuery* podemos valernos de la extensión
268+
`XML Tools`_ que a su vez para lo segundo requiere que se haya instalado
269+
:ref:`BaseX`:
253270

254-
.. code-block:: json
271+
.. rst-class:: simple
255272

256-
{
257-
"xmlTools.xqueryExecutionEngine": "/usr/bin/basex",
258-
"xmlTools.xqueryExecutionArguments": [
259-
"-i", "$(input)",
260-
"-o", "$(input).output.xml",
261-
"$(script)"
262-
]
263-
}
273+
#. Instalar previamente :ref:`BaseX`.
274+
#. Configurar la extensión `XML Tools`_ para que use *BaseX* como procesador.
275+
Para ello, necesitamos editar la configuración y añadir:
264276

265-
.. caution:: En *Windows* la ruta será algo parecido a
266-
:file:`c:\\\\\\Program Files
267-
(x86)\\\\\\BaseX\\\\\\bin\\\\\\\\basex.bat`. Obsérvese que habrá que
268-
escapar las contrabarras.
277+
.. code-block:: json
269278
270-
Una vez bien configurada, el modo de ejecutar la consulta es el siguiente:
271-
272-
a. Creamos un archivo :file:`.xq` con el código de *XQuery* y con él
273-
abierto y seleccionado en el editor...
274-
#. Pulsamos :kbd:`Ctrl`\ +\ :kbd:`Shift`\ +\ :kbd:`P` y ejecutamos `XML Tools:
275-
Execute Query`.
276-
#. Si hay varios |XML| en el directorio se nos preguntará sobre cuál
277-
queremos hacer la consulta, y, si hemos incluido, la opción :kbd:`-o` en
278-
la configuración (tal como se ha sugerido antes), se nos pedirá confirmar
279-
el archivo de salida. Si no la incluimos, la salida se volcará
280-
directamente en una subventana.
281-
#. Abrimos el archivo de salida para consultar el resultado.
279+
{
280+
"xmlTools.xqueryExecutionEngine": "/usr/bin/basex",
281+
"xmlTools.xqueryExecutionArguments": [
282+
"-i", "$(input)",
283+
"-o", "$(input).output.xml",
284+
"$(script)"
285+
]
286+
}
282287
283-
.. todo:: Añadir un atajo para acceder a `XML Tools: Execute Query`.
288+
.. caution:: En *Windows* la ruta será algo parecido a
289+
:file:`c:\\\\\\Program Files
290+
(x86)\\\\\\BaseX\\\\\\bin\\\\\\\\basex.bat`. Obsérvese que habrá que
291+
escapar las contrabarras.
292+
293+
Una vez bien configurada, el modo de ejecutar consultas es el siguiente:
294+
295+
*XPath*
296+
a. Estando activo el |XML| para el que queremos hacer consulta o pulsamos
297+
:kbd:`Ctrl`\ +\ :kbd:`Shift`\ +\ :kbd:`P` y ejecutamos `XML Tools:
298+
Evaluate XPath`, o bien, pulsamos directamente :kbd:`Ctrl`\ +\ :kbd:`Alt`\
299+
+\ :kbd:`Shift`\ +\ :kbd:`X` (atajo de teclado que predefine la propia
300+
extensión).
301+
#. Escribimos en el cuadro de diálogo la expresión y se verá el resultado de
302+
la consulta en el área adicional de salida (`output`).
303+
304+
.. caution:: El evaluador devuelve siempre cadenas, no nodos; por lo que si
305+
la expresión debe devolver nodos, eliminará todas las etiquetas.
306+
307+
*XQuery*
308+
a. Creamos un archivo :file:`.xq` con el código de *XQuery*.
309+
#. Estando activo este archivo, pulsamos :kbd:`Ctrl`\ +\ :kbd:`Shift`\ +\
310+
:kbd:`P` y ejecutamos `XML Tools: Execute Query`.
311+
#. Si hay varios |XML| en el directorio se nos preguntará sobre cuál
312+
queremos hacer la consulta, y, si hemos incluido, la opción :kbd:`-o` en
313+
la configuración (tal como se ha sugerido antes), se nos pedirá confirmar
314+
el archivo de salida. Si no la incluimos, la salida se volcará
315+
directamente en una subventana.
316+
#. Abrimos el archivo de salida para consultar el resultado.
317+
318+
Para simplificar su ejecución, podemos :ref:`asignar una atajo de teclado
319+
<vscode-atajos>` a esta tarea:
320+
321+
.. code-block:: json
322+
323+
[
324+
{
325+
"key": "ctrl+shift+alt+z",
326+
"command": "xmlTools.executeXQuery"
327+
}
328+
}
284329
285330
.. _vscode-json:
286331
@@ -494,9 +539,6 @@ para ampliar las facilidades.
494539
]
495540
}
496541
497-
.. seealso:: Para más información, consulte `cómo crear tareas
498-
<https://code.visualstudio.com/docs/editor/tasks>`_.
499-
500542
+ Asociar a la tarea :ref:`un atajo <vscode-atajos>`, para lo cual tenemos
501543
que editar :file:`keybindings.json` tal como se explica allí:
502544

@@ -572,6 +614,8 @@ para mejorarla:
572614
Mirar tareas y asociación de teclas (¿se puede hacer por espacios de trabajo?)
573615
https://www.mclibre.org/consultar/htmlcss/otros/vsc-htmlcss-configuracion.html
574616
617+
.. _vscode-java:
618+
575619
Java
576620
====
577621
.. caution:: El desarrollo con *Java* nada tiene que ver con los propósitos del
@@ -617,3 +661,4 @@ Además de estas extensiones puede interesarnos añadir configuración adicional
617661
.. |W3C| replace:: :abbr:`W3C (W3 Consortium)`
618662

619663
.. _Brave: https://brave.com
664+
.. _XML Tools: https://marketplace.visualstudio.com/items?itemName=DotJoshJohnson.xml

docs/objects.inv

22 Bytes
Binary file not shown.

docs/searchindex.js

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Loading

0 commit comments

Comments
 (0)