Стандартний спосіб вставити штрих у Vim - використовувати диграф, як пояснив tommcdo .
Тим НЕ менше, я вважаю диграфів в цілому, і в Зокрема , це один ( Ctrl+k, -, Shift+N) досить незручно набирати. Для швидшого введення тире ви можете додати наступну пару відображень у режимі вставки до файлу типу файлів, наприклад .vim/after/ftplugin/markdown.vim
.
Для en / em тире відповідно:
inoremap <buffer> --<space> –<space>
inoremap <buffer> -- —
Примітка. <buffer>
Засоби цього відображення застосовуються лише до файлів Markdown. Це необхідно, оскільки є деякі контексти (наприклад, програмування), де я не хочу, щоб дві дефіси були замінені тире.
Ці відображення скористаються тим, що в контекстах, якими я їх зазвичай використовую, en тире оточений пробілами, а em тире - ні . * Таким чином, використання цих відображень означає, що я можу використовувати точно такі ж натискання клавіш у менш спроможних текстових редакторах, які я іноді змушений використовувати і все-таки отримую розумний вихід. **
Насправді я використовую дещо складніше рішення, ніж зазначене вище, тому що з типографічних причин я люблю оточувати свої ем-штрихи просторами для волосся . Наявність їх у Markdown робить його менш читабельним, але, на щастя, Vim має для цього рішення, з його функцією "приховування", яка дозволяє приховати певні елементи синтаксису, коли курсор знаходиться в іншому рядку: ***
inoremap <buffer> --<space> –<space>
inoremap <buffer> --  — 
syntax match entity_hairspace " " conceal
setl conceallevel=2
* Якщо мені коли-небудь потрібно буде використовувати без тиску нерозбірник, я можу просто натиснути зворотну область після введення карти.
** Якщо ви зазвичай не використовуєте подібні тире, або якщо ви ніколи не виходили з Vim, ви можете використовувати щось інше, щоб запустити відображення: наприклад, --.
і ---
. Якщо ви використовуєте інші тригери, ви також можете розмістити це безпосередньо у своєму .vimrc та видалити <buffer>
параметри.
*** Ви також можете використовувати прихований символ, cchar
щоб замінити елементи синтаксису одним символом, а не приховувати їх повністю. Якщо вас турбують проблеми з кодуванням, ви можете використовувати це, щоб Vim відображав –
HTML-файли у файлі як тире.