Copiar y mover texto

De la misma manera que muchos procesadores de texto permiten copiar/pegar, o cortar/pegar líneas de texto, el editor vi incluye también esta posibilidad, mediante los comandos yank/put   y delete/put, respectivamente.

  1. Copiar y pegar.- El procedimiento para copiar una ó más líneas, es el siguiente:
    • Colocarse en la primera línea a copiar.
    • Escribir el número de líneas que se desea copiar.
    • Teclear yy ó Y (comando yank).
    • Colocarse en la línea a donde se desean copiar
    • Teclear p ó P (comando pegar)
  2. Cortar y pegar.- El procedimiento para mover una ó varias líneas es el siguiente:
    • Colocarse en la primera línea a cortar.
    • Escribir el número de líneas que se desea cortar.
    • Teclear dd (comando delete).
    • Colocarse en la línea a donde se desean pegar
    • Teclear p ó P (comando pegar)
  3. Usar buffers con nombre.- Para insertar repetidamente un grupo de líneas en varios lugares dentro de un documento, se pueden copiar las líneas a un buffer con nombre. El procedimiento para dar nombre a un buffer es el siguiente:
    • Colocarse en la primera línea a copiar.
    • Teclear comillas dobles («) seguido de la letra con que se desea nombrar el buffer (Ejemplo: «a )
    • A continuación escribir el número de líneas que se desea copiar o cortar.
    • Teclear yy ó Y (comando yank) ó dd (comando delete).
    • Colocarse en la línea donde se desean pegar.
    • Teclear comillas dobles seguidas por la letra del buffer cuyo contenido se desea insertar y por p ó P (comando pegar).

Entre la ejecución de un yank ó delete  y un put, sólo se pueden usar los comandos de movimiento de cursor. Si se borrase o copiase cualquier otro texto antes de poner el nuevo texto en su lugar, las líneas copiadas o borradas se perderían. Si se necesita copiar o mover varios conjuntos de líneas distintos, se deben usar los buffers con nombre, que sólo se mantienen mientras no se salga del editor vi, o se le asigne explícitamente un nuevo contenido.