İmlecin üzerinde durduğu tek karakteri nasıl kopyalayabilirim?


49

Bir şeyleri kopyalamanın birçok yolunu biliyorum:

yiw= geçerli kelimede
yawyank = yan tüm kelimeyi (sondaki boşluk dahil)
yy = geçerli satır
3yyyank = geçerli olandan yank üç satır
yap= tüm paragraf yank (son satır yeni satır dahil)

Ayrıca tek bir karakteri silebilir veya değiştirebilirim:

x= imlecin altındaki karakteri sil = imlecin
raltındaki karakteri değiştir

Peki dünyada nasıl imlecin altındaki tek bir karakteri kopyalarsınız?

Motivasyonum Perl 6'da programlamam ve bazı operatörlerin Unicode karakterleri olması. Şu anda kullanıyorum Tadzik en Perl 6 Yapılandırma :: INI kodunu örneğin bir özel ayrıştırıcı için bir başlangıç noktası olarak, ben kopyaladığınız isterdi sadece o Fransız çift tırnak karakteri (hiper operatörü) dan bu hat :

my %hash = $<sections>».ast;

Hiper işlecin iki karakterli "Teksas" versiyonunu kullanabilirdim >>, ancak bunun daha iyi ve daha az belirsiz göründüğünü düşündüm >>>:

my %hash = $<sections>>>.ast;

görüntü tanımını buraya girin
görüntü tanımını buraya girin


1
Kolayca, işlemi her zamanki gibi hareketle oluşturun:yl
VanLaser

@VanLaser İyi fikir! Hareketin işe yaramayacağını düşünüyordum çünkü sadece bir karakter istedim. Ancak öneriniz ASCII için harika çalışıyor. Bunu bir cevap olarak gönderin, ben de oylayacağım. İlginçtir ki, bu Unicode karakteri ile çalışmaz, ancak ytX(" yank til X") Xsağdaki karakter olduğunda işe yarıyor gibi görünmektedir .
Christopher Bottoms

Merak ediyorum, bu bir karakter mi, Unicode mu, yoksa Vim concealözelliğini kullanarak değiştirilen / değiştirilen iki karakter yok mu?
VanLaser

@VanLaser İki "karakter" gibi görünüyor.
Christopher Bottoms

BTW, »karakteri nasıl tanıtıyorsunuz ?
VanLaser

Yanıtlar:


41

Hareket sık sık kullanılan "sağa bir karakter" ile yank operasyonu oluşturma çalışması gerekir: yl.

Btw (bir OP yorumuna yorum yapmak için), benim için »bu şekilde gVim veya terminal Vim olarak kenetlenebilir. Belki bir (dosya) kodlama sorunu?


4
Yanking »benim için de iyi çalışıyor. vyTek bir karakter çekmek için kullanıyorum . Bunu kullanmak yerine neden kullandığımdan emin değilim yl, belki bir zamanlar bilinçli bir nedenim vardı ama şimdi sadece refleks.
jjaderberg,

3
Her zaman y<space>imlecin altındaki karakterin yank olduğunu düşünmüştüm ve cevap olarak ekleyecektim ama yardımları kontrol ettikten sonra farkettim <space>ve laynı şeyim.
Brett Y,

Bu, alanın lider olarak kullanıldığı durumlar dışında, hoş ve görünüşte bile daha kolay.
VanLaser

1
@jjaderberg Yorumunuzu beğendim, lütfen cevap olarak gönderin. Teşekkürler!
Christopher Bottoms

1
@brettanomyces Yorumunuzu beğendim, lütfen cevap olarak gönderin. Teşekkürler!
Christopher Bottoms

14

Genellikle vy( görsel yank ), bazen xu( geri al ) da basarım . Ayrıca, imleci imlecinizden önce işaretlemek istiyorsanız, bunun yerine lvytuşuna basabilirsiniz Xu, sanırım xuakım için bastığımın nedeni bu. :-)

Unutmayın, Xuimlecinizi bu karaktere götürecektir.


Yani hvy. Düzenlemeye çalıştım, ancak görünüşte vim komutunda bir karakteri düzeltmek kabul edilebilir bir değişiklik değil.
Shahbaz

9

Bunu yapmanın en basit yolu x, arabelleğe de yerleştiren karakteri silmek ve sonra Ponu geri koymaktır. Ardından imleci hareket ettirebilir ve karakteri istediğiniz yere p(imleçten sonra) veya P(imleçten önce) tamponu değiştirmediğiniz sürece geri yapıştırabilirsiniz .

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.