Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to paste source code to vim without error format?

When I copy a python code, and paste to vim. the indents are all error. but I paste into emacs or gedit, it is right.

that is difficult to describle, let's see the screenshot. Notice:the blue and yellow line is just use the "indent guides plugin". the screenshot

This is the source code example:

import threading import time class timer(threading.Thread): #The timer class is derived from the class threading.Thread     def __init__(self, num, interval):         threading.Thread.__init__(self)         self.thread_num = num         self.interval = interval         self.thread_stop = False      def run(self): #Overwrite run() method, put what you want the thread do here         while not self.thread_stop:             print 'Thread Object(%d), Time:%s/n' %(self.thread_num, time.ctime())             time.sleep(self.interval)     def stop(self):         self.thread_stop = True   def test():     thread1 = timer(1, 1)     thread2 = timer(2, 2)     thread1.start()     thread2.start()     time.sleep(10)     thread1.stop()     thread2.stop()     return  if __name__ == '__main__':     test() 
like image 340
Tanky Woo Avatar asked Mar 22 '12 12:03

Tanky Woo


People also ask

How do I paste without formatting in Vim?

vimrc so pressing F2 toggles paste on and off.

How do I paste into format in Vim?

vim Inserting text Disable auto-indent to paste code And if you want to paste as is from the clipboard. Just press F3 in insert mode, and paste.

How do I copy and paste in Vim without comments?

In Vim, the primary commands for yanking (copying) and putting (pasting) are y and p . Those commands are prefered to "Right-click/Paste or Middle Click or CTRL+SHFT+V" because the text is "put" into the buffer without any special treatment.

How do I copy and paste a code in Vim terminal?

To copy from a terminal window press CTRL-W N (This is a capital N)1 or CTRL-\ CTRL-N (this is not a capital N) to get into normal mode. From there you can use all usual vim commands to copy and paste stuff. Entering insert mode will drop you back to your shell.


1 Answers

Automatic indenting kicked in.

The easiest way to disable it is: :set paste

:help paste  'paste'                 boolean (default off)                               global                         {not in Vi}     Put Vim in Paste mode.  This is useful if you want to cut or copy     some text from one window and paste it in Vim.  This will avoid     unexpected effects.     Setting this option is useful when using Vim in a terminal, where Vim     cannot distinguish between typed text and pasted text.  In the GUI, Vim     knows about pasting and will mostly do the right thing without 'paste'     being set.  The same is true for a terminal where Vim handles the     mouse clicks itself. 
like image 163
Karoly Horvath Avatar answered Oct 08 '22 03:10

Karoly Horvath