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
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.
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ä.
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.
shift'
ja sittenshift=
ja sitteny
(ei kaikkia kerralla, yksi peräkkäin, paitsi tietysti vuorot).