Agar dapat menambahkan baris kosong tanpa masuk ke mode penyisipan, saya mencoba memetakan ALT-o
dan ALT-O
ke o<ESC>
dano<ESC>
Saya sudah mencoba yang berikut di blog saya .vimrc
map <M-o> o<ESC>
map <M-O> O<ESC>
dan
map <ALT-o> o<ESC>
map <ALT-O> O<ESC>
dan (seperti yang disarankan di bawah)
map <A-o> o<ESC>
map <A-O> O<ESC>
tapi tidak ada yang berhasil. Itu hanya memberikan perilaku yang biasa, seolah-olah ALT-o
belum didefinisikan.
Ini adalah pertama kalinya saya mengubah .vimrc
file, dan saya tidak dapat menemukan di mana dokumentasi memberitahu Anda bagaimana menentukan berbagai kunci. Tetapi saya dapat memverifikasi bahwa .vimrc
file saya sedang dibaca, dengan memasukkan:
map <Enter> ihello<ESC>
Yang berhasil memetakan <Enter>
untuk memasukkan hello
dan kembali ke mode perintah.
Saya menggunakan vim dengan cygwin.
vim
keyboard-shortcuts
cygwin
Eric Wilson
sumber
sumber
<C-o>
dan<C-O>
.Jawaban:
Untuk melihat apa yang dikirimkan terminal Anda ketika Anda menekan tombol, beralih ke mode insert, tekan
Ctrl+V
, lalu tombol. Sebagian besar kunci dengan sebagian besar terminal mengirimkan urutan pelarian di mana hanya karakter pertama yang merupakan karakter kontrol;Ctrl+V
menyisipkan karakter berikutnya secara harfiah, sehingga Anda bisa memasukkan seluruh urutan pelarian dengan cara itu.Terminal yang berbeda mengirimkan urutan pelarian yang berbeda untuk beberapa kombinasi tombol. Banyak terminal mengirim karakter yang sama (
^O
) untuk keduanyaCtrl+O
danCtrl+Shift+O
; jika itu masalahnya, Vim tidak akan dapat membedakan di antara mereka.Anda menyebutkan bahwa Anda menggunakan Cygwin; di terminal mana Anda menjalankan Vim adalah informasi yang paling relevan. Jika Anda menggunakan konsol Windows asli, dapatkan terminal yang lebih baik. Saya merekomendasikan MinTTY untuk menjalankan aplikasi mode teks Cygwin di terminal di Windows di luar X, tetapi Windows-asli RXVT dan PuTTYcyg Cygwin juga baik. (Juga Console2 untuk menjalankan aplikasi konsol Windows, tapi itu di luar topik di sini).
sumber
Jika
Control+V
diikuti olehALT-x
pertunjukan^[x
(ketik terminal) Anda dapat memperbaikinya dengan skrip kecil ini dari vim.wikia.com :Tambahkan ke .vimrc untuk semua pemetaan tombol alt.
sumber
Ini berfungsi untuk saya di terminal xfce Ubuntu 16.04 (dan terminal karat alacritty)
Tetapkan pemicu snipet ultisnip ke
Meta-/
(seperti halnya snipet emacs)let g:UltiSnipsExpandTrigger="^[/"
Sekarang saya ketikkan
^[/
vimDalam mode sisipkan
Ctrl-V Alt-/
(
Meta
adalahAlt
kunci pada keyboard PC saya)sumber
Tombol M (eta) adalah tombol windows. Itu adil
<A-o>
.sumber
map <A-o> o<ESC>
dan itu berhasil untuk saya. Jika Anda memasukkannya ke dalam.vimrc
, apakah Anda memuatnya kembali?