Usando Microsoft's Visual Studio Code, ¿cómo puedo duplicar una línea de código y luego moverla hacia arriba y hacia abajo? (Similar a Sublime's cmd+shift+d comportamiento)
Es una función que utilizo constantemente, y me resulta difícil utilizar Visual Studio Code sin ella.
Los comandos que buscas son editor.action.copyLinesDownAction
y editor.action.copyLinesUpAction
.
Puedes ver las combinaciones de teclas asociadas seleccionando: Archivo > Preferencias > Atajos de teclado
Windows:
Shift+Alt+Down y Shift+Alt+Up
Mac:
Shift+Option+Down y Shift+OptionUp
Linux:
Ctrl+Shift+Alt+Down y Ctrl+Shift+Alt+Up
(Podría ser necesario utilizar el teclado numérico Abajo y Arriba para Linux)
Además, los comandos editor.action.moveLinesUpAction
y editor.action.moveLinesDownAction
son los que mueven las líneas y están vinculados a Alt+Down y Alt+Arriba en Windows y Mac y Ctrl+Abajo y Ctrl+ en Linux.
Puede encontrar los atajos de teclado desde
Archivo > Preferencias > Atajos de teclado
Los atajos de teclado por defecto son,
Acción de copiar líneas hacia abajo : shift+alt+down
Acción de copiar líneas hacia arriba : shift+alt+up
Acción de mover las líneas hacia arriba : alt+up
Acción de mover líneas hacia abajo : alt+abajo
O puede anular los atajos de teclado desde
Archivo > Preferencias > Atajos de teclado
Y editando el archivo keybindings.json
.
Ejemplo:
[
{
"key": "ctrl+d",
"command": "editor.action.copyLinesDownAction",
"when": "editorTextFocus"
},
{
"key": "ctrl+shift+up",
"command": "editor.action.moveLinesUpAction",
"when": "editorTextFocus"
},
{
"key": "ctrl+shift+down",
"command": "editor.action.moveLinesDownAction",
"when": "editorTextFocus"
}
]
Falta una respuesta a esta pregunta, "Cómo duplicar la selección de código" Similar a Sublime's o Jetbrains' ctrl<+<cmd</kbd;/<kbd;ctrl</kbd;+<kbd;d</kbd; comportamiento.
Instalar el plugin Duplicar la selección o línea de VS Code Marketplace
[![Duplicar la selección o línea del plugin del código VS][1]][1]
[1]: https://i.stack.imgur.com/7wP0f.png
Esta extensión proporciona vinculaciones para (Windows/Linux) y para el cmd</kbd;+<kbd;d</kbd; (MacOS). Para personalizar los atajos de teclado Preferencias - Atajos de teclado:
{
"mac": "cmd+d",
"key": "ctrl+d",
"command": "geeebe.duplicateText",
"when": "editorTextFocus"
}
Nota : El atajo también hace la línea duplicada, así que si lo instalas, elimina tu anterior..;
atajo en copyLinesDownAction
(si lo hiciste antes) de lo contrario la selección duplicada puede fallar.
En VScode, lo llaman "Copy Line Up" y "Copy Line Down".
Del menú, ve a: ...el menú de la casa..; Archivo; Preferencias; Atajos de teclado
Revisa el atajo de teclado ya asignado para esto, o ajusta el tuyo.
A veces, el atajo asignado por defecto puede no funcionar, sobre todo debido al sistema operativo.
En mi Ubuntu, ajusté esto a: Ctrl</kbd;/kbd;+<kbd;/kbd;/kbd;+<kbd;/kbd;/d</kbd..;
[![introduzca la descripción de la imagen aquí][1]][1]
En VSCode Ctrl</kbd;/kbd;+<kbd;Ctrl</kbd;Ctrl</kbd;+<kbd;V</kbd;**; duplica toda la línea de abajo.
Prefiero esto a la respuesta aceptada, porque sólo requiere una mano para hacerlo y se siente mucho más natural.
La respuesta aceptada probablemente lo hará para la mayoría de la gente, sin embargo..; se sienta al otro lado del teclado. Así que tienes dos opciones, usar ambas manos en (Mano Izquierda:|Kbd;L Shift</kbd;+<kbd;L Alt</kbd;+ Mano Derecha:|Kbd;Arriba/Abajo</kbd;), o con una sola mano usar la derecha La segunda opción se siente rara en mi opinión. Prefiero usar la opción en la que mi mano se sienta naturalmente en el teclado, y si es con una mano, aún mejor.
Note que para los usuarios de Ubuntu (<= 17.4), Unity usa CTRL
+ ALT
+ SHIFT
+ Frow Key
para mover programas a través de espacios de trabajo virtuales, lo que entra en conflicto con los atajos de VS Code.
Necesitarás rebindir "editor.action.copyLinesDownAction" y "editor.action.copyLinesUpAction" para evitar el conflicto (o cambiar las asignaciones de teclas de tu espacio de trabajo).
Para Ubuntu 17.10+ que usa GNOME, parece que GNOME no usa esta unión de teclas de la misma forma según su documentación, aunque si alguien que usa espacios de trabajo de vainilla en 17.10 puede confirmarlo, podría ser útil para futuros buscadores de respuestas.
Si vienes de Sublime Text y no quieres reaprender la nueva encuadernación de teclas, puedes usar esta extensión para Visual Code Studio.
...y no se puede hacer nada más; Sublime Text Keymap para VS Code
Esta extensión porta los más populares atajos de teclado de Texto Sublime al código de Visual Studio. Después de instalar la extensión y reiniciar VS Code, tus atajos de teclado favoritos de Sublime Text ya están disponibles.
[https://marketplace.visualstudio.com/items?itemName=ms-vscode.sublime-keybindings][1]
[1]: https://marketplace.visualstudio.com/items?itemName=ms-vscode.sublime-keybindings
La duplicación de línea directa (sin el paso del portapapeles) es propuesta por la extensión Contextual Duplicate.
Está mapeada en el formato de D</kbd;/kbd..;
Para las Windows :
Para mac:
Para linux :
Para copiar arriba - - www. ctrl</kbd;+<kbd;shift</kbd;+<kbd;alt</kbd;+<kbd;8</kbd;8;
Para copiar hacia abajo - - www. ctrl</kbd;+<kbd;shift</kbd;+<kbd;alt</kbd;+<kbd;2</kbd;
Nota : Puede cambiar el código de los atajos de teclado por el código del estudio visual presionando <kbd;ctrl</kbd;+<kbd;shift</kbd;+<kbd;p</kbd;, luego escriba el atajo de teclado abierto en la paleta y luego presione enter así que se abrirá un nuevo archivo (Archivo de atajos de teclado) puedes ver todos los atajos sobre ellos y puedes cambiar las fijaciones de teclado pulsando dos veces sobre la respectiva fijación de teclado y luego introduciendo tu propia fijación de teclado, finalmente pulsa intro.
¡Espero que esto ayude a alguien!
Para la gente que ha usado previamente cualquier inteligente Jetbrains IDE componiendo de grandes atajos migrados a vscode , no hay problema.
Sólo tienes que instalarlo (Preferido es no. 2 extensión
) :
El mapa de teclas ha cubierto la mayoría de los atajos de teclado de VS Code, y hace que VS Code sea más 'JetBrains IDE como'.
Las extensiones de arriba importan los atajos de teclado de JetBrains a VS Code. Después de instalar la extensión y reiniciar VS Code puedes usar VS Code como IntelliJ IDEA, Webstorm, PyCharm etc.
[1]: https://marketplace.visualstudio.com/items?itemName=isudox.vscode-jetbrains-keybindings [2]: https://marketplace.visualstudio.com/items?itemName=k--kato.intellij-idea-keybindings
Para la estación de trabajo Fedora 29 (Gnome 3.30.2) y los usuarios de Ubuntu.
Desvincula las combinaciones innecesarias de teclado del espacio de trabajo izquierda/derecha, llévalas a la lista por terminal
$ gsettings list-recursively | grep -E "org.gnome.desktop.wm.keybindings move-to-workspace-|org.gnome.desktop.wm.keybindings switch-to-workspace-"
Desátalos.
$ gsettings set org.gnome.desktop.wm.keybindings switch-to-workspace-left "[]"
$ gsettings set org.gnome.desktop.wm.keybindings switch-to-workspace-right "[]"
$ gsettings set org.gnome.desktop.wm.keybindings move-to-workspace-left "[]"
$ gsettings set org.gnome.desktop.wm.keybindings move-to-workspace-right "[]"
Reiniciar los atajos de duplicación
Pueden ser fácilmente restablecidos para trabajar con un solo atajo en Ajustes Sólo tienes que escribir de nuevo Super+PgUp para "Mover a la zona de trabajo de arriba" como un ejemplo.
[![introduzca la descripción de la imagen aquí][1]][1]
Ahora con menos atajos duplicados en fedora29 todos los [atajos vscode para linux][2] deben funcionar bien
[1]: https://i.stack.imgur.com/FQDm9.png [2]: https://code.visualstudio.com/shortcuts/keyboard-shortcuts-linux.pdf