Bagaimana saya bisa menginspirasi orang lain untuk menggunakan vi / Vim?


37

Saya sangat terkesan dengan kekuatan vi sejak setengah jam pertama saya menggunakannya. Saya kemudian menemukan bahwa di beberapa lingkungan kerja, ada banyak orang (teknisi, dan bahkan administrator sistem!) Yang menghindarinya sebagai "terlalu rumit" tanpa pernah menjalankan vimtutor, dan masih ada orang lain yang menggunakan vi hanya dalam mode insert dan melewatkan seluruh poin pengeditan modal.

Bagaimana saya dapat menunjukkan kekuatan vi / Vim kepada orang lain sedemikian rupa untuk menginspirasi mereka untuk mempelajarinya dan menggunakannya?

Saya terutama tertarik pada sejarah aktual apa pun yang telah berhasil membuat orang lain (atau diri Anda sendiri) belajar dan menggunakan Vim.


4
Saya membaca pedoman tentang pertanyaan subjektif dan saya pikir ini cocok.
Wildcard

@Wildcard mungkin cocok dengan pertanyaan subjektif, tetapi terlalu luas. Lihat meta.vi.stackexchange.com/q/1278/205 untuk diskusi kami tentang pertanyaan "subyektif" yang sama.
muru

Saya mengerti maksud Anda. Saya membaca diskusi itu (dan beberapa diskusi terkait). Saya masih berpikir pertanyaan ini pantas, tetapi saya pikir saya tidak seharusnya membahasnya di sini; apakah ada tempat di meta di mana kita harus mendiskusikannya?
Wildcard

@Wildcard Anda selalu dapat memposting pertanyaan di Vi dan Vim Meta tentang pertanyaan ini.
muru

Jawaban:


54

Meskipun saya telah menginvestasikan beberapa upaya dalam Vim dan ekosistemnya, saya tidak secara aktif mencoba untuk mengkonversi orang lain. Sebagian besar orang yang bekerja sama dengan saya tidak menginvestasikan banyak waktu sama sekali untuk meningkatkan alur kerja dan perangkat mereka karena mereka puas dengan apa yang mereka miliki. Saya menemukan itu baik-baik saja ... dan saya akan benci untuk menjadi target dakwah yang berhubungan dengan editor terus menerus sehingga saya tidak memaksakan hal itu kepada orang lain.

Namun, kadang-kadang, seorang rekan kerja mungkin tergelitik dengan jawaban saya dan mengajukan beberapa pertanyaan kepada saya. Ketika peristiwa langka itu terjadi, saya lebih dari senang untuk membahas subjek, mendemonstrasikan trik keren, dan mengarahkannya ke sumber daya yang bermanfaat.

Di pekerjaan terakhir saya, seorang rekan kerja sangat tertarik oleh Vim dan tahu dasar-dasarnya cukup baik ( vimtutor). Sudah cukup baginya untuk dapat melakukan pengeditan cepat tetapi ia tidak memiliki kepercayaan diri dan pengetahuan untuk benar-benar beralih ke Vim (sesuatu yang sebenarnya ia inginkan). Pada satu titik, ia harus melakukan serangkaian pengeditan berulang pada file JSON besar secara manual. Dia tertekan oleh gagasan membuang-buang waktu melakukan itu dan datang kepada saya mencari solusi yang lebih cepat / lebih pintar. Tentu saja, makro sederhana melakukan pekerjaan dalam waktu kurang dari satu menit (termasuk merekam) yang memungkinkan saya untuk menjelaskan beberapa konsep utama ...

Satu masalah yang dihadapi oleh pendatang baru adalah bahwa "Sekarang apa?" saat yang datang tepat setelah vimtutor. Vim menyembunyikan kecantikannya dengan sangat baik dan tidak banyak orang yang memiliki keinginan untuk memecahkan cangkang itu tanpa bantuan. Saya dapat memberikan bantuan itu jika diperlukan ... tetapi saya tidak akan pernah memaksa Vim kepada orang lain.


