Cara standar memasukkan en dasbor di Vim adalah dengan menggunakan digraf, seperti yang dijelaskan tommcdo .
Namun, saya menemukan digraf pada umumnya, dan khususnya yang satu ini ( Ctrl+k, -, Shift+N) cukup canggung untuk mengetik. Untuk input tanda hubung yang lebih cepat, Anda bisa menambahkan pasangan pemetaan mode-insert berikut ke file tipe file, seperti .vim/after/ftplugin/markdown.vim
.
Untuk tanda hubung en / em, masing-masing:
inoremap <buffer> --<space> –<space>
inoremap <buffer> -- —
NB Cara <buffer>
pemetaan ini hanya akan berlaku untuk file Penurunan harga. Ini perlu karena ada beberapa konteks (misalnya pemrograman) di mana saya tidak ingin dua tanda hubung diganti dengan tanda hubung.
Pemetaan ini mengambil keuntungan dari kenyataan bahwa dalam konteks saya biasanya menggunakannya, en strip dikelilingi oleh spasi, dan em strip tidak . * Oleh karena itu, menggunakan pemetaan ini berarti bahwa saya dapat menggunakan penekanan tombol yang persis sama dalam editor teks yang kurang mampu yang terkadang saya paksa untuk menggunakan dan masih mendapatkan output yang masuk akal. **
Saya sebenarnya menggunakan solusi yang sedikit lebih rumit dari yang di atas, karena, untuk alasan tipografi, saya suka mengelilingi em-dash saya dengan ruang rambut . Memiliki ini dalam Markdown membuatnya kurang mudah dibaca, tetapi untungnya, Vim memiliki solusi untuk ini, dengan fungsi "menyembunyikan", yang memungkinkan Anda untuk menyembunyikan item sintaksis tertentu ketika kursor berada pada baris yang berbeda: ***
inoremap <buffer> --<space> –<space>
inoremap <buffer> --  — 
syntax match entity_hairspace " " conceal
setl conceallevel=2
* Jika saya perlu menggunakan en dasbor tanpa spasi, maka saya cukup menekan backspace setelah mengetik pemetaan.
** Jika Anda biasanya tidak menggunakan en-dash seperti ini, atau jika Anda tidak pernah berani keluar dari Vim, Anda bisa menggunakan sesuatu yang lain untuk memicu pemetaan: misalnya --.
dan ---
. Jika Anda menggunakan pemicu lain, Anda juga bisa menempatkan ini langsung di .vimrc Anda, dan menghapus <buffer>
opsi.
*** Anda juga dapat menggunakan karakter tersembunyi cchar
untuk mengganti item sintaks dengan karakter tunggal, alih-alih menyembunyikannya sepenuhnya. Jika Anda khawatir tentang masalah penyandian, Anda dapat menggunakan ini untuk membuat Vim menampilkan –
entitas HTML dalam file sebagai en dashes.