1 00:00:00,000 --> 00:00:02,590 >> [Seminar Vim] 2 00:00:02,590 --> 00:00:04,210 [Brandon Liu] [Universiti Harvard] 3 00:00:04,210 --> 00:00:07,500 [Ini adalah CS50.] [CS50.TV] 4 00:00:07,500 --> 00:00:09,880 >> Hari ini akan menjadi pengenalan kepada Vim. 5 00:00:09,880 --> 00:00:12,310 Berapa ramai daripada anda semua telah mendengar Vim? 6 00:00:12,310 --> 00:00:15,620 Apakah yang telah anda mendengar tentang Vim? 7 00:00:15,620 --> 00:00:17,590 [Pelajar] Ia menyelesaikan semua masalah anda. 8 00:00:17,590 --> 00:00:19,450 [Brandon L.] Ia menyelesaikan semua masalah anda. 9 00:00:19,450 --> 00:00:23,840 Apa-apa lagi anda semua pernah mendengar tentang Vim? Jejak? 10 00:00:23,840 --> 00:00:27,990 [Pelajar] Hampir semua orang yang saya telah berbincang dengan orang-orang seperti untuk menggunakan Vim. 11 00:00:27,990 --> 00:00:29,960 Oh, manis. 12 00:00:29,960 --> 00:00:31,090 [Pelajar] Banyak orang yang saya tahu suka menggunakan Vim. 13 00:00:31,090 --> 00:00:35,050 Okay, itu baik, kerana ramai orang di CS51 14 00:00:35,050 --> 00:00:38,000 mula mengambil Emacs Emacs kerana mempunyai sokongan lebih baik sedikit 15 00:00:38,000 --> 00:00:40,100 untuk bahasa yang anda akan gunakan dalam CS51, 16 00:00:40,100 --> 00:00:42,770 dan saya bimbang bahawa orang tidak cukup di Harvard menggunakan Vim, 17 00:00:42,770 --> 00:00:46,190 jadi saya benar-benar cuba dan melakukan kerja yang baik untuk menggalakkan penggunaan Vim. 18 00:00:46,190 --> 00:00:51,110 >> Tetapi di sini adalah komik xkcd klasik yang anda semua mungkin mendapati menarik. 19 00:00:51,110 --> 00:00:53,800 Adakah anda lelaki digunakan Nano sebelum di semua? 20 00:00:53,800 --> 00:00:57,380 Komik ini mengatakan Nano? Pengaturcara sebenar menggunakan Emacs. 21 00:00:57,380 --> 00:00:59,040 Hei, pengaturcara sebenar menggunakan Vim. 22 00:00:59,040 --> 00:01:03,130 Tidak, pengaturcara sebenar menggunakan Ed yang ini-anda tidak pernah mahu menggunakan Ed. 23 00:01:03,130 --> 00:01:05,990 Ia benar-benar, benar-benar tua dan benar-benar buruk, dan pengaturcara sebenar menggunakan 24 00:01:05,990 --> 00:01:08,440 jarum bermagnet dan tangan yang stabil. 25 00:01:08,440 --> 00:01:16,010 Dan anda boleh membaca yang lain, tetapi ia cukup lucu. 26 00:01:16,010 --> 00:01:18,320 Dan yang anehnya pada akhir. 27 00:01:18,320 --> 00:01:20,310 Mereka berkata, "Oh, yeah, sudah tentu, ada perintah Emacs untuk melakukannya." 28 00:01:20,310 --> 00:01:25,050 Good old Cx Mc M-rama-rama, yang adalah jenis jab di Emacs 29 00:01:25,050 --> 00:01:28,520 kerana Emacs adalah sejarah dikenali untuk menjadi sedikit kembung 30 00:01:28,520 --> 00:01:32,310 dan mempunyai arahan untuk hampir apa-apa, jadi itu semacam satu jenaka untuk Emacs. 31 00:01:32,310 --> 00:01:35,320 >> Apakah Vim? Vim adalah editor teks pengatur maju ini. 32 00:01:35,320 --> 00:01:40,040 Saya benar-benar ingin membuat perbezaan antara editor teks 33 00:01:40,040 --> 00:01:42,000 dan sesuatu seperti pemproses dokumen. 34 00:01:42,000 --> 00:01:44,340 Microsoft Word dikenali sebagai pemproses dokumen. 35 00:01:44,340 --> 00:01:49,090 Anda boleh menetapkan margin, membuat perkara yang berani, garis bawah perkara, 36 00:01:49,090 --> 00:01:51,480 menyerang melalui perkara, perubahan saiz fon dan barang kecil. 37 00:01:51,480 --> 00:01:54,380 A editor teks tidak apa-apa lebih daripada sekadar edit teks. 38 00:01:54,380 --> 00:01:56,020 Secara literal anda hanya perlu aksara. 39 00:01:56,020 --> 00:02:01,650 Tidak ada jenis gaya, saiz, fon, warna, atau apa-apa seperti itu. 40 00:02:01,650 --> 00:02:06,360 Semua yang anda lakukan adalah edit teks, dan Vim telah terutama dibuat untuk pengaturcaraan. 41 00:02:06,360 --> 00:02:09,240 Ia mempunyai banyak ciri-ciri yang dibina dalam hanya untuk pengaturcaraan. 42 00:02:09,240 --> 00:02:11,360 Ia direka dengan nyata untuk mengedit teks cekap. 43 00:02:11,360 --> 00:02:15,190 >> Secara umum, Vim dikenali sebagai dasarnya editor teks yang paling cepat 44 00:02:15,190 --> 00:02:19,110 anda mungkin boleh digunakan berbanding dengan mana-mana editor teks lain yang mungkin. 45 00:02:19,110 --> 00:02:22,480 Banyak ciri-ciri IDE seperti tidak dibina terus ke dalam Vim, 46 00:02:22,480 --> 00:02:26,850 jadi jika anda menggunakan IDE dan anda digunakan kepada perkara-perkara seperti menyusun dan berjalan secara automatik 47 00:02:26,850 --> 00:02:30,880 atau debugging apa yang dalam IDE atau pelbagai seluruh perkara yang berbeza 48 00:02:30,880 --> 00:02:32,290 Vim tidak datang dengan yang secara semula jadi, 49 00:02:32,290 --> 00:02:36,330 tetapi ada pelbagai seluruh plugin yang boleh anda gunakan untuk menambah yang jenis fungsi untuk Vim. 50 00:02:36,330 --> 00:02:40,890 Vim dengan sendirinya memberi tumpuan kepada penyuntingan teks dan tidak menyunting teks benar-benar, benar-benar baik. 51 00:02:40,890 --> 00:02:43,340 Dan akhirnya, ia benar-benar disesuaikan dan extensible, 52 00:02:43,340 --> 00:02:48,740 dan pada dasarnya Vim telah wujud, atau Vi, yang Vim dibina di atas, 53 00:02:48,740 --> 00:02:53,790 telah wujud selama lebih 40 tahun, dan ia adalah program yang sangat, sangat dalam, 54 00:02:53,790 --> 00:02:58,850 dan orang ramai akan menggunakannya untuk seumur hidup dan tidak pernah benar-benar menguasai program ini untuk sepenuhnya, 55 00:02:58,850 --> 00:03:01,530 dan anda akan sentiasa terus belajar sepanjang hidup anda selama ini, 56 00:03:01,530 --> 00:03:03,390 sentiasa menjadi lebih baik dan lebih baik. 57 00:03:03,390 --> 00:03:07,480 >> Ada pada dasarnya tidak ada akhir kepada apa yang anda boleh belajar dan berapa banyak anda boleh meningkatkan dengan Vim, 58 00:03:07,480 --> 00:03:09,300 yang benar-benar menarik. 59 00:03:09,300 --> 00:03:12,730 Anda tidak mahu untuk melihat ia sebagai sesuatu yang menakutkan kerana anda boleh menjadi sangat, sangat mahir 60 00:03:12,730 --> 00:03:16,650 dalam Vim dalam hanya beberapa minggu tetapi ia jenis seperti berterusan- 61 00:03:16,650 --> 00:03:18,870 anda boleh mengetahui lebih lanjut dan mengetahui lebih lanjut dan jangan perkara yang lebih baik dan lebih baik, 62 00:03:18,870 --> 00:03:20,880 yang jenis yang menarik bagi saya. 63 00:03:20,880 --> 00:03:23,810 Ini adalah satu contoh apa Vim kelihatan seperti. 64 00:03:23,810 --> 00:03:27,630 Ini bukan saya. Anda akan melihat beberapa demonstrasi secara langsung sekarang. 65 00:03:27,630 --> 00:03:29,350 Ini adalah satu contoh apa Vim mungkin kelihatan seperti. 66 00:03:29,350 --> 00:03:33,590 >> Apa yang kita akan lakukan hari ini kita akan mulakan dengan 67 00:03:33,590 --> 00:03:35,260  mempamerkan cepat apa Vim boleh lakukan. 68 00:03:35,260 --> 00:03:39,040 Saya akan melakukan beberapa helah dan barang kecil untuk anda semua 69 00:03:39,040 --> 00:03:43,020 supaya anda boleh lihat mengapa saya suka Vim begitu banyak dan mengapa orang-orang seperti Vim begitu banyak, 70 00:03:43,020 --> 00:03:46,470 dan kemudian dari sana kita akan pergi ke pengenalan lembut. 71 00:03:46,470 --> 00:03:49,530 Sebenarnya, ia akan menjadi agak cepat, pengenalan kepada Vim. 72 00:03:49,530 --> 00:03:53,410 Saya akan meminta anda semua untuk memuat turun fail teks dan mengikuti bersama-sama dengan saya jika anda boleh. 73 00:03:53,410 --> 00:03:58,080 Ini adalah Vim, dan di sini saya menggunakan MacVim, 74 00:03:58,080 --> 00:04:00,520 jadi jika anda lelaki itu mempunyai Macs anda mungkin mahu mempertimbangkan menggunakan MacVim 75 00:04:00,520 --> 00:04:04,210 kerana ia adalah versi grafik Vim, walaupun Vim biasa, 76 00:04:04,210 --> 00:04:06,210 apa yang dalam baris arahan anda, berfungsi dengan baik. 77 00:04:06,210 --> 00:04:09,890 Saya akan menunjukkan kepada anda petua rawak beberapa dan helah 78 00:04:09,890 --> 00:04:15,330 yang anda boleh gunakan dalam Vim menunjukkan mengapa ia begitu sejuk. 79 00:04:15,330 --> 00:04:18,940 >> Hanya beberapa benda-benda rawak saya akan melalui. 80 00:04:18,940 --> 00:04:21,700 Perkara pertama adalah objek teks, dan terdapat beberapa arahan di sekitar objek teks, 81 00:04:21,700 --> 00:04:25,010 dan saya benar-benar akan mengajar anda apa yang teks objek dengan lebih terperinci kemudian dalam seminar itu, 82 00:04:25,010 --> 00:04:30,050 tetapi sebagai contoh, katakan saya dieja salah nama saya, 83 00:04:30,050 --> 00:04:32,380 Barndon Liu, dan saya mahu mengubahnya. 84 00:04:32,380 --> 00:04:36,140 Apa yang saya perlu lakukan ialah mendapatkan kursor saya di suatu tempat di nama dan jenis saya dalam arahan 85 00:04:36,140 --> 00:04:38,900 CIW, dan ia akan membatalkan nama keseluruhan saya, meletakkan saya dalam mod insert, 86 00:04:38,900 --> 00:04:41,050 dan saya boleh menaip nama saya dan membaikinya. 87 00:04:41,050 --> 00:04:45,550 Begitu juga, jika saya mahu menukar sesuatu di dalam sebut harga terdapat juga perintah untuk itu. 88 00:04:45,550 --> 00:04:47,330 Saya menghapuskan perkara-perkara di dalam petikan. 89 00:04:47,330 --> 00:04:50,260 Tiada lagi perlu klik dua kali, menggerakkan tangan anda kepada tetikus, 90 00:04:50,260 --> 00:04:52,230 klik dua kali, dan kemudian menaip sesuatu kembali masuk 91 00:04:52,230 --> 00:05:02,000 Anda boleh melakukan segala-galanya daripada papan kekunci, apa sahaja ia. 92 00:05:02,000 --> 00:05:06,430 Atau sebagai alternatif, katakan saya mempunyai tag imej ini di dalam tag sauh ini. 93 00:05:06,430 --> 00:05:08,160 >> Adakah anda semua dilindungi HTML dalam kelas lagi? 94 00:05:08,160 --> 00:05:10,570 Ya, jadi mungkin saya mahu memadam tag ini, 95 00:05:10,570 --> 00:05:13,080 yang biasanya apa yang anda perlu lakukan adalah anda perlu menggunakan tetikus anda 96 00:05:13,080 --> 00:05:16,040 dan berhati-hati menyerlahkan apa yang anda mahu padam dan memadamnya. 97 00:05:16,040 --> 00:05:21,320 Tetapi dalam Vim yang yang hanya Dit, dan anda boleh memadam ia keluar benar-benar cepat, 98 00:05:21,320 --> 00:05:28,020 dan saya akan menjelaskan kepada anda apa semua arahan bermakna dan bagaimana anda menggunakannya dalam satu saat. 99 00:05:28,020 --> 00:05:30,320 Contoh lain, saya mempunyai beberapa kod di sini, 100 00:05:30,320 --> 00:05:33,640 dan mari kita mengatakan saya mahu untuk mengensot kod, tetapi saya mahu untuk mengensot kod 101 00:05:33,640 --> 00:05:39,940 hanya dalam kurungan, dan saya juga boleh membuat ensot kod menggunakan 3 arahan 102 00:05:39,940 --> 00:05:45,360 menggunakan pada dasarnya> iB. 103 00:05:45,360 --> 00:05:49,960 Satu lagi perkara yang benar-benar sejuk tentang Vim adalah sesuatu yang dinamakan editing blok dengar. 104 00:05:49,960 --> 00:05:52,380 Saya tidak tahu jika anda semua telah pernah mahu untuk menyerlahkan 105 00:05:52,380 --> 00:05:55,690 blok segi empat tepat teks dalam kod anda kadang-kadang 106 00:05:55,690 --> 00:06:00,570 daripada harus berbuat seperti ini pelik benda talian yang meliputi semua laluan yang berbeza. 107 00:06:00,570 --> 00:06:02,450 Sebagai contoh, dalam Vim anda boleh berbuat demikian. 108 00:06:02,450 --> 00:06:05,260 Saya boleh menyerlahkan segiempat tepat seperti ini, yang cukup sejuk, 109 00:06:05,260 --> 00:06:07,950 tetapi tambahan pula, saya boleh mengedit menggunakan fungsi itu. 110 00:06:07,950 --> 00:06:12,050 Sebagai contoh, jika saya ingin memberikan beberapa jenis awalan kepada semua nama-nama kita 111 00:06:12,050 --> 00:06:18,100 Saya boleh menyerlahkan blok dan kemudian menambah sesuatu. 112 00:06:18,100 --> 00:06:22,060 >> Begitu juga, saya juga boleh menyerlahkan blok ini dan memilih untuk memadamnya, 113 00:06:22,060 --> 00:06:26,300 atau mungkin saya akan mengetengahkan blok ini dan mengubahnya ke D kerana kita semua doktor. 114 00:06:26,300 --> 00:06:29,430 Apa pun, anda boleh melakukan semua perkara-perkara yang berbeza. 115 00:06:29,430 --> 00:06:31,270 Akhir sekali, lipatan adalah benar-benar sejuk. 116 00:06:31,270 --> 00:06:33,840 Banyak IDE mempunyai ini di mana anda boleh kali ganda fungsi yang berbeza daripada pandangan 117 00:06:33,840 --> 00:06:35,590 sekiranya anda tidak mahu melihat mereka. 118 00:06:35,590 --> 00:06:40,120 Sebagai contoh, katakan saya mempunyai sekumpulan teks ini di sini, dan saya tidak benar-benar mahu melihatnya. 119 00:06:40,120 --> 00:06:42,710 Saya mahu untuk memastikan ia daripada pandangan kerana saya mengedit sesuatu yang berlainan dalam fail. 120 00:06:42,710 --> 00:06:50,580 Saya boleh kali ganda sehingga jadi itu semua runtuh, 121 00:06:50,580 --> 00:06:52,150 dan cara bahawa itu daripada pandangan, 122 00:06:52,150 --> 00:06:54,310 dan saya boleh mengedit perkara-perkara lain yang berada di halaman itu, dan ini adalah benar-benar hebat. 123 00:06:54,310 --> 00:06:57,550 Anda boleh melipat fungsi dan barang kecil atau melipat kelas apabila anda pengaturcaraan 124 00:06:57,550 --> 00:06:59,380 hanya untuk memastikan mereka daripada pandangan apabila anda tidak menyunting mereka, 125 00:06:59,380 --> 00:07:04,330 dan kemudian apabila anda mahu melihat mereka anda boleh membuka mereka sehingga. 126 00:07:04,330 --> 00:07:09,260 Dan anda boleh lihat ia hanya membuka segala-galanya. 127 00:07:09,260 --> 00:07:11,220 Tab, penampan, dan tingkap. 128 00:07:11,220 --> 00:07:13,260 Vim agak sejuk di yang 129 00:07:13,260 --> 00:07:16,280 biasanya dalam banyak editor teks anda hanya boleh mengedit satu fail pada satu masa, 130 00:07:16,280 --> 00:07:18,960 seperti dalam Nano, atau mungkin jika anda menggunakan Notepad atau gedit. 131 00:07:18,960 --> 00:07:21,470 Saya sebenarnya tidak pernah menggunakan gedit sangat banyak, tetapi sekurang-kurangnya dalam Notepad + + 132 00:07:21,470 --> 00:07:26,700 anda boleh mempunyai tab, tetapi Vim mempunyai konsep tab, penampan dan tingkap. 133 00:07:26,700 --> 00:07:28,760 Sebagai contoh, anda boleh membuka sekumpulan tab baru. 134 00:07:28,760 --> 00:07:31,790 >> Anda boleh lihat di sini di bahagian paling atas saya ada sekarang sekumpulan tab, 135 00:07:31,790 --> 00:07:34,350 dan saya boleh menutup mereka. 136 00:07:34,350 --> 00:07:37,550 Tambahan pula, ada konsep ini penampan, 137 00:07:37,550 --> 00:07:40,110 yang merupakan idea bahawa sekali anda telah membuka fail 138 00:07:40,110 --> 00:07:43,910 ia terus hidup dalam buffer, dan jika anda mahu untuk mengemudi ke fail yang benar-benar cepat 139 00:07:43,910 --> 00:07:46,290 anda boleh menavigasi ke ia benar-benar cepat dalam penimbal juga, 140 00:07:46,290 --> 00:07:51,890 dan tambahan pula, dalam masa satu anak tetingkap anda boleh juga berpecah tingkap anda ke dalam berbilang tetingkap. 141 00:07:51,890 --> 00:07:55,890 Sebagai contoh, jika saya mahu berpecah tetingkap ini sehingga ke dalam berbilang tetingkap 142 00:07:55,890 --> 00:08:00,080 anda boleh melihat di sini bahawa saya boleh mempunyai kod yang sama dua kali, 143 00:08:00,080 --> 00:08:03,800 dan saya boleh berpecah lebih dan lebih dan lebih, dan sekarang ia tidak kelihatan begitu baik 144 00:08:03,800 --> 00:08:07,340 kerana secara lalai saya mempunyai saiz tetingkap lalai menjadi jenis besar 145 00:08:07,340 --> 00:08:09,490 jadi semua yang lain adalah dihapuskan keluar, 146 00:08:09,490 --> 00:08:12,000 tetapi biasanya apabila saya pada komputer saya dan tidak pada projektor ini 147 00:08:12,000 --> 00:08:15,920 Saya boleh mempunyai beberapa anak tetingkap dibuka pada masa yang sama, yang benar-benar bagus untuk 148 00:08:15,920 --> 00:08:21,450 mengedit beberapa fail pada masa yang sama. 149 00:08:21,450 --> 00:08:23,800 Anda juga boleh mempunyai perkara-perkara seperti pilih dan menggantikan, 150 00:08:23,800 --> 00:08:27,900 dan kita benar-benar akan menutup bahawa dalam seminar itu, 151 00:08:27,900 --> 00:08:29,250 jadi saya akan skip bahawa buat masa sekarang. 152 00:08:29,250 --> 00:08:32,039 Anda juga boleh berinteraksi dengan baris arahan dalam pelbagai cara yang berbeza. 153 00:08:32,039 --> 00:08:36,380 Sebagai contoh, jika saya mempunyai beberapa jenis senarai di sini dan saya mahu untuk menyusun ia- 154 00:08:36,380 --> 00:08:43,039 Saya tidak tahu, mari kita menambah buah-buahan yang lain, anggur, 155 00:08:43,039 --> 00:08:45,450 dan saya boleh menyerlahkan ini menggunakan fungsi highlight 156 00:08:45,450 --> 00:08:48,980 dan panggilan jenis, dan ia akan menyelesaikan secara automatik bagi saya. 157 00:08:48,980 --> 00:08:52,150 >> Begitu juga, jika anda akan mengedit CSS, yang saya menganggap anda mungkin akan melakukan 158 00:08:52,150 --> 00:08:54,190 untuk projek akhir anda, kebanyakan orang, 159 00:08:54,190 --> 00:09:00,200 dan mungkin anda hendak simpan CSS anda yang dianjurkan oleh menyusun mereka mengikut abjad. 160 00:09:00,200 --> 00:09:04,410 Anda juga boleh menyerlahkan mereka dan memanggil jenis, dan ia akan menyusun mereka untuk anda. 161 00:09:04,410 --> 00:09:07,380 Ini adalah sebahagian daripada contoh-contoh perkara-perkara yang Vim boleh lakukan, 162 00:09:07,380 --> 00:09:10,760 dan anda akan melihat bahawa perkara yang utama yang saya benar-benar ingin menarik perhatian anda kepada 163 00:09:10,760 --> 00:09:14,740 ialah saya melakukan segala-galanya daripada papan kekunci, 164 00:09:14,740 --> 00:09:18,020 dan jika anda mampu untuk melihat di mana tangan saya diletakkan 165 00:09:18,020 --> 00:09:21,210 anda juga akan melihat bahawa tangan saya tidak pernah benar-benar bergerak dari barisan rumah. 166 00:09:21,210 --> 00:09:24,790 Biasanya apabila anda menyunting teks anda biasanya perlu menggunakan tetikus 167 00:09:24,790 --> 00:09:28,030 dan klik sekitar dan barang kecil, dan yang jenis pergerakan drags anda ke bawah 168 00:09:28,030 --> 00:09:32,280 dan masa sisa, atau mungkin anda bergerak antara berturut-turut rumah dan kekunci anak panah, 169 00:09:32,280 --> 00:09:35,620 dan sebagainya anda bergerak ke belakang dan sebagainya seperti itu, yang agak rumit 170 00:09:35,620 --> 00:09:38,750 tetapi juga melambatkan anda ke bawah, dan benda itu adalah sebaik sahaja anda mendapat benar-benar baik di Vim 171 00:09:38,750 --> 00:09:42,350 semua yang anda mahu lakukan adalah dilakukan tanpa perlu bergerak tangan anda 172 00:09:42,350 --> 00:09:50,730 dari baris rumah, yang besar. 173 00:09:50,730 --> 00:09:54,870 Berpegang, saya akan membuka permohonan ini. Di sana kami pergi. 174 00:09:54,870 --> 00:09:58,320 >> Sekarang anda boleh lihat apa arahan yang berlari ke tingkap kanan bawah. 175 00:09:58,320 --> 00:10:03,190 Semua fungsi-fungsi yang saya hanya menunjukkan anda adalah perkara-perkara yang termasuk secara lalai dengan Vim, 176 00:10:03,190 --> 00:10:06,820 tetapi ada juga sejumlah besar plugin yang anda juga boleh menggunakan 177 00:10:06,820 --> 00:10:08,390 untuk meningkatkan pengalaman Vim anda. 178 00:10:08,390 --> 00:10:10,540 Jika anda memuat turun fail konfigurasi yang saya termasuk, 179 00:10:10,540 --> 00:10:13,150 dan ada arahan mengenai cara untuk memasang mereka dalam PowerPoint 180 00:10:13,150 --> 00:10:17,840 dan juga dalam e-mel saya dihantar, saya kira-kira 40 plugin dipasang 181 00:10:17,840 --> 00:10:20,490 atau mungkin 30 plugin, dan setiap satu tunggal 182 00:10:20,490 --> 00:10:24,000 membawa fungsi tambahan untuk Vim yang meningkatkan pengalaman Vim anda. 183 00:10:24,000 --> 00:10:26,960 Sebagai contoh, salah satu kegemaran saya adalah sesuatu yang dinamakan surround.vim, 184 00:10:26,960 --> 00:10:29,760 dan pada dasarnya membolehkan anda untuk bekerja dengan sekitar 185 00:10:29,760 --> 00:10:32,200 atau delimiting aksara lebih mudah. 186 00:10:32,200 --> 00:10:35,960 >> Satu contoh, saya tidak tahu jika anda semua pernah kod dalam LaTeX, 187 00:10:35,960 --> 00:10:38,830 tetapi LaTeX adalah bahasa atur huruf matematik yang digunakan untuk membuat 188 00:10:38,830 --> 00:10:42,950 matematik benar-benar baik mencari, dan setiap kali anda mahu sesuatu yang kelihatan seperti matematik 189 00:10:42,950 --> 00:10:47,050 anda balut dalam tanda-tanda dolar, dan katakan saya menaip persamaan beberapa seperti F = ma, 190 00:10:47,050 --> 00:10:49,240 dan saya terlupa untuk balut dalam tanda-tanda dolar. 191 00:10:49,240 --> 00:10:58,270 Kemudian saya boleh menyerlahkan ini dan balut dalam tanda-tanda dolar sahaja. 192 00:10:58,270 --> 00:11:03,640 Sebagai alternatif, Vim membolehkan anda untuk memadam perkara di dalam tag 193 00:11:03,640 --> 00:11:07,300 dan memadam tag dan barang kecil, tetapi Vim oleh alam semula jadi 194 00:11:07,300 --> 00:11:10,400 tidak membenarkan anda untuk menukar tag, jadi sebagai contoh, saya mempunyai tag div ini, 195 00:11:10,400 --> 00:11:13,060 dan saya mahu menaik taraf kepada HTML5 dan menggunakan tag header baru. 196 00:11:13,060 --> 00:11:22,290 Yang boleh saya lakukan perubahan sekitar tag dan jenis dalam header, 197 00:11:22,290 --> 00:11:26,540 dan ia secara automatik akan berubah bahawa bagi saya. 198 00:11:26,540 --> 00:11:29,620 Begitu juga, katakan kita mempunyai sesuatu dalam kurungan, 199 00:11:29,620 --> 00:11:33,230 dan saya mahu menukar bahawa dari kurungan ke dalam kurungan atau sesuatu seperti itu. 200 00:11:33,230 --> 00:11:36,520 Saya juga boleh mengubah yang benar-benar mudah dengan menaip c untuk perubahan, 201 00:11:36,520 --> 00:11:39,330 kerana sekeliling, kurungan. 202 00:11:39,330 --> 00:11:42,170 Oh, saya rasa saya perlu menaip dengan lebih pantas. 203 00:11:42,170 --> 00:11:45,380 Kurungan dan pendakap atau kurungan, dan ia secara automatik akan berubah bahawa bagi saya, 204 00:11:45,380 --> 00:11:48,570 yang benar-benar bagus, jika tidak, biasanya ia benar-benar rumit. 205 00:11:48,570 --> 00:11:51,310 >> Ini adalah benar-benar baik untuk bertukar-tukar antara quote mungkin tunggal 206 00:11:51,310 --> 00:11:53,060 dan rentetan petikan berganda atau sesuatu seperti itu. 207 00:11:53,060 --> 00:11:56,250 Itulah satu kegunaan contoh kes. 208 00:11:56,250 --> 00:11:58,750 Ada plugin yang dipanggil Pelarian 209 00:11:58,750 --> 00:12:00,260 yang mengintegrasikan dengan Git. 210 00:12:00,260 --> 00:12:03,000 Saya meneka mungkin anda semua tidak menggunakan Git yang banyak dalam CS50, 211 00:12:03,000 --> 00:12:05,530 tetapi anda akan mendapati diri anda menggunakan Git lebih dan lebih dan lebih, 212 00:12:05,530 --> 00:12:09,530 bukan sahaja dalam kelas di seluruh Harvard tetapi juga pada pekerjaan dan barang kecil, 213 00:12:09,530 --> 00:12:12,650 dan biasanya anda perlu beralih di antara 214 00:12:12,650 --> 00:12:15,950 baris arahan dan Vim untuk berinteraksi dengan Git, 215 00:12:15,950 --> 00:12:18,590 tetapi ada plugin untuk mengintegrasikan dengan Git dari dalam Vim 216 00:12:18,590 --> 00:12:23,020 dan juga untuk memberi anda juga fungsi tambahan di atas Git. 217 00:12:23,020 --> 00:12:25,520 Ada sesuatu yang dinamakan NERDTree, yang anda boleh gunakan untuk meneroka 218 00:12:25,520 --> 00:12:27,860 struktur fail dari dalam Vim. 219 00:12:27,860 --> 00:12:31,710 >> Sebagai contoh, saya boleh membuka NERDTree pada panel yang betul, 220 00:12:31,710 --> 00:12:35,100 dan anda pada asasnya boleh melihat fail rawak 221 00:12:35,100 --> 00:12:38,720 dan cukai terbuka tidak, tidak melihat cukai saya. 222 00:12:38,720 --> 00:12:43,460 Anda boleh melihat fail-fail dan barang kecil dan membuka fail lain dan sebagainya dan sebagainya. 223 00:12:43,460 --> 00:12:47,610 Dan saya tidak akan pergi ke plugin lain, jadi kita pada asasnya boleh menyelam dalam 224 00:12:47,610 --> 00:12:51,640 dan mula bekerja pada Vim, tetapi ada plugin yang membolehkan anda 225 00:12:51,640 --> 00:12:55,420 mengulas dengan lebih mudah, plugin yang membolehkan anda untuk melompat di antara fail dengan lebih mudah, 226 00:12:55,420 --> 00:12:57,820 plugin yang memberi anda memeriksa sintaks dari dalam Vim, 227 00:12:57,820 --> 00:13:00,210 yang benar-benar sejuk, dan ia memberi anda semakan sintaks 228 00:13:00,210 --> 00:13:03,710 untuk kebanyakan bahasa keluar dari kotak, 229 00:13:03,710 --> 00:13:07,460 perkara seperti kurungan pelangi, yang sebenarnya benar-benar, benar-benar sejuk. 230 00:13:07,460 --> 00:13:09,110 Biar saya memberi anda contoh yang sekarang. 231 00:13:09,110 --> 00:13:11,150 >> Mari kita lihat. 232 00:13:11,150 --> 00:13:15,460 Berikut adalah beberapa kod rawak yang saya menulis, 233 00:13:15,460 --> 00:13:19,720 dan anda akan perasan bahawa kurungan dan kurungan semua berwarna, 234 00:13:19,720 --> 00:13:26,120 dan kurungan dan kurungan warna yang sama yang hampir sama, yang bagus 235 00:13:26,120 --> 00:13:29,380 dan kadang-kadang meningkatkan pembacaan kod anda. 236 00:13:29,380 --> 00:13:32,030 Anda juga mempunyai penyiapan secara automatik, format jadual. 237 00:13:32,030 --> 00:13:37,240 Apabila anda mempunyai sesuatu yang anda ingin mendapatkan semua komen untuk beratur 238 00:13:37,240 --> 00:13:40,820 atau anda ingin jadual dalam teks anda dan anda mahu 239 00:13:40,820 --> 00:13:43,870 mendapatkan semua yang kelihatan seperti jadual yang bagus, daripada harus memformat secara manual 240 00:13:43,870 --> 00:13:46,830 terdapat plugin yang akan memformat untuk anda dan sebagainya dan sebagainya. 241 00:13:46,830 --> 00:13:49,400 Senarai seterusnya dan seterusnya. 242 00:13:49,400 --> 00:13:53,890 Saya boleh menghabiskan berjam-jam meneroka semua plugin Vim yang berbeza yang wujud, 243 00:13:53,890 --> 00:13:59,780 dan ia luar biasa apa yang di luar sana. 244 00:13:59,780 --> 00:14:05,880 >> Sebarang pertanyaan setakat ini? Manis. 245 00:14:05,880 --> 00:14:10,180 Dalam kes itu, kita akan mula bermain-main dengan Vim, 246 00:14:10,180 --> 00:14:12,620 dan saya mahu anda semua untuk bekerja dengan beberapa Vim dengan saya 247 00:14:12,620 --> 00:14:17,650 supaya anda boleh mendapatkan rasa untuk itu, dan saya boleh membimbing anda dalam langkah-langkah pertama anda bekerja dengan Vim 248 00:14:17,650 --> 00:14:20,590 kerana ramai orang mendapatkan terharu apabila mereka membuka Vim atas, 249 00:14:20,590 --> 00:14:24,730 dan kadang-kadang jika anda tidak tahu arahan untuk keluar anda boleh tidak keluar dari Vim, 250 00:14:24,730 --> 00:14:26,350 tetapi ia bukan yang buruk. 251 00:14:26,350 --> 00:14:28,820 Anda hanya perlu beberapa minit bimbingan daripada seseorang yang telah digunakan sebelum Vim 252 00:14:28,820 --> 00:14:32,220 atau membaca beberapa tutorial dalam talian, dan anda akan dalam perjalanan anda dalam masa yang singkat. 253 00:14:32,220 --> 00:14:34,570 Berikut adalah beberapa arahan untuk memasang Vim jika anda tidak sudah. 254 00:14:34,570 --> 00:14:39,130 Anda boleh melihat slaid ini selepas pembentangan jika anda mahu untuk memasang lebih banyak perkara. 255 00:14:39,130 --> 00:14:42,660 >> Juga, ini adalah beberapa arahan untuk memasang fail konfigurasi saya, 256 00:14:42,660 --> 00:14:48,230 dan anda juga boleh mengikuti arahan ini kemudian jika anda tidak sudah. 257 00:14:48,230 --> 00:14:52,390 Jika anda semua boleh pergi ke link ini dan memuat turun fail teks. 258 00:14:52,390 --> 00:14:56,640 Pautan akan membawa anda ke fail teks ini, yang saya ingin anda untuk memuat turun dan membuka dalam Vim, 259 00:14:56,640 --> 00:15:01,580 dan ada sekumpulan latihan dan barang kecil di sana yang boleh diikuti di sekitar dengan saya 260 00:15:01,580 --> 00:15:09,160 dan mula mendapatkan beberapa amalan dengan beberapa operasi asas dalam Vim. 261 00:15:09,160 --> 00:15:12,740 Baik. 262 00:15:12,740 --> 00:15:18,430 Ketika anda membuka bahawa sehingga saya akan memberikan intro ringkas kepada 2 prinsip utama benar-benar 263 00:15:18,430 --> 00:15:23,080 dalam penyuntingan Vim yang benar-benar penting untuk memahami sebelum anda menyelam ke dalam Vim, 264 00:15:23,080 --> 00:15:25,720 dan itulah editing mod dan pengendali dan usul. 265 00:15:25,720 --> 00:15:28,600 Saya akan meliputi mod penyuntingan pertama, dan kemudian kami akan meliputi pengendali dan usul 266 00:15:28,600 --> 00:15:30,980 dalam sedikit. 267 00:15:30,980 --> 00:15:36,910 >> Perbezaan utama pertama antara Vim dan cukup banyak semua yang lain 268 00:15:36,910 --> 00:15:39,870 editor teks apapun ialah Vim adalah editor mod, 269 00:15:39,870 --> 00:15:42,260 dan apa yang bermakna adalah apabila anda menggunakan Vim 270 00:15:42,260 --> 00:15:44,120 anda boleh berada dalam salah satu mod pandangan yang berlainan. 271 00:15:44,120 --> 00:15:46,590 Ada mod biasa, ada mod insert, ada mod visual, 272 00:15:46,590 --> 00:15:50,790 sebagainya dan sebagainya, dan perkara itu, ketukan kekunci anda mengambil tindakan yang berbeza, 273 00:15:50,790 --> 00:15:54,160 mengambil makna yang berbeza, bergantung kepada apa yang mod anda masuk 274 00:15:54,160 --> 00:15:58,110 Sama seperti contoh, mod biasa adalah cara anda apabila anda bergerak, 275 00:15:58,110 --> 00:16:01,820 dan saya akan menggunakan J utama untuk bergerak ke bawah, 276 00:16:01,820 --> 00:16:05,430 tetapi dalam mod insert, anda menggunakan J utama untuk benar-benar menaip J pada skrin, 277 00:16:05,430 --> 00:16:08,230 dan itulah sebabnya ramai orang keliru kerana mereka tidak digunakan untuk 278 00:16:08,230 --> 00:16:11,630 sedang mod pandangan yang sepanjang masa, dan supaya mereka akan menaip sesuatu daripada, 279 00:16:11,630 --> 00:16:14,490 dan anda digunakan untuk mempunyai apa sahaja yang anda taip muncul di skrin, 280 00:16:14,490 --> 00:16:18,370 tetapi dalam Vim mungkin kursor anda bergerak di seluruh tempat 281 00:16:18,370 --> 00:16:21,020 kerana anda menaip aksara pelik, dan tiba-tiba anda mendapat 282 00:16:21,020 --> 00:16:24,710 beralih ke mod insert kerana anda ditaip beberapa utama 283 00:16:24,710 --> 00:16:27,150 yang meletakkan anda ke dalam mod insert, dan kemudian teks bermula terbang keluar, 284 00:16:27,150 --> 00:16:29,940 supaya orang menjadi bingung kerana itu. 285 00:16:29,940 --> 00:16:32,960 Tetapi anda perlu menjejaki apa yang mod anda berada dalam, 286 00:16:32,960 --> 00:16:35,260 dan jika anda melihat toolbar yang bawah Vim 287 00:16:35,260 --> 00:16:37,410 perlu ada penunjuk yang memberitahu anda apa yang mod anda sedang di, 288 00:16:37,410 --> 00:16:39,350 yang sepatutnya membantu. 289 00:16:39,350 --> 00:16:42,650 >> Tetapi secara umum, 3 kaedah utama yang perlu anda tahu tentang, 290 00:16:42,650 --> 00:16:46,440 terdapat hanya mungkin 6 atau 7 atau 8 mod atau lebih, 291 00:16:46,440 --> 00:16:49,180 tetapi anda menghabiskan sebahagian besar masa anda dalam 3. 292 00:16:49,180 --> 00:16:52,150 Perkara pertama adalah mod biasa. Ini adalah di mana anda menghabiskan sebahagian besar masa anda. 293 00:16:52,150 --> 00:16:55,620 Semua ketukan kekunci log sebagai sejenis perintah, 294 00:16:55,620 --> 00:16:58,870 dan kita akan belajar banyak dari orang-orang arahan sepanjang hari hari ini. 295 00:16:58,870 --> 00:17:03,160 Mod lain adalah mod insert, yang mana anda sebenarnya menaip sesuatu daripada, 296 00:17:03,160 --> 00:17:06,410 dan mod insert pada dasarnya mod yang anda biasanya digunakan untuk. 297 00:17:06,410 --> 00:17:08,650 Anda menaip sesuatu, dan ia hanya datang pada skrin, 298 00:17:08,650 --> 00:17:11,800 dan mod visual adalah sesuatu di mana anda boleh melakukan penyerlahan. 299 00:17:11,800 --> 00:17:14,750 Anda lihat sebelum ini di mana kadang-kadang saya akan highlight teks 300 00:17:14,750 --> 00:17:21,900 dan memanipulasi ia dengan cara yang berbeza, dan itulah contoh menggunakan mod visual. 301 00:17:21,900 --> 00:17:27,819 >> Kami akan mulakan dengan asas-asas mutlak anda perlu untuk terus hidup dalam Vim, 302 00:17:27,819 --> 00:17:30,610 dan ia pada dasarnya ini 7 arahan di sini. 303 00:17:30,610 --> 00:17:34,250 HJKL digunakan untuk mengemudi di sekitar fail, 304 00:17:34,250 --> 00:17:37,140 dan mereka sesuai ke kiri, ke bawah, ke atas, dan kanan, 305 00:17:37,140 --> 00:17:39,460 dan anda bebas untuk menggunakan kekunci anak panah juga, 306 00:17:39,460 --> 00:17:43,110 tetapi kita benar-benar menggalakkan anda untuk menggunakan HJKL sebanyak mungkin 307 00:17:43,110 --> 00:17:46,690 kerana idea adalah bahawa semasa anda sedang mengedit, anda boleh bergerak dokumen itu 308 00:17:46,690 --> 00:17:49,350 tanpa perlu beralih di antara kekunci anak panah 309 00:17:49,350 --> 00:17:52,210 dan di mana anda menaip, yang benar-benar, benar-benar baik. 310 00:17:52,210 --> 00:17:54,390 Anda hanya mahu memindahkan watak-watak beberapa lebih. 311 00:17:54,390 --> 00:17:58,020 Anda tidak perlu beralih keseluruhan tanganmu ke atas, dan ia adalah jenis baik untuk mempunyai itu. 312 00:17:58,020 --> 00:18:01,920 Sesetengah pakar Vim sebenarnya peta kunci arrow mereka untuk fungsi-fungsi lain 313 00:18:01,920 --> 00:18:06,880 kerana mereka sudah mempunyai HJKL, dan mereka boleh menggunakan kekunci anak panah mereka untuk fungsi lain juga. 314 00:18:06,880 --> 00:18:09,080 HJKL bergerak anda sekitar semasa anda berada dalam mod biasa. 315 00:18:09,080 --> 00:18:11,650 Jika anda mahu pergi ke dalam mod insert dan menaip sesuatu 316 00:18:11,650 --> 00:18:15,370 anda boleh tekan i untuk mod kemasukan, dan yang meletakkan anda dalam mod insert, 317 00:18:15,370 --> 00:18:17,820 dan anda boleh menaip sesuatu, dan anda menaip melarikan diri 318 00:18:17,820 --> 00:18:20,270 untuk mendapatkan dari mod kemasukan kembali ke mod biasa. 319 00:18:20,270 --> 00:18:23,280 Melarikan diri sentiasa menghantar anda kembali ke mod biasa 320 00:18:23,280 --> 00:18:26,740 tidak kira apa mod anda berada dalam, dan jika anda mahu meninggalkan 321 00:18:26,740 --> 00:18:29,760 anda boleh menaip: WQ masuk, 322 00:18:29,760 --> 00:18:32,640 dan cara anda boleh ingat ini adalah w bermaksud menulis, 323 00:18:32,640 --> 00:18:34,960 dan q bermaksud berhenti, jadi: WQ, 324 00:18:34,960 --> 00:18:39,680 dan kolon berjalan arahan, dan sebagainya: WQ masuk ke jalankan arahan 325 00:18:39,680 --> 00:18:41,840 menjimatkan dan keluar. 326 00:18:41,840 --> 00:18:46,700 >> Jika anda membuka fail ke atas kita akan pergi melalui latihan yang pertama bersama-sama. 327 00:18:46,700 --> 00:18:49,450 Langkah 1 adalah yang masih hidup di Vim, 328 00:18:49,450 --> 00:18:53,490 dan diharapkan anda semua semua mempunyai ini terbuka. 329 00:18:53,490 --> 00:18:58,460 Baik, dan kami mempunyai beberapa latihan mudah untuk anda untuk mendapatkan digunakan untuk menggunakan kekunci ini. 330 00:18:58,460 --> 00:19:03,000 HJKL benar-benar tidak kelihatan intuitif pada mulanya, 331 00:19:03,000 --> 00:19:08,710 dan ini adalah salah satu blok awal yang manusia semasa menggunakan Vim 332 00:19:08,710 --> 00:19:10,820 adalah menggunakan kekunci ini untuk mengemudi di sekitar. 333 00:19:10,820 --> 00:19:13,650 Ia bukan intuitif, tetapi apabila anda membiasakan diri dengannya 334 00:19:13,650 --> 00:19:19,590 ia benar-benar mengintegrasikan ke dalam fikiran anda, dan ramai orang sering mendapati diri mereka 335 00:19:19,590 --> 00:19:23,550 menggunakan J dan K dalam Word atau juga dalam Chrome, 336 00:19:23,550 --> 00:19:26,530 dan sebenarnya orang telah mencipta plugin Chrome ini dipanggil Vimium 337 00:19:26,530 --> 00:19:29,220 yang anda boleh gunakan dalam Chrome atau Kromium untuk menavigasi melalui Chrome 338 00:19:29,220 --> 00:19:31,380 menggunakan keyboard anda dengan menggunakan jalan pintas Vim-suka, 339 00:19:31,380 --> 00:19:35,050 jadi orang yang sangat bersemangat mengenainya, tetapi teruskan dan cuba dan penggunaan 340 00:19:35,050 --> 00:19:41,720 HJKL untuk mengemudi antara nombor hanya supaya anda boleh membiasakan diri 341 00:19:41,720 --> 00:19:45,660 dengan bagaimana ia berfungsi. 342 00:19:45,660 --> 00:19:50,440 >> Setelah anda selesai itu, anda juga boleh pergi dan bermain-main dengan maze ini saya mencipta 343 00:19:50,440 --> 00:19:53,580 hanya untuk keseronokan, dan anda jenis boleh mengikuti garis titik 344 00:19:53,580 --> 00:19:59,060 dan cuba untuk tidak berlanggar dengan dinding 345 00:19:59,060 --> 00:20:07,860 dan cuba untuk membuat ia ke akhir mez. 346 00:20:07,860 --> 00:20:11,840 Jika anda menggunakan jalan pintas dalam Gmail atau apa-apa bilangan aplikasi yang berbeza 347 00:20:11,840 --> 00:20:15,130 anda akan mendapati bahawa J dan K, sebagai contoh, sering digunakan untuk bergerak ke atas dan ke bawah, 348 00:20:15,130 --> 00:20:19,930 dan yang pada dasarnya berasal dari Vim dasarnya, jadi anda perlu J dan K, 349 00:20:19,930 --> 00:20:22,690 dan ia benar-benar baik kerana anda boleh bergerak ke atas dan ke bawah tanpa perlu 350 00:20:22,690 --> 00:20:26,210 menggerakkan tangan anda berulang-alik dari kekunci anak panah. 351 00:20:26,210 --> 00:20:29,410 Sekarang mari kita cuba pergi ke mod kemasukan dan keluar daripada mod kemasukan. 352 00:20:29,410 --> 00:20:34,370 Anda akan melihat bahawa sekarang kursor saya adalah kotak, besar hitam, 353 00:20:34,370 --> 00:20:37,300 dan apabila anda pergi ke mod kemasukan anda perlu mencari yang 354 00:20:37,300 --> 00:20:39,670 ia bertukar menjadi kursor yang sempit seperti anda digunakan untuk. 355 00:20:39,670 --> 00:20:43,730 Jika anda menggunakan Vim di terminal anda tidak boleh mencari ini menjadi kes 356 00:20:43,730 --> 00:20:46,970 kerana terminal tidak menyokong jenis ini kursor nipis, 357 00:20:46,970 --> 00:20:49,890 tetapi jika anda menggunakan MacVim atau GVim pada Windows 358 00:20:49,890 --> 00:20:54,590 maka anda akan mendapati bahawa ia bertukar menjadi kursor, dan itu adalah satu petunjuk visual benar-benar cepat. 359 00:20:54,590 --> 00:20:58,270 Ia untuk anda untuk memberitahu sama ada anda dalam mod biasa atau mod kemasukan. 360 00:20:58,270 --> 00:21:02,890 >> Mari kita teruskan dan cuba mengedit baris ini. 361 00:21:02,890 --> 00:21:06,220 Isi dengan maklumat anda sendiri atau apa pun, 362 00:21:06,220 --> 00:21:11,750 dan bagaimana anda boleh berbuat demikian ialah anda boleh bergerak sehingga akhir kosong, 363 00:21:11,750 --> 00:21:16,040 menaip i untuk masuk ke dalam mod kemasukan, dan anda boleh undur ruang 364 00:21:16,040 --> 00:21:21,100 dan menaip nama anda, dan apabila anda selesai menaip 365 00:21:21,100 --> 00:21:26,520 anda boleh menekan melarikan diri untuk keluar dari mod kemasukan, 366 00:21:26,520 --> 00:21:35,930 dan anda boleh bergerak di sini, jenis insert memadam itu, 367 00:21:35,930 --> 00:21:42,700 menaip melarikan diri untuk keluar dari mod kemasukan, dan anda boleh menaip: w memasukkan 368 00:21:42,700 --> 00:21:44,720 untuk menyimpan fail. 369 00:21:44,720 --> 00:21:47,420 Anda boleh menaip hanya: w untuk menyimpan fail. 370 00:21:47,420 --> 00:21:50,560 Anda boleh menaip hanya: q untuk berhenti tanpa menyimpan, 371 00:21:50,560 --> 00:21:53,750 atau anda boleh menaip: WQ untuk menyelamatkan dan berhenti. 372 00:21:53,750 --> 00:21:58,850 Diberikan, kita tidak mahu berhenti lagi, jadi anda boleh menaip: w. 373 00:21:58,850 --> 00:22:01,780 Dan mungkin yang seolah-olah sedikit tidak cekap pada mulanya 374 00:22:01,780 --> 00:22:05,600 kerana untuk bergerak ke tempat untuk menaip J sekumpulan kali, 375 00:22:05,600 --> 00:22:08,670 mungkin L sekumpulan kali untuk mendapatkan ke tempat itu, 376 00:22:08,670 --> 00:22:11,260 dan anda perlu menekan backspace sekumpulan kali, dan ia seolah-olah benar-benar tidak cekap 377 00:22:11,260 --> 00:22:13,260 sedangkan biasanya anda mungkin akan menggerakkan mouse anda di sana, 378 00:22:13,260 --> 00:22:15,880 klik dua kali dan mula menaip, dan sudah tentu, 379 00:22:15,880 --> 00:22:19,190 perkara itu, apabila anda mula-mula bermula dengan Vim dan anda hanya tahu ini arahan asas, 380 00:22:19,190 --> 00:22:22,810 ya, ia akan menjadi sedikit perlahan, tetapi tidak lama lagi anda belajar beberapa arahan yang lebih kuat, 381 00:22:22,810 --> 00:22:26,380 yang akan membolehkan anda untuk bergerak di seluruh dokumen dengan lebih pantas, 382 00:22:26,380 --> 00:22:29,410 dan anda tidak perlu mempunyai penggunaan yang sangat rumit ini 383 00:22:29,410 --> 00:22:34,330 mengulangi Js dan mengulangi Ks dan Ls dan sebagainya dan sebagainya. 384 00:22:34,330 --> 00:22:41,340 >> Sebarang pertanyaan setakat ini? Pepejal. 385 00:22:41,340 --> 00:22:44,000 Kembali ke PowerPoint. 386 00:22:44,000 --> 00:22:49,140 Sekarang kita akan memperkenalkan beberapa arahan untuk pergerakan maju. 387 00:22:49,140 --> 00:22:52,680 Anda mengalami perlu menaip mungkin L banyak atau H banyak, 388 00:22:52,680 --> 00:22:57,200 dan berikut adalah beberapa lebih arahan yang boleh digunakan untuk bergerak dengan lebih cepat. 389 00:22:57,200 --> 00:23:02,990 Katakan kursor anda di O lebih dalam beberapa dalam "Ini adalah beberapa teks," 390 00:23:02,990 --> 00:23:06,840 dan di sini adalah 5 lagi arahan yang boleh digunakan untuk bergerak merentasi garisan dengan lebih mudah. 391 00:23:06,840 --> 00:23:09,820 Jadi ^ dan $ bergerak anda ke permulaan dan garis akhir, 392 00:23:09,820 --> 00:23:14,300 dan pada satu ketika apabila anda belajar ungkapan biasa atau lain-lain pelbagai perkara 393 00:23:14,300 --> 00:23:17,390 anda akan mendapati bahawa seperti ini konvensyen yang sangat biasa. 394 00:23:17,390 --> 00:23:19,360 ^ Ini merujuk kepada permulaan baris. 395 00:23:19,360 --> 00:23:21,090 $ Ini lazimnya merujuk kepada akhir baris. 396 00:23:21,090 --> 00:23:24,130 Ini adalah sangat mudah untuk diingati, dan begitu juga, b, e, dan w, 397 00:23:24,130 --> 00:23:28,340 mereka mudah untuk ingat juga kerana b sepadan untuk menyokong atau permulaan, 398 00:23:28,340 --> 00:23:30,630 e sepadan dengan akhirnya, iaitu penghujung perkataan, 399 00:23:30,630 --> 00:23:35,530 dan w sepadan dengan perkataan seterusnya, jadi w perkataan. 400 00:23:35,530 --> 00:23:37,750 Dan jika anda menyimpan menaip e atau menyimpan menaip w 401 00:23:37,750 --> 00:23:43,520 anda notis anda boleh melompat antara perkataan, dan ia lebih cepat daripada hanya menaip l. 402 00:23:43,520 --> 00:23:46,600 >> Sekarang, perkara yang akan datang adalah Model Operator-Motion. 403 00:23:46,600 --> 00:23:50,310 Ini sebenarnya adalah salah satu sebab utama mengapa Vim boleh menjadi begitu kuat, 404 00:23:50,310 --> 00:23:54,890 dan ia adalah kerana anda pada dasarnya boleh mengarang elemen yang berbeza 405 00:23:54,890 --> 00:23:58,250 ke dalam fungsi yang lebih kuat, jadi secara amnya 406 00:23:58,250 --> 00:24:01,000 apabila anda melakukan apa-apa dalam Vim anda boleh menganggapnya sebagai 407 00:24:01,000 --> 00:24:03,280 menggabungkan pengendali dengan usul. 408 00:24:03,280 --> 00:24:07,310 Setakat ini kita baru sahaja ditangani usul, seperti HJKL. 409 00:24:07,310 --> 00:24:10,770 Mereka bergerak anda sekitar, dan kemudian b dan w, mereka juga bergerak anda cara-cara yang berbeza di sekitar, 410 00:24:10,770 --> 00:24:14,600 tetapi kita tidak pergi belum dapat memadam benda atau mengubah benda atau barang kecil, 411 00:24:14,600 --> 00:24:19,320 dan apabila anda menggabungkan pengusaha dengan usul maka anda dapat mempunyai 412 00:24:19,320 --> 00:24:22,510 lebih berkuasa kesan, jadi sebagai contoh, 413 00:24:22,510 --> 00:24:26,360 jika saya mahu memadam 2 perkataan, saya boleh menggunakan d untuk pengendali pemadaman, 414 00:24:26,360 --> 00:24:29,420 dan saya boleh menambah 2 untuk menunjukkan bahawa saya mahu memadam 2 perkataan, 415 00:24:29,420 --> 00:24:31,130 dan kemudian saya termasuk usul. 416 00:24:31,130 --> 00:24:33,490 Saya boleh termasuk w untuk mengatakan memadam 2 perkataan. 417 00:24:33,490 --> 00:24:37,740 Saya boleh menggunakan sesuatu seperti J untuk mengatakan memadam ke bawah 2 kali 418 00:24:37,740 --> 00:24:39,880 dan memadam 2 baris di bawah saya. 419 00:24:39,880 --> 00:24:43,870 Saya boleh mengatakan D2B memadam ke belakang dua kali, 420 00:24:43,870 --> 00:24:46,450 dan terdapat lebih banyak usul daripada orang-orang yang saya telah menunjukkan di sini 421 00:24:46,450 --> 00:24:52,120 untuk benar-benar, benar-benar membuat editing Vim anda lebih kuat. 422 00:24:52,120 --> 00:24:55,450 >> Ini adalah antara yang paling popular atau pengendali yang paling biasa 423 00:24:55,450 --> 00:24:57,030 dan cukup mudah untuk diingati juga. 424 00:24:57,030 --> 00:24:59,040 D untuk memadam, c untuk perubahan. 425 00:24:59,040 --> 00:25:01,560 C pada dasarnya perkara yang sama yang tepat sebagai perubahan, kecuali yang 426 00:25:01,560 --> 00:25:05,990 apabila anda menggunakan c anda secara automatik mendapat dimasukkan ke dalam mod insert selepas itu. 427 00:25:05,990 --> 00:25:08,050 Biasanya apabila anda menggunakan penghapusan anda menggunakannya dari mod biasa, 428 00:25:08,050 --> 00:25:10,950 dan selepas anda memadamkan sesuatu yang anda tinggal dalam mod biasa. 429 00:25:10,950 --> 00:25:13,380 Tetapi jika anda ingin mengubah sesuatu, anda boleh menggunakan c 430 00:25:13,380 --> 00:25:15,960 memadam sesuatu dan kemudian segera pergi ke mod kemasukan 431 00:25:15,960 --> 00:25:17,740 supaya anda boleh mula menaip dan menetapkan sesuatu. 432 00:25:17,740 --> 00:25:21,160 Y adalah untuk yanking. 433 00:25:21,160 --> 00:25:25,130 Ia pada dasarnya tanggapan itu Vim menyalin. 434 00:25:25,130 --> 00:25:29,220 Sebagai contoh, jika saya mahu menyalin 2 perkataan seterusnya yang boleh saya lakukan y2w atau sesuatu seperti itu, 435 00:25:29,220 --> 00:25:32,120 dan v adalah untuk mengetengahkan, pada asasnya. 436 00:25:32,120 --> 00:25:35,550 Dan juga apa yang benar-benar sejuk adalah jika anda menaip pengendali dua kali 437 00:25:35,550 --> 00:25:38,890 ia akan bertindak di barisan keseluruhan, jadi jika saya mahu memadam satu baris keseluruhan 438 00:25:38,890 --> 00:25:41,060 Saya boleh menaip bb memadam seluruh barisan, 439 00:25:41,060 --> 00:25:47,370 atau jika saya mahu untuk menyalin seluruh barisan saya boleh menggunakan tttt atau sesuatu seperti itu. 440 00:25:47,370 --> 00:25:51,600 >> Mari kita cuba ini lagi. 441 00:25:51,600 --> 00:25:56,280 Ada latihan di sini untuk pengendali pergerakan maju dan 442 00:25:56,280 --> 00:25:59,230 dan juga beberapa perkara lain yang saya tidak akan meliputi dalam PowerPoint hari ini, 443 00:25:59,230 --> 00:26:02,250 tetapi anda boleh berasa bebas untuk melihat lebih kemudian dan bermain-main dengan mereka 444 00:26:02,250 --> 00:26:05,990 dan membiasakan diri dengan mereka. 445 00:26:05,990 --> 00:26:07,630 Operator dan usul. 446 00:26:07,630 --> 00:26:14,220 Sebagai contoh, katakan ada 2 perkataan ini anda hanya mahu memadam dalam ayat. 447 00:26:14,220 --> 00:26:17,110 Apa yang anda mahu lakukan adalah anda akan mahu memastikan bahawa anda 448 00:26:17,110 --> 00:26:21,000 kursor adalah pada awal perkataan pertama yang anda hendak padam, 449 00:26:21,000 --> 00:26:26,230 dan anda boleh menaip d2w, dan ia akan memadam 2 perkataan untuk anda. 450 00:26:26,230 --> 00:26:33,140 Dan menggunakan ini arahan yang tepat, d2w, mungkin kelihatan agak rumit 451 00:26:33,140 --> 00:26:35,940 dan sia-sia, tetapi ia sepatutnya untuk menyatakan idea 452 00:26:35,940 --> 00:26:39,380 yang anda boleh mengarang perkara-perkara yang berbeza, dan juga hanya dalam kes 453 00:26:39,380 --> 00:26:42,730 anda berada dalam situasi itu, maka anda boleh berakhir dengan menggunakan dw atau d2w, 454 00:26:42,730 --> 00:26:45,600 yang saya menggunakan sekali-sekala. 455 00:26:45,600 --> 00:26:50,030 Dd dan cc saya menggunakan lebih kerap kerana anda boleh bertindak ke atas keseluruhan baris. 456 00:26:50,030 --> 00:26:52,000 >> Sebagai contoh, katakan saya mempunyai senarai rawak ini di sini, 457 00:26:52,000 --> 00:26:59,030 dan mungkin saya mahu memadam garisan yang mengatakan Huskies kerana ia tidak patut, hanya kerana, 458 00:26:59,030 --> 00:27:01,200 dan saya tidak mahu ia pergi ke mod kemasukan selepas itu. 459 00:27:01,200 --> 00:27:03,530 Saya mahu memadamnya, di mana saya boleh menaip bb, 460 00:27:03,530 --> 00:27:07,090 dan yang akan memadam seluruh barisan. 461 00:27:07,090 --> 00:27:11,680 Tetapi mari kita katakan sekarang ada baris ini lain yang saya hendak padam, 462 00:27:11,680 --> 00:27:16,850 tetapi saya juga mahu menetapkan dan menulis semula, di mana saya akan cuba sesuatu seperti cc, 463 00:27:16,850 --> 00:27:19,550 dan yang menghapuskan seluruh barisan tetapi meletakkan saya dalam mod kemasukan, seperti yang anda lihat, 464 00:27:19,550 --> 00:27:24,970 dan saya boleh memperbaikinya dari sana. 465 00:27:24,970 --> 00:27:28,510 Dan ada banyak, banyak cara yang berbeza anda boleh menggabungkan pengendali dan usul, 466 00:27:28,510 --> 00:27:31,360 dan seperti anda menggunakan Vim semakin anda mengetahui lebih lanjut mengenai cara-cara yang berbeza 467 00:27:31,360 --> 00:27:36,300 anda boleh menggunakan arahan ini, dan anda akan menjadi lebih baik dan lebih baik. 468 00:27:36,300 --> 00:27:40,180 Awesome, sekarang di sini adalah beberapa arahan macam lain 469 00:27:40,180 --> 00:27:44,700 yang juga sangat, sangat biasa digunakan dan juga akan membantu anda menjadi lebih baik pada Vim. 470 00:27:44,700 --> 00:27:48,780 >> Sebagai contoh, kita bercakap tentang huruf kecil v bagi penyerlahan dengar. 471 00:27:48,780 --> 00:27:51,530 Kita juga boleh menggunakan huruf besar V bagi talian visual penyerlahan. 472 00:27:51,530 --> 00:27:55,880 Dengan cara itu anda boleh menyerlahkan garis keseluruhan pada masa yang lebih mudah. 473 00:27:55,880 --> 00:27:59,180 Anda boleh menggunakan o apabila anda berada dalam mod biasa pada dasarnya memasukkan baris baru 474 00:27:59,180 --> 00:28:03,620 di bawah garis sedang Anda dan meletakkan ia ke dalam mod sisipan untuk mula menaip. 475 00:28:03,620 --> 00:28:07,270 Anda boleh menggunakan huruf kecil x memadam watak itu kini di bawah kursor anda. 476 00:28:07,270 --> 00:28:10,230 Anda juga boleh menggunakan u untuk membuat asal, yang adalah jenis yang bagus, 477 00:28:10,230 --> 00:28:14,180 dan anda boleh menggunakan modal A untuk dilampirkan pada akhir baris semasa, 478 00:28:14,180 --> 00:28:18,310 jadi mungkin kursor anda adalah suatu tempat di talian, dan anda mahu menambah ke akhir baris. 479 00:28:18,310 --> 00:28:21,150 Kemudian anda boleh menaip modal A untuk segera melompat ke akhir garisan 480 00:28:21,150 --> 00:28:25,140 dan pergi ke mod kemasukan supaya anda boleh menambah ke akhir baris. 481 00:28:25,140 --> 00:28:30,840 >> Saya fikir saya mempunyai beberapa lagi latihan untuk apa yang kita boleh mencuba. 482 00:28:30,840 --> 00:28:33,240 Sebenarnya, tidak, saya tidak. Tidak bagi mereka. 483 00:28:33,240 --> 00:28:35,810 Tetapi kita mempunyai beberapa lebih banyak latihan untuk bahagian seterusnya yang kita akan melihat. 484 00:28:35,810 --> 00:28:38,420 Tetapi anda boleh mencuba diri sendiri juga. 485 00:28:38,420 --> 00:28:45,610 Sebagai contoh, jika anda taip di dalam v biasa, anda akan mendapat penonjolan biasa yang anda digunakan untuk menyukainya. 486 00:28:45,610 --> 00:28:49,800 Jika anda menaip di ibu V, anda boleh mendapatkan garis penuh menonjolkan seperti itu, 487 00:28:49,800 --> 00:28:55,850 atau jika saya taip o pada dasarnya akan membuka barisan baru bagi saya, yang jenis baik. 488 00:28:55,850 --> 00:28:58,850 X boleh saya gunakan untuk memadam aksara pada kursor. 489 00:28:58,850 --> 00:29:00,800 Saya boleh tekan x sekumpulan kali dan memadam barangan. 490 00:29:00,800 --> 00:29:06,720 Saya boleh tekan u untuk membatalkan semua itu. 491 00:29:06,720 --> 00:29:09,600 A, saya boleh menaip A untuk segera pergi ke akhir garisan, 492 00:29:09,600 --> 00:29:14,040 dan saya juga memasukkan beberapa kunci bagus lain 493 00:29:14,040 --> 00:29:19,240 bahawa anda juga boleh melihat selepas persembahan untuk belajar beberapa arahan lain. 494 00:29:19,240 --> 00:29:21,250 >> [Pelajar] Apakah penggantian kira-kira? 495 00:29:21,250 --> 00:29:23,050 [Brandon L.] Penggantian juga benar-benar sejuk 496 00:29:23,050 --> 00:29:26,240 dan pada dasarnya jika anda pergi ke tempat- 497 00:29:26,240 --> 00:29:30,060 adakah anda pernah-orang tidak benar-benar menggunakannya bahawa banyak lagi hari ini, 498 00:29:30,060 --> 00:29:34,340 tetapi adakah anda lelaki yang pernah dilihat dalam Microsoft Word jika anda menaip memasukkan 499 00:29:34,340 --> 00:29:37,840 anda tiba-tiba pergi ke mod pelik ini di mana setiap aksara yang anda taip 500 00:29:37,840 --> 00:29:39,570 pada dasarnya menggantikan aksara seterusnya? 501 00:29:39,570 --> 00:29:41,020 Saya tidak tahu jika anda semua pernah melihat itu. 502 00:29:41,020 --> 00:29:43,250 Ini adalah sama dengan itu. 503 00:29:43,250 --> 00:29:47,150 Sebagai contoh, jika saya ingin menulis ganti apa yang saya kini mempunyai untuk sebab-sebab tertentu 504 00:29:47,150 --> 00:29:51,300 Saya boleh menaip di ibu R, dan saya sekarang akan berada dalam mod menggantikan, seperti yang anda lihat di bahagian bawah kiri. 505 00:29:51,300 --> 00:29:58,380 Saya menaip barangan ia menulis ganti sesuatu, dan saya juga boleh undur ruang, yang merupakan jenis yang sejuk, 506 00:29:58,380 --> 00:30:00,140 dan saya boleh membuat asal itu. 507 00:30:00,140 --> 00:30:06,980 Saya tidak menggunakan yang sangat sering, tetapi setiap sekarang dan kemudian ia menjadi berguna. 508 00:30:06,980 --> 00:30:14,150 >> Mari kita bercakap tentang objek teks, yang merupakan salah satu perkara kegemaran saya tentang Vim, jujur. 509 00:30:14,150 --> 00:30:19,660 Objek teks pada dasarnya idea ini menentukan semacam sebahagian teks 510 00:30:19,660 --> 00:30:26,550 di dalam fail teks anda, dan saya akan pergi ke kekunci ini pertama, 511 00:30:26,550 --> 00:30:29,860 dan kemudian saya akan memberikan anda beberapa demonstrasi untuk anda memahami dengan lebih lanjut apa yang bermakna. 512 00:30:29,860 --> 00:30:34,650 W merujuk kepada perkataan, seperti objek teks sebagai satu perkataan, 513 00:30:34,650 --> 00:30:36,480 jadi sesetengah perkataan seperti yang anda biasa tahu, 514 00:30:36,480 --> 00:30:39,300 dan jika ada tanda baca yang bersebelahan perkataan 515 00:30:39,300 --> 00:30:43,490 maka ia tidak akan termasuk tanda baca secara amnya. 516 00:30:43,490 --> 00:30:46,440 Tetapi sebagai contoh, jika anda mahu untuk memasukkan tanda baca untuk sebab-sebab tertentu 517 00:30:46,440 --> 00:30:49,080 atau anda melakukan sesuatu itu bukan bahasa Inggeris dan anda mahu termasuk 518 00:30:49,080 --> 00:30:51,180 semua watak-watak yang ditandakan oleh ruang kosong 519 00:30:51,180 --> 00:30:55,390 anda juga boleh menggunakan modal W untuk mendapatkan segala yang dikelilingi oleh ruang kosong. 520 00:30:55,390 --> 00:30:58,510 Anda juga boleh menggunakan kurungan untuk merujuk kepada objek teks 521 00:30:58,510 --> 00:31:00,170 itulah di dalam satu set kurungan. 522 00:31:00,170 --> 00:31:03,950 Anda boleh melakukan perkara yang sama dengan kurungan persegi, kurungan sudut, 523 00:31:03,950 --> 00:31:06,450 pendakap, dan petikan juga, dan akhirnya, 524 00:31:06,450 --> 00:31:10,970 anda juga boleh menggunakan t untuk merujuk kepada beberapa tag. 525 00:31:10,970 --> 00:31:15,390 >> Biar saya tunjukkan kepada anda bagaimana yang benar-benar memainkan keluar. 526 00:31:15,390 --> 00:31:21,380 Sebagai contoh, ini adalah contoh yang pertama saya dalam peragaan saya. 527 00:31:21,380 --> 00:31:26,950 Ada beberapa perkataan dalam ayat ini yang saya mahu berubah, 528 00:31:26,950 --> 00:31:30,560 dan kita bercakap tentang W digunakan sebagai usul yang 529 00:31:30,560 --> 00:31:33,170 tetapi anda juga boleh menggunakannya sebagai objek teks seperti demikian. 530 00:31:33,170 --> 00:31:40,940 Sebagai contoh, salah satu cara saya boleh menukar nama Barack atau pada dasarnya mengubahsuainya 531 00:31:40,940 --> 00:31:46,730 adalah saya boleh pergi ke permulaan perkataan ini dan taipkan c untuk perubahan dan w perkataan, 532 00:31:46,730 --> 00:31:51,650 dan yang akan memadam perkataan keseluruhan dan meletakkan ia ke dalam mod kemasukan. 533 00:31:51,650 --> 00:31:54,240 Tetapi ia sangat menjengkelkan bagi saya perlu pergi ke permulaan perkataan setiap masa. 534 00:31:54,240 --> 00:31:56,530 Itu benar-benar menjengkelkan. Saya tidak mahu mempunyai untuk melakukannya. 535 00:31:56,530 --> 00:32:00,390 Saya dapat di mana-mana di dalam namanya 536 00:32:00,390 --> 00:32:03,930 dan menaip CIW, dan saya bermaksud dalaman, 537 00:32:03,930 --> 00:32:06,590 jadi jika saya taip CIW ia bermaksud perubahan dalam perkataan, 538 00:32:06,590 --> 00:32:10,150 atau dalam erti kata lain, menukar perkataan saya kini di dalam, 539 00:32:10,150 --> 00:32:13,280 dan ia akan memberikan anda kesan yang sama. 540 00:32:13,280 --> 00:32:17,130 Anda boleh menetapkan bahawa. 541 00:32:17,130 --> 00:32:21,390 >> Begitu juga, mungkin saya mempunyai beberapa kes seperti ini 542 00:32:21,390 --> 00:32:27,920 di mana atas sebab tertentu terdapat beberapa pembatas atau sesuatu seperti itu, 543 00:32:27,920 --> 00:32:31,700 atau ada beberapa tanda baca, dan saya mahu memadam segala-galanya. 544 00:32:31,700 --> 00:32:36,530 Saya menaip dalam CIW ia akan memadam apa yang di dalam pembatas ini, 545 00:32:36,530 --> 00:32:39,830 tetapi saya ingin mendapatkan perkara yang keseluruhan yang dikelilingi oleh ruang kosong, 546 00:32:39,830 --> 00:32:42,750 jadi saya boleh menggunakan CIW memadam segala-galanya. 547 00:32:42,750 --> 00:32:51,000 Saya akan menaip dalam lima, melakukan perkara yang sama, dan taip enam. 548 00:32:51,000 --> 00:32:53,670 Begitu juga, jika saya mahu menukar sesuatu yang di dalam kurungan 549 00:32:53,670 --> 00:32:58,340 Saya boleh menaip ci) memotong semua yang ada di dalam kurungan 550 00:32:58,340 --> 00:33:05,460 dan kemudian isikan apa yang saya mahu lakukan, seperti int argc, apa sahaja yang anda mahu lakukan, 551 00:33:05,460 --> 00:33:07,330 dan begitu juga, perkara yang sama dengan petikan. 552 00:33:07,330 --> 00:33:13,130 Saya boleh menetapkan teks yang ada di dalam petikan, 553 00:33:13,130 --> 00:33:21,540 dan saya juga boleh mengubah perkara-perkara yang berada di dalam tag. 554 00:33:21,540 --> 00:33:24,400 Adakah ini masuk akal? 555 00:33:24,400 --> 00:33:27,020 >> Satu lagi perkara yang anda boleh lakukan ialah anda tidak perlu menggunakan c. 556 00:33:27,020 --> 00:33:30,690 Anda juga boleh menggunakan d jika anda mahu memadam apa yang di dalam tag ini. 557 00:33:30,690 --> 00:33:35,370 Jika saya ingin padam teks di dalam tag yang saya boleh menggunakan dit memadam tag itu. 558 00:33:35,370 --> 00:33:40,360 Saya juga boleh menggunakan Vit untuk menyerlahkan apa yang di dalam tag, sebagai contoh. 559 00:33:40,360 --> 00:33:43,920 Satu perkara lagi ialah bukannya menggunakan i di tengah-tengah anda juga boleh menggunakan, 560 00:33:43,920 --> 00:33:49,490 yang bermaksud semua, jadi ingat jika anda menggunakan i ia akan merujuk kepada objek teks yang 561 00:33:49,490 --> 00:33:52,260 atau menggunakan objek teks yang yang terkandung di dalam pembatas, 562 00:33:52,260 --> 00:33:56,000 tetapi jika anda menggunakan ia akan termasuk teks yang serta pemisah itu sendiri. 563 00:33:56,000 --> 00:33:59,180 Sebagai contoh, jika saya ingin menyerlahkan teks ini dan tag yang mengelilingi 564 00:33:59,180 --> 00:34:05,390 Saya boleh menggunakan tong, v untuk Kemuncak visual, untuk semua, dan kemudian t untuk tag. 565 00:34:05,390 --> 00:34:08,350 Anda boleh melakukan sesuatu seperti itu juga. 566 00:34:08,350 --> 00:34:15,810 Mungkin saya mahu memadam google.com ini dengan sebut harga di sekelilingnya juga, 567 00:34:15,810 --> 00:34:22,860 dan saya boleh menggunakan sesuatu seperti da "untuk memadam semua itu, sebagai contoh. 568 00:34:22,860 --> 00:34:26,520 >> Sebarang pertanyaan setakat ini? 569 00:34:26,520 --> 00:34:32,270 Saya sedar bahawa saya lambakan pada anda banyak Vim menyuruh semua sekali gus, 570 00:34:32,270 --> 00:34:36,210 dan ini adalah pada dasarnya kerana saya ingin mendedahkan anda kepada semua arahan yang berbeza 571 00:34:36,210 --> 00:34:39,480 dan memberi anda pengenalan kepada apa arahan ini lakukan dalam Vim. 572 00:34:39,480 --> 00:34:41,460 Tetapi apa yang akan perlu berlaku adalah apabila anda kembali 573 00:34:41,460 --> 00:34:44,250 anda akan perlu untuk perlahan-lahan mengambil arahan ini satu persatu. 574 00:34:44,250 --> 00:34:47,880 Anda tidak mahu untuk mengatasi diri sendiri, kerana yang terlalu amat sangat. 575 00:34:47,880 --> 00:34:50,460 Jika anda mahu mengambil Vim apa yang anda perlu benar-benar lakukan adalah 576 00:34:50,460 --> 00:34:53,590 bermula dengan set asas yang pertama, dan saya telah dipecahkan ke atas ke dalam pelajaran untuk anda 577 00:34:53,590 --> 00:34:57,830 yang menjadikannya lebih mudah untuk anda ikuti, dan cuba menguasai setiap set arahan 578 00:34:57,830 --> 00:35:00,400 satu demi satu, satu demi satu. 579 00:35:00,400 --> 00:35:03,500 Ia terlalu banyak yang perlu dilakukan semua sekali gus, jadi apa yang perlu anda lakukan apabila anda pergi belakang 580 00:35:03,500 --> 00:35:10,950 pergi ke pelajaran pertama, yang merupakan HJKL, mod kemasukan, melarikan diri ke dalam mod biasa, 581 00:35:10,950 --> 00:35:13,790 dan menyimpan dan berhenti, dan itu semua yang anda benar-benar perlu untuk terus hidup dalam Vim, 582 00:35:13,790 --> 00:35:15,220 dan mendapatkan benar-benar, benar-benar selesa dengan itu. 583 00:35:15,220 --> 00:35:18,270 Dan selepas beberapa hari sekali anda sangat selesa dengan yang 584 00:35:18,270 --> 00:35:21,170 anda perlu beralih kepada pengendali gerakan yang lebih maju, 585 00:35:21,170 --> 00:35:25,890 usul yang lebih maju, dan kepada pengusaha dan sebagainya dan sebagainya. 586 00:35:25,890 --> 00:35:32,160 >> Saya tahu saya akan melalui banyak, tetapi saya mahu anda terdedah kepada banyak perkara yang berbeza. 587 00:35:32,160 --> 00:35:36,080 Tetapi dalam kes anda untuk cabaran ini, saya boleh menunjukkan kepada anda 588 00:35:36,080 --> 00:35:43,690 bagaimana anda boleh meletakkan ini semua bersama-sama menggunakan sebahagian besar apa yang kita belajar hari ini, 589 00:35:43,690 --> 00:35:46,280 dan anda juga boleh mengikuti bersama-sama jika anda mahu, 590 00:35:46,280 --> 00:35:48,590 tetapi saya mencipta senaman secara rawak. 591 00:35:48,590 --> 00:35:51,140 Katakan kita mempunyai beberapa jenis jadual seperti ini 592 00:35:51,140 --> 00:35:53,200 di mana anda mempunyai blok ini dengan nama orang, 593 00:35:53,200 --> 00:35:55,440 rumah, tahun, dan penumpuan dan barang kecil, 594 00:35:55,440 --> 00:35:59,240 dan anda mahu menambah entri baru untuk diri sendiri. 595 00:35:59,240 --> 00:36:01,530 Apakah cara yang terbaik untuk anda untuk melakukan ini? 596 00:36:01,530 --> 00:36:03,240 Mari kita buat seperti ini. 597 00:36:03,240 --> 00:36:06,620 Kenapa tidak kita mula-mula serlahkan blok ini. 598 00:36:06,620 --> 00:36:08,710 Anda akan untuk memilihnya, dan kita boleh tekan y untuk merentap ia, 599 00:36:08,710 --> 00:36:11,180 jadi sekarang kita pada dasarnya boleh copy dan paste template ini pertama 600 00:36:11,180 --> 00:36:16,500 tanpa perlu menulis semula segala-galanya dari awal. 601 00:36:16,500 --> 00:36:20,390 Sekarang saya akan tekan j ke bawah sekumpulan kali turun ke bawah, 602 00:36:20,390 --> 00:36:22,560 dan saya akan tekan p untuk paste. 603 00:36:22,560 --> 00:36:26,990 Mungkin saya akan menambah beberapa baris tambahan untuk ruang, 604 00:36:26,990 --> 00:36:31,130 dan mari kita katakan sekarang Saya ingin menukar nama anda kepada seseorang. 605 00:36:31,130 --> 00:36:36,220 Kemudian saya boleh pergi di sini dan taip c2w seperti sebelum menukar nama itu. 606 00:36:36,220 --> 00:36:38,860 Bob Jones, yang tahu. 607 00:36:38,860 --> 00:36:41,470 Mungkin jika saya mahu menukar rumah yang saya boleh pergi ke tengah-tengah di sini 608 00:36:41,470 --> 00:36:44,230 dan taip CIW dan meletakkan Cabot House. 609 00:36:44,230 --> 00:36:47,850 >> Berikut mungkin merupakan contoh di mana anda mungkin mahu mempertimbangkan menggunakan 610 00:36:47,850 --> 00:36:52,970 mod penggantian untuk menukar tahun tamat pengajian anda jika anda mahu, 611 00:36:52,970 --> 00:36:54,890 atau kita juga boleh menggunakan CIW juga. 612 00:36:54,890 --> 00:36:57,550 Ia tidak mengapa. 613 00:36:57,550 --> 00:37:07,180 Mungkin anda ingin mengubah utama anda. 614 00:37:07,180 --> 00:37:11,310 Dan itulah apa yang anda lakukan. 615 00:37:11,310 --> 00:37:17,170 Dan mungkin saya akan memberikan demonstrasi apa yang saya boleh lakukan 616 00:37:17,170 --> 00:37:23,820 jika saya-jika anda terus belajar arahan yang lebih maju dalam Vim 617 00:37:23,820 --> 00:37:25,690 kerana kita hampir tidak menggaru permukaan di sini, 618 00:37:25,690 --> 00:37:28,960 dan saya boleh melakukan seperti ini penyuntingan lebih cepat daripada saya telah menunjukkan anda di sini 619 00:37:28,960 --> 00:37:32,860 kerana saya tahu lebih arahan yang saya tidak mendapat peluang untuk menunjukkan kepada anda untuk hari ini. 620 00:37:32,860 --> 00:37:37,500 Sebagai contoh, jika saya ingin menyerlahkan ini saya boleh melakukannya seperti itu, 621 00:37:37,500 --> 00:37:39,960 bergerak ke bawah. 622 00:37:39,960 --> 00:37:43,860 Saya telah menambah pemetaan saya sendiri 623 00:37:43,860 --> 00:37:48,100 pada dasarnya secara automatik menyerlahkan barangan untuk saya 624 00:37:48,100 --> 00:38:02,610 dan saya boleh-saya tidak tahu. 625 00:38:02,610 --> 00:38:05,260 Maksud saya, ini hanya cuba untuk menunjukkan kepada anda bahawa anda boleh benar-benar, benar-benar 626 00:38:05,260 --> 00:38:08,180 mula menyunting perkara yang lebih cepat, terutamanya apabila anda mempunyai semua bidang yang berbeza, 627 00:38:08,180 --> 00:38:10,620 dan biasanya apa yang anda mungkin melakukan adalah jenis klik 628 00:38:10,620 --> 00:38:13,530 dan menonjolkan dan kemudian menaip. 629 00:38:13,530 --> 00:38:18,530 Anda boleh melakukan semua sekaligus, menyalin dan menampal, 630 00:38:18,530 --> 00:38:21,640 bergerak ke atas dan ke bawah antara fail, 631 00:38:21,640 --> 00:38:24,060 hanya delimiting barangan, format barangan. 632 00:38:24,060 --> 00:38:29,670 Semua ini boleh dilakukan banyak lagi cepat dalam Vim. 633 00:38:29,670 --> 00:38:32,580 >> Hanya satu perkara terakhir sedikit yang saya fikir mungkin benar-benar bagus, 634 00:38:32,580 --> 00:38:34,820 yang mencari dan mengganti. 635 00:38:34,820 --> 00:38:36,460 Orang-orang yang telah menggunakan jalan pintas Gmail 636 00:38:36,460 --> 00:38:41,050 anda juga akan tahu bahawa jika anda taip / ia menghantar anda ke kotak carian, 637 00:38:41,050 --> 00:38:44,210 dan dalam banyak aplikasi yang berbeza pada umumnya anda akan menemui palang yang 638 00:38:44,210 --> 00:38:47,300 atau mungkin mengawal palang atau kaitan dengan slash 639 00:38:47,300 --> 00:38:49,870 akan meletakkan anda ke dalam sejenis mod carian, 640 00:38:49,870 --> 00:38:53,240 dan yang juga pada dasarnya berasal dari Vim dasarnya 641 00:38:53,240 --> 00:38:58,670 kerana pengendali palang atau perintah palang membolehkan anda untuk memasukkan 642 00:38:58,670 --> 00:39:01,770 beberapa jenis tali yang boleh anda gunakan untuk mencari dalam dokumen itu. 643 00:39:01,770 --> 00:39:05,350 Anda boleh n dan modal N untuk pergi ke depan dan kejadian sebelumnya, 644 00:39:05,350 --> 00:39:10,700 dan anda juga boleh menggunakan sesuatu yang serupa untuk mencari dan menggantikan dalam dokumen itu. 645 00:39:10,700 --> 00:39:15,060 Saya akan memberikan demonstrasi kepada apa yang boleh dilakukan. 646 00:39:15,060 --> 00:39:18,200 >> Mungkin jika saya ingin mencari semua keadaan yank tali dalam dokumen ini 647 00:39:18,200 --> 00:39:23,310 Saya boleh menaip / yank, seperti yang anda lihat di sudut kiri bawah, 648 00:39:23,310 --> 00:39:26,350 dan apabila saya menaip memasukkan ia menonjolkan semua keadaan. 649 00:39:26,350 --> 00:39:34,160 Saya boleh menggunakan pada dasarnya n untuk melompat berulang-alik antara semua keadaan yang berbeza, 650 00:39:34,160 --> 00:39:40,420 dan mari kita andaikan yang saya mahu untuk mencari dan menggantikan yank dengan beberapa perkataan rawak 651 00:39:40,420 --> 00:39:42,180 yang juga dalam dokumen itu. 652 00:39:42,180 --> 00:39:47,070 Saya boleh tekan: untuk mula menaip dalam beberapa jenis arahan dalam Vim, 653 00:39:47,070 --> 00:39:49,610 beberapa arahan yang lebih canggih daripada bergerak 654 00:39:49,610 --> 00:39:51,370 atau memadam atau sesuatu seperti itu. 655 00:39:51,370 --> 00:39:56,860 Saya akan menaip dalam tanda% untuk merujuk yang saya mahu untuk menggunakan arahan penggantian ini 656 00:39:56,860 --> 00:39:58,230 di seluruh dokumen. 657 00:39:58,230 --> 00:40:02,380 Taipkan kerana penggantian. Ini datang dari PEARL asasnya. 658 00:40:02,380 --> 00:40:07,040 Dan hal ini akan datang adalah arahan cukup standard yang anda akan dapati di PEARL 659 00:40:07,040 --> 00:40:09,790 sebaliknya dan dalam bahasa pengaturcaraan lain yang anda akan 660 00:40:09,790 --> 00:40:13,170 mungkin mula belajar seperti yang anda lakukan sains komputer yang lebih, 661 00:40:13,170 --> 00:40:20,130 dan saya pada dasarnya boleh menggunakan / menaip /, taip perkataan yang saya ingin mencari dan menggantikan 662 00:40:20,130 --> 00:40:24,280 dan kemudian taip lain / dan taip apa sahaja perkataan yang saya mahu menggantikan perkataan yang dengan. 663 00:40:24,280 --> 00:40:27,450 Siapa tahu, mungkin nyancat. 664 00:40:27,450 --> 00:40:30,390 Saya berbuat demikian, dan kemudian anda akan melihat bahawa segala-galanya perlu lagi diganti. 665 00:40:30,390 --> 00:40:34,000 >> Tetapi anda akan melihat bahawa ada perkataan ini di sini. 666 00:40:34,000 --> 00:40:37,620 Untuk sebab-sebab tertentu beberapa keadaan kami yank digantikan tetapi tidak semua, 667 00:40:37,620 --> 00:40:40,250 dan itu kerana cara seperti ini bahasa yang telah ditulis 668 00:40:40,250 --> 00:40:43,550 bukan sahaja di Vim tetapi di tempat-tempat lain ialah apabila anda menjalankan arahan penggantian 669 00:40:43,550 --> 00:40:46,470 ia hanya akan menggantikan contoh pertama perkataan bahawa dalam setiap baris, 670 00:40:46,470 --> 00:40:52,810 jadi jika saya mahu untuk benar-benar menggantikan semua contoh perkataan di setiap baris 671 00:40:52,810 --> 00:40:56,890 maka saya perlu lakukan perkara yang sama tetapi menambah ag bendera di akhir sangat, 672 00:40:56,890 --> 00:41:00,810 yang bermaksud global, dan kemudian yang akan benar-benar 673 00:41:00,810 --> 00:41:06,200 menggantikan semua keadaan. 674 00:41:06,200 --> 00:41:09,710 Dan bila anda mempelajari ungkapan biasa, ada sebenarnya satu seminar CS50 675 00:41:09,710 --> 00:41:12,120 pada ungkapan biasa, jadi jika anda ingin tahu tentang ungkapan biasa 676 00:41:12,120 --> 00:41:16,970 anda juga boleh mengambil seminar itu dan mengetahui lebih lanjut. 677 00:41:16,970 --> 00:41:19,920 >> Tetapi sebagai contoh, katakan saya mempunyai senarai nama-nama seperti ini, 678 00:41:19,920 --> 00:41:23,920 dan saya mahu menyusun semula, jadi bukannya mempunyai nama akhir, koma, nama pertama 679 00:41:23,920 --> 00:41:27,490 Saya mahu menyusun semula supaya ia berkata nama pertama, ruang, nama akhir. 680 00:41:27,490 --> 00:41:30,750 Anda sebenarnya boleh menggunakan arahan ini di sini 681 00:41:30,750 --> 00:41:33,600 pada dasarnya melakukannya untuk anda, supaya anda boleh lihat di sini 682 00:41:33,600 --> 00:41:37,170 kita bermula dengan s, yang bererti kita mahu lakukan find dan menggantikan, 683 00:41:37,170 --> 00:41:42,970 dan kemudian saya tambah bendera dipanggil \ v, yang merupakan sesuatu yang dinamakan bendera ini sihir 684 00:41:42,970 --> 00:41:45,810 dalam Vim yang membolehkan anda untuk melakukan ungkapan biasa dengan lebih mudah. 685 00:41:45,810 --> 00:41:49,370 Kemudian dari sana kami pada dasarnya sepadan untuk mana-mana baris 686 00:41:49,370 --> 00:41:55,960 yang adalah dalam bentuk satu set perkataan, koma, ruang, dan satu set perkataan atau satu set huruf. 687 00:41:55,960 --> 00:41:59,240 \ W + pada asasnya bermakna satu atau lebih aksara, 688 00:41:59,240 --> 00:42:04,030 dan kurungan digunakan untuk menangkap kumpulan-kumpulan ini 689 00:42:04,030 --> 00:42:06,120 jadi saya boleh merujuk kepada mereka kemudian. 690 00:42:06,120 --> 00:42:09,910 Seperti yang anda lihat, sekali ini menangkap 2 blok perkataan 691 00:42:09,910 --> 00:42:11,690 yang dipisahkan oleh koma, ruang 692 00:42:11,690 --> 00:42:15,510 maka apa yang kita mahu menggantikannya dengan adalah saya menggunakan \ 2 dan \ 1 693 00:42:15,510 --> 00:42:18,130 merujuk kembali kepada kata-kata yang ditangkap 694 00:42:18,130 --> 00:42:20,950 dalam perintah find sebenar, 695 00:42:20,950 --> 00:42:24,970 dan sebagainya \ 2 merujuk kepada apa sahaja yang terkandung dalam set kedua kurungan, 696 00:42:24,970 --> 00:42:28,140 \ 1 merujuk kepada apa sahaja yang terkandung dalam set pertama kurungan, 697 00:42:28,140 --> 00:42:31,680 dan seperti yang anda lihat, saya meletakkan 2 sebelum 1 diasingkan dengan satu ruang 698 00:42:31,680 --> 00:42:36,650 untuk mencuba dan menyebabkan nama pertama sebelum nama akhir. 699 00:42:36,650 --> 00:42:38,380 Adakah ini masuk akal? 700 00:42:38,380 --> 00:42:43,450 >> Dan apa yang boleh saya lakukan adalah saya boleh menyembunyikan ini pertama jadi saya hanya menjalankan perintah ini dalam ayat ini, 701 00:42:43,450 --> 00:42:53,720 dan kemudian saya akan menaip arahan ini. 702 00:42:53,720 --> 00:42:57,050 Anda boleh melihat ia betul-betul seperti dibahagikan. 703 00:42:57,050 --> 00:42:59,400 Dan sekali lagi, ini adalah hampir tidak menggaru permukaan, 704 00:42:59,400 --> 00:43:03,020 dan jika anda pergi ke seminar ungkapan biasa maka saya pasti anda akan belajar 705 00:43:03,020 --> 00:43:05,070 perkara yang lebih banyak yang berbeza yang boleh anda lakukan dengan ungkapan-ungkapan yang tetap, 706 00:43:05,070 --> 00:43:08,910 dan ini pada dasarnya mula membayangkan apa yang anda benar-benar boleh lakukan dengan Vim 707 00:43:08,910 --> 00:43:10,850 jika anda benar-benar mula menjadi tuan daripada itu. 708 00:43:10,850 --> 00:43:14,520 Mungkin anda mahu refactor sesuatu, dan anda ingin mencari semua keadaan 709 00:43:14,520 --> 00:43:16,980 beberapa fungsi yang berikut semacam menamakan corak. 710 00:43:16,980 --> 00:43:18,570 Anda ingin mengubah cara yang dinamakan. 711 00:43:18,570 --> 00:43:21,140 Anda boleh menulis beberapa jenis arahan seperti ini untuk melakukannya untuk anda, 712 00:43:21,140 --> 00:43:23,850 dan itulah jenis fleksibiliti anda boleh mendapatkan dalam Vim 713 00:43:23,850 --> 00:43:30,210 bahawa anda hanya tidak akan mendapatkan dalam editor teks yang lain. 714 00:43:30,210 --> 00:43:34,830 >> Bahawa pada dasarnya meliputi semua perkara yang saya mahu mengajar anda hari ini di seminar hari ini, 715 00:43:34,830 --> 00:43:38,580 tetapi sekali lagi, saya benar-benar ingin tegaskan, jika anda mahu mengambil Vim 716 00:43:38,580 --> 00:43:42,120 ia adalah benar bahawa terdapat keluk pembelajaran yang lebih tinggi sedikit pada mulanya. 717 00:43:42,120 --> 00:43:44,230 Di awal-awal lagi anda akan sedikit kurang produktif 718 00:43:44,230 --> 00:43:47,010 daripada anda mungkin akan menjadi sebaliknya, tetapi jika anda berpegang dengannya 719 00:43:47,010 --> 00:43:49,890 dalam masa beberapa hari atau beberapa beberapa minggu, bergantung kepada berapa cepat anda belajar, 720 00:43:49,890 --> 00:43:56,300 anda akan menjadi banyak, lebih cepat, dan saya cuba untuk memberikan demonstrasi 721 00:43:56,300 --> 00:43:59,070 kepada apa Vim mampu tetapi saya tidak benar-benar mendapat peluang untuk menunjukkan kepada anda 722 00:43:59,070 --> 00:44:03,230 apa yang berlaku apabila saya biasanya-contohnya, di dalam kelas saya menaip ke dalam nota saya dengan Vim. 723 00:44:03,230 --> 00:44:07,920 Ini kerana saya boleh bekerja lebih cepat dalam Vim daripada yang saya dapat dengan mana-mana program lain. 724 00:44:07,920 --> 00:44:14,480 Ia adalah bermakna peningkatan produktiviti 2 atau 3 kali dalam Vim berbanding dengan program lain, 725 00:44:14,480 --> 00:44:18,800 bukan sahaja dengan kelajuan penyuntingan teks tetapi juga dalam cara yang saya boleh bergerak dokumen itu 726 00:44:18,800 --> 00:44:21,510 dan cara saya boleh mengakses fail lain pada komputer saya 727 00:44:21,510 --> 00:44:23,110 dan melompat di antara mereka dan sebagainya dan sebagainya. 728 00:44:23,110 --> 00:44:27,600 Ia hanya dorongan produktiviti benar-benar, benar-benar besar. 729 00:44:27,600 --> 00:44:30,550 >> Tetapi apabila anda sedang belajar, anda ingin memastikan anda belajar satu perkara pada satu masa, 730 00:44:30,550 --> 00:44:34,970 dan cuba untuk tidak mengatasi diri anda dengan arahan terlalu banyak yang berbeza 731 00:44:34,970 --> 00:44:39,090 kerana terdapat banyak arahan dan banyak jalan pintas yang berbeza anda boleh belajar dalam Vim. 732 00:44:39,090 --> 00:44:41,780 Anda mahu mengambil sedikit pada masa dan sejak beberapa tahun 733 00:44:41,780 --> 00:44:48,990 secara beransur-ansur mengumpul pemahaman yang lebih besar dan lebih besar daripada Vim. 734 00:44:48,990 --> 00:44:51,790 Jika anda ingin terus mengetahui lebih lanjut, ini adalah sebahagian daripada topik-topik yang lebih maju 735 00:44:51,790 --> 00:44:55,900 anda boleh terus mempelajari, dan walaupun ini hampir tidak calar permukaan. 736 00:44:55,900 --> 00:44:59,050 Berikut adalah beberapa plugin popular anda boleh berasa bebas untuk menyemak dan Google mereka 737 00:44:59,050 --> 00:45:03,750 dan bermain-main dengan mereka jika anda mahu dan hanya melihat apa jenis plugin di luar sana. 738 00:45:03,750 --> 00:45:06,260 Dan kemudian pada akhir PowerPoint ini, saya termasuk sekumpulan pautan 739 00:45:06,260 --> 00:45:08,740 kepada pelbagai sumber yang anda boleh gunakan untuk belajar daripada. 740 00:45:08,740 --> 00:45:12,700 Berikut adalah sekumpulan link yang berbeza anda boleh gunakan untuk memulakan dengan Vim. 741 00:45:12,700 --> 00:45:15,150 Mereka mempunyai tutorial yang berbeza dan barang kecil, 742 00:45:15,150 --> 00:45:17,770 dan akhirnya, ini adalah beberapa perkara yang lebih maju anda boleh menggunakan 743 00:45:17,770 --> 00:45:19,790 juga lihat juga, 744 00:45:19,790 --> 00:45:22,340 beberapa acuan skrin dan beberapa teknik yang lebih maju dalam Vim 745 00:45:22,340 --> 00:45:26,450 dan juga beberapa keping yang berbeza kod sumber anda boleh mencari di GitHub 746 00:45:26,450 --> 00:45:28,760 hanya untuk melihat fail konfigurasi orang lain 747 00:45:28,760 --> 00:45:32,710 atau untuk melihat plugin dalam Vim dan sebagainya dan sebagainya. 748 00:45:32,710 --> 00:45:40,380 >> Itu sahaja yang saya ada untuk anda. 749 00:45:40,380 --> 00:45:43,000 [CS50.TV]