it-swarm-id.com

Apa cara terbaik untuk memaksa diri Anda untuk menguasai vi?

Beberapa waktu yang lalu, saya membaca sebuah artikel oleh pencipta viem , menjelaskan banyak kesalahpahaman tentang vi, serta menjelaskan mengapa itu ide yang bagus (dan mengapa itu sangat populer untuk 30 tahun terakhir +). Orang yang sama juga memiliki seperangkat lembar cheat grafis yang mengajarkan dasar-dasar beberapa bit sekaligus.

Saya yakin.

Saya sudah diyakinkan selama 2 tahun terakhir. Tetapi saya masih belum sempat memaksa diri untuk belajar vi sebagai editor utama saya, kurva belajarnya terlalu tinggi. Ketika saya mulai bekerja, produktivitas yang dapat diterima tetapi langsung (menggunakan editor saya saat ini) sejauh ini telah memenangkan produktivitas luar biasa lebih jauh ke depan (menggunakan vi).

Adakah yang punya tips bagus untuk membantu melewati kurva belajar? Ini bisa berupa tips langsung, beberapa tutorial atau artikel lain, apa pun.

Sunting: Perhatikan bahwa saya mengetahui varian vim/gVim , Cream dan MacVim (dll) vi. Saya menyimpan pertanyaan saya tentang vi untuk merujuk pada keluarga vi secara keseluruhan. Terima kasih atas semua jawaban bagusnya.

Pembaruan (April 2009)

Saya telah menggunakan Vim (lebih tepatnya, MacVim) dalam kehidupan profesional saya sehari-hari sejak Desember lalu. Saya tidak akan kembali :-)

Semoga beruntung untuk semua orang dalam penguasaan Vim mereka.

202
webmat

Pertama-tama, Anda mungkin ingin mengambil Vim; ia memiliki fitur yang jauh lebih unggul yang diatur bersama dengan segala yang dimiliki vi.

Karena itu, dibutuhkan disiplin untuk belajar. Jika Anda memiliki pekerjaan dan tidak mampu mencapai produktivitas (tanpa dipecat), saya sarankan mengambil proyek akhir pekan dengan tujuan mempelajari editor. Biarkan dokumentasinya tetap terbuka saat Anda bekerja, dan cukup disiplin untuk tidak menyerah. Ketika Anda belajar lebih banyak, menjadi efisien dan mulai mengandalkan memori otot, tidak akan sulit untuk tetap menggunakannya.

Saya telah menggunakan Vim begitu lama sehingga saya bahkan tidak memikirkan tombol apa yang harus ditekan untuk mencari atau menavigasi atau menyimpan. Dan tangan saya tidak pernah meninggalkan keyboard. Menggunakan Vim adalah salah satu pilihan terbaik yang pernah saya buat dalam karier pemrograman saya.

124
Lucas Oman

Hal pertama yang saya lakukan adalah meletakkan selembar kertas atau buku di atas tombol panah Anda dan kunci in/home/end/pgup/down Anda. Itu tidak diperlukan di Vi.

Selanjutnya saya akan terbiasa menekan ctrl + [setiap kali Anda disuruh memukul melarikan diri. Ini jauh lebih cepat dan Anda tidak perlu melepaskan keyboard.

Lalu aku akan menonton screencasts saya:

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

Kemudian, praktikkan saja latihan praktik.

edit Alasan untuk menghindari tombol panah adalah karena mereka memperlambat Anda. Salah satu manfaat terbesar Vim adalah kecepatan yang memungkinkan Anda. Tombol panah juga mencegah Anda dari benar-benar merangkul sifat modal, yang sangat kuat ketika dikuasai.

64
Aaron Jensen

Langkah 0: belajar menyentuh jenis. Serius - jika jari-jari Anda tidak tahu di mana kunci-kunci itu maka vim akan menyebalkan. Dan bahkan jika Anda menolak vim, pengetikan sentuh akan meningkatkan pemrograman Anda (tanyakan Steve Yegge ) dengan membuat pikiran untuk memonitor gesekan tautan gratis. Ada lot of software yang dapat membantu Anda meningkatkan ketikan Anda.

Langkah 1: gunakan vimtutor untuk membantu Anda memulai. Itu di gvim (di bawah menu bantuan saya pikir) atau Anda bisa mengetikkan 'vimtutor' di baris perintah. Ini akan memakan waktu 30-45 menit dari waktu Anda dan kemudian jari-jari Anda akan mengetahui dasar-dasar vi/vim dan Anda harus dapat mengedit file tanpa ingin melemparkan keyboard Anda keluar dari jendela.

Langkah 2: gunakan vim di mana-mana. Lihat pertanyaan ini untuk kiat dan tautan untuk menggunakan binding vim dan vi key pada baris perintah, dari browser web Anda, untuk membuat email, di IDE ... Anda perlu menggunakan vim untuk menanamkan ikatan kunci dalam memori otot Anda.

Langkah 3: pelajari lebih lanjut tentang vim. Anda hanya akan menggaruk permukaan dengan vimtutor. Anda dapat menonton video ini atau membaca artikel ini (keduanya tentang "Tujuh kebiasaan mengedit teks yang efektif". Anda dapat baca tentang tips dan trik on StackOverflow . Anda dapat menelusuri vimtips . Pelajari sedikit litle akan menjadi saran saya - ada begitu banyak yang keluar di sana, bertahan dengan potongan seukuran gigitan akan menjadi cara terbaik untuk membuat pengetahuan tetap.

Langkah 4: Untung :)

37
Hamish Downer

Saya telah menjadi pengguna vim lagi dan lagi selama bertahun-tahun (melakukan pekerjaan admin sys sesekali). Saya baru saja mulai menghabiskan lebih banyak waktu melakukan pekerjaan pemrograman saya di dalamnya. Saya sarankan mulai dengan gvim juga. Ini terintegrasi dengan baik dengan sebagian besar lingkungan OS, dan (bahkan lebih baik), Anda dapat kembali ke mouse ketika Anda perlu :).

