Ini juga terjadi ketika menyalin dan menempel. Saya mencoba mengedit kode Go dan mengetik atau menyalin dan menempel "paket utama" keluar sebagai "pkage main". Tidak tahu mengapa saya tidak bisa mengetikkan c. Menekan hapus backspace mencetak ^? dan menekan delete sebenarnya menghapus karakter. Saya mencoba memulai kembali tetapi saya tidak tahu bagaimana lagi untuk memecahkan masalah ini dan saya tidak dapat menemukan apa pun secara online.
vi
troubleshooting
Saya seorang noob
sumber
sumber
Jawaban:
Kemungkinan Penyebab 1:
Jika cberfungsi normal di mana-mana sehingga masalah ini hanya memengaruhi Vim, bisa jadi mungkin ada singkatan atau pemetaan yang diatur c. Periksa
.vimrc
file Anda .Saya hanya sementara mengubah cbackspace saya di Vim dalam mode normal, command, normal, dan insert:
(Di mana
^?
menunjukkan hasil pengetikan Ctrl-VBackspace.)Kemungkinan Penyebab 2:
Anda memiliki
c
karakter hapus di TTY Anda. Artinya, seolah-olah perintah berikut telah dijalankan:Namun, ini juga akan mempengaruhi program dan shell lainnya. Mencoba
di shell Anda untuk mengatur ulang parameter TTY ke beberapa pengaturan default yang masuk akal. Ini adalah perintah yang berguna untuk diingat; itu sangat berguna ketika beberapa program visual tiba-tiba mati, meninggalkan pengaturan TTY dalam keadaan tidak pantas.
sumber
stty sane
perintah. Layak diingat. Berapa kali saya harus mematikan jendela terminal karena ada sesuatu yang rusak ...Kedengarannya seperti sesuatu yang kacau dalam proses paste
Saat Anda menempelkan ke editor lain, apakah itu berfungsi atau sama saja? Jika itu sama, maka mungkin sumbernya sudah kacau sejak awal.
Jika editor lain menempel dengan benar, cobalah pintasan tempel clipboard:
"+ ++p
Jika Anda menyalin dari aplikasi lain hanya dengan memilih menggunakan mouse Anda, Anda sebaiknya menggunakan:
"+ *+p
Jika Anda masih menemukan keanehan, coba:
:set paste
untuk memasuki mode tempel vim.:set nopaste
.sumber
lsb_release -a
harus ada info ringkasan sistem multi-line, danvim --version
juga harus menjadi respons multi-line dengan detail versi. Apakah Anda dapat menyalin tempel kedua keluaran ini dan memperbarui pertanyaan dengan info ini? Terima kasihMenyalin dan menempel di konsol berfungsi dengan cara teks disisipkan char oleh char, dan Vim mengartikan masing-masing char berarti sesuatu.
Saat menggunakan Vim, pastikan Anda dalam mode --INSERT-- , dan bukan mode perintah. Dalam mode Perintah, a 'c' berarti berubah, dan misalnya, jika Anda mengetikkan ce, Vim akan menghapus hingga akhir kata dan memasuki mode Sisipkan.
'^' adalah singkatan dari Command. ^ C berarti Ctrl+ C. Itu konsolnya, bukan editor Vim itu sendiri. Anda akan mendapatkan karakter yang serupa Jika Anda menekan Ctrl- (sesuatu) atau tombol Escape.
Semua tombol navigasi standar (seperti Beranda, Hapus, PgUp / PgDn, tombol panah), dimasukkan dalam Vi modern sebagai cadangan. Ini untuk pengguna yang memilih untuk tidak menggunakan / merasa sulit untuk menggunakan x atau d atau tombol gulir hjkl.
sumber