20

Saya menggunakan Vim untuk semuanya. Maksudku segalanya. Pemrograman, pengolah kata, menulis novel, dll. Semuanya. Saya telah duduk di dealer otomatis menggunakan Surface Pro 3 menjalankan Linux Virtual Box dengan Vim dan meminta orang-orang memulai percakapan dengan saya tentang apa yang saya lakukan.

Cukup gunakan Vim. Orang akan berbondong-bondong ke Anda untuk mencari tahu apa yang Anda lakukan dan mengapa. Saya biasanya menjelaskannya seperti ini -

Saya menggunakan Vim karena memiliki jejak yang sangat kecil. Microsoft Word beberapa gigabyte dan Surface saya hanya memiliki ruang 128 GB. Saya perlu memaksimalkan ruang saya dan Vim membantu saya melakukan itu. Ini juga dapat diperluas dan membantu saya tetap fokus. Di sini, lihat. Demo beberapa plugin saya dan tunjukkan bagaimana Vim di layar penuh pada dasarnya mencakup semuanya sehingga saya bisa berpikir .

Saya sering menunjukkan LaTeX dalam kombinasi dengan Vim. Saya akan membangun file LaTeX dan kemudian mengompilasinya menjadi PDF indah menggunakan templat yang saya miliki. Saya juga memperagakan templat surat dan resume saya. Saya menekankan betapa pentingnya memecah gaya dari konten. Pada titik ini orang tidak lagi tertarik pada apa yang harus saya katakan dan menyesal berbicara kepada saya.

Mereka mencari jalan keluar dari percakapan, dan saya kembali menulis. Vim adalah pengalaman religius lebih dari pengolah kata.


3
Hanya ingin tahu: apakah Anda juga menulis email di vim? (Ya!)
Oliphaunt - mengembalikan Monica

5
@Oliphaunt Saya menulis email di VIM. Klien email pilihan saya adalah MUTT dan ketika saya mengedit atau membuat email baru, itu membuka editor pilihan saya. Saya bahkan menggunakan VIM untuk menambahkan URL ke pembaca feed RSS (newsbeuter).
ILikeTurtles

7
Beberapa orang memutuskan untuk mengedit jawaban saya dengan menyatakan saya menggunakan Visual Basic. Saya menggunakan Virtual Box dan menjalankan Linux di atas Windows. Namun, saya pikir pengeditan ini sangat menarik sehingga saya hanya akan meninggalkannya. Ini seperti bermain telepon dengan suntingan. Ceritanya terus berubah semakin banyak orang yang mengeditnya. Menyenangkan.
ILikeTurtles

2
@Will Yap. Saya memiliki VM yang membutuhkan sekitar 2 GB atau kurang. Saya lebih suka menginstal seluruh sistem operasi, VIM, dan semua alat saya yang lain daripada menginstal 4GB atau salinan apa pun dari Alat Microsoft. VM itu sendiri dapat berkembang jika saya membutuhkannya, tetapi itu belum terjadi karena saya kebanyakan bekerja dengan file teks ketika berhadapan dengan komputer tertentu. Jika saya menggunakan FreeBSD, saya berpotensi menjalankan jejak yang bahkan lebih kecil dan mungkin menjalankan seluruh VM dalam satu pertunjukan.
ILikeTurtles

3
Office 365 Membutuhkan HINGGA 6GB ruang hard drive dan HINGGA 4GB ram. Saya dapat menjalankan seluruh OS linux menggunakan ruang HD 4GB dan ram 1028MB. Lebih sedikit jika saya ingin mendorong sesuatu. Saya telah menjalankan FREEBSD dalam VM dan hanya memberikan 256MB ram. VIM untuk saya menggantikan Office tetapi sebagai tambahan, instalasi OS lengkap memberi saya lebih banyak alat daripada yang disediakan Office dalam cetakan kaki yang lebih sedikit. Saya harap itu masuk akal.
ILikeTurtles