Untuk menjalankan vim, jalankan melalui vimtutor (dibundel dengan gVim) sekali atau dua kali (membutuhkan sekitar satu jam atau lebih). Saya tidak bisa melebih-lebihkan betapa bermanfaatnya bagi saya! Terutama bagian pertama tentang berbagai cara untuk bergerak melalui dokumen, dan bagaimana tindakan edit direkam dengan perintah gerak, dll, dll. Setelah itu, semuanya akan JAUH lebih jelas.

Kemudian, mulailah melakukan pengeditan kecil dan cepat dengan itu (notepad-replacement stuff) 'hingga Anda cukup nyaman untuk melakukan pengeditan yang bermanfaat pada klip cepat. Kemudian cobalah melakukan pekerjaan sehari-hari Anda di dalamnya. Anda akan mendapati diri Anda merindukan perintah "repeat action terakhir" dalam editor lain dalam waktu singkat!

26
Brian

Anda meminta tips yang bagus untuk membantu melewati kurva pembelajaran pada editor teks vi. Banyak jawaban sebelumnya menyarankan Anda untuk tidak menggunakan editor lain. Saya pikir itu saran yang bagus. Beralih ke vi dari editor yang lebih grafis membutuhkan perubahan pola pikir. Ini membutuhkan pemikiran dalam hal perintah, daripada perubahan visual.

Saya tidak menggunakan apa-apa selain vi selama bertahun-tahun dan percaya bahwa satu-satunya cara Anda bisa produktif adalah dengan menghafal perintah yang Anda gunakan secara teratur. Cara saya melakukan ini adalah membuat daftar pendek dari perintah keyboard yang paling umum. Saya mengelompokkan dan memberi kode warna pada perintah-perintah ini berdasarkan fungsi, yaitu Memindahkan Kursor, Mengedit, Mencari , dll. Saya berhati-hati untuk hanya menyertakan yang paling umum digunakan perintah saya tidak tahu. Idenya adalah untuk membuat referensi cepat yang juga merupakan bantuan dalam menghafal - bukan untuk menggantikan layar bantuan yang tersedia. Kemudian saya mencetak daftar ini dan menempelkannya ke dinding di belakang monitor saya sehingga saya bisa melihatnya dengan mudah. (Lembar cheat grafis yang Anda sebutkan mungkin bekerja lebih baik untuk beberapa orang, tetapi mungkin sumber referensi yang lebih baik daripada alat menghafal.)

Ini kuncinya. Ketika saya merasa nyaman dengan salah satu perintah, saya menggambar garis melalui itu dengan pensil. Saya masih bisa melihatnya jika saya membutuhkannya, tetapi bagi saya simbolis bahwa saya telah menguasai perintah itu. Itu memberi saya kepercayaan diri dan motivasi karena saya bisa melihat kemajuan teratur. Setelah sebagian besar dari saya dicoret, saya menghapusnya dan menambahkan beberapa perintah yang jarang digunakan. Saya melanjutkan proses ini sampai saya puas dengan perintah vi saya. Saya tahu saya telah mencapai titik itu ketika saya menyadari bahwa saya tidak pernah melanggar perintah apa pun atau bahkan melihat daftar itu dalam waktu yang lama.

Beberapa tahun yang lalu saya harus bekerja pada platform UNIX di mana vi adalah satu-satunya editor yang tersedia. Saya membeli buku referensi saku kecil di vi, tetapi jarang menggunakannya. Saya akhirnya membuat daftar dan mempostingnya di dinding seperti yang saya lakukan pertama kali saya menggunakan vi. Pada akhir minggu pertama, saya merasa sangat nyaman meskipun sudah lima tahun sejak saya menggunakan vi.

19
TMarshall

Anda harus mulai dengan vim (Vi IMproved) dan terutama GUI - gVim . GUI memiliki menu dan pada Windows Anda dapat menggunakan salin, potong, dan tempel pintasan, sehingga Anda dapat segera mengganti Notepad. Dan karena menu menampilkan pintasan (perintah vim), Anda bisa belajar banyak.

Hal lain yang harus Anda lakukan sejak awal adalah mengonfigurasi vi untuk kebutuhan Anda. Misalnya, Anda dapat mengubah vim menjadi Python IDE . Dengan melakukan ini, Anda tidak akan memiliki alasan untuk menggunakan editor lain, karena vi akan menawarkan semua yang Anda butuhkan.

11
Cristian Ciupitu

