this post was submitted on 22 May 2025
16 points (100.0% liked)

VIM - Vi IMproved

1164 readers
5 users here now

For Vim enthusiasts and anyone interested in Vim/Neovim!

"VIM is the greatest editor since the stone chisel." - Dr. Jose Unpingco

#HJKL

founded 2 years ago
MODERATORS
 

https://stackoverflow.com/questions/18258561/pasting-a-huge-amount-of-text-into-vim-is-slow/79633075

I recently ran into this. I didn't realize that the swpfile slowed down pastes.

I was trying to paste 50kb of text in Vim, but it kept getting stuck and I had to kill -9 it.

But, then I ran :set noswapfile and the paste was instant! TIL!

top 6 comments
sorted by: hot top controversial new old
[–] [email protected] 5 points 6 days ago* (last edited 6 days ago) (2 children)

Save it in a text file in the same directory. Then open the file you want put it in with vim. Move the cursor to the spot in the file you want to paste the text. Hit Esc then : and type r!cat (the file name you saved and want to paste the data from) , press enter.

This will read in the other file and put the contents into the one you have open in vim.

[–] zygo_histo_morpheus 6 points 6 days ago

you can just do :r path/to/file directly

[–] [email protected] 3 points 6 days ago (1 children)

What is the benefit of involving cat?

[–] [email protected] 1 points 6 days ago (1 children)

Just a habit, because you can run any command and get the stdout into vim in that method. Like for getting your shebang or an ls listing.

[–] [email protected] 3 points 6 days ago* (last edited 6 days ago)

Then for the casual reader: don't pick this habit up. There's no reason to fork/exec a shell, invoke cat for the purpose of printing to stdout, then move the data into your buffer. You can just do :r somefile.txt.

[–] [email protected] 3 points 6 days ago

Thank you so much for sharing it, I didn't know either!