13

Sebagai seseorang yang harus mempelajari Vim di pekerjaan terakhir saya, saya akan mengatakan bahwa rintangan terbesar diletakkan di depan instalasi "default" yang tidak memiliki opsi yang ditetapkan. Saya menghabiskan sebagian besar waktu dengan mengatakan, "Mengapa ia bertindak seperti ini ketika semua orang mengharapkannya melakukan yang sebaliknya?"

Ternyata setiap orang sudah menetapkan beberapa standar "kewarasan" . Begitu saya mengetahuinya, saya jauh lebih bahagia, dan "memberinya kesempatan" untuk belajar lebih banyak. Setelah beberapa hari pad nomor tidak berfungsi, tab salah, pencarian tidak berfungsi dengan baik, dll. Saya siap menyerah dan tidak pernah melihat ke belakang.

Jika Anda benar-benar ingin seseorang cukup menyukainya untuk mencoba dan mempelajari lebih banyak fitur-fitur canggih, mulailah dengan kaki kanan dengan file pengaturan yang dioptimalkan untuk jenis pekerjaan yang harus mereka lakukan.


4
Lihat, saya mendekatinya dengan tidak ada harapan sial yang Anda sebutkan. Ini dibantu oleh kesadaran bahwa ia lahir beberapa dekade sebelum produk yang umum dikenal pengguna saat ini. Saya terbuka untuk cara-cara kerja yang lebih baik, apakah mereka akrab atau tidak. Dan sungguh, membebani seorang pemula dengan file pengaturan Anda sendiri bukanlah tutorial yang sangat bagus!
underscore_d

+1. Saya memiliki pengalaman yang sama dan sangat setuju. Ketika Anda memiliki pekerjaan untuk diselesaikan, beralih ke editor baru apa pun bisa menyakitkan / tidak mungkin. Tidak tahu tentang hanya menyerahkan .vimrc tetapi menjelaskan apa itu dan membantu pengguna baru menetapkan beberapa default untuk gaya kerja mereka tidak hanya dapat membantu mereka menjadi produktif dengan cepat, tetapi juga berfungsi sebagai cara untuk membuka bagian dari vi (m) sihir.
Will

1
Membaca .vimrcfile dengan banyak default bermanfaat sangat berguna. Saya telah belajar banyak tentang Vim hanya dengan melihat opsi yang ada di github.com/amix/vimrc
icc97

Saya sangat setuju. Vim akan semakin populer jika ada lebih banyak baterai yang disertakan. Lihatlah misalnya apa yang harus saya lakukan untuk membuat kata swapping bekerja. Seperti saat ini berdiri, vimmemberikan blok bangunan dasar dari mana seseorang harus mengkonfigurasi / memprogram editor teks yang selalu diimpikan.
Serge Stroobandt

9

Cara terbaik untuk menginspirasi anjing tua untuk menggunakan trik baru adalah dengan mengambil sesuatu yang mereka lakukan dan menunjukkan bagaimana hal itu dapat dengan mudah dilakukan lebih cepat / lebih mudah / lebih baik dengan cara lain.

Pasti ada kurva belajar yang terlibat yang hanya mematikan sebagian orang. Satu lelucon berjalan

Bagaimana Anda benar-benar menghasilkan string acak? Minta pendatang baru untuk menutup vim.


1
Poin bagus. Sebagai seseorang yang memiliki kecenderungan lebih berorientasi pada keyboard daripada mouse, vi/ mdalam banyak situasi menawarkan saya peningkatan kecepatan dan / atau menghindari membalik di antara perangkat input. Juga, saya melakukan sedikit hal-hal command-prompt (Linux, Cygwin), dan viselalu ada di sana .
underscore_d

8

