Lihat titik kode Unicode dari karakter saat ini


36

Bagaimana saya bisa melihat titik kode Unicode dari karakter tempat kursor berada? Misalnya, jika kursor saya pada ⌘karakter, saya ingin Vim memberi tahu saya bahwa itu adalah U + 2318 .

Informasi alternatif, seperti representasi basis-10 (8984) atau representasi UTF-8 (E2 8C 98) akan dapat diterima.

Saya bertanya tentang Unicode dan UTF-8 karena mereka paling umum, tetapi jika jawabannya digeneralisasikan ke set karakter lain dan penyandian, itu akan baik untuk diketahui juga.

Jawaban:


45

Anda dapat menggunakan %batau %Bdalam statuslineatau rulerformat. Dari :help statusline:

b N   Value of character under cursor. 
B N   As above, in hexadecimal. 

Sebagai contoh:

set statusline=%b\ %B

Memberi anda:

8984 2318

Cara lain adalah dengan menggunakan gaatau :asciiperintah. Dari :help ga:

:as[cii]        or                                      ga :as :ascii
ga                      Print the ascii value of the character under the
                        cursor in decimal, hexadecimal and octal.

Yang akan memberi Anda:

<⌘> 8984, Hex 2318, Octal 21430

Pemetaan lain yang bermanfaat adalah g8:

e2 8c 98

Yang mencetak nilai hex byte aktual yang disimpan dalam file (perintah ini mengasumsikan UTF-8).

Selain itu ada dua plugin bermanfaat yang bisa Anda gunakan:

  • unicode.vim menambahkan berbagai perintah terkait unicode yang bermanfaat. Gunakan :UnicodeNameuntuk mendapatkan detail karakter di bawah kursor.

  • characterize.vim ; ini memperluas gaperintah dengan nama unicode, mirip dengan unicode.vim.


"perintah ini mengasumsikan UTF-8" - dokumentasi mengatakan ini, tetapi pengalaman saya adalah bahwa ia berfungsi dalam apa pun encoding(tetapi tidak menghormati fileencoding).
— Random832

3
Setelah percobaan lebih lanjut, a jika encodingdiatur ke pengkodean multibyte non-utf8 seperti cp932, g8hanya akan mencetak byte pertama, tetapi gaakan menampilkan nomor karakter lengkap.
— Random832

Apakah ada cara agar output g8 muncul di statusline dengan sendirinya? Agak suka pertanyaan asli dengan bagian "informasi alternatif".
— 0fnt
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.