Kendinizi vi'da ustalaşmaya zorlamanın en iyi yolu nedir? [kapalı]


205

İyi bir süre önce okudum viemu'nun yaratıcısı tarafından, vi hakkındaki yanlış kavramların çoğunu temizlemenin yanı sıra neden iyi bir fikir olduğunu (ve son 30 yıldır neden çok popüler olduğunu) açıklayan bir makaleyi . Aynı adam aynı zamanda temel bilgileri bir seferde birkaç bit öğreten harika bir grafik hile sayfası setine sahiptir .

İkna oldum.

Aslında son 2 yıldır ikna oldum. Ama yine de kendimi birincil editörüm olarak vi öğrenmeye zorlamadım, öğrenme eğrisi çok yüksek. Çalışmaya başladığımda, kabul edilebilir ancak anlık üretkenlik (şimdiki editörümü kullanarak) şimdiye kadar çizginin ötesinde muazzam üretkenlik kazandı (vi kullanarak).

Öğrenme eğrisini aşmanıza yardımcı olacak iyi ipucuları olan var mı? Ne olursa olsun, doğrudan ipuçları, başka bir öğretici veya makale olabilir.

Düzenleme: Vi'nın vim / gVim , Cream ve MacVim (vb.) Varyantlarının farkında olduğumu unutmayın . Vi ailesine bir bütün olarak atıfta bulunmak için vi hakkındaki sorumu sakladım. Tüm harika cevaplar için teşekkürler.

Güncelleme (Nisan 2009)

Geçen Aralık ayından bu yana günlük profesyonel yaşamımda Vim'i (daha doğrusu MacVim) kullanıyorum. Geri dönmüyorum :-)

Vim üstatlığında herkese iyi şanslar.


14
Vim öğrendim çünkü yıllar önce varsayılan düzenleyiciyi nasıl değiştireceğimi bilmiyordum. ;)
unexist

Zaman içinde bilgi alımının bir ölçüsü olduğundan, dik bir öğrenme eğrisi genellikle iyi bir şeydir, hızlı bir şekilde öğreniyorsunuz demektir. :)
converter42

Sadece bu sabah vi ile mücadele ediyordum ve Stack Overflow'a göz atıyordum ve dikkatimi dağıtmak için bu üste yakın! Hala kullandığınızı duymak güzel, umarım dört ay içinde ayakkabılarınızdayım.
Greg Noe


3
Yan not olarak: Neredeyse her şey için vim eklentileri alabileceğinizi biliyor muydunuz ?! Firefox için bir vim eklentisi alabilirsiniz, böylece tüm metin kutularınız vim gibi davranır! Ancak bu daha yararlıdır. (Henüz indirmemiş olmama rağmen) yararlı olan, tutulma için vim eklentisidir. Şimdi bu faydalı görünüyor!
sixtyfootersdude

Yanıtlar:


125

Her şeyden önce, Vim'i almak isteyebilirsiniz; vi'nin sahip olduğu her şeyle birlikte oldukça üstün bir özelliğe sahiptir.

Bununla birlikte, öğrenmek disiplini gerektirir. Eğer bir işiniz varsa ve (işten çıkarılmadan) üretkenliği karşılayamıyorsanız, sadece editörü öğrenmek için bir hafta sonu projesi almanızı öneririm. Çalışırken belgelerini açık tutun ve dışarı çıkmayacak kadar disiplinli olun. Daha fazlasını öğrendikçe, verimli hale geldikçe ve kas belleğine güvenmeye başladığınızda, ona bağlı kalmak o kadar zor olmayacaktır.

Vim'i o kadar uzun süredir kullanıyorum ki aramak, gezinmek veya kaydetmek için hangi tuşlara basacağımı bile düşünmüyorum. Ve ellerim asla klavyeden ayrılmaz. Vim'i kullanmak, programlama kariyerimde yaptığım en iyi seçimlerden biri.


15
İş yerinde öğrendim ve üretkenlikten kaçamadım. Sürekli soru sormak için yanımda bir vimmer olması yardımcı oldu. Vim'i iyi bilen birini bulun ve onlarla arkadaş olun! Hızlıca gezinme tuşlarına bakın ve modları ele alın. 15 dakika parçalarını deneyin, elde edersiniz.
camflan

