¿Cómo puedo duplicar una línea o una selección en Visual Studio Code?

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.

Solución

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.

Comentarios (18)

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"
    }
]
Comentarios (1)

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.

Comentarios (2)

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]

[1]: https://i.stack.imgur.com/b7akn.png

Comentarios (0)

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.

Comentarios (2)

Pruebe ALT+SHIFT+UP/DOWN

¡Me ha funcionado!

Comentarios (0)

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.

Comentarios (0)

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

Comentarios (0)

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..;

Comentarios (0)

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!

Comentarios (0)

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) :

  1. Mapa de teclas del IDE de JetBrains: [Extensión][1]
  2. vscode-intellij-idea-keybindings [Extensión][2]
  • 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

Comentarios (0)

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

  • Super+Pgdown/PgUp , Ctrl+Alt+DownArrow/UpArrow
  • Super+Shift+PgDown/PgUp , Ctrl+Alt+Shift+DownArrow/UpArrow

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

Comentarios (0)

en mi última versión Visual Studio Code 1.30.2 se cambiará automáticamente a


ctrl + D
Comentarios (1)