Bagi saya VI adalah editor darurat yang baik, tetapi bukan sesuatu yang ingin saya gunakan jika ada alternatif lain yang tersedia. Saya menyadari ini bukan untuk semua orang, saya tidak mengatakan itu mengerikan atau apa pun, saya pribadi lebih suka UI yang bisa ditemukan.

Tetapi Anda benar-benar harus tahu VI jika Anda melakukan sesuatu yang signifikan di Linux!

Jadi pelajari saja dasar-dasarnya: i = masukkan mode esc = tinggalkan mode sisipkan: wq = simpan dan keluar: q! = Jangan simpan dan keluar x = ketika tidak dalam mode sisipkan, hapus karakter./= pencarian

Itu akan membantu Anda melalui setiap penyuntingan darurat. Tidak ada yang tidak dapat Anda lakukan dengan beberapa perintah itu (dan tentu saja navigasi). Selebihnya Anda bisa "Tack on" sesuai kebutuhan Anda.

Tetap menyediakan referensi atau buku - ketika Anda PERLU menggunakan VI, Anda mungkin tidak akan dapat menjelajahi web - tetapi halaman manual mungkin agak berguna.

11
Bill K

jangan memaksakan diri. jalan menuju penguasaan cinta adalah.

11
jbarciela

hapus semua aplikasi editor teks lainnya.

Maka Anda harus mempelajarinya.

10
Bob Dizzle

Cara paling sederhana untuk memaksa diri Anda mungkin hanya dengan menghapus semua editor lain dari mesin Anda. Singkirkan godaan :)

9
Dana

Setiap kali Anda melakukan tugas pengeditan yang kompleks, terus bertanya-tanya apakah ada cara yang lebih efisien untuk melakukannya. Sering kali, ketika itu adalah sesuatu yang dapat Anda gambarkan dengan istilah sederhana (seperti "swap paragraf teks" atau "hapus semuanya setelah karakter X dalam baris komentar"), itu adalah sesuatu yang dapat Anda lakukan hanya dengan beberapa penekanan tombol di vim.

Ada beberapa fitur utama yang sangat berguna, dan Anda akan selalu menggunakannya. Yang paling saya sukai adalah:

  • Pilihan blokir (Ctrl-V)
  • Rekaman makro (q)
  • Pengeditan virtual (: atur ve = semua)
  • Ekspresi reguler
  • Perpipaan ke program Unix eksternal
  • Pemetaan kunci
  • Pelengkapan otomatis (C-p, C-x C-p, C-x C-f)
  • Kombinasi operasi + gerakan (ini sangat kuat)

Tanyakan kepada programmer lain fitur apa yang mereka anggap paling berguna dan adopsi yang sesuai dengan otak Anda. Mencuri ide dari orang lain .vimrcs ( ini milikk )

9

EDIT: Saya telah membuat flashcard ditetapkan di situs pengulangan spasi online flashcarddb.com , jika Anda tertarik ...

  1. Gunakan program kartu flash pengulangan berjarak seperti mnemosyne , supermemo , atau anki untuk menggabungkan pembelajaran dan mempertahankan perintah baru ke dalam rutinitas harian Anda. Tidak cukup menggunakan vim sebagai editor harian Anda. Untuk menguasainya, Anda harus menyimpan kode-kode itu di kepala Anda, menunggu waktu ketika mereka adalah solusi ideal untuk tugas yang sedang dihadapi.
  2. Pertahankan .vimrc dengan penyesuaian
  3. Tulis atau edit plugin vim
8
P. Myer Nore

Saya menulis panduan untuk mengedit efisien dengan Vim beberapa waktu lalu. Anda mungkin merasa terbantu.

Saya akan mundur sebentar dan bertanya pada diri sendiri, "mengapa saya ingin mempelajari editor ini? Apa yang membuat saya berpikir ini akan lebih cepat atau lebih baik daripada editor teks saya saat ini?" Kemudian pelajari fitur-fitur yang akan membuat Vi (m) sangat diperlukan bagi Anda.

Sebagai contoh, integrasi CTag Vim sangat diperlukan bagi saya. Saya bekerja dengan basis kode yang sangat, sangat besar, dan kemampuan untuk melompat ke fungsi atau definisi kelas dalam satu keystroke (terlepas dari file yang ada di dalamnya) adalah fitur yang benar-benar mematikan, yang saya punya masalah untuk bekerja tanpanya.

Gunakan file .vimrc Anda untuk membuat makro yang mengotomatiskan tugas-tugas umum.

Pemilih-editor autopilot Anda akan memilih editor yang akan menyelesaikan pekerjaan paling cepat dan dengan sedikit upaya mental. Sedikit persiapan akan memastikan bahwa editor adalah Vim. :-)

8
Jonathan

Dua hal yang akan sangat meningkatkan keterampilan vi Anda:

  1. Berlatih, berlatih, berlatih
  2. Nethack
6
Mark Witczak

Saran saya: mulai dari yang kecil. Mulailah dengan menghafal satu set kecil perintah yang paling berguna. Ketika saya mulai vi, ini adalah top 10 saya:

  • (Esc) untuk kembali ke mode perintah (paling penting!)
  • a untuk menambahkan teks setelah kursor
  • A untuk menambahkan teks di akhir baris saat ini
  • x untuk menghapus 1 karakter
  • dd untuk menghapus 1 baris
  • R untuk mengganti teks (timpa)
  • kamu untuk membatalkan
  • : q! (Enter) untuk keluar tanpa menyimpan
  • : w (Enter) untuk menyimpan
  • ZZ untuk menyimpan dan keluar