4
Katılıyorum, sadece devam et. Nano veya not defteri kullanmaya zorlandığınızda orada olduğunuzu bileceksiniz ve sizi deli ediyor!
Kyle Walsh

3
Bir yıl boyunca Vim'i kullanmaya başladıktan ve durduktan sonra, Vim kitabını satın almanın ve kendimden geçmesini sağlamanın biraz yardımcı olduğunu gördüm. Ayrıca, "Bunu yapmanın daha hızlı bir yolu olmalı" zihniyeti tutmaya ve sürekli olarak aramaya devam etmeye çalışıyorum: işleri daha iyi yapmanın yolları için yardım.
JD Frias

2
Ayrıca, rahat etmek istediğiniz özelliklerin kullanışlı bir listesini tutun. 5 yılı aşkın bir süredir vim kullanıyorum ve hala hatırlamak istediğim yeni şeylerle dolu bir Tomboy notu tutuyorum.
Lucas Oman

65

Yapacağım ilk şey, ok tuşlarının ve ins / home / end / pgup / aşağı tuşlarının üzerine bir parça kağıt veya kitap koymak. Bunlara Vi.

Sonra ctrl + 'ya basmak için alışırdım. Çok daha hızlı ve ellerinizi klavyeden çıkarmanıza gerek yok.

Sonra ekran görüntümü izlerdim:

http://www.youtube.com/watch?v=FcpQ7koECgk

http://www.youtube.com/watch?v=c6WCm6z5msk

http://www.youtube.com/watch?v=BPDoI7gflxM

http://www.youtube.com/watch?v=J1_CfIb-3X4

Sonra, sadece pratik pratiği yapın.

düzenlemek ok tuşları kaçınmanın nedeni onlar yavaşlatmaktır. Vim'in en büyük avantajlarından biri size sağladığı hızdır. Ok tuşları, ustalaştığınızda çok güçlü olan modal doğayı gerçekten kucaklamanızı da önler.


Modern Vi / Vim kullanıcılarının imleç tuşlarından kaçınması gerektiğini düşünmüyorum. Büyük olasılıkla Vi'yı imleç tuşları olmayan bir sistemde kullanmayacaksınız, bu yüzden onlardan kaçınmayı öğrenmek gereksizdir ve bu günlerde iyi çalışırlar.
tialaramex

