Di VIM, bisakah saya mencari tahu kunci apa yang baru saja saya ketik?
11
Terkadang saya akan menggunakan VIM dan sesuatu akan terjadi, dan saya tidak tahu apa itu atau apa yang saya ketik yang menyebabkannya. Apakah ada cara untuk membuat daftar beberapa kunci terbaru yang diketik, dan, lebih baik lagi, mencari tahu tindakan apa yang dipicu?
Vimmemiliki opsi -Wyang dapat Anda penyalahgunaan, tetapi tidak berfungsi saat Vimmasih berjalan.
-w {scriptout}
Semua karakter yang Anda ketik direkam dalam file {scriptout}, hingga Anda keluar dari Vim. Ini berguna jika Anda ingin membuat file skrip untuk digunakan dengan "vim -s" atau ": source!". Jika file {scriptout} ada, karakter ditambahkan.
-W {scriptout}
Suka -w, tetapi file yang ada ditimpa.
Memanggil Vimdengan mis alias
vim -W /tmp/vimlog-$(id -un)
akan membiarkan Anda memeriksa dengan less /tmp/vimlog-$(id -un)atau cat -v /tmp/vimlog-$(id -un)apa yang Anda benar-benar diketik setelah Anda berhenti Vim.
Ini adalah ide yang menarik. Saya akan mencoba ini dan melihat apakah saya belajar sesuatu.
Owen
3
Pertama-tama pastikan bahwa vim mengingat semua garis sejarah. Ini menetapkan sejarah ke 1000 perintah dan pencarian:
:set history=1000
Jika Anda mengetik awal dari apa yang Anda cari, Anda dapat menggunakan ↑↓tombol untuk menelusuri sejarah - ini berlaku untuk perintah dan pencarian.
Misalnya, jika Anda telah mencari china maka cuba maka Chad lalu cyprus :
Anda dapat mengetik /cdan menekan ↑beberapa kali. Anda akan menemukan ini akan menampilkan /cyprusmaka /cubakemudian /china( /Chaddilewati karena tidak memulai dengan c ).
Saya tidak berpikir ini berlaku untuk perintah mode normal hanya untuk perintah mode ex (yaitu perintah yang dimulai dengan ':', contoh: e: w: q)
kmkkmk
1
Untuk melihat riwayat perintah ex, Anda juga bisa cukup mengetik q:dalam mode normal. Hal yang sama berlaku untuk riwayat pencarian denganq/
Yab
2
Anda dapat menambahkan ini ke .vimrc Anda:
set showcmd
Ini akan menampilkan di bilah status perintah yang Anda buat saat Anda mengetiknya. Meskipun ini tidak akan memberi Anda sejarah, ini adalah solusi terdekat yang saya tahu.
Namun jika Anda berbicara tentang experintah, awnser Gareth adalah cara untuk pergi
Pertama-tama pastikan bahwa vim mengingat semua garis sejarah. Ini menetapkan sejarah ke 1000 perintah dan pencarian:
Jika Anda mengetik awal dari apa yang Anda cari, Anda dapat menggunakan ↑ ↓tombol untuk menelusuri sejarah - ini berlaku untuk perintah dan pencarian.
Misalnya, jika Anda telah mencari china maka cuba maka Chad lalu cyprus :
Anda dapat mengetik
/c
dan menekan ↑beberapa kali. Anda akan menemukan ini akan menampilkan/cyprus
maka/cuba
kemudian/china
(/Chad
dilewati karena tidak memulai dengan c ).Perintah lain:
:history
daftar seluruh sejarah.:his
daftar sejarah perintah.:his /
daftar riwayat pencarian.sumber
q:
dalam mode normal. Hal yang sama berlaku untuk riwayat pencarian denganq/
Anda dapat menambahkan ini ke .vimrc Anda:
Ini akan menampilkan di bilah status perintah yang Anda buat saat Anda mengetiknya. Meskipun ini tidak akan memberi Anda sejarah, ini adalah solusi terdekat yang saya tahu.
Namun jika Anda berbicara tentang
ex
perintah, awnser Gareth adalah cara untuk pergisumber