dj199008
dj199008

Reputation: 1789

How to paste to Vim when using PuTTY

I am using PuTTY to connect a remote host and editing via Vim. I meet a trouble when I try to paste something to Vim. That is, I copy something to the clipboard in my local host and want to paste it to the Vim on the remote host. How can I do that?

PS: I am using PuTTY! So, I open a Vim window via PuTTY. The very need is that I want to copy something in my local host and paste it to the Vim editor opened by PuTTY. That's all.

Upvotes: 85

Views: 117499

Answers (5)

ZhaoGang
ZhaoGang

Reputation: 4915

Copy-paste between Windows and PuTTY:

To copy from Windows and paste into PuTTY, highlight the text in Windows, press Ctrl + C, select the PuTTY window, and press the right mouse button to paste. To copy from PuTTY and paste into Windows, highlight the information in PuTTY and press Ctrl + V in the Windows application to paste it.

Copy-paste between two Vim sessions in separate PuTTY:

Highlight the information in the source PuTTY, and then press the right mouse button in the target PuTTY to paste.

Upvotes: -2

markcial
markcial

Reputation: 9323

Try with Ctrl + Shift + V or with middle click with a 3 button mouse.

Or Shift + Ins.

Source: https://superuser.com/questions/180043/paste-the-windows-clipboard-into-my-putty-session-using-only-the-keyboard

Upvotes: 163

poke
poke

Reputation: 387775

You can insert text from your host’s clipboard by pressing the right mouse button (default setting) or by pressing Shift + Ins. Note that this has the same effect as entering every character manually. So if you are using auto indentation in vim, this will very likely screw up your code.

To fix that, you can do the following:

  1. Before pasting into vim, enable paste mode by entering :set paste.

  2. Press i to enter insert mode. The status bar should say -- INSERT (paste) -- now.

  3. Press the right mouse button to paste in your stuff. The auto indentation of vim should not happen.

    If this puts you into the -- (insert) VISUAL -- mode, exit out of it using Esc (putting you into the paste insert mode again), and try pasting it again while holding Shift using your right mouse button.

  4. Press Esc to leave insert mode, and disable paste mode using :set nopaste again.

You can change which mouse button is used to paste in PuTTY in the Window/Selection configuration page.

Upvotes: 68

Ilan
Ilan

Reputation: 1737

In Windows Subsystem for Linux it appears that you have to:

  1. i = to enter -- INSERT -- mode
  2. Shift-right-mouse-click = to paste

If you just right-mouse-click (i.e. without shift) then annoyingly all that happens is that the mode changes to -- (insert) VISUAL -- i.e. it doesn't paste anything.

Upvotes: 51

dhaupin
dhaupin

Reputation: 1643

To clarify the other answers, there are a couple ways to do this, depending on if Vim is running with mouse support. Lets assume its via some sort of terminal/Putty:

  • When not using mouse in remote Vim, right clicking will paste from local clipboard via Putty into remote Vim.
  • With mouse enabled in remote Vim, Shift + Ins will paste from local clipboard via putty into remote vim.
  • Ctrl + Shift + v will paste from local clipboard via native/*nixish/xterm into remote vim.
  • With mouse enabled in remote Vim, middle clicking will paste from remote clipboard into remote Vim.

Upvotes: 3

Related Questions