24
Klavyemdeki Caps-Lock tuşunu Escape olarak değiştirdim. Ctrl + [!
Chris AtLee

İmleç tuşlarından kaçınmaya katılıyorum. Vi'in harekete yaklaşımının avantajlarından biri, alıştıktan sonra, tüm durumlar için ayarlanmış olmanızdır (okuyun: sıkışık bir dizüstü bilgisayar düzeninde veya garip işletim sistemlerinde, eski Unices veya garip terminallerde uzaktan oturumlarda)
webmat

8
İmleçleri .vimrc: map <Up> "" map <Down> "" map <Right> "" map <Left> "'de devre dışı bırakana kadar kullandım. Bileklerim bu alışkanlıktan kurtulduğum için minnettar!
Johan Kotlinski

2
Joey, ok tuşları gerçekten yararlı olurdu, ancak ekleme modundan çıkmak, olmak istediğiniz yere gitmek ve eklemek veya değiştirmek ya da ne yapmak istediğinizi yapmak için hangi modu yeniden girmek neredeyse her zaman daha iyidir. Kaçış ya da ^ [tuşlarına basmak ellerinizi oraya ve geriye hareket ettirmekten daha hızlıdır.
Aaron Jensen

39

Adım 0: dokunma türünü öğrenin. Cidden - eğer parmaklarınız anahtarların nerede olduğunu bilmiyorsa o zaman vim bir acı olacaktır. Vim'i reddedseniz bile, dokunarak yazma, bağlantı sürtünmesini ücretsiz izlemeyi akıl ederek programınızı geliştirecektir ( Steve Yegge'e sorun ). Bir yoktur sürü ait yazılım size yazarak iyileştirmeye yardımcı olabilir.

1.Adım: Başlamak için vimtutor kullanın. Gvim'de (sanırım yardım menüsünün altında) ya da komut satırına 'vimtutor' yazabilirsiniz. Zamanınız 30-45 dakika sürecek ve daha sonra parmaklarınız vi / vim'in temellerini bilecek ve klavyenizi pencereden fırlatmak istemeden dosyaları düzenleyebilmelisiniz.

2.Adım: VIM'i her yerde kullanın. Bu soruya bakın IDE'nizde e-posta oluşturmak için komut satırında vim ve vi anahtar bağlamaları kullanma, web tarayıcınızdan ipuçları ve bağlantılar için ... Anahtar bağlamaları kas belleğinize gömmek için vim kullanmanız gerekir.

3.Adım : Vim hakkında daha fazla bilgi edinin. Yüzeyi sadece vimtutor ile çizmiş olacaksınız. Şunları yapabilirsiniz Bu videoyu izlemek veya okumak bu yazıyı "etkili metin düzenleme Yedi alışkanlıkları" hakkında (hem sen yapabilirsiniz. Okundu hakkında ipuçları ve püf noktaları üzerinde StackOverflow'daki göz atabilir. Vimtips tavsiyemi sık olacağını bir litle öğrenin -. Orada çok orada ısırık büyüklüklerine yapışmanın, bilgi çubuğunu yapmanın en iyi yolu olacağını söyleyebiliriz.

4. Adım: Kâr :)


2
Belirli bir ustalık seviyesine ulaşmak istiyorsanız, dokunarak yazma şarttır. Ama bu bilgisayar işlerinde gerçekten iyi olmak istiyorsanız, kesinlikle size söyleyecek birine ihtiyacınız yok, bunu kendiniz kolayca anlayacaksınız. =)
sjas


Vim ustası için oldukça ulaşılabilir ve bilimsel bir yol. Vim'e giden ana yola doğru bana rehberlik etmek için bunu kullanmaya çalışacağım.
YinchaoOnline

26

Ben yıllar boyunca vim bir tekrar, off-tekrar kullanıcı oldum (zaman zaman sys yönetici iş yapıyor). Kısa bir süre önce programlama işimi yapmak için daha fazla zaman harcamaya başladım. Ben de gvim ile başlamanızı öneririm. Çoğu işletim sistemi ortamıyla iyi entegre olur ve (daha da iyisi), ihtiyacınız olduğunda fareye geri dönebilirsiniz :).

Vim ile devam etmek için , vimtutordan (gVim ile birlikte) bir veya iki kez (bir saat kadar) geçin . Benim için ne kadar yardımcı oldu abarttı! Özellikle bir belgede ilerlemenin farklı yolları ve düzenleme komutlarının hareket komutları vb. İle nasıl kaydedildiği hakkındaki ilk bölümler. Bundan sonra işler çok daha net olacaktır.

Ardından, hızlı bir klipte yararlı düzenleme yapmak için yeterince rahat olana kadar onunla hızlı, küçük düzenlemeler yapmaya başlayın (not defteri değiştirme şeyleri). Sonra günlük işinizi yapmayı deneyin. Kendinizi diğer editörlerde "son eylemi tekrarla" komutuna hiç vakit kaybetmeden bulacaksınız!


": mouse = a" komutunu çalıştırarak fareyi normal vim içinde kullanabilirsiniz.
Stephen Paulger

19

Vi metin düzenleyicisindeki öğrenme eğrisini aşmanıza yardımcı olacak iyi ipuçları istediniz. Önceki yanıtların çoğu başka editör kullanmamanızı önerir. Bunun iyi bir tavsiye olduğunu düşünüyorum. Daha grafik bir editörden vi'ye geçmek zihniyette bir değişiklik gerektirir. Görsel değişikliklerden ziyade komutlar açısından düşünmeyi gerektirir.

