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.

  • Üdvözlet mindenkinek, Hogyan kell beírni a ” + y szót? írjam be Visual módba vagy parancs módba? Buta dolog, de képtelen vagyok rájönni.
  • @AlindBillore: Parancs módban. Szó szerint nyomja meg a 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.

    írja ide a kép leírását

    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.

    Vélemény, hozzászólás?

    Az email címet nem tesszük közzé. A kötelező mezőket * karakterrel jelöltük