Banyak pengeditan dasar dapat dilakukan hanya dengan menggunakan perintah ini. Setelah Anda merasa nyaman, sisanya tidak terlihat terlalu sulit.

BTW, saya ingin menambahkan bahwa saya dulu mengandalkan vi untuk editor teks utama saya, tetapi sekarang hanya jika saya harus. Dalam kasus saya, produktivitas lebih baik ketika saya menggunakan alat seperti Emacs atau Visual Studio (harap dicatat: "dalam kasus saya"). Cobalah lebih dari satu alat dan pilih alat yang paling membantu produktivitas Anda. Semoga berhasil!

6
Paulus

Kedengarannya konyol, tetapi bermain roguelike game (seperti Nethack atau Angband ) adalah cara yang menyenangkan untuk merasa nyaman menggunakan h/j/k/l kunci untuk navigasi kursor.

5
bk1e

Tuliskan semua pintasan dan fitur yang Anda gunakan di editor Anda saat ini saat Anda menggunakannya di tempat kerja. Kemudian duduk pada hari Sabtu pagi dan menggunakan Google dan stack overflow mencari tahu bagaimana melakukan masing-masing dari mereka di vi. Mungkin yang terbaik jika Anda menggunakan selembar kertas untuk ini.

Sekarang nonaktifkan/hapus editor lain di tempat kerja sehingga Anda perlu waktu lebih lama untuk menemukan dan menginstalnya daripada melihat lembar perbandingan Anda dan melakukannya di vi - mis. Anda tidak punya pilihan.

Terakhir, terbitkan daftar pintasan crossover Anda dari editor lama ke yang baru di blog Anda.

Semoga berhasil!

4
Guy

Jangan gunakan X11?

$ sudu rm /usr/local/bin/emacs

Ubah Shell login Anda ke vi?

Pertama, paksa diri Anda untuk menggunakan ed, lalu vi akan tampak seperti barang mewah?

Gunakan vi binding kunci di bash?

Mulai gunakan vi sepanjang waktu?

Sepertinya bagi saya bahwa belajar editor tidak jauh berbeda dari belajar bahasa. Perendaman bekerja paling baik.

Saya menggunakan vi untuk pengeditan yang sangat cepat atau ketika saya tidak dapat menggunakan X11 karena beberapa alasan, tetapi saya hidup di emacs. Editor yang sangat kuat layak meluangkan waktu untuk belajar.

4
Jon Ericson

Alasan utama saya untuk menggunakan vi adalah ssh (atau Putty pada Windows): Ketika Anda masuk ke server Unix dari jarak jauh, maka vi selalu tersedia. Dan itu bekerja dengan VT100 ketika tombol kursor atau backspace/delete tidak dipetakan.

Juga memiliki buku seperti VI Editor Pocket Reference sangat membantu.

3
Aaron Digulla

Saya ingat ketika saya pertama kali mulai belajar emacs, itu setelah saya sudah sangat nyaman dengan Vim, dan saya berada di kapal yang sama atau serupa dengan Anda, di mana saya tahu cara menyelesaikan banyak hal di editor lain, jadi ketika saya mulai menggunakan emacs, selalu sangat lambat.

Namun, saya pikir apa yang harus Anda lakukan adalah hanya menyerap sedikit rasa sakit, dan selalu, selalu, SELALU pastikan bahwa Anda mencari dokumentasi untuk melakukan sesuatu yang Anda tah Anda bisa lakukan di editor Anda sebelumnya, seperti pindah ke akhir baris, atau memilih wilayah teks.

Ini juga membantu jika Anda memiliki vi-ahli lokal yang dapat Anda ajukan pertanyaan, atau jika Anda seperti perusahaan kami, Anda mempromosikan pemrograman berpasangan. Dengan begitu ketika Anda mencoba melakukan sesuatu yang seharusnya mudah, Anda bisa bertanya kepada seseorang, mereka akan menunjukkan caranya, dan jika Anda menggunakan editor secara teratur selama beberapa minggu, Anda tidak perlu bertanya lebih banyak kemudian beberapa kali sebelum menjadi sifat kedua.

Jika Anda tidak memiliki sumber daya lokal, ada banyak buku/tutorial/lembar referensi online yang dapat menjawab sebagian besar pertanyaan Anda.

Pada akhirnya, belajar Vi seperti mempelajari keterampilan lain, tidak ada peluru perak, dan Anda harus menerima bahwa, untuk sementara waktu, Anda akan menjadi kurang produktif di dalamnya daripada editor Anda saat ini. Terus katakan pada diri sendiri, "Orang lain sudah bisa belajar Vi, dan aku setidaknya secerdas mereka" (toh itu yang aku katakan pada diriku sendiri :))

3
ben.prew

Rekomendasi saya adalah membuat beberapa program sederhana dan menulisnya, mulai dari selesai, menggunakan VI.

Kemungkinannya, pada awalnya Anda akan terlalu frustrasi oleh kurva belajar untuk memaksa diri Anda menggunakannya di tempat kerja atau di lingkungan yang peka waktu.