Uzun yıllar vi'dan başka bir şey kullanmadım ve üretken olabilmenin tek yolunun düzenli olarak kullandığınız komutları ezberlemek olduğuna inanıyorum. Bunu yaptığım yol, en yaygın klavye komutlarının kısa bir listesini yapmaktı. Bu komutları işleve göre gruplandırdım ve renk kodladım, yani İmleci Taşıma, Düzenleme, Arama , vb. Yalnızca bilmediğim en sık kullanılan komutları dahil etmeye dikkat ettim. Fikir, ezberlemede de yardımcı olan hızlı bir referans oluşturmaktır - mevcut yardım ekranlarının yerini almak değil. Sonra bu listeyi yazdırdım ve monitörün arkasındaki duvara bantladım, böylece kolayca görebildim. (Bahsettiğiniz grafik hile sayfaları bazıları için daha iyi olabilir, ancak muhtemelen bir ezberleme aracından daha iyi bir referans kaynağıdır.)

İşte anahtar. Komutlardan biriyle rahatlaştığımda, içinden bir kalemle bir çizgi çizdim. İhtiyacım olsaydı hala görebiliyordum, ama bu komuta hakim olmanın benim için sembolikti. Bu, düzenli ilerleme görebildiğim için bana güven ve motivasyon verdi. Çoğunu geçtikten sonra, onları kaldırdım ve daha nadir kullanılan komutlardan bazılarını ekledim. Vi işleminden memnun kalana kadar bu sürece devam ettim. Herhangi bir komuttan geçmediğimi, hatta listeye uzun süre bakmadığımı fark ettiğimde o noktaya geldiğimi biliyordum.

Birkaç yıl önce vi'nin mevcut tek editör olduğu bir UNIX platformunda çalışmam gerekiyordu. Vi'de küçük bir cep referans kitabı aldım, ancak neredeyse hiç kullanmadım. Vi kullandığım gibi listeler yaptım ve onları duvarda yayınladım. İlk haftanın sonunda, vi kullandığımdan bu yana beş yıl geçmesine rağmen çok rahattım.


2
Bunun mükemmel bir tavsiye olduğunu ve IDE, hata ayıklayıcı ve hatta Excel gibi bir şey öğrenmeye eşit derecede uygulandığını düşünüyorum.
davidavr

11

Benim için VI iyi bir acil durum editörüdür, ancak başka bir alternatif varsa kullanmak istediğim bir şey değildir. Bunun herkes için değil, bunun korkunç ya da başka bir şey olduğunu söylemiyorum, sadece kişisel olarak keşfedilebilir bir kullanıcı arayüzünü tercih ediyorum.

Ama Linux'ta önemli bir şey yaparsanız VI'yı gerçekten bilmelisiniz!

Bu yüzden sadece temel bilgileri öğrenin: i = ekleme modu esc = ekleme ekleme modundan çık: wq = kaydet ve çık: q! = Kaydetme ve ekleme modunda olmadığında x = karakteri sil. / = Ara

Bu, herhangi bir düzenleme acil durumundan geçmenizi sağlar. Bu birkaç komutla yapamayacağınız hiçbir şey yok (ve tabii ki navigasyon). Gerisi onlara ihtiyacınız olduğu gibi "Tack" yapabilirsiniz.

Yine de bir referansı veya kitabı hazır bulundurun - VI kullanmanız gerektiğinde, muhtemelen web'e göz atamayacaksınız - ancak kılavuz sayfası biraz yararlı olabilir.


4
the: help komutu ilk başta öğrenebileceğiniz en yararlı olanlardan biridir - editöre yerleşik olduğunda referans kitaplara veya web'e kim ihtiyaç duyar?
zigdon

2
Kullanmayı öğrenirseniz referans kitabı gerekmez: yardım. "Muhtemelen web'e göz atamayacaksınız" konusuna gelince vaşak ve link tarayıcıları hakkında bilgi edinin. Bir tutamda, dosya sistemine göz atmak için bile kullanabilirsiniz.
Dönüştürücü42


11

Sen ile başlamalıdır vim (Vi Gelistirilmis) ve özellikle GUI - GVIM . GUI'nin menüleri vardır ve Windows'ta kopyalama, kesme ve yapıştırma kısayollarını kullanabilirsiniz, böylece Not Defteri'ni hemen değiştirebilirsiniz. Ve menüler kısayolları (vim komutları) görüntülediğinden çok şey öğrenebilirsiniz.

