Yritän kopioida ja liittää tekstiä VIM: stä. Teen ”div div =” c372947656 ”>

v siirtyäksesi visuaaliseen tilaan, sitten y kun valitsin lohkoni.

Vaikuttaa siltä, että teksti kopioidaan VIM: n leikepöydälle, koska p liittää sen. Mutta toisessa ohjelmassa (esim. Chrome) napsauta hiiren kakkospainikkeella-> liitä ei liitä oikeaa tekstiä. Kuinka kopioin tekstiä oikealle leikepöydälle?

Vastaa

Seuraava toimii vain, jos vim --version osoittaa, että sinulla on +xterm_clipboard -ominaisuus. Jos ei, sinun on asennettava ylimääräiset paketit tai käännettävä vim uudelleen lisäämällä tämä ominaisuus.


Tätä varten on oikeastaan kaksi vaihtoehtoa:

"+y 

kopioi ”tavalliseen” leikepöydän puskuriin (jotta voit liittää painamalla Ctrl + V, napsauta hiiren kakkospainikkeella ja valitse ”Liitä” jne.), kun taas

"*y 

kopioita X11-valintaan – voit liittää tästä puskurista keskimmäisellä napsautuksella.

Huomaa, että "* ja "+ toimi molempiin suuntiin. Joten jos olet valinnut jonkin tekstin toisessa sovelluksessa, voit liittää sen vimiin käyttämällä "*p ja jos olet kopioinut tekstiä (esimerkiksi Ctrl-C), voit liittää se vimiin käyttämällä "+p.

Kommentit

  • @Tshepang se ei toimi kitistä. mitä minun pitäisi tehdä?
  • @RahulPatil En tiedä; ehkä kysy erillinen kysymys, ehkä pääkäyttäjältä (koska se on ’ sa Windows-työkalu, se olisi tervetullut
  • @RahulPatil – jos käytät kittiä, muokkaat tiedostoa etäpalvelimella, ei paikallisella koneellasi. Yleensä etäpalvelin ei ’ tiedä paikallisen koneesi leikepöydästä. Jos käytit Linux-työpöytää, voit ssh: n X-edelleenlähetyksellä (edellyttäen, että olet asentanut X-kirjastot palvelimelle), mutta kun kitti toimii Windowsissa, sinulla ’ ei ole X käynnissä, joten et voi ’ lähettää sitä edelleen eteenpäin.
  • Hei kaikki, Kuinka kirjoittaa ” + y? pitäisikö minun kirjoittaa se Visual-tilassa vai komentotilassa? Hölmö asia, mutta en pysty selvittämään sitä.
  • @AlindBillore: Komentotilassa. Paina kirjaimellisesti näppäimiä shift' ja sitten shift= ja sitten y (ei kaikkia kerralla, yksi peräkkäin, paitsi tietysti vuorot).

Vastaa

Jos käytät vim-versiota> = 7.3 .74, voit itse lisätä tämän vimrc-tiedostoon:

set clipboard=unnamedplus 

Joka käyttää automaattisesti + -puskuria (järjestelmän leikepöytä) oletuksena. Jankkaaksesi (kopioi), käytät vain tavallista y -komentoa jne.

Pidän tätä käyttäytymistä melko ärsyttävänä, koska komennot kuten d laittaa tekstin, jota he käyttävät, oletuspuskuriin, mikä tarkoitti, että en voinut tehdä nopeaa dd ja liittää rivi Internetistä esimerkiksi.

Kommentit

  • + on leikepöydän rekisteröijä
  • Viimeisen pisteen osalta dd tarkoittaa ” leikkaa yksi rivi ”, joten se olisi odotettua käyttäytymistä. Harvinaisessa tapauksessa, kun haluat Jos haluat todella poistaa rivin unohdukseen, "_dd tekee tempun.
  • myös @HamishDowner huomauttaa vastauksessaan: Seuraava toimii vain, jos vim --version osoittaa, että sinulla on +xterm_clipboard -ominaisuus. Jos ei, sinun on asennettava ylimääräiset paketit tai käännettävä vim uudelleen lisäämällä tämä ominaisuus.

Vastaa

Pidä shift-painiketta alhaalla -näppäintä ja valitse teksti hiiren kohdistimella.
Teksti kopioidaan leikepöydälle.

Tämä toimii myös liittämällä leikepöydältä VIM: ään.

Selvyyden vuoksi tämä toimii vim -tietokoneessa, joka toimii päätelaitteessa, kuten xterm.

Kommentit

  • @LoopSpace monirivivalinnoille tämä kopioi myös rivinumerot, kun set nu on käytössä . Joten u haluaisi todennäköisesti vaihtaa rivinumeroita jollakin pikakuvakkeella tai suorittaa :set nonu -komennon ennen jokaista valintaa.
  • MAC: ssä pidä valintanäppäintä painettuna ja valitse teksti hiiren kohdistin
  • Ei toimi ’ t minulle, kun käytän vim 8.0 + gnome-terminaalia
  • Ratkaisu ei ole yhteensopiva monitasoisten termien, kuten tmux, kanssa.
  • Tätä ei kopioida leikepöydälle, tämä kopioidaan ensisijaiseksi .Katso ero Leikepöytä Arch Wiki -artikkelissa .

Vastaus

Minusta vakiokomentoja "+gP ja "+y on erittäin vaikea käyttää. Joten olen uudelleen määrittänyt Ctrl-Y leikepöydälle kaatamista ja Ctrl-P liittämistä leikepöydältä. Lisää tämä kohtaan .vimrc

nnoremap <C-y> "+y vnoremap <C-y> "+y nnoremap <C-p> "+gP vnoremap <C-p> "+gP 

Vastaa

Kun tarkistin vimini ei tue leikepöytää:

vim --version | grep clip -clipboard +insert_expand +path_extra +user_commands +emacs_tags -mouseshape +startuptime -xterm_clipboard 

Asensin vim-gnomen ja tarkistin sitten uudelleen

vim --version | grep clipboard +clipboard +insert_expand +path_extra +user_commands +emacs_tags +mouseshape +startuptime +xterm_clipboard 

Nyt voin kopioida ja liittää käyttämällä ”+ y” ja ”+ p.

Vastaa

Älä välitä, Löysin vastauksen – se on kirjoitettu vim-valikoihin.

"+y 

Erittäin intuitiivinen.

Kommentit

  • Käytätkö gvim?
  • @ nozimica- joo
  • Että ’ ovat saatavilla myös vimissä, joka toimii xtermissä tai vastaavassa pääteemulaattorissa X: n alla (jos vim on käännetty +xterm_clipboard -ominaisuudella).

Vastaa

Vain lisätä ei-vim-kohtainen vastaus: Voit käyttää Ctrl+Shift+C -toimintoa kopioidaksesi järjestelmän leikepöydälle Ubuntussa (jos toiminnot tarjoaa pääteemulaattorisi, yhden gnome-päätelaite tarjoaa sen). Ctrl+Shift+V liittää toiseen pääteikkunaan, tavalliset Ctrl+V liittää GUI-sovellukseen.

Lisäksi, jos valitset teksti pääteosassa ja napsauta sitten keskimmäistä napsautusta, se liitetään X11-leikepöydältä.

Kommentit

  • Jostain syystä se ei ’ t toimivat. Valitse vain visuaalisessa tilassa, kopioi ctrl-shift-C ja liitä sitten toiseen sovellukseen käyttämällä Ctrl-shift-V? Tekstiä ’ ei kopioida minulle.
  • @ ripper234: tämä ei toimi, jos käytät gvim-tiedostoa. Kuten crazy2be sanoi, tämä toiminto on pääteemulaattoriltasi.
  • @ ripper234: 1) Se on pääteemulaattorisi tarjoama toiminto (gnome-terminal for one tarjoaa sen), 2) Ctrl + Vaihto + V on liittääksesi päätelaitteeseen , käyttöliittymäsovellukset käyttävät edelleen Ctrl + V tavalliseen tapaan. Muokkaa id = ”cfc93cf471”>

