2012-10-18 14 views
7

Thông thường, khi tôi dán vào vim, tôi nhận được các dòng thụt dòng mà khá bực bội để sửa chữa. Kết quả sẽ trông giống như thế nàyvim: căn trái các dòng liên tiếp với dòng hiện tại

This is line one 
    This is line two 
     This is line three 
      This is line four 

Tôi muốn biết nếu có cách nào tôi có thể nói vim để căn chỉnh các dòng từ hai đến bốn với dòng một. Nếu dòng một văn bản được bắt đầu tại vị trí con trỏ 6 là có một cách để nói "làm cho mười dòng tiếp theo cũng bắt đầu ở vị trí 6?"

+0

bản sao có thể có của [Vim - dán ở chế độ chèn?] (Http://stackoverflow.com/questions/2861627/vim-paste-in-insert-mode) – Conner

+0

Hãy xem ': h paste' và ' : h pastetoggle' để dán vào vim. Chúc mừng! – Conner

Trả lời

9

Để sửa thụt dòng chữ thụt dòng này, bạn có thể thụt lề lại một khối bằng cách sử dụng =. Chọn một khối hình ảnh và nhập = hoặc cung cấp một chuyển động: =4j để thụt lề lại 4 dòng tiếp theo.

Bạn có thể tránh thụt dòng chữ bằng cách đặt paste trước khi dán: :set paste. Sau khi dán :set nopaste.

3

Bạn có thể sử dụng :set paste để tránh điều này khi dán trong văn bản. Và bạn có thể đặt mức thụt lề cho một phạm vi với left.

:<range>left3 

Ví dụ:

.,+4left3 

sẽ thiết lập sự thụt lề của 4 dòng bên cạnh 3.

Lưu ý: Phạm vi có thể được xác định trong chế độ trực quan, chỉ cần chọn một số dòng với S-v và sau đó nhấn :left4

0

Trước khi dán, làm :set paste, sau khi dán, làm :set nopaste.

Hoặc sử dụng Vim tích hợp trong các lệnh dán với đăng ký vào clipboard:

"+p (paste after the cursor or below the line) 
"+P (paste before the cursor or above the line) 

Xem :help 'paste':help registers.