En başından yapmanız gereken bir diğer şey vi'yı ihtiyaçlarınız için yapılandırmaktır. Örneğin, vim'i bir Python IDE'ye dönüştürebilirsiniz . Bunu yaparak, başka bir editör kullanmak için bahaneniz olmayacak, çünkü vi size ihtiyacınız olan her şeyi sunacak.


Terminal emülatörüne bağlı olarak, gui'yi kullanmak da daha hızlıdır. :)
Arafangion

10

diğer tüm metin düzenleyici uygulamalarını silin.

O zaman öğrenmelisin.


9

Kendinizi zorlamanın en kolay yolu , diğer tüm düzenleyicileri makinenizden kaldırmak olabilir. Günaha kurtulun :)


9

Karmaşık bir düzenleme görevi her yaptığınızda, bunu yapmanın daha etkili bir yolu olup olmadığını merak etmeye devam edin. Çoğu zaman, basit terimlerle açıklayabileceğiniz bir şey olduğunda ("metnin paragraflarını değiştir" veya "yorum satırlarında X karakterinden sonra her şeyi sil" gibi), vim'de sadece birkaç tuş vuruşunda yapabileceğiniz bir şeydir.

Son derece kullanışlı bazı önemli özellikler vardır ve her zaman kullanmayı sona erdirirsiniz. En çok sevdiğim şeyler:

  • Blok seçimi (Ctrl-V)
  • Makro kaydı (q)
  • Sanal düzenleme (: set ve = all)
  • Düzenli ifadeler
  • Harici Unix programlarına borulama
  • Anahtar eşlemeler
  • Otomatik tamamlama (Cp, Cx Cp, Cx Cf)
  • Operasyon + hareket kombinasyonu (bu inanılmaz derecede güçlü)

Diğer programcılara hangi özellikleri en yararlı bulduklarını sorun ve beyninize daha uygun olanları benimseyin. Başkalarının fikirlerini çal .vimrc( işte benim )


8

DÜZENLEME: İlgilendiğiniz durumda , çevrimiçi aralıklı tekrarlama sitesi flashcarddb.com'da ayarlanmış bir flashcard oluşturdum ...

  1. Öğrenmeyi ve yeni komutları günlük rutininize dahil etmeyi dahil etmek için mnemosyne , supermemo veya anki gibi aralıklı tekrarlı bir flash kart programı kullanın . Günlük editörünüz olarak vim kullanmak yeterli değildir. Usta olmak için, bu kodları kafanızda saklamanız ve eldeki göreve ideal çözüm oldukları zamanı beklemeniz gerekir.
  2. Özelleştirmelerle bir .vimrc koruyun
  3. Bir vim eklentisi yazma veya düzenleme

8

Bir süre önce Vim ile verimli düzenleme için bir rehber yazdım . Bunu yararlı bulabilirsiniz.

Bir dakika geri çekilip kendinize "neden bu editörü öğrenmek istiyorum? Geçerli metin düzenleyicimden daha hızlı veya daha iyi olacağını düşündüren şey nedir?" Diye sorarım. O zaman Vi (m) 'yi sizin için vazgeçilmez kılacak özellikleri öğrenin.

Örneğin, Vim'in CTags entegrasyonu benim için tamamen vazgeçilmez. Çok, çok büyük bir kod tabanı ile çalışıyorum ve bir tuş vuruşunda (hangi dosyanın olduğuna bakılmaksızın) bir fonksiyona veya sınıf tanımına geçme yeteneği kesinlikle katil bir özelliktir, biri olmadan çalışmakta zorlanıyorum.

Ortak görevleri otomatikleştiren makrolar oluşturmak için .vimrc dosyanızı kullanın.

Otopilot editörü-seçiciniz, işi en hızlı ve en az zihinsel çaba ile yapacak olan editörü seçecektir. Küçük bir hazırlık çalışması, editörün Vim olmasını sağlayacaktır. :-)


1
bağlantı artık çalışmıyor
eugenevd