Cara terbaik adalah belajar Vim diri sendiri dan menunjukkan kekuatannya kepada orang lain. Bahkan Anda tidak harus (memperagakannya) - mempromosikan diri sendiri. Setelah Anda menggunakannya dengan beberapa warna sintaks yang bagus pada beberapa latar belakang terminal seperti hackish, orang-orang menjadi penasaran dan sering bertanya - apa yang Anda lakukan . Lalu tunjukkan pada mereka.

Ketika Anda melakukan pemrograman berpasangan dan Anda melihat bahwa pengembang lain mulai melakukan beberapa pekerjaan berulang yang terasa seperti tugas Sisyphean (seperti memukul Backspace atau panah ratusan kali), katakan padanya berapa banyak ini mengganggu Anda seperti di Vim , hanya perlu beberapa kali penekanan tombol dalam kurang dari satu detik.

Periksa juga halaman-halaman berikut untuk beberapa trik Vim yang berguna:


1
Paragraf kedua Anda tepat. Kecuali rasa sakitnya bahkan lebih buruk ketika Anda melihatnya menggunakan vim , dalam mode insert , dan menekan tombol panah untuk bergerak langsung ke ujung garis . Arrrggh! (Saya tidak mengada-ada.)
Wildcard

1
Setuju dengan @Wildcard, membuatku gila menonton kolega saya mencoba mengurai data dengan lebar tetap dengan menghitung penekanan tombol , membawanya beberapa minggu, bantuan saya ditolak. Sigh
roblogic

7

Yang terpenting: jangan mendorong, jangan menginjili. Pastikan benar-benar tentang motivasi Anda. Jika bahkan ada sedikit pekerjaan misionaris, jangan mulai. Sebagian besar orang bereaksi dengan jengkel atau agresif, karena saran belaka untuk memeriksa alur kerja lain membawa arus kecaman. Alur kerja Anda mungkin lebih baik daripada mereka. Yang menutup banyak orang. Sebenarnya, ini adalah prinsip umum yang berfungsi terlepas dari pengaturan (pikirkan vegetarian / pemakan daging, Demokrat / Republik, merek mobil, resep, ...) Mereka semua melakukan apa yang mereka lakukan karena mereka percaya apa yang mereka lakukan adalah cara yang tepat untuk melakukannya.

Sangat mungkin bahwa tidak ada kritik dari pihak Anda yang dimaksudkan di tempat pertama, tetapi ini terjadi di sisi lain dan tidak ada yang dapat Anda lakukan tentang hal itu. Itu manusia untukmu.

Saya sarankan mengangkat subjek ketika tidak ada batas waktu, dalam suasana yang santai. Berbicaralah dari pengalaman Anda , dengan cara bagaimana Anda terkesan dan seberapa efisien yang Anda rasakan sekarang. Jangan pernah membandingkan. Jangan pernah mengatakan "lebih baik", karena itu akan menjadi pernyataan absolut, hanya meminta ditantang. Selalu ikuti "Aku lebih produktif dengan cara ini". Dengan cara ini orang lain tidak dapat mengabaikan bahwa Anda memang lebih produktif dan Anda tidak menekan. Jika yang lain mengangkat topik, bersikap lembut dan mungkin menawarkan untuk membagikan satu atau dua tautan, Vimcasts adalah contoh yang bagus.

Mempelajari Vim adalah tugas yang sangat berat, terutama mengingat banyaknya waktu yang Anda habiskan untuk mendapatkan pengaturan pertama yang benar. Saya memiliki begitu banyak tanda tanya di kepala saya selama waktu itu dan setiap pengaturan detik tampak tidak masuk akal atau bahkan bermusuhan. Ini kebalikan dari intuisi. Entah seseorang tetap dengan itu dan semakin "aha!" saat atau hanya akan menjatuhkannya untuk editor yang lebih seperti Word. Apapun yang berhasil.

Pada akhirnya itu benar-benar tidak layak untuk diperdebatkan: semua orang hanya menggunakan apa yang menyelesaikan pekerjaan. Itulah keindahan kode sumber: itu universal.


