Vim'den sistem panosuna kopyalanamıyor


54

Başlığında söylediğim gibi, vim'den sistem panosuna kopyalayamıyorum. Viceversa çalışıyor, dış çerçeveden kopyalayıp yapıştırma ptamam.

Pano desteğini yükledim, vim sürümü 7.3.429:

$ vim --version | grep clip
+clientserver +clipboard +cmdline_compl +cmdline_hist +cmdline_info +comments 
+xsmp_interact +xterm_clipboard -xterm_save 

Sahibim:

set clipboard=unnamedplus

skinTenimde .vimrcyapmam ve ne zaman ayarlanır:

set clipboard?

veya

:echo has('clipboard')

Ubuntu 12.04 LTS kullanıyorum ve içindeki gnome-terminalvim'i kullanıyorum (ama aynı zamanda GVim'de de aynı problem var). Herhangi bir fikir?

Teşekkürler


stackoverflow.com/questions/11489428/… Bu size biraz yardımcı olabilir.
coteyr

Eğer yazarak "+ y görsel seçime ve dış vim yapıştırmak için çalışıyor arasındaki vim bıraktın mı bunu yaparsanız İşe yaramaz?
Samuel Peter

Hayır @SamuelPeter, ben vim dinmedi
gc5

1
Bu sorunla karşılaştım, çünkü clipboard+=unnamedplusvarsayılan ayarda bir şeyi ayarlıyorum, devre dışı bırakıyordum. clipboard=unnamedplus(Örneğin diğer ayarları kaldırarak) olarak değiştirmek benim için çalıştı.
JonnyRaa

@JonnyLeeds'in dediği gibi. Config set clipboard+=unnamedve sistem panosunu paylaşmak için y ve pset clipboard+=unnamedplus kullanılırken çalışmaz . == ; Ben ilk çıkardıktan sonra , ve , ve işe yarıyor! ==:set clipboard?clipboard=autoselect,exclude:cons\|linux,unnamed,unnamedplus+set clipboard=unnamedset clipboard+=unnamedplus:set clipboard?clipboard=unnamed,unnamedplus
Marslo

Yanıtlar:


87

Bu benim için işe yarayan şeydir (Ubuntu 13.10):

Vim'yi vim-gtk olarak yeniden yükleyin:

sudo apt-get install vim-gtk

fareyi kullanarak ne istediğinizi seçin - sonra panoya kopyalamak için yazın :

"+y

pano türünden vim'e yapıştırmak için :

"+p

Nedenini bilmiyorum ama vim --versiongösterilerin çıktısını karşılaştırmak normal vim kurulumunun vim-gtk ile karşılaştırıldığında oldukça sınırlı olduğunu gösteriyor. Vim'i vim-gtk ile değiştirmek hiçbir eklentiyi etkilememiştir.


Daha fazla bilgi:


1
Bana ne kadar yardımcı olduğunu ve şu anda ne kadar mutlu olduğumu ifade
edemem

1
İlginç bir şekilde, 14.04'te hem normal VIM hem de VIM-GTK'nın xterm_clipboarddesteği vardır, ancak "+pnormal VIM'de çalışmaz. Panoya kırpılmak yerine, seçilen satırların alanını arttırır.
dotancohen

1
Yükleme vim-gtk14.04.4'te benim için nihayet çalıştı, ancak bazı şeyleri yorum yapanlardan biraz farklı yaşadım. Yüklemeden önce vim-gtkvim gösteriliyordu -xterm_clipboard(yani etkin değil). Kurduktan vim-gtksonra gösterir (+ xterm_clipboard). Bunu kontrol ediyorum vim --version | grep clip. Neyse, ihtiyacın olduğu mantıklı +xterm_clipboard!
overthink

Bu harika bir çözüm. Aslında, bunu yeni bir Ubuntu işletim sistemi kurduktan sonra yapılacak ilk şeyim yaptım.
linbianxiaocao

Vim-gtk yüklemek benim için çalıştı. Teşekkürler
Miguel Mota

6

Asıl cevabı aşağıda bırakacağım çünkü bu soruyu arayanlar için önemli olabilir.

Kısacası, tüm cevaplara uyan tek bir boyut görünmüyor, ancak 'set clipboard = unnamedplus' ile '* p' veya '+ p' den birinin "sistem" panosundan çalışması gerekir.

'* p' neredeyse kesinlikle istediğiniz olanı. ( buradan )


vim bir cli programıdır. GNOME terminalinde (veya herhangi bir terminal emülatöründe) kullanılırken crtl + c (veya herhangi bir tuş kombinasyonu) önce terminal emülatörü, sonra kabuk, sonra nihayet program tarafından kullanılır (bu durumda vim). vim ve ctrl + c neredeyse kesinlikle kesinlikle çalışmaz çünkü ctrl + c çalışan göreve SIGINT sinyali gönderir. vim, ekleme modunu iptal etme veya arama işlevlerini durdurma gibi diğer şeyleri durdurmak için SIGINT'i kullanır.

Başka bir deyişle. Ctrl + C hiçbir zaman VIM'e geçirilmez. SIGINT, VIM'e iletilir. SIGINT'in başka kullanım amaçları vardır, bu nedenle kopyalamayı kullanmak muhtemelen işe yaramayacaktır (ve zorla da olsa iyi bir fikir değil).

Bunun yerine Ctrl + ÜstKrkt + C ve Ctrl + ÜstKrkt + V tuşlarına basmayı deneyin (başkaları var ama bunların sistem panosuna metin koyduğuna inanıyorum)

Adil olmak gerekirse, gvim hakkında fazla bir şey bilmiyorum.


Belki seni karıştı .. kullanıyorum söyledi ctrl-cDIŞ vim ile yapıştırma p, ancak vim ben kullanmak zorunda biliyorum ysorum düzenlemek edeceğiz ..
gc5

1
LOL henüz kafeinim olmamıştı, üzgünüm.
coteyr 19:13

5

Vimrc'nizde kullanın:

set mouse=a

Fare ile manuel olarak seçmenize ve kopyalamanıza izin verir.


3

Kabul edilen cevaba ek olarak , SSH üzerinden uzaktan çalışıyorsanız (örneğin , arasında tmuxfarklı vimişlemlerin olduğu birden fazla bölmenin bulunduğu ), farklı işlemler arasında arabirim vimkullanmak xterm-clipboardiçin kullandığınızdan X ekranınızı dışa aktarmanız gerekir . X ekranını çalıştırarak ayarlayabilirsiniz.

export DISPLAY=:0.0

Bu başlatılmadan önce vim ve sahip olduğunuz diğer herhangi bir kabuk altında çalıştırılmalıdır .


1

Ubuntu 16.04'te çalışabilmek vim-gui-commoniçin kurulum yapmam gerekiyor "+y.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.