muokkaamalla vastausta sen selkeyttämiseksi.

  • jos käytät shift-control-hiirtä – valitse teksti, kopiointi yhdestä puskuri-ikkunasta on helppoa.
  • Vastaa

    Pidä SHIFT-näppäintä painettuna ja valitse teksti kopioimalla hiiri.

    Liitä sitten toiseen ohjelmaan CTRL + v.

    Toimii Ubuntu 16.04: n päätelaitteessa. Etkö ole varma gvim: stä ja muista järjestelmistä.

    kirjoita kuvan kuvaus tähän

    kommentit

    • Se ei toimi.
    • luova vastaus

    Vastaa

    Jos olet asentanut vim-version kevyen version, sinulla ei ole +xterm_clipboard ominaisuus päällä (vim --version | grep xterm), jota tarvitaan * ja + rekisteröidy vim: n ulkopuolelle.

    Voit ottaa sen käyttöön joko kääntämällä vim itse tai asentamalla sen mukana tulevan vimin version valmiiksi. Käytin vim-gnome: sudo apt-get install vim-gnome. Jos suoritat vim --version | grep xterm, huomaat, että se on nyt +xterm_clipboard.

    Yritä nyt kopioida + ja * ja sen pitäisi toimia.

    Vastaa

    Lisää vain, jos jokin toimii, yritä vaihtaa päätelaite, joka kääri vimin (jos käytät vimiä terminaalista). Huomasin, että esimerkiksi leikepöydälle ei ole pääsyä guake-toiminnolla, kunhan siihen pääsee gnome-terminaalista.

    Vastaa

    Ubuntu 14.04 Ja yllä:

    • Valitse vain teksti, jonka haluat kopioida. Napsauta sitten keskimmäistä rullanappia hiirellä ja siirry leikepöydälle

    • Ja tee sama myös siellä (napsauta keskimmäistä rullanappia hiirellä).

    Se toimii 100% molemmissa vim ja tail Ubuntussa.

    Vastaa

    Sähköpostiosoitettasi ei julkaista. Pakolliset kentät on merkitty *