2013-09-30 8 views
5

używam następującą konfigurację w moim .tmux.conf skopiować tekst do iz powrotem od xclipSkróty klawiaturowe w tmux dezaktywowany po użyciu xclip

bind C-c run "tmux save-buffer - | xclip -i -sel clipboard" 
bind C-v run "tmux set-buffer \"$(xclip -o -sel clipboard)\"; tmux paste-buffer" 

Jeśli uruchomię C-prefix CC np tekst jest wklejany do innej aplikacji, ale po tym żaden z poleceń tmux nie działa w terminalu tmux (np. przedrostek C [aby przejść do trybu kopiowania itp.)

Co jest nie tak w mojej konfiguracji?

+0

Czy to działa, jeśli zmienisz drugie powiązanie na następujące? "bind C-v run"

+0

@ChrisJohnsen: To nie działa :( – RAbraham

Odpowiedz

13

Według https://wiki.archlinux.org/index.php/Tmux#X_clipboard_integration:

Wydaje xclip nie zamyka STDOUT po jej odczytać z bufora tmux użytkownika. Jako taki, tmux nie wie, że zadanie kopiowania zostało zakończone i nadal oczekuje/czeka na zakończenie xclip, tym samym powodując, że menedżer okien przestaje odpowiadać. Aby obejść ten problem, możesz wykonać polecenie za pomocą komendy run-shell -b zamiast uruchamiania, możesz przekierować polecenie STDOUT z xclip na/dev/null, lub możesz użyć alternatywnego polecenia, takiego jak xsel.

Aktualizacja PREFIX C-c wiązania się następujące stałe to dla mnie:

bind C-c run "tmux save-buffer - | xclip -i -sel clipboard > /dev/null" 
0

dla mnie, przełącznik do xsel zamiast xclip załatwiło sprawę.

Powiązane problemy