Vim komut satırında Readline kısayollarını nasıl kullanabilirim?


15

Bir Vim komutunu düzenlerken , Bash ve diğer her REPL ile aynı kısayolları kullanmak istiyorum : M-bbir kelimeye geri dönmek, M-Backspaceönceki bir kelimeyi silmek M-u, kelimeyi büyük harfe dönüştürmek C-k, sonuna kadar kesmek için satır, vb :cmap. Hepsini kullanarak değil , bazı komutları yapılandırabildim .

Bunu sağlayan bir eklenti veya ayar var mı?

Biliyorum cedit, ama ihtiyacım olan tek şey hızlı bir komut girmek.


Waitaminute, editör olarak Vim'i kullansanız bile Bash'i Emacs modunda kullandığınızı mı söylüyorsunuz?
Kyle Strand

3
@KyleStrand Henüz Bash'i vi modunda kullanan birini görmedim. Modal editörlerin faydalarının çoğu, yalnızca bir satırla sınırlı olduğunuzda kayboluyor gibi görünüyor.
Mihai

1
İlginç. Bash'i Vi modunda hiç kullanmadım, ancak Emacs modu Vi modunun desteklemediği bazı şeyleri destekliyor gibi görünüyor. Ben sadece Emacs bağlamaları hakkında tamamen cahil kalırken Vi tuş bağlamalarını biliyorum ve asla varsayılanları öğrenmek için yeterince acil bir konu olduğunu düşünmedim.
Kyle Strand

Yanıtlar:


11

Bunu sağlayan bir eklenti veya ayar var mı?

Evet, rsi.vim eklentisi :

Özellikleri

  • Okuma çizgisi eşlemeleri ekleme modunda ve komut satırı modunda sağlanır. Normal mod kasıtlı olarak atlanır.
  • Önemli Vim tuşu bağlamaları (ekleme modunun Cn ve Cp tamamlanması gibi) geçersiz kılılmaz.
  • Meta anahtar bağlantıları, kaçış yeniden eşleme tehlikesi olmadan terminalde çalışacak şekilde sağlanır.
  • Cd, Ce ve Cf, satırın ortasında Readline davranışını ve sonunda Vim davranışını gerçekleştirecek şekilde eşlenir. (Bunu düşün.)

1

Bunu sağlayan bir eklenti veya ayar var mı?

Ayrıca readline.vim var .

Yalnızca komut satırına odaklanan daha yeni bir eklentidir. Ayrıca, Readline kısayollarının daha büyük bir alt kümesini uygular ve her kısayolu tam olarak Readline'daki gibi uygulama amacına sahiptir.

Bu eklentiyi benzer eklentilerden farklı kılan şey, Readline eşlemelerinin daha büyük bir alt kümesini uygulaması ve her komut için Readline davranışını taklit etme konusunda daha iyi bir iş çıkarmasıdır.

Kelime hareketi ve silme komutları Vim ve Readline arasında farklı davranışlara sahiptir. En büyük fark, Readline'da noktalama işaretlerinin bir sözcük sınırı aranırken her zaman atlanmasıdır. Başka bir fark, _ (alt çizgi) kelimesinin sınırlayıcı olarak ele alınmasıdır. Bu eklenti, kelime hareketi ve silme komutları için Readline davranışını uygular.


1
Bu tür şeyleri arayan biri olduğuna şaşırdım. Readline'ın vim modunu kullanmak o kadar kolay ki, her normal vim kullanıcısının bunu yapacağını düşünüyorum. (Emacs modunda ekstra komutları bu kadar zorlayıcı bulmuyorum.) Ama belki de "nasıl" o kadar çok bilinmemektedir (... ve belki de gördüğüm / kopyaladığım ilk bashrc olduğu için şanslıyım ... kabul ettiğimden çok daha fazla yıl önce ... vardı set -o vim:)
B Katmanı
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.