6

Vi becerilerinizi büyük ölçüde geliştirecek iki şey:

  1. Uygulama, uygulama, uygulama
  2. Nethack

6

Benim önerim: küçük başlayın. En yararlı komutlardan oluşan küçük bir grubu ezberleyerek başlayın. Vi'ye başladığımda, bunlar benim ilk 10'umdu:

  • (Esc) komut moduna geri dönmek için (en önemlisi!)
  • a imleçten sonra metin eklemek için
  • Geçerli satırın sonuna metin eklemek için A
  • 1 karakteri silmek için x
  • dd 1 satır silmek için
  • Metni değiştirmek için R (üzerine yaz)
  • geri alacaksın
  • : Q! Kaydetmeden çıkmak için (Enter)
  • : w (kaydetmek için)
  • Kaydetmek ve çıkmak için ZZ

Yalnızca bu komutlar kullanılarak birçok temel düzenleme yapılabilir. Rahat olduktan sonra, geri kalanı çok zor görünmüyor.

BTW, birincil metin düzenleyicim için vi'ye güvendiğimi eklemek istiyorum, ama şimdi sadece mecbur kalırsam. Benim durumumda, Emacs veya Visual Studio gibi araçları kullandığımda üretkenlik daha iyi (lütfen not: "benim durumumda"). Birden fazla araç deneyin ve üretkenliğinize en çok yardımcı olan aracı seçin. İyi şanslar!


ZZ Command Macvim'de çalışmaz
innuendoreplay


4

İş yerinde kullanırken mevcut düzenleyicinizde kullandığınız tüm kısayolları ve özellikleri yazın. Sonra Cumartesi sabahı oturup Google ve yığın taşması kullanarak vi her birinin nasıl yapılacağını öğrenin. Bunun için bir sayfa (veya sayfa) kullanıyorsanız muhtemelen en iyisi.

Şimdi işyerindeki diğer editörleri devre dışı bırakın / silin, böylece bunları karşılaştırma sayfanıza bakmak ve vi'de yapmaktan daha uzun sürebilir, yani başka seçeneğiniz yoktur.

Son olarak, eski düzenleyicinizden geçiş kısayolları listenizi blogunuzda yenisine yayınlayın.

İyi şanslar!


4

X11 kullanmıyor musunuz ?

$ sudu rm /usr/local/bin/emacs

Giriş kabuğunuzu vi olarak değiştirin ?

Önce kendinizi ed kullanmaya zorlayın , sonra vi bir lüks gibi görünecek mi?

Kullanım vi anahtar bağlamaları bash ?

Vi kullanmaya başlayın her zaman kullanmaya mı ?

Bana öyle geliyor ki bir editör öğrenmek bir dil öğrenmekten çok farklı değil. Daldırma en iyi sonucu verir.

Kullandığım vi gerçekten hızlı düzenleme veya ne zaman kullanamazsınız için X11 nedense ama yaşamak Emacs'ta . Gerçekten güçlü editörler öğrenmeye zaman ayırmaya değer.


3

Benim tavsiyem bazı basit programlar bulmak ve yazmak, VI kullanarak bitirmeye başlamak.

Oranlar, ilk başta öğrenme eğrisi tarafından kendinizi işyerinde veya zamana duyarlı herhangi bir ortamda kullanmaya zorlamak için çok sinirli olacaksınız.

Bunu ortamlara / editörlere aşina olmak için daha önce yaptım ve oldukça iyi çalışıyor.

Yazılacak şeyler bulmakta sorun yaşıyorsanız, okulda yaptığınız projeleri (veya daha önce yaptığınız herhangi bir şeyi) yeniden yapmanızı öneririm. Bu yöntem, ne kadar daha iyi bir geliştirici haline geldiğinizi görmenize izin verme avantajına sahiptir. :)

Düzenleme: fareyi kullanmak için herhangi bir günaha önlemek için bunu tamamen konsoldan yapmanız gerektiğini belirtmeyi unuttum!


3

