Belirli bir satır numarasına sahip bir satır nasıl işaretlenir?


Yanıtlar:


59

Kimden :help :yank:

:[range]y[ank] [x]      Yank `[range]` lines [into register x].

Böylece, satır 4 yank için, bir yazacaktır:

:4yank

Bunu ekleme modundan kolayca yapabileceğinizi unutmayın <C-o>; bu, bir komut çalıştırmanıza izin verir, bundan sonra ekleme moduna geri dönersiniz; Örneğin:

<C-o>:4yank

Elbette diğer aralıkları da kullanabilirsiniz. Bazı örnekler:

  • 1 ile 3 arasındaki satırlar: :1,3yank
  • Tamponun tamamı: :%yank
  • Geçerli satırdan tamponun sonuna kadar: :.,$:yank
  • Geçerli çizgi ve sonraki 3: :.,+3yank
  • Geçerli çizgi ve önceki 3: :-3,.yank
  • Geçerli satırın üstündeki 3 numaralı satır: :-3yank

Aralıklar hakkında hatırlanması gereken en yararlı şeyler:

  • Şeklindedir :line1,line2command.
  • A .(; çoğu durumda nokta ihmal gerçekten yapabilen güncel çizgidir :.,+3yankve :,+3yankaynıdır)
  • Geçerli konuma göre +nve ile satırları belirtirsiniz -n.

Daha :help [range]fazla bilgi için bkz .


6
Bahsettiğiniz için ikramiye puanları <Co>, buna razıyım.
PhilippFrank

7
Bu kısaltmak anlamına bahsetmemiz de var :4yankolan:4y
NewbieOnRails

35

Carpetsmoker cevabı ek olarak, ben müthiş işaret etmelidir :help :mve :help :t.

Satır 4'ü geçerli satırın hemen altına kopyalamak istiyorsanız, bunu yapabilirsiniz:

:4t.

veya bu satırı, geçerli satırın hemen üstüne kopyalamak istiyorsanız:

:4t-

1

Aldığınız ex-mode komutlarının yanı sıra, bunu komut modunda da elde edebilirsiniz, örneğin: 4GY''- bunun anlamı: satır 4 ( 4G), yank satırı ( Y) ve önceki satıra ( '') geri dönmek .

Ayrıca atlama işaretlerini de kullanabilirsiniz; ikinci sorunuz için, örneğin: mm3kY'm- bunun anlamı: m ( mm) işaretini ayarlamak , üç satır yukarı ( 3k), yank satırı ( Y), m ( 'm) işaretine geri dönmek .


1
Eski `aynı satır ve sütuna geri döndüğü için '` kullanmak muhtemelen' 'ifadesinden daha iyi bir öneridir. Aynen m` için aynen.
jamessan

Katılıyorum. (Özel bir anlama sahip olduklarından, wiki işaretlemesinde değişmez backtics nasıl oluşturulabilir?
Janis

Satır içi kodunu sınırlamak için birden fazla geri döndürme çubuğu kullanmanız gerekir (cf, daringfireball.net/projects/markdown/syntax#code ). Soruların / cevapların içinde çalıştığını biliyorum ama yorumumda işe yaramadı.
jamessan

1

Basitçe yazın

:4y

satır 4 yank için

adsız sicile girecek. Sonra, (örneğin) pbaşka bir yere koymak için kullanabilirsiniz . Ayrıca [n]p, örneğin 10 p yapıştırmak için 10 p kullanabilirsiniz.

İle "a" gibi adlandırılmış kayıtlara koyabilirsiniz

:4y a

2
"Ay4 doğru görünmüyor." Deyince "4 neyin var?" Demesini bekliyoruz. Örneğin, Enter tuşuna basarsanız 4 satır başlayacak Eğer <Enter> / foo yazarsanız geçerli konum, bu "foo" vb oluşumundaki aşağıdaki 4th til yank olacak
Don Hatch

Son komut okumalı 4G"ayy.
romainl

0

Yapabilirsin

:10y <Enter> (to copy the line 10)
p (paste line 10 where the cursor is)

Göreceli sayıların ayarlanması aynı zamanda kod satırları arasında geçiş yapmanıza yardımcı olur.

:set relativenumber

Şimdi imlecin üstündeki 5. satırı aşağıdakilerle kopyalayabilirsiniz:

:-5y <Enter>
:p (to paste)
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.