39

For example, if I type ':pwd' to get the current working directory, I can select the text in gvim but I can't figure out how to copy it to the clipboard. If I try the same in console vim, I can't even select it with the mouse. I would like this to work with all vim commands, such as set guifont to copy the guifont=Consolas:h10:cANSI output.

46

Are you looking for this,

:redir @* | set guifont | redir END

:redir command redirects the output of a command to a register (@*). The register @* refers to the clipboard.

For more info on this,

:help :redir
| improve this answer | |
  • didn't work in vim-gtk some clue ? – Sergio Abreu Jan 5 '17 at 21:32
  • @SergioAbreu try @+ instead of @* (well, it works in gvim). – leeand00 Jan 3 '18 at 20:45
15

Try ':r !pwd' to get the current working directory directly in to the GVIM opened file.
You can then copy it to clipboard like you would any other text file contents opened there.

| improve this answer | |
  • This is useful, but can I use this with set guifont for example? – Steven Jul 27 '10 at 18:47
  • No, that is not a shell command so it will not work. – Kevin Panko Aug 2 '10 at 19:56
4

For this particular example you could do (note the "!" which makes it go through the shell):

:!pwd | xclip

or

:!pwd | xclip -selection secondary

(depending on which X-selection you want).

You might have to install xclip first

sudo apt-get install xclip

(or equivalent)

| improve this answer | |
3

If you're running vim in an xterm, holding the shift key while selecting the text will copy the text to the X equivalent of the clipboard.

| improve this answer | |
  • X has two clipboards (at least); your suggestion will place the text in the PRIMARY selection (paste with middle-click) rather than the CLIPBOARD hselection (paste with Ctrl+V in most apps). – Marius Gedminas Jul 26 '10 at 11:47

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.