Saat menulis dokumen sesekali, saya ingin memasukkan karakter Unicode ke dalam teks. Terkadang saya tahu kode karakter dan terkadang saya mencarinya di web.
Saat ini saya masuk ke mode insert dan kemudian menggunakan <Ctrl-V>u{four digit hex number}
, yang bisa sangat melelahkan. Apakah ada cara yang lebih mudah untuk memasukkan karakter (mungkin beberapa bentuk tempel)?
insert-mode
unicode
input-methods
Martin York
sumber
sumber
Jawaban:
Pendahuluan : Ini tidak ada hubungannya dengan Vim seperti itu, tetapi saya akan menunjukkan kepada Anda apa yang saya anggap sebagai cara "terbaik" untuk memasukkan karakter-karakter ini sejauh ini; Sistem digraf Vim kurang lebih sama, tetapi hanya bekerja dengan Vim. Ini akan bekerja di semua aplikasi.
Ini hanya akan bekerja untuk sistem X11 (Linux, BSD, dll.) Untuk Windows, ada AllChars . Itu belum diperbarui untuk sementara, tetapi saya dapat mengonfirmasi itu berfungsi baik dengan Windows 7 (menggunakannya pada pekerjaan saya sebelumnya). Saya percaya OS X juga memiliki fasilitas yang baik untuk melakukan ini dibangun di OS; jika Anda menggunakan OS X, saya mendorong Anda untuk memeriksanya, tetapi karena saya belum pernah benar-benar menggunakan OS XI tidak dapat mengarahkan Anda kepada mereka.
Di bawah ini adalah (bagian dari) draft artikel weblog yang saya miliki dalam pipa. Sayangnya panduan yang benar-benar komprehensif belum ada, dan di bawah ini tidak menggambarkan semua fitur yang ditawarkannya (misalnya, beberapa bagian tentang kunci mati tidak ada) dan dapat ditulis dengan lebih baik di beberapa bagian, tetapi saya pikir itu masih "cukup bermanfaat".
'Urutan penulisan' adalah menekan Composetombol dan kemudian satu atau lebih karakter untuk menghasilkan beberapa karakter yang tidak ditemukan pada keyboard Anda, misalnya, menekan Compose, segera diikuti oleh "dan amungkin menghasilkan
ä
.Secara default, Composetidak terikat pada tombol apa pun 1 ; tombol Kanan Alt(alias. Alt Gr) sering digunakan, tetapi Anda mengatur ini ke tombol apa pun yang Anda inginkan.
Atur menggunakan xmodmap
Anda dapat menggunakannya
xmodmap
untuk mengatur ini:Anda mungkin ingin menambahkan ini ke
~/.Xmodmap
file 2 Anda :Atur menggunakan XKB
Anda juga dapat mengatur kunci penulisan sebagai opsi ke XKB dengan
setxkbmap
:Untuk membuatnya permanen, tambahkan perintah ke file startup X Anda, atau sebagai alternatif, Anda juga dapat mengaturnya di
/etc/X11/xorg.conf
:Atau, dengan gaya yang lebih 'modern', Anda dapat membuat file
/etc/X11/xorg.conf.d/90-compose.conf
:Daftar nilai yang mungkin dapat ditemukan di
xkeyboard-config(7)
, bagian 'Posisi kunci Menulis' 3 .Menyiapkan kunci mati
Kunci mati terutama digunakan untuk menambahkan aksen atau diakritik ke huruf (seperti umlaut, aksen kuburan, dll.), Meskipun dapat digunakan untuk membuat karakter apa pun. Ini bekerja dengan ... TODO '
Membuat file ~ / .XCompose
File Tulis standar jika
~/.XCompose
tidak ada adalah/usr/share/X11/locale/$LANG/Compose
. Memiliki sendiri yang~/.XCompose
menimpa default, tetapi Anda masih dapat memasukkan default dengan:Perubahan pada file Tulis apa pun akan berlaku saat Anda memulai ulang aplikasi. Anda tidak perlu memulai ulang X.
Menulis kunci
'Susunan urutan' sedang menekan Composetombol dan kemudian satu atau lebih karakter untuk menghasilkan beberapa karakter, misalnya:
Berarti mendesak Compose, segera diikuti oleh "dan amenghasilkan
ä
.<Multi_key>
menunjukkan bahwa kami menggunakan Composekunci. kita kemudian mengikuti ini dengan daftar satu atau lebih kunci, ini haruskeysyms
, yang merupakan representasi simbolis dari kunci yang digunakan oleh X (Lihat bagian Keysyms).Diikuti oleh a
:
, diikuti oleh hasilnya.Hasil:
Catatan : File A Compose adalah case-sensitive, sehingga
A
adalah tidak sama dengana
.Kunci mati
MELAKUKAN
Buat itu berfungsi di GTK & Qt
Setel variabel lingkungan
GTK_IM_MODULE
&QT_IM_MODULE
kexim
.Bourne shell:
Shell c:
Lihat juga
Saya
~/.XCompose
Inilah
~/.XCompose
yang saya gunakan ; Saya menggunakan skrip untuk menghasilkan ini, tetapi saya tidak sengaja menimpa ini ketika mengompilasinya> _ <Jadi saya perlu menulis ulang.Perhatikan juga baris ini:
Menekan Compose ibakan memasukkan string ini (nomor IBAN uji acak); sangat berguna untuk menguji aplikasi di mana nomor tersebut diperlukan untuk membuat beberapa objek (Orang, Organisasi); XCompose juga dapat berfungsi sebagai alat "snippet" :-)
Catatan kaki
1: Beberapa keyboard UNIX memiliki Composetombol khusus ( seperti SUN ini ), tetapi ini cukup jarang saat ini.
2: Bergantung pada pengaturan Anda yang ada, ini mungkin atau mungkin tidak dibaca saat startup, tergantung pada konfigurasi Anda, tambahkan baris
xmodmap ~/.Xmodmap
ke salah satu~/.xinitrc
atau~/.xsession
; juga melihat wiki ArchLinux .3: Direproduksi untuk keuntungan Anda:
sumber
C-x 8 RET
dalam editor yang tidak vi, saya tidak tahu apakah Vim memiliki sesuatu yang serupa).Untuk memasukkan karakter Unicode seperti euro atau simbol hak cipta, atau tanda diakritik seperti Jerman umlaut atau aksen kuburan,
digraphs
dapat digunakan.Misalnya, dalam mode sisipkan tekan Ctrl+ kdan ketikkan yang berikut:
a'
untuká
,E'
untukÉ
,n?
untukñ
,a:
untukä
,ss
untukß
,a!
untukà
,a>
untukâ
untukê
,a?
untukã
,a*
untukα
(alpha),b*
untukβ
(beta),g*
untukγ
(gamma),d*
untukδ
(delta).22
untuk²
,33
atau³
Eu
untuk€
(Euro),Pd
untuk£
(Pound),Co
untuk©
(Hak Cipta),DG
untuk°
(Gelar),OK
untuk✓
,XX
untuk✗
,Sb
untuk∙
(peluru),-N
for–
(en dash),-M
for—
(em dash)Ketika opsi digraf diatur (
:set dg
), Anda juga dapat menggunakan metode berikut:a
Backspace:
untukä
,E
Backspaceu
untuk€
, dll.Untuk daftar jenis digraf yang didefinisikan saat ini:
:digraphs
(:dig
).Sumber: Memasukkan karakter khusus di situs Vim Wikia .
OS X
Jika Anda menggunakan OS X, sangat mudah untuk mengetik huruf beraksen di mana saja dengan metode berikut:
á
, euntuké
, iuntukí
dan yang sejenis,ã
, nuntukñ
dan serupa,ü
,¡
, Option+ Shift+ ?untuk¿
,Lihat juga:
sumber
Plugin unicode saya memudahkan input karakter unicode. Secara khusus itu memungkinkan
:Digraph <name>
- Cari digraf untuk karakter:UnicodeTable
- Menampilkan tabel characteret:UnicodeName
- Identifikasi karakter di bawah kursorMengisi karakter menggunakan nama atau nilainya dari tabel unicode (
:h i_CTRL-X_CTRL-Z
) atau digarphs (:h i_CTRL-X_CTRL_G
)Baca bantuan untuk info lebih lanjut tentang cara menggunakan plugin saya.
sumber
Selain menggunakan digraf yang telah ditentukan (Jalankan
:dig
untuk mendapatkan daftar), Anda juga dapat menentukan digraf Anda sendiri di vim:Lihat juga: http://vimdoc.sourceforge.net/htmldoc/digraph.html
sumber
Untuk karakter yang biasa digunakan,
:digraph
atau cara eksternal seperti tombol Tulis yang disebutkan sangat bagus. Untuk yang jarang digunakan, saya mendefinisikan singkatan, seperti ini:Dan kemudian gunakan plugin SnippetComplete saya untuk mendapatkan menu popup yang mencantumkan semua singkatan seperti itu, misalnya:
unicode_<C-x>]
sumber