2010-12-30 17:05:25 +0000 2010-12-30 17:05:25 +0000
205
205

¿Cómo selecciono todo el texto en Vi/Vim?

Usando la herramienta VI para editar los archivos de configuración.

¿Cómo puedo seleccionar todo el texto de un archivo (unas 1000 líneas), copiarlo y pegarlo en Google Docs?

Respuestas (12)

169
169
169
2012-03-26 21:30:22 +0000

La forma más simple y rápida es usar: : % y + y luego ir a Google Docs (o donde sea) y pegar. Explicación:

  • % para referir el siguiente comando para trabajar en todas las líneas
  • y  para tirar de esas líneas
  • +  para copiar al portapapeles del sistema

Otra forma es g g “ + y G pero probablemente admitirás que lo anterior es más rápido y fácil.

106
106
106
2014-05-29 15:09:52 +0000

Muchas de las respuestas dadas también tiran de la selección, lo cual no estaba buscando.

Estoy usando ggVG para este propósito (necesita ser ejecutado en modo normal). Este comando sólo selecciona todo el texto dentro del documento.

Incluso he reasignado Ctrl+A para este propósito, ya que realmente no necesito incrementar un entero con el atajo (mapa Ctrl+A por defecto).

Sólo agrega esto en tu .vimrc:

map <C-a> <esc>ggVG<CR>

Tiene <esc> primero, para asegurarme de que el usuario está en modo normal.

41
41
41
2010-12-30 17:21:23 +0000

Puedes usar cat file y luego seleccionar la salida y copiar y pegar si necesitas pegarlo en tu navegador.

Para vi así es como puedes seleccionar todo el texto y escribirlo en un nuevo archivo:

shift v -- visual mode
shift g -- jump to eof
"*y -- yank select text
:e my_new_file -- create a new file
"*p -- paste into a new file

En teoría esto debería funcionar tanto en Linux como en Windows - lo intenté en un Mac pero no funciona.

17
17
17
2014-12-29 12:47:54 +0000

Usa ggVG. escribe “gg” para ir al principio de la prueba y luego escribe VG.

9
9
9
2017-07-17 04:07:33 +0000

Estoy usando Vim 7.4 en el entorno del CentOS-7. Lo que me funcionó para seleccionar todo el texto es

:%y

Entonces sólo p en el siguiente archivo donde quiero una copia completa.

O

Puedes usar el comando cat.

cat copyfile > pastefile Este git repo tiene algunos otros comandos útiles también.

7
7
7
2010-12-30 19:19:29 +0000

gg"+yG

o

gg"*yG

dependiendo de si + o * es el portapapeles del sistema. (En muchos unixes, + es el buffer de selección del ratón para hacer clic en el medio del ratón, y * es el portapapeles del sistema).

3
3
3
2015-01-08 19:05:10 +0000

Para un Mac, use pbcopy (copia en el portapapeles):

cat file.txt | pbcopy

El contenido de file.txt está ahora en el portapapeles para pegarlo en otra aplicación (por ejemplo, el navegador).

También puede pegar el contenido del portapapeles en un archivo usando pbpaste:

pbpaste > file.txt

Aunque esto no involucra específicamente a vi, sí logra el mismo objetivo en un Mac.

1
1
1
2010-12-30 17:28:07 +0000

Si usas un escritorio de Linux, puedes cargarlo en el portapapeles usando xclip o xsel. Para algo de ese tamaño, tal vez quieras usar la función de carga de Google Docs.

1
1
1
2013-07-12 14:20:22 +0000

Otra forma sería:

Presionas la tecla v del teclado y conviertes VIM en VISUAL

Luego seleccionas todo el texto desplazándote hacia abajo

^+ INSERTAR para copiar

MAYÚSCULAS +INSERTAR para pegar el texto donde quieras en Google Docs.

0
0
0
2010-12-30 17:34:56 +0000

Sin usar vi, puedes subir texto a google docs usando su API y cURL .

0
0
0
2010-12-30 17:38:44 +0000

Ver http://vim.wikia.com/wiki/Accessing http://vim.wikia.com/wiki/Accessing_el\Npizarrón del sistema para las opciones de cómo hacer esto. (si está compilado en “* debe referirse al portapapeles del sistema). También hay instrucciones para usar Xsel con Vim.

0
0
0
2014-08-19 07:27:45 +0000

Usa el siguiente comando.

cat <your file name>

Se hará eco del contenido del archivo. Ahora selecciona, desplaza, copia, pega. Game Over

Ej.:

cat bobis.txt