7

Pertama kali saya menggunakan vi adalah kelas "intro to Unix". Guru itu tidak mengetahuinya dengan baik, dan dia memperkenalkannya dengan cara yang sangat kikuk. Kami harus menghafal cukup untuk berkeliling jika kami pernah terjebak dalam sistem yang tidak memiliki apa pun yang diinstal. Saya tidak melihat kedua setelah semester itu. Itulah mengapa Anda tidak menginjili vi, dan saya pikir adalah bagaimana banyak orang memiliki pengalaman pertama mereka.

Beberapa tahun kemudian, saya berada di kelas pendidikan berkelanjutan perusahaan tentang Perl. Instruktur menggunakan vim dalam demonstrasi dan menawarkan untuk membantu orang-orang dengan itu di samping, meskipun itu bukan tujuan utama kelas.

Moto tidak resmi dari Perl adalah TMTOWTDI (ada lebih dari satu cara untuk melakukannya). Ketika kelas akan mengajukan pertanyaan, instruktur akan melakukan pengeditan untuk menunjukkan alternatif, lebih cepat daripada yang dapat ia jelaskan dalam pengeditan dengan kata-kata . Saya terbiasa bisa membaca kode ketika sedang diedit, tetapi baginya, pengeditan terjadi dalam kesibukan tombol, kemudian penjelasannya mengikuti, dengan kecepatan glasial sebagai perbandingan. Jika dia tidak harus berhenti untuk menjelaskan hasil edit kepada kami, dia pasti sudah pindah ke tugas berikutnya.

Saya memiliki beberapa peluang serupa yang adil untuk menunjukkan vim:

  • Rapat scrum
  • Memasangkan pemrograman
  • Pembicaraan teknologi
  • Peragaan perangkat lunak

Saya pikir hanya menunjukkan kepada orang-orang potensinya setelah Anda mempelajarinya akan mengilhami mereka untuk melewati kekasaran awal.


Saya pikir perbandingan tayangan yang dibuat oleh dua eksposur yang sangat berbeda ke vi adalah pelajaran yang sangat berharga. Saya sudah memikirkan ini berkali-kali sejak membacanya ... melekat dalam pikiran saya. Terima kasih.
Wildcard

6

