Maintenant, pour copier dans le presse-papiers du système, je dois sélectionner via le texte de la souris dans la fenêtre tmux avec la touche Shift
. Et puis je dois lancer cette commande:
tmux save-buffer - | reattach-to-user-namespace pbcopy
Est-il possible d’enregistrer plus facilement dans le presse-papiers du système? La combinaison de touches ou mieux le fait automatiquement après la libération de Shift.
Mon config tmux: https://Gist.github.com/3641580
Si vous utilisez iTerm2, vous pouvez copier du texte dans une session Tmux en maintenant la touche enfoncée. Option tout en faisant glisser la souris pour faire la sélection.
Ensuite, il devrait être possible de coller du texte n'importe où avec Cmd + V comme d'habitude. Je l'ai trouvé ici: http://web.archive.org/web/20131226003700/http://ootput.wordpress.com/2013/08/02/copy-and-paste-in-tmux-with- souris /
Si vous utilisez iTerm2 3.x, vous pouvez effectuer un copier/coller en activant Applications in terminal may access clipboard
:
Il suffit de surligner du texte avec votre souris pour le copier dans le presse-papiers OS X! Pas besoin d'appuyer Option comme suggéré dans la réponse d'acceptation.
Vous pouvez également coller du presse-papiers OS X dans tmux avec les instructions habituelles. Cmd + V.
Une question similaire a été posée ici: https://unix.stackexchange.com/questions/15715/getting-tmux-to-copy-a-buffer-to-the-clipboard
Solution trouvée là:
# move x clipboard into tmux paste buffer
bind C-p run "tmux set-buffer \"$(xclip -o)\"; tmux paste-buffer"
# move tmux copy buffer into x clipboard
bind C-y run "tmux show-buffer | xclip -i"
Vérifiez également: http://awhan.wordpress.com/2012/04/18/tmux-copy-paste-with-mouse/
si vous avez défini les options suivantes:
volet de sélection de la souris
souris-sélection-fenêtre
vous remarquerez que vous ne pouvez pas sélectionner du texte.
la solution consiste à utiliser la touche Maj.
hold down the shift key and then left click and drag across the target text. you must also hold down the shift key and then middle click in order to paste the text.
Pour os x, si vous utilisez l'application "Terminal". Vous pouvez désactiver le défilement de la souris et utiliser les fonctions habituelles de copier/coller (cmd + c/cmd + v):
set-option -g mouse-select-pane off
set-option -g mouse-resize-pane off
set-option -g mouse-select-window off
set-window-option -g mode-mouse off
ou vous pouvez utiliser le défilement de la souris et sélectionner le texte en utilisant "touche fn":
set-window-option -g mode-mouse on
Mettre ceci dans mon fichier ~/.tmux.conf fonctionne pour moi:
bind y run-Shell "reattach-to-user-namespace -l zsh -c 'tmux show-buffer | pbcopy'"
Toutes les autres solutions potentielles que j'ai trouvées consistaient à copier un contenu vide dans le presse-papiers OSX.
Le seul problème est que cela semble mettre un retour chariot à la fin du contenu collé.
Sur OSX utilisant tmux version 2.2 ou ultérieure, ajoutez ce qui suit dans votre fichier tmux.conf:
bind-key -t emacs-copy MouseDragEnd1Pane copy-pipe "pbcopy"
bind-key -t vi-copy MouseDragEnd1Pane copy-pipe "pbcopy"
Pour tmux version 2.4, comme ils ont gentiment décidé de changer la syntaxe de la commande, vous devez utiliser:
bind-key -T copy-mode MouseDragEnd1Pane send -X copy-pipe-and-cancel "pbcopy"
Notez que vous devrez peut-être aussi utiliser reattach-to-user-namespace pbcopy
au lieu de plain pbcopy
.
maintenez le bouton gauche de la souris enfoncé, sélectionnez le texte dans le volet et maintenez le bouton enfoncé. puis appuyez sur "y", ce qui enregistre la sélection dans le presse-papiers et sort du mode sélection/copie.
fonctionne ici avec iTerm 3.1.beta.5, tmux 2.5 et la configuration suivante:
### copy & paste -------------------------------------------------------
# Use vim keybindings in copy mode
setw -g mode-keys vi
# Setup 'v' to begin selection as in Vim
bind-key -T copy-mode-vi v send -X begin-selection
bind-key -T copy-mode-vi y send -X copy-pipe-and-cancel "reattach-to-user-namespace pbcopy"
# Update default binding of `Enter` to also use copy-pipe
unbind -T copy-mode-vi Enter
bind-key -T copy-mode-vi Enter send -X copy-pipe-and-cancel "reattach-to-user-namespace pbcopy"
appuyez sur la touche Maj, puis cliquez avec la souris! Vérifiez ce lien . http://awhan.wordpress.com/2012/04/18/tmux-copy-paste-with-mouse/
J'ai créé une version à l'aide de netcat aujourd'hui qui est assez simple.
https://github.com/base698/tmux-copy-paste-mac-osx
Voici le tmux.conf:
bind -t vi-copy 'v' begin-selection
bind -t vi-copy 'y' copy-pipe 'nc localhost 5682'
bind p run-Shell 'nc localhost 5683; nc localhost 5683 | tmux load-buffer -' \; paste-buffer
Fonctionne aussi avec la souris en 1.8
Voici la solution que j'utilise pour tmux
version 2.8, macOS Mojave 10.14.1 et Terminal.app.
Après avoir relâché le bouton de la souris, la sélection est supprimée lors de la copie dans le Presse-papiers du système (ainsi que du tampon tmux
):
bind-key -T copy-mode-vi MouseDragEnd1Pane send-keys -X copy-pipe-and-cancel "pbcopy"
J'ai pu résoudre ce problème avec CMD
+ C
après avoir sélectionné le texte avec FN
+ mouse drag with left button down
à partir de la fenêtre tmux
dans l'application Terminal
de macOS High Sierra.