Saya telah melakukan ini sebelumnya untuk mengenal lingkungan/editor, dan itu bekerja dengan cukup baik.

Jika Anda memiliki masalah dalam hal menulis, saya sarankan mengulang proyek yang Anda lakukan di sekolah (atau apa pun yang pernah Anda lakukan sebelumnya). Metode ini memiliki bonus tambahan agar Anda melihat seberapa besar Anda menjadi pengembang yang lebih baik. :)

Sunting: lupa menyebutkan bahwa Anda harus melakukan ini sepenuhnya dari konsol untuk menghindari godaan untuk menggunakan mouse!

3
TM.

gVIM memiliki tutorial yang sangat bagus (tautan di grup menu Start).

Saya menemukan bekerja melalui yang membantu untuk mengatasi punuk belajar awal; dan kemudian beralih Visual Studio ke ViEMU membantu saya mengasah kemampuan VI saya.

Juga, screencasts di http://vimcasts.org/ hebat!

3
David Laing

Anda mungkin ingin memulai dengan Cream. Cream menggambarkan dirinya sebagai "konfigurasi modern" dari vim. Pada dasarnya, ini adalah versi khusus vim yang terlihat dan terasa seperti editor teks lainnya untuk semua tujuan praktis. Tetapi aktifkan "mode ahli" dan Anda memiliki semua kekuatan dan perilaku vim.

Jadi Anda dapat mulai menggunakan Cream sebagai editor teks biasa dan kemudian bereksperimen dengan "mode pakar" hingga Anda cukup nyaman untuk sepenuhnya beralih ke vim.

2
sids

Instal gVim di semua platform yang Anda gunakan.

Kemudian jalankan melalui vimtutor (:help vimtutor atau vimtutor di baris perintah).

Tonton kuliah berikut dan ikuti sarannya: 7 Kebiasaan Untuk Mengedit Teks yang Efektif 2.

Saya katakan Anda pasti ingin mulai menggunakannya untuk semua pengeditan Anda. Jika Anda takut kehilangan produktivitas maka luangkan waktu akhir pekan untuk mempraktikkannya (saya pernah melakukan ini untuk beralih ke dvorak dari qwerty dan produktivitas saya cukup tinggi pada hari Senin dan berhasil bertahan setelahnya).

Ini sepadan dengan usaha dan Anda tidak akan melihat ke belakang!

2
user13060

Anda bisa mendapatkan salah satu keyboard Happy Hacker asli (tanpa tombol panah) dan letakkan mouse (nirkabel) Anda di luar jangkauan setiap kali Anda mulai mengedit.

2
Garth Gilmour

Sangat mudah untuk menuliskan daftar besar perintah/cara pintas, tetapi sulit untuk mengingat semuanya tanpa latihan.

Fokus pada satu perintah baru sekaligus. Ketika menjadi otomatis, katakan setelah menggunakannya selama satu atau dua minggu, tambahkan yang lain ke repertoar Anda.

Anda akan mengambil jalan panjang untuk mencapai hal-hal tertentu dalam jangka pendek - ini adalah peluang yang jelas untuk dipelajari cara pintas baru.

Dalam pengalaman saya, lebih mudah ketika saya mencoba untuk tidak mengambil terlalu banyak sekaligus.

2
Craig Hyatt

Saran nomor satu saya: belajar mengetik cepat, tanpa perlu melihat keyboard.

Jika Anda tidak dapat menyentuh tipe dan selalu berburu-dan-mematuk untuk usus besar atau hjkl atau:% s/foo/bar, lupakan saja. Mengetik dapat lebih cepat daripada menggunakan mouse, tetapi jika itu tidak berlaku untuk Anda, vi tidak akan berfungsi.

Tetapi menggabungkan keterampilan mengetik yang baik, ssh dan layar dan vi akan alami.

2
Michael Cramer

ESC gg=G untuk memasukkan kode reindent dan :retab untuk mengonversi tab menjadi spasi atau spasi menjadi tab itulah yang membuat saya tertarik untuk vim. Jadi sebenarnya Anda tidak perlu dipaksa untuk menggunakannya, Anda hanya perlu belajar kapan itu dapat membantu Anda meningkatkan kecepatan Anda.

Pergi melalui vimtutor.

Mulai gunakan vim untuk mengedit sederhana, seperti file konfigurasi atau html. Pelajari perintah saat Anda membutuhkannya.

Cari google untuk .vimrc baik yang digunakan oleh seseorang yang menggunakan toolchain yang menyerupai milikmu. Aktifkan penyorotan sintaks. Temukan skema warna yang bagus.

Pelajari makro karena Vim adalah yang terbaik untuk tugas otomatis dan penyisipan cuplikan, seperti memformat beberapa kata menjadi tag XML yang kompleks atau mengonversi CSV ke tabel HTML.

2
Eduardo Marinho

Hadapi kenyataan bahwa itu akan membuat hit kinerja langsung. Saat mempelajari alat baru, Anda harus dapat melakukan sesuatu yang Anda tahu bagaimana melakukannya dengan alat lain sehingga masalahnya bukan masalah Anda. Setelah menggunakan alat baru beberapa saat itu akan hilang dan Anda hanya akan fokus pada masalah yang mendasarinya.

