Как ввести символ Юникода, используя последовательность UTF-8 в Vim?

символ валюты для Северной Кореи. Его кодовая точка Unicode -U+20a9.
В режиме вставки я могу нажать Ctrl-V u20a9 ввести его.
Если бы я только знал его форму UTF-8 e2 82 a9, как я могу напечатать его легко?

2 ответов


такое же решение с твист автоматизации, чтобы помочь запомнить его:

command! -nargs=* UTF8 call EncodeUTF8(<f-args>)
fun! EncodeUTF8(...)
   let utf8str = ""
   for i in a:000
      let utf8str .= "\x" . i
   endfor
   exe "norm i" . eval("\"".utf8str."\"")
endfun

теперь вы можете :UTF8 e2 82 a9

вы также можете ввести этот конкретный символ с <C-k>W=. См.:help digraph-table-mbyte.

обратите внимание, что вы также можете получить информацию о персонаже с ga и g8 в нормальном режиме. Так что было бы проще просто сделать <C-r>="\xe2\x82\xa9" один раз, а затем сделать ga получить код-точка.


Я только что нашел это решение:

в режиме вставки, нажмите клавишу Ctrl-R ="\xe2\x82\xa9" Enter.

Я хотел бы знать о любом другом (короче?) методы, однако.