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

Jak zaznaczyć cały tekst w Vi/Vim?

Za pomocą narzędzia VI do edycji plików konfiguracyjnych.

Jak zaznaczyć cały tekst w pliku (około 1000 linii), skopiować go, a następnie wkleić do Google Docs?

Odpowiedzi (12)

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

Najprostszym i najszybszym sposobem jest użycie: : % y +, a następnie przejdź do Google Docs (lub gdziekolwiek) i wklej. Wyjaśnienie:

  • % aby przejść do następnej komendy i pracować na wszystkich liniach
  • y  aby szarpnąć te linie
  • +  aby skopiować do schowka systemowego

Innym sposobem jest g “ + y G, ale prawdopodobnie przyznasz, że powyższe jest szybsze i łatwiejsze.

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

Wiele podanych odpowiedzi również jankesuje wybór, którego nie szukałem.

Używam do tego celu ggVG (musi być uruchomiony w normalnym trybie). Ta komenda tylko zaznacza cały tekst wewnątrz dokumentu.

Do tego celu zremasterowałem nawet Ctrl+A, ponieważ nie muszę zwiększać liczby całkowitej skrótem (domyślna mapa Ctrl+A).

Dodaj to do swojego .vimrc:

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

Ma najpierw <esc>, aby upewnić się, że użytkownik jest w normalnym trybie.

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

Możesz użyć cat file, a następnie wybrać wyjście, skopiować i wkleić, jeśli chcesz wkleić je do przeglądarki.

Dla vi to jest sposób, w jaki możesz wybrać cały tekst i zapisać go do nowego pliku:

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

W teorii powinno to działać zarówno na Linuksie jak i Windows - próbowałem na Macu, ale nie działa.

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

USE ggVG. wpisz “gg”, aby przejść na górę testu Następnie wpisz VG.

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

Używam Vima 7.4 w środowisku CentOS-7. Który zadziałał mi przy wybieraniu całego tekstu to

:%y

Następnie po prostu p w następnym pliku, gdzie chcę pełną kopię.

Albo

Możesz użyć komendy cat.

cat copyfile > pastefile Ta repo gita ma też kilka innych przydatnych komend.

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

gg"+yG

lub

gg"*yG

w zależności od tego, czy + lub * jest schowkiem systemowym. (W wielu uniksach, + jest buforem wyboru myszy dla środkowego kliknięcia myszką, a * jest schowkiem systemowym).

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

W przypadku komputera Mac użyj pbcopy (pasteboard copy):

cat file.txt | pbcopy

Zawartość pliku.txt znajduje się teraz w schowku i można ją wkleić do innej aplikacji (np. przeglądarki).

Zawartość schowka można także wkleić do pliku za pomocą pbpaste:

pbpaste > file.txt

Chociaż nie wymaga to użycia vi, to na komputerze Mac osiąga ten sam cel.

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

Jeśli używasz pulpitu linuxa, możesz załadować go do schowka za pomocą xclip lub xsel. Do czegoś, co ma taki rozmiar, możesz po prostu użyć funkcji ładowania w google docs.

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

Innym sposobem jest:

Naciskasz klawisz v na klawiaturze i zmieniasz VIM na VISUAL

Następnie zaznaczasz cały tekst przewijając w dół

^+ INSERT aby skopiować

SHIFT +INSERT aby wkleić tekst gdziekolwiek chcesz na Google Docs.

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

Bez użycia vi, możesz przesłać tekst do google docs używając ich API i cURL .

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

Zobacz http://vim.wikia.com/wiki/Accessing _the_system_clipboard po opcje, jak to zrobić. (jeśli skompilowane w “* powinno odnosić się do schowka systemowego). Są tam również instrukcje, jak używać xsel z vimem.

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

Użyj następującej komendy.

cat <your file name>

Będzie to echo zawartości pliku. Teraz wybierz, przewiń, skopiuj, wklej. Game Over

Ex.:

cat bobis.txt