Itu adalah gerakan batin yang membuat mataku berubah menjadi hati yang melayang untuk Vim. Selain .pengulangan dan awalan hal-hal dengan jumlah, menunjukkan gerakan dalam biasanya merupakan salah satu hal pertama yang saya tampilkan / bagikan ketika seseorang bertanya kepada saya tentang vim. ci(atau gUi>atau diw.

g;dan g,untuk melompat-lompat ke tempat-tempat yang telah Anda edit biasanya bagus untuk satu atau dua mata yang melebar.


2

Meskipun vimemiliki silsilah yang dihormati dalam sejarah komputasi, saya akan merekomendasikan fokus pada vim. Ini adalah editor berfitur lengkap dengan kemampuan luar biasa, cocok dengan semua pesaingnya. Satu-satunya kelemahan adalah kurva belajar; memang butuh waktu untuk mendapatkan "pola pikir Vim" dan memori otot. Saya pikir itu sepadan dengan usaha. Ada banyak kekuatan yang Anda inginkan ketika Anda menjadi mahir vim.

  1. Tunjukkan kekuatan vimscript untuk mengotomatiskan tugas pemrosesan teks yang membosankan.
  2. Instal seperti plugin keren vim-airline, karena semua orang suka UI yang bagus.
  3. Ada banyak tutorial gratis di sekitar, seperti ini .
  4. vi/ vimdiinstal pada semua sistem berbasis Unix; jadi setiap sysdamin profesional harus memiliki pengetahuan tentang hal itu.

Inti sesungguhnya dari pertanyaan saya adalah "Bagaimana" tentang poin 1 dari jawaban Anda. Pernahkah Anda memiliki pengalaman menunjukkan ini kepada orang lain atau ditunjukkan kepada diri sendiri?
Wildcard

Tidak terlalu banyak menunjukkan, tapi saya menggunakan skrip vim kecil secara rutin untuk membersihkan teks, tetapi seperti Anda, saya tidak begitu tertarik dengan rekan-rekan (mereka lebih suka membuang output ke dokumen besar yang tidak dibaca oleh siapa pun)
roblogic

0

Saya suka VIM, tetapi kurva belajarnya curam.

Profesional mana pun yang belum mengadopsi VIM tidak mungkin dibujuk oleh argumen . Hanya karena kebutuhan.

Mendengarkan orang-orang yang mengatakan mereka menggunakan VIM secara teratur, use case terbesar adalah dari admin yang mengelola beberapa mesin * NIX dari jarak jauh dengan CLI via SSH.

VIM secara harfiah diinstal pada hampir setiap mesin * NIX di planet ini.

VIM berusia 25 tahun ke atas dan tidak berubah sejak saya mulai menggunakannya pada tahun 1998.


0

Cukup minta siswa untuk menukar dua kata dengan pengolah Word ™ mereka ...

... lalu tunjukkan bagaimana master melakukan ini vim. (Ini adalah pemetaan untuk melakukannya; lebih lanjut di sini .)

Akhirnya, biarkan murid merenungkan apakah dia benar-benar telah bekerja dengan pengolah kata sejauh ini.


1
Pintar, tetapi control-backspace akan menghapus kata di hampir semua editor Windows, dan alt-backspace di hampir semua editor Mac.
Wildcard

@Wildcard Saya ragu antara hapus dan ide pertama saya pilih. Anda tentu saja benar. Karena itu, saya mengubahnya kembali untuk memilih.
Serge Stroobandt

Tetap saja — ctrl-shift panah kiri / kanan (atau panah alt-shift untuk Mac). :)
Wildcard

@ Kartu Memori Saya pikir saya mengerti sekarang. Saya harus merekonstruksi alasan masa lalu saya. ;)
Serge Stroobandt

@ Kartu Kredit Terima kasih telah bersikeras. Saya kesulitan mengingat apa yang menyebabkan saya melakukan perubahan drastis gvim. Sekarang, saya ingat dengan baik. Itu bertukar / memindahkan kata-kata dalam kalimat ketika menulis teks bahasa Inggris sebagai penutur asli. Saya menulis pemetaan vimscript saya sendiri untuk melakukan hal itu.
Serge Stroobandt

0

Vim juga tentang menilai kembali file teks biasa

Dalam konteks pembuatan dokumen, nilai vimtidak hanya dalam keterampilan mengedit kata yang luar biasa. Vim juga merupakan jalan untuk mengembalikan nilai file teks biasa di mana-mana dan jaminan kompatibilitas mundur abadi.

Vim juga tentang fokus secara eksklusif pada konten; bukan format

Jika seseorang tidak menyunting halaman web, pemisahan konten dari format mungkin merupakan konsep penghancuran paradigma bagi setiap pekerja kantor biasa. Untuk alasan ini, saya suka pamer gvimsebagai editor Markdown dalam kombinasi dengan Pandoc dan mungkin a makefile.

Ini terjadi juga sebagai demonstrasi yang baik dari filosofi Unix atau GNU / Linux untuk menggabungkan dan memipipkan program yang sangat bagus hanya pada satu hal.

Sebagai bonus, Anda akan melihat bahwa vimkombinasi tombol dasar digunakan di banyak program GNU / Linux lainnya.


0

Ergonomi

Dengan pengaturan yang tepat saya dapat bekerja selama berjam-jam tanpa sakit bahu atau punggung.

Setup yang tepat tentu saja berbeda untuk setiap orang, tetapi menggunakan Vim di terminal, pemetaan Escuntuk Capslockdan menonaktifkan mouse dan tombol kursor adalah awal yang baik.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.