Ketika Anda dalam keadaan mengalir, Vim secara serius mempercepat pengeditan, baik itu menulis kode, puisi atau prosa. Tetapi karena kurva belajar terlalu curam untuk editor teks, sangat mudah untuk mempertahankan kebiasaan buruk dari saat Anda baru saja menguasai editor. Vim mempercepat pekerjaan sehingga sangat sulit untuk menghilangkan kebiasaan-kebiasaan ini, karena Anda mungkin bahkan tidak menyadarinya. Tapi itu sepadan. Saya akan membuat daftar beberapa antipattern yang paling umum.
Satu garis bergerak
Jika Anda perlu melompati lebih dari beberapa garis, maka bergerak sepanjang satu garis dengan tombol
j
atau
k
tidak efisien. Ada banyak
cara untuk bergerak secara vertikal di Vim. Saya menemukan dua yang paling berguna adalah paragraf dan lompatan layar. Itu tergantung pada seberapa jauh dan seberapa tepatnya Anda harus bergerak.
{
- Pergi ke awal paragraf atau blok kode sebelumnya.
}
- Pergi ke akhir paragraf atau blok kode berikutnya.
Ctrl+F
- Maju satu layar.
Ctrl+B
- Kembali satu layar.
Jika Anda tahu persis ke mana Anda harus pergi, maka Anda dapat menggunakan navigasi melalui pencarian: cari maju dengan
/
, dan kembali -
?
.
Selalu berguna untuk kembali ke tempat sebelumnya, yang cukup mudah dilakukan dengan dua tanda kutip atau
gi
: kembali ke tempat terakhir di mana Anda memasukkan teks. Jika mau, Anda bahkan dapat menavigasi antara semua tempat di mana teks dimasukkan menggunakan
g;
dan
g,
Gerakan karakter tunggal
Demikian pula, memindahkan satu karakter pada satu waktu dengan tombol
h
dan
l
sering membuang-buang waktu ketika kita memiliki
t
dan
f
:
t<char>
- Bergerak maju sampai karakter berikutnya muncul.
f<char>
- Bergerak maju untuk kemunculan karakter berikutnya.
T<char>
- Pindah kembali ke kemunculan karakter sebelumnya.
F<char>
- Bergerak mundur untuk kemunculan karakter sebelumnya.
Bergerak melalui kata-kata dengan tombol
w
,
W
,
b
,
B
,
e
dan
E
juga lebih baik. Dan di sini navigasi pencarian berguna, dan jangan lupa bahwa Anda dapat
menyalin, menghapus, dan mengubah teks maju atau mundur ke hasil pencarian:
y/search<Enter>
y?search<Enter>
d/search<Enter>
d?search<Enter>
c/search<Enter>
c?search<Enter>
Cari kata di bawah kursor
Jangan repot mengetik atau menyalin / menempel, cukup tekan
*
atau
#
. Sungguh menakjubkan betapa jauh lebih cepat pekerjaan menjadi ketika Anda menguasai hot keys ini.
Hapus dan Tempel
Tidak perlu menghapus teks untuk menggantinya dengan masuk ke mode penyisipan:
d2wi
Gunakan tombol
c
lebih cepat dan lebih akurat:
c2w
Jadi seluruh operasi menjadi berulang dengan titik (
.
).
Menggunakan tombol panah
Vim memungkinkan Anda untuk menggunakan tombol panah untuk bergerak dalam mode normal dan dalam mode insert, tetapi jika Anda terbiasa menggunakan
hjkl
untuk navigasi, maka panah sudah tampak agak canggung, karena sepanjang sesi Vim jari-jari berada di
tengah keyboard , yang nyaman untuk mengetik mengetik. Kunci Beranda dan Akhir adalah serupa: meskipun mereka bekerja seperti di kebanyakan editor, tidak ada alasan khusus untuk menggunakannya ketika persamaan
^
dan
$
dekat.
Dengan demikian, disarankan untuk menyapih diri Anda dari tombol panah dengan menonaktifkannya setidaknya untuk sementara waktu:
noremap <Up> <nop>
noremap <Down> <nop>
noremap <Left> <nop>
noremap <Right> <nop>
Mengetik buta dengan tombol tengah tidak hanya memberi keuntungan kecepatan, tetapi juga membuat Anda merasa lebih baik, karena pergelangan tangan Anda berada di depan keyboard dan tidak bergerak terlalu jauh, dan itu
membantu beberapa orang
untuk melindungi diri mereka dari sindrom terowongan .
Pindah dalam mode sisipkan
Keuntungan tambahan dari pengetikan buta di garis tengah adalah bahwa Anda menghilangkan kebiasaan bergerak dalam mode sisipkan: mode normal dirancang untuk ini. Segera setelah Anda perlu pindah ke suatu tempat, Anda beralih ke mode normal dan bergerak jauh lebih efisien. Ini juga membantu membuat operasi tempel lebih atomik dan karenanya lebih nyaman untuk pengulangan.
Tekan Esc
Tombol Escape pada keyboard modern jauh lebih jauh dari barisan tengah daripada pada
keyboard Bill Joy ketika ia mendesain vi. Biasanya menekan Escape tidak diperlukan:
Ctrl+[
lebih dekat dan lebih nyaman, Anda akan mengubah kebiasaan Anda dengan cepat. Sebagai opsi, Anda dapat mempertimbangkan mencocokkan tombol Caps Lock yang cukup tidak berguna atau bahkan kombinasi yang tidak biasa, seperti
jj
dalam sistem operasi Esc. Meskipun ini sedikit proposal radikal, ini berfungsi dengan baik bagi banyak orang:
inoremap jj <Esc>
Pindah ke awal atau akhir garis, lalu masukkan
Cukup gunakan
I
dan
A
Selain itu, mereka membuat tindakan berulang untuk jalur lain di mana operasi yang sama mungkin diperlukan.
Masuk ke mode insert, lalu buat baris baru
Gunakan
o
dan
O
untuk membuat baris baru lebih rendah dan lebih tinggi, masing-masing, dan pada saat yang sama masuk ke mode insert di atasnya
Masuk ke mode penyisipan untuk menghapus teks
Ini adalah kontradiksi yang cukup jelas. Sebagai gantinya, hapus teks dengan memindahkannya dan menggunakan
d
dengan gerakan atau objek teks yang sesuai. Sekali lagi, tindakan ini dapat diulang dan berarti Anda tidak menahan backspace. Secara umum, jika Anda menahan tombol di Vim, mungkin ada cara yang lebih cepat.
Ulangi perintah atau pencarian
Cukup ketikkan
@:
untuk perintah atau n / N untuk pencarian; Vim tidak melupakan pencarian terakhir. Jika ini bukan perintah atau pencarian terakhir, tetapi sudah pasti dalam sejarah, masukkan
q:
atau
q/
, temukan di daftar dan tekan Enter.
Penggantian
Masukkan
&
untuk mengulangi pada baris saat ini dari penggantian terakhir. Anda dapat mengulanginya di semua baris dengan mengetik
g&
.
Ingat Makro
Cukup masukkan
@@
.
Sebenarnya, ini hanya beberapa cara umum untuk meningkatkan kecepatan dan efisiensi keseluruhan bekerja dengan editor tanpa menginstal plugin atau penugasan kembali tombol yang signifikan. Lihat juga
wiki untuk tips tentang Vim , ada beberapa contoh lain yang sangat berguna.