Dengan sesuatu seperti vim (seperti yang dikatakan orang lain, vim jauh lebih unggul daripada vi) penting untuk membaca ulang dan menelusuri dokumentasi secara berkala. Antarmuka benar-benar tidak dapat ditemukan tanpa itu. Dengan setiap bacaan baru Anda akan melihat fitur dan berkata, "ah ha, itu akan memecahkan masalah ini yang saya coba cari tahu minggu lalu", dan akan menyimpannya di otak Anda. Solusi yang terhubung dengan masalah dunia nyata yang Anda miliki jauh lebih mudah untuk Anda ingat daripada pintasan acak.

Pada akhirnya Anda dapat menggunakan vim dengan subset fitur yang cukup kecil, jadi jangan kewalahan dengan semua lonceng dan peluit. Pikirkan semua fitur di Word, apakah 99% orang menggunakannya?

2
Matt Price

Ketika saya jauh lebih muda (sebelas), keluarga saya pindah ke Jerman selama beberapa tahun. Saya dapat belajar bahasa melalui pencelupan - saya benar-benar tidak punya pilihan selain berbicara bahasa (walaupun jika saya berada dalam situasi yang mengerikan saya dapat menemukan penutur bahasa Inggris).

Saran saya adalah agar Anda melakukan hal yang sama - kecuali jika Anda berada dalam situasi yang benar-benar putus asa (mis. "Ok, saya baru saja menghapus/etc/passwd dan perlu mengembalikan root"), buat keputusan sadar untuk melakukan yang terbaik dengan vi. Sebenarnya tidak butuh waktu lama untuk mempelajari dasar-dasarnya, jika Anda mau.

Seperti yang orang lain katakan,

vim-tutor

dapat menjadi titik awal yang sangat baik, seperti halnya gambar ini .

1
cjmac

Gunakan metode post-it note :-)

Saat menggunakan gvim, izinkan diri Anda untuk menggunakan menu. Baca buku/tutorial tentang vim sehingga Anda tahu dasar-dasarnya. (masukkan dan perintah mode)

Pilih beberapa fungsi yang benar-benar keren yang Anda butuhkan dan tuliskan di catatan tempel kemudian tempel di bagian bawah monitor Anda.

Awal yang baik mungkin saya, a, o, gg, G,: 10,/sesuatu

dan beberapa potong dan tempel seperti yy, dd, p

dan langsung dengan v, V (mode visual) + potong dan tempel

Kemudian ketika Anda mengenal mereka, ganti pada post-it dengan yang baru yang memiliki fungsi lebih dingin, dan ulangi sampai Anda bahagia.

/ Johan

1
Johan

Bagaimana cara memaksakan diri? Saran saya adalah untuk berada di lingkungan kerja di mana Anda harus memelihara 10 kotak unix dengan telnetting/dempul ke dalamnya dari windows. Anda akan segera menyadari bahwa satu-satunya cara untuk mengedit teks pada beberapa varian * nix secara efisien adalah dengan menggunakan editor standar yang hadir dengan hampir setiap distro yang saya tahu. Juga, ketika X11 tidak memulai instalasi baru, vi adalah satu-satunya teman Anda :)

1
Excalibur2000

Saya belajar vim/vi lebih dari sepuluh tahun yang lalu ketika saya melakukan master saya. Saat itu satu-satunya mesin yang saya akses adalah stasiun Sun Sparc (Sparc 20 saya pikir). Dan vi adalah satu-satunya hal yang ada di dalamnya. Jadi satu hal yang dapat Anda lakukan untuk "memaksa" diri sendiri adalah menghapus instalan editor lain yang Anda miliki!

1
lang2

Secara pribadi, apa yang harus saya lakukan adalah memastikan bahwa saya dapat menggunakan kunci-kunci Vim (atau paling tidak, cukup dekat) di beberapa aplikasi. Harus sepenuhnya beralih bagaimana saya mengedit teks setiap kali saya mengubah editor membuatnya terlalu sulit untuk mendapatkan gaya pengeditan Vim berkomitmen untuk memori otot.

Dalam kasus saya, Viemu + vimperator melakukan trik.

1
tomasr

Saya baru belajar vi ketika saya mulai bekerja untuk ISP di mana skrip untuk mengedit domain hanya dibuka vi pada terminal. Saya tidak punya pilihan selain mempelajarinya, tetapi saya tidak pernah menyesalinya.

Singkatnya, tempatkan diri Anda dalam situasi di mana Anda tidak punya pilihan selain mempelajarinya.

0
Nathan Fellman

Saya akan mulai dengan argdo , dan sekali Anda jatuh cinta dengan itu, sisanya mudah ...

0
Kearns

Habiskan beberapa jam di situs pencinta vi http://nereida.deioc.ull.es/html/vilovers.html - banyak tutorial, tautan, dll. Dengan penggemar vi yang antusias.

0
DarenW

Satu hal yang saya temukan benar-benar membingungkan dalam modern vi (vim?) Adalah mode input yang memungkinkan untuk beberapa, tetapi tidak semua fitur mode perintah. Saya merasa jauh lebih nyaman ketika mode input sepenuhnya dumbed ke "menimpa saja, tidak ada pergerakan kursor" jenis yang Solaris vi miliki. True vi mengharuskan Anda untuk tetap dalam mode perintah hampir sepanjang waktu.

