Igyekszem másolni-beilleszteni néhány szöveget a VIM-ből. v a vizuális módba lépéshez, majd y miután kiválasztottam a blokkomat.
Úgy tűnik, hogy a szöveget a vim vágólapjára másolja, mert p beilleszti. De egy másik programban (pl. Chrome) kattintson a jobb gombbal-> beillesztés a megfelelő szöveget. Hogyan másolhatom a szöveget a megfelelő vágólapra?
Válasz
A következők csak akkor működnek, ha vim --version
azt jelzi, hogy rendelkezik +xterm_clipboard
szolgáltatással. Ha nem, akkor extra csomagokat kell telepítenie, vagy újra össze kell fordítania a vim-et a hozzáadott funkcióval.
Ennek valójában két lehetősége van:
"+y
a “szokásos” vágólap pufferbe másol (így beillesztheti a Ctrl + V billentyűkombinációval, jobb gombbal kattintva válassza a “Beillesztés” elemet stb.), míg a
"*y
másolatok az X11 választékba – középső kattintással beilleszthet erről a pufferből.
Vegye figyelembe, hogy "*
és "+
mindkét irányban működik. Tehát, ha kiválasztott egy szöveget egy másik alkalmazásban, beillesztheti a vimbe a "*p
paranccsal, és ha másolt néhány szöveget (például Ctrl-C használatával), akkor beillesztheti a viv-be a "+p
használatával.
Megjegyzések
- @Tshepang nem gittből működik. mit tegyek?
- @RahulPatil nem tudom; esetleg tegyen fel külön kérdést, esetleg a Szuperfelhasználón (mivel ‘ sa a Windows eszközön, örömmel fogadnánk
- @RahulPatil – ha gittet használsz, akkor a fájlt távoli szerveren szerkeszted, nem a helyi gépeden. Általában a távoli kiszolgáló ‘ nem fog tudni a helyi gép vágólapjáról. Ha Linux asztalt használt, akkor ssh-t továbbíthat X-sel (ha telepítette az X könyvtárakat a szerverre), de a (z) putty futtatásakor Windows
nincs X fut, így ‘ nem tudja továbbítani.
shift'
gombokat, majd shift=
, majd y
(nem egyszerre, egyet a másik után, kivéve természetesen a váltásokat). Válasz
Ha vim-et használsz = = 7.3 .74, akkor ezt ténylegesen be is teheti a vimrc-be:
set clipboard=unnamedplus
Ami automatikusan használja a +
puffert (a rendszer vágólapja) alapértelmezés szerint. Ezután a rángatáshoz (másolás) csak a szokásos y
parancsot, stb. Használja.
Ezt a viselkedést azonban meglehetősen bosszantónak találtam, mint például a d
az általuk működtetett szöveget az alapértelmezett pufferbe helyezte, ami azt jelentette, hogy nem tudtam gyorsan végrehajtani dd
és beilleszteni egy sort az internetről például.
Megjegyzések
- + egy vágólap-regisztráló
- Az utolsó pontot illetően:
dd
azt jelenti, hogy ” vág egy sort “, tehát ez lenne a várható viselkedés. Ritka esetben, amikor egy sor tényleges feledésbe való törléséhez a"_dd
fog trükközni. - úgy is, ahogy a @HamishDowner megjegyzi a válaszában: A következők csak akkor működnek, ha
vim --version
azt jelzi, hogy rendelkezik+xterm_clipboard
szolgáltatással. Ha nem, akkor extra csomagokat kell telepítenie, vagy újból össze kell fordítania a VIM-et a hozzáadott funkcióval.
Válasz
Tartsa lenyomva a shift billentyűt, és válasszon szöveget az egér kurzorával.
A szöveget a vágólapra másolja.
Ez akkor is működik, ha a vágólapról beillesztené a VIM-et.
Az egyértelműség kedvéért ez a vim
esetén működik, amely egy terminálban fut, például a xterm
.
Megjegyzések
- @LoopSpace a többsoros kijelölésekhez ez a sorszámokat is másolja, ha a
set nu
engedélyezve van . Tehát valószínűleg fel akarja váltani a sorszámokat néhány parancsikon segítségével, vagy futtassa a:set nonu
parancsot minden kijelölés előtt. egérkurzor - Nem működik nekem ‘ vim 8.0 + gnome-terminal használatával
- A megoldás nem kompatibilis a többpólusú kifejezésekkel, például a tmux.
- Ez nem másol a vágólapra, ez az elsődlegesre másol .Lásd a különbséget a Vágólap Arch Wiki cikkében .
Válasz
A standard "+gP
és "+y
parancsokat nagyon nehezen tudom használni. Tehát átdolgoztam a Ctrl-Y
-t, hogy rángassak a vágólapra, és Ctrl-P
, hogy a vágólapról beillesszem. Adja hozzá ezt a “>
nnoremap <C-y> "+y vnoremap <C-y> "+y nnoremap <C-p> "+gP vnoremap <C-p> "+gP
Válasz
Amikor ellenőriztem a vim-et nem támogatta a vágólapot:
vim --version | grep clip -clipboard +insert_expand +path_extra +user_commands +emacs_tags -mouseshape +startuptime -xterm_clipboard
Telepítettem a vim-gnome-ot, majd újraellenőriztem
vim --version | grep clipboard +clipboard +insert_expand +path_extra +user_commands +emacs_tags +mouseshape +startuptime +xterm_clipboard
Most már másolhatok és beilleszthetek a “+ y és” + p használatával.
Válasz
Ne felejtsd el, Megtaláltam a választ – a vim menükbe van írva.
"+y
Nagyon intuitív.
Megjegyzések
- A
gvim
szolgáltatást használja? - @ nozimica- igen
- Ez a ‘ s xterm alatt vagy hasonló terminálemulátorban futó vim alatt is elérhető X alatt (ha a vim a
+xterm_clipboard
szolgáltatással van lefordítva).
Válasz
Csak egy nem vim-specifikus válasz hozzáadásához: A Ctrl+Shift+C
segítségével másolhat az Ubuntu rendszer vágólapjára (ha a funkciót a a terminálemulátorod, egy számára a gnome-terminál biztosítja). Ctrl+Shift+V
beilleszt egy másik terminálablakba, a szokásos Ctrl+V
beillesztés egy GUI alkalmazásba.
Ezenkívül, ha a szöveget a terminálban, majd középső kattintással beilleszti az X11 vágólapra.
Megjegyzések
- Valamiért nem ‘ t működik. Csak válasszon vizuális móddal, másolja a ctrl-shift-C billentyűvel, majd illessze be egy másik alkalmazásba a Ctrl-shift-V használatával? A szöveg nem ‘ nem lesz másolva számomra.
- @ ripper234: Ez nem működik, ha gvim-et használ. Mint a crazy2be mondta, ez a funkcionalitás a terminálemulátorodtól származik.
- @ ripper234: 1) Ez a terminálemulátorod által biztosított funkcionalitás (az egyik számára a gnome-terminal biztosítja), 2) Ctrl + Shift + V a terminálhoz beillesztéséhez a GUI-alkalmazások továbbra is a Ctrl + V billentyűkombinációt használják. ‘ Szerkesztem a választ, hogy érthetőbb legyen.
- ha shift-control egérgombot használ – válassza ki a szöveget, a másolás beillesztése az egyik pufferablakból egyszerűvé válik.
Válasz
Tartsa lenyomva a SHIFT billentyűt, és az egérrel válassza ki a szöveget a másoláshoz.
Ezután illessze be egy másik programba a következővel: CTRL + v
.
A terminálon működik az Ubuntu 16.04-en. Nem biztos a gvim
és más rendszerekben.
Megjegyzések
- Ez nem működik.
- kreatív válasz
Válasz
Alapértelmezés szerint, ha a vim könnyű verzióját telepíti, akkor nem lesz meg a +xterm_clipboard
szolgáltatás a (vim --version | grep xterm
) oldalon, amely a *
és +
regisztrál a vim-en kívül.
Az engedélyezéshez vagy magának kell lefordítania a vim-et, vagy telepítenie kell a vim verzióját, amelyet előre engedélyezhet. A vim-gnome: sudo apt-get install vim-gnome
fájlt használtam. Ha a vim --version | grep xterm
parancsot végrehajtja, akkor látni fogja, hogy ez most +xterm_clipboard
.
Most próbáljon meg másolni a +
és *
és működnie kell.
Válasz
Csak hozzáadásképpen, ha valami működik, próbálja meg váltani azt a terminált, amely beburkolja a vim-et (ha a vim-et használja a terminálról). Megállapítottam, hogy például a vágólap nem elérhető guake segítségével, míg a gnome-terminalról elérhető.
Válasz
Ubuntu esetén 14.04 És fent:
-
Csak válassza ki a szöveget, amelyet másolni szeretne. Ezután kattintson az egérrel a középső roll gombra, és lépjen a vágólapra
-
És ugyanezt tegye ott is (kattintson az egérrel a középső roll gombra).
Ez 100% -ban működik mindkettőben vim
és tail
az Ubuntun.