2009-04-08 38 views
13

Nếu tôi có thứ gì đó được chọn trong VIM ở chế độ trực quan .... làm cách nào tôi có thể sao chép lựa chọn đó và đặt nó ở dưới hoặc phía trên vùng chọn.Lựa chọn trùng lặp Vim

+0

bạn muốn chọn cùng một dòng nhưng ở trên? hoặc bạn muốn sao chép lựa chọn? –

+0

tôi muốn sao chép lựa chọn –

Trả lời

27

Chỉ cần nhấn 'y' để yank những gì bạn đã đã được lựa chọn trực quan , "p" để dán bên dưới con trỏ hoặc "P" để dán ở trên.

Và kể từ khi bạn được hỏi về dán dưới khối lựa chọn, tôi sẽ sao chép những gì michael nói dưới đây: Sau khi bạn y để yank, bạn '> để di chuyển đến sau khi khối lựa chọn, và sau đó p để dán.

0

Bạn có muốn sao chép/dán toàn bộ dòng không? Nếu vậy, hãy ra khỏi chế độ trực quan, sử dụng

yy

để y ank toàn bộ dòng, sau đó

p

để p aste.

+0

a) anh ấy không nói đó là một dòng, và b) tại sao thoát khỏi chế độ trực quan nếu bạn đã chọn nó? –

1

sử dụng y cho yank (bản sao) lựa chọn vào một bộ đệm

p cho dán các lựa chọn nơi bạn muốn nó được

+0

sử dụng p để dán ngắt hình thành bởi vì nó không lấy toàn bộ dòng –

0

Bạn có hai lựa chọn

  • yy mà các bản sao hiện dòng, sau đó p để dán
  • làm lựa chọn (với v chẳng hạn), sau đó sao chép với y và dán với p
+0

bằng cách sử dụng p để dán phá vỡ định dạng bởi vì nó không lấy toàn bộ dòng –

3

I Ngoài việc kết hợp V ... yp bạn có thể muốn biết về một số bước nhảy '< và'> để đến ký tự cuối cùng của văn bản chế độ trực quan trước đó. Cụ thể Nếu bạn muốn dán dưới đây bạn muốn V ... y '> p nếu đó là một multiline dài nó có thể có ích.

Đó là một trong những bước nhảy bạn có thể thấy có ích nếu bạn làm điều này rất nhiều

+0

mà dường như không hoạt động, bạn nhấn 'và sau đó SHIFT +. để có được>? –

+0

Nó phù hợp với tôi. –

+0

Tôi đang thực tế bằng cách sử dụng một plugin VIM cho Netbeans vì vậy đây có thể là vấn đề –

6

Kể từ khi tôi làm điều này rất nhiều (chọn một khối, yank, đi đến cuối lựa chọn hình ảnh cuối cùng, dán) Tôi thiết lập một lối tắt khối hình ảnh dưới Ctrl-p (trước đó, ctrl-p có vẻ giống như j trong một khối hình ảnh)

vmap <C-p> y'>p 

Bây giờ, nó chỉ tạo vùng chọn và nhấn Ctrl-p.