Emacs öğrenmeye ilk başladığımda, Vim ile zaten çok rahat olduğumdan ve hatırladığım kadarıyla başka bir editörde nasıl çok şey yapılacağını bildiğim aynı veya benzer bir teknede olduğumu hatırlıyorum. emacs kullanarak, her zaman acı verici yavaştı.

Ancak, yapmanız gereken sadece biraz acı çekmek olduğunu ve her zaman, her zaman, her zaman, bildiğiniz bir şeyi yapmak için belgelere baktığınızdan emin olun. , böyle daha önceki editörü yapabilirsiniz satırın sonuna gitmek veya bir metin bölgesi seçmek gibi.

Ayrıca, soru sorabileceğiniz yerel bir vi-uzmanınız varsa veya şirketimiz gibiyseniz, çift programlamayı teşvik edersiniz. Bu şekilde kolay olması gereken bir şey yapmaya çalıştığınızda, basitçe birine sorabilirsiniz, size nasıl olduğunu gösterecekler ve editörü birkaç hafta düzenli olarak kullanıyorsanız, daha fazla soru sormak zorunda kalmamalısınız. sonra ikinci doğa haline gelmeden birkaç kez önce.

Herhangi bir yerel kaynağınız yoksa, sorularınızın çoğuna cevap verebilecek çok sayıda kitap / öğretici / referans sayfası vardır.

Sonuçta, Vi öğrenmek diğer becerileri öğrenmek gibidir, gümüş mermi yoktur ve bir süre için mevcut editörünüzden daha az üretken olacağını kabul etmeniz gerekir. Sadece kendinize, "Diğer insanlar Vi'yı öğrenebildi ve en azından onlar kadar zekiyim" diye söyleyin.


3

Kullanımına benim için ana nedeni violduğunussh (Windows veya Macun): uzaktan Unix sunucu oturum bittiğinde, daha sonravi her zaman kullanılabilir. Ve imleç tuşları veya geri / sil eşleşmediğinde VT100 ile çalışır.

Ayrıca VI Editor Pocket Reference gibi bir kitap olması çok yardımcı olur.


3

gVIM gerçekten iyi bir eğiticiye sahiptir (Başlat menü grubundaki bağlantı).

Bunun üzerinden çalışmanın ilk öğrenme kamburluğunun üstesinden gelmesine yardımcı olduğunu buldum; ve sonra Visual Studio'umu ViEMU olarak değiştirmek VI becerilerimi geliştirmeme yardımcı oldu.

Ayrıca, http://vimcasts.org/ adresindeki ekran görüntüleri harika!


2

Ellerinizi orijinal Happy Hacker klavyelerinden birine (ok tuşları olmadan) sokabilir ve (kablosuz) farenizi düzenlemeye her başladığınızda erişemeyebilirsiniz.


2

Büyük bir komut / kısayol listesi yazmak kolaydır, ancak hepsini pratik yapmadan hatırlamak zordur.

Her seferinde yeni bir komuta odaklanın. Otomatik olduğunda, bir veya iki hafta kullandıktan sonra repertuarınıza bir tane daha ekleyin.

Kısa vadede belirli şeyleri başarmak için uzun bir yol kat edeceksiniz - bunlar yeni kısayolların öğrenmesi için açık fırsatlar.

Deneyimlerime göre, bir kerede çok fazla almamaya çalıştığımda daha kolaydı.


2

Bir numaralı önerim: klavyeye bakmaya gerek kalmadan hızlı yazmayı öğrenin.

Eğer türe dokunamıyorsanız ve her zaman iki nokta üst üste veya hjkl veya:% s / foo / bar için avlanma ve gagalama yapıyorsanız, unutun. Yazmak fareyi kullanmaktan daha hızlı olabilir , ancak bu sizin için uygun değilse, çalışmaz.

Ama iyi yazma becerilerini, ssh ve birleştirmek ekranı ve vi doğal olacaktır.


2

Hemen bir performans isabeti yaratacağı gerçeğiyle yüzleşin. Yeni bir araç öğrenirken diğer araçlarla nasıl yapacağınızı bildiğiniz bir şey yapabilmeniz gerekir, böylece sorun sizin probleminiz değildir. Yeni aracı bir süre kullandıktan sonra kaybolacak ve sadece altta yatan soruna odaklanacaksınız.