Karena itu, tidak perlu belajar vi saat ini - emacs juga ada di mana-mana. :)

0
Arkadiy

Tunggu hingga Anda harus men-debug masalah yang aneh dan aneh di lingkungan langsung di mana yang dapat Anda lakukan hanyalah membuka baris perintah. Anda mungkin tidak akan menyukai VI, tetapi itu akan menghemat banyak waktu dan Anda akan belajar banyak trik untuk menelusuri file-file besar (log).

0

Walaupun saya penggemar berat vi secara umum, dan khususnya vim, ada banyak editor yang kuat, dan Anda seharusnya tidak merasa perlu menggunakan vi, atau dalam beberapa hal editor yang sempurna, karena sebenarnya tidak.

Jika Anda harus memaksa diri Anda untuk menggunakan vi, saya khawatir Anda tidak merasa produktif menggunakannya. Namun, jika Anda bersikeras untuk bertahan, saya mungkin akan memastikan bahwa saya menggunakan vi untuk setiap tugas pengeditan tunggal. Setiap kali saya perlu melakukan sesuatu dan saya tidak memiliki cara terbaik untuk melakukannya, saya akan mencoba untuk menemukan yang optimal (dalam hal penekanan tombol minimal) untuk melakukannya di vi setelah Saya lakukan itu cara normal yang tidak optimal. Saya kemudian akan membuat catatan post-it dengan tip kecil ini (atau mungkin hanya file teks) jadi saya akan mengingatnya untuk waktu berikutnya.

Seiring waktu, produktivitas Anda dengan vi akan meningkat secara dramatis.

0
Brian Mitchell

Saya belajar vi dari buku O'Reilly yang bagus "Belajar editor vi" .

0
Phillip Wells

Mengapa saya tidak mencoba dengan cara gesekan rendah saya sendiri untuk memaksakan diri? :-)

Apa yang saya lakukan adalah sederhana: Saya mencoba membuat git melakukan pesan dengan vim (editor default saat Anda tidak menentukan pesan di baris perintah).

Tentu saja pesan komit sangat singkat sehingga hampir tidak membantu. Tetapi ketika mengedit kembali pesan dengan git commit --amend ini lebih bermanfaat.

0
webmat

Cetak salah satu dari banyak lembar contekan Vi/Vim yang dapat Anda temukan di internet dan paksakan diri Anda untuk tetap menggunakannya selama beberapa minggu.

Setelah Anda mempelajari beberapa perintah dasar, Anda bisa menjadi sangat efisien. Dari sana, tetap terhubung dan pelajari perintah baru sesekali. Tidak mungkin Anda bisa mempelajari SEMUA perintah vi. Saya percaya ada lebih banyak perintah vi daripada atom di alam semesta !! :)

0
Utah_Dave

Cara saya melakukannya adalah mengambil beberapa menit pada awalnya untuk membahas hal-hal yang paling mendasar - memindahkan kursor, mencari maju dan mundur, melompat ke kata/kalimat/paragraf berikutnya dan sebelumnya, dll. Memasukkan, menambahkan. Apa pun yang Anda bisa muat di kepala Anda. Kemudian, ketika Anda memiliki sesuatu untuk dilakukan yang tidak harus dilakukan dalam 15 detik berikutnya, buatlah diri Anda menggunakannya.

Ketika Anda cukup nyaman dengan dasar-dasarnya, pelajari perintah-perintah yang lebih maju secara perlahan - terutama yang memanfaatkan pembelajaran Anda sebelumnya (seperti mengganti 3 kata berikutnya, atau menghapus ke target pencarian berikutnya)

Saya suka menggunakan VI, begitu saya belajar caranya. Perintah lanjutan jauh lebih kuat daripada apa yang sebagian besar editor GUI tawarkan, dan fakta bahwa itu ada di mana-mana dan berbasis teks, dan karena itu tersedia lebih dari ssh, semuanya lebih baik.

0
randychilders

Lakukan apa yang saya lakukan. Gunakan untuk semuanya, dan nongkrong di #vim di freenode.

0
Jeremy Cantrell

Google adalah temanmu. Simpan jendela atau tab praktis dan ketika Anda memiliki sesuatu yang perlu Anda lakukan beberapa kali, ucapkan kode indentasi atau cari dengan regex, cari. Situs petunjuk terbaik akan menjadi familar, membookmark beberapa dan mungkin mencetak lembar contekan.

0
sammyo

Saya sudah mulai menggunakan VI karena itu adalah editor default pada hampir semua sistem operasi kecuali untuk Windows. Kemudian lagi saya tidak melakukan banyak pengkodean pada Windows sehingga membantu.

Jika Anda ingin memaksakan diri pada sistem * NIX/OSX cukup hapus editor lain atau alias mereka. Selebihnya terserah Anda sendiri. Setiap kali Anda tidak menggunakan VI untuk mengedit file, Anda tidak akan mendapatkan cookie.

0
Kristian

Jalan terbaik? Atur terminal Anda untuk menggunakan binding kunci.

0
chiggsy

hapus notepad.exe dan buat pintasan ke vim yang disebut notepad :)

atau lakukan semua pengkodean Anda melalui ssh atau pada mesin yang tidak memiliki GUI;)