Vim gibi bir şeyle (diğerlerinin söylediği gibi, vim vi'dan çok daha üstündür) periyodik olarak belgeleri yeniden okumak ve taramak önemlidir. Arayüz onsuz tamamen keşfedilemez. Her yeni okumada bir özellik göreceksiniz ve "ah ha, bu sorunu çözerdim geçen hafta çözmeye çalışıyordum" ve beyninize dosyalayacaksınız. Gerçek hayatta karşılaştığınız sorunlara bağlı çözümleri hatırlamak sizin için rastgele kısayollardan çok daha kolaydır.

Sonunda vim'i özelliklerinin oldukça küçük bir alt kümesiyle kullanabilirsiniz, bu yüzden tüm çan ve ıslıklarla boğulmayın. Word'deki tüm özellikleri düşünün, insanların% 99'u bunları kullanıyor mu?


2

ESC gg=Gkodları hatırlatmak ve :retabsekmeleri boşluklara veya boşlukları sekmelere dönüştürmek beni vim'e bağlayan şeydi. Yani aslında onu kullanmaya zorlanmanıza gerek yok, sadece hızınızı artırmanıza ne zaman yardımcı olabileceğini öğrenmeniz gerekiyor.

Geçin vimtutor.

Vim'i yapılandırma dosyaları veya html gibi basit düzenleme için kullanmaya başlayın. Komutları istediğiniz gibi öğrenin.

Sizinkine benzer bir araç zinciri kullanan biri tarafından kullanılan iyi bir .vimrc için google'da arama yapın. Sözdizimi vurgulamayı açın. Güzel bir renk şeması bulun.

Makroları öğrenin, çünkü Vim, birkaç kelimeyi karmaşık bir XML etiketine biçimlendirmek veya CSV'yi HTML tablosuna dönüştürmek gibi otomatik görevler ve snippet ekleme için en iyisidir.


2

Cream ile başlamak isteyebilirsiniz. Krem kendisini vim'in "modern bir konfigürasyonu" olarak tanımlıyor. Temel olarak, tüm pratik amaçlar için herhangi bir metin editörü gibi görünen ve hisseden özel bir vim sürümüdür. Ancak "uzman modunu" etkinleştirin ve vim'in tüm gücüne ve davranışına sahipsiniz.

Böylece Cream'i normal bir metin editörü olarak kullanmaya başlayabilir ve daha sonra vim'e geçecek kadar rahat olana kadar "uzman modu" ile deney yapabilirsiniz.


2

Kullandığınız gVimtüm platformlara yükleyin .

Ardından vimtutor'dan ( :help vimtutorveya vimtutorkomut satırından) geçin .

Aşağıdaki dersi izleyin ve tavsiyelerini izleyin: Etkili Metin Düzenleme 2.0 için 7 Alışkanlık

Kesinlikle tüm düzenlemeleriniz için kullanmaya başlamak istediğinizi söylüyorum. Verimlilik kaybından korkuyorsanız, o zaman sağlam bir şekilde uygulamak için bir hafta sonu alın (bir keresinde bunu qwerty'den dvorak'a geçmek için yaptım ve üretkenliğimi Pazartesi gününe kadar yeterince yüksek tuttum ve daha sonra buna bağlı kalmayı başardım).

Bu çabaya değer ve geri bakmayacaksınız!


1

Şahsen, yapmam gereken, Vim anahtar bağlarını (veya en azından yeterince yakın) birkaç uygulamada kullanabileceğimden emin olmaktı. Editörleri her değiştirdiğimde metni nasıl düzenlediğimi tamamen değiştirmek zorunda kalmak, Vim düzenleme stilini kas belleğine adamayı çok zorlaştırdı.

Benim durumumda, Viemu + vimperator hile yaptı.


Dahili vi-bağlamaları olan Komodo Edit'i kullanıyorum, bu yüzden bunlara geçiş ve bir vimperator kurulumu çok yardımcı oldu. Şimdi sadece rtorrent değiştirebilseydim ...
Xiong Chiamiov
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.