0
shyam

Saya sudah mencoba menyimpan lembar contekan kecil atau catatan tempel dari perintah vi umum. Saya melakukan hal yang sama untuk IDE saya gunakan. Saya menemukan jika saya menaruh catatan tempel dari pintasan keyboard atau perintah pada monitor saya, itu membantu saya mempelajarinya. Setelah saya menggunakan cukup pintas dan saya pikir saya ingat dengan baik, saya akan menghapus catatan tempel.

0
Bob Wintemberg

symlink setiap terminal editor di sistem Anda untuk vim dan symlink setiap editor grafis di sistem Anda ke skrip yang membuka jendela terminal baru dengan vim berjalan.

0
Steve Losh

Saya menggunakannya untuk mengedit file di server web yang merupakan linux daripada menggunakan FTP. Itu 9 tahun yang lalu dan saya telah menguasai keterampilannya.

Hal lain adalah menemukan sesuatu yang hebat yang dapat Anda lakukan di VI seperti pencarian global dan ganti atau sesuatu yang lebih kuat, dan gunakan VI kapan pun Anda perlu melakukannya.

0
Brian G

Ketika Anda perlu mencari sesuatu dengan cepat, memiliki semuanya pada satu halaman dapat membantu.

0
webmat

Jika Anda memaksakan diri untuk menggunakannya selama beberapa hari, Anda akan melihat bahwa perintah-perintah akan segera menjadi kebiasaan. Jika Anda menggunakan sistem posix, saya sarankan Anda mulai dengan nvi berlisensi BSD, klon klasik 1: 1 vi, dan kemudian beralih ke vim. Jika Anda mulai dengan vim, kemungkinan Anda hanya menggunakan subset dari perintah pengeditan karena mode INSERT sangat mirip dengan editor GUI.

0
jbcreix

umm, ini lebih merupakan pertanyaan fisika daripada pertanyaan pemrograman, tapi cara terbaik yang saya bisa lakukan hal-hal yang saya benar-benar tidak ingin lakukan adalah hanya melakukannya, dan berhenti mencoba cara-cara cara untuk memotivasi diri sendiri untuk melakukannya.

Anggap saja itu sebagai menyikat gigi. Apakah Anda harus memotivasi diri Anda untuk melakukannya? Tidak, lakukan saja.

0
Craig H

Luangkan sepuluh tahun memposting ke Usenet dari mesin di mana hanya vi dan emacs yang tersedia (dan di mana emacs memiliki waktu startup yang panjang dan menjengkelkan ketika dipanggil dari 'rn').

Begitulah cara saya mempelajarinya.

Tetapi untuk pendekatan yang lebih cepat, yang bisa saya rekomendasikan adalah Anda cukup berkomitmen untuk mempelajarinya, dan menghabiskan beberapa jam mengerjakan beberapa kode sumber. Instal vim jika Anda belum memilikinya - ia memiliki fitur penyorotan sintaks yang bagus.

Itu sangat berharga. Saya tahu bahwa saya dapat pergi ke hampir semua mesin Unix, di mana saja di dunia barat, mungkin bahkan melalui koneksi dialup lambat atau pada mesin tanpa GUI, dan sepenuhnya produktif dalam hitungan menit.

0
Matt Hucke

Saya memiliki VI di Windows, versi yang saya gunakan tercantum di bawah ini, jika saya berada di jendela konsol, saya selalu default ke VI, maka terlepas dari OS apa yang saya jalankan, saya tahu saya dapat mengedit file. Sebaliknya jika saya dalam mode UI, saya menggunakan Notepad ++ go figure.

NT VI - Versi 0.23 Dikembangkan oleh: Tony Andrews Berdasarkan program oleh: Tim Thompson

0
titanae

Saya dipaksa untuk belajar Vim untuk pekerjaan pemrograman pertama saya ketika saya berusia 16 (bos tidak akan membiarkan kami menggunakan hal lain), tetapi saya tidak membuat kemajuan nyata sampai saya membaca Buku Vim Steve Oualline = - sangat direkomendasikan sebagai titik awal jika Anda ingin serius dengan vim.

Vim sebenarnya membutuhkan lebih banyak waktu untuk dikuasai daripada beberapa bahasa pemrograman (fitur-fiturnya adalah yang kompleks). Mencoba 'menguasai' Vim dengan mencetak lembar contekan sama seperti mencoba menguasai Haskell dengan membaca beberapa posting blog. Bersiaplah untuk menginvestasikan waktu yang serius dan Anda akan dihargai dengan baik.

0
too much php

Saya membuat sendiri lembar contekan satu halaman yang berguna dan menggunakannya untuk mempelajari semua fitur non-dasar. Namun, latihan adalah satu-satunya cara untuk menguasai apa pun.

vi bagus karena ada di setiap komputer jenis UNIX, Mac OS X, Solaris, Linux. Temukan kotak dekstation lama di eBay? Itu punya vi. Bagaimana dengan Sun OS 4? vi lagi.

0
Norman Franke

Mainkan banyak nethack. Itulah yang saya lakukan ketika saya masih kuliah, dan saya kemudian tahu bahwa pergerakan kursornya sama. Meskipun pada titik ini Anda mungkin perlu mengubah pengaturan untuk menggunakan keymap gaya vi.

0
oj