Ketika tata letak bahasa diubah ke bahasa kanan ke kiri; di beberapa tempat pengeditan standar (misalnya bilah alamat Google Chrome), karakter seperti <
, {
dan [
secara otomatis menjadi >
, }
dan ]
hanya dengan mengubah tata letak bahasa.
Apakah ada cara untuk mencegah hal ini dan membuat karakter ini stabil?
keyboard-layout
input-language
rtl
nano - gabungkan saya
sumber
sumber
Jawaban:
Saya tidak mengerti maksud Anda untuk pertama kalinya, karena saya sudah terbiasa dengan itu. Saya pikir itu akan baik-baik saja, jika Anda dapat mengharapkan hasil.
Perilaku itu merupakan standar dari Algoritma Bidirectional Unicode . Jadi arah BiDi dominan diambil dari karakter kuat pertama dalam paragraf.
Jadi apa yang saya pikir terjadi dalam kasus ini:
Arah pertama dengan kotak teks kosong diambil dari konfigurasi lokal / bahasa. Seperti yang Anda katakan bahasa Arab adalah bahasa RTL. Jadi kursor di sebelah kanan.
Input
<
tetapi ditampilkan sebagai>
. Ini adalah arang netral sehingga tidak mempengaruhi arah. Mengapa dibalik? Jawaban singkat: Standar Unicode, :) terima saja. Yah namanya kurang dari tanda , Jadi ... Dalam RTL / Arab, rumus dimulai dari sisi kanan, itu harus dibalik. Apa yang Anda pikirkan ... tidak? !!!Masukkan karakter Latin
g
. Ini adalah karakter L (kiri) yang kuat , jadi paragraf ini dideteksi sebagai LTR.Backspace untuk dihapus
g
. Tapi perhatikan kursornya dimana.Sekarang, contoh
[
, itu salah diberi nama kurung siku kiri . Seharusnya ada beberapa hal seperti braket persegi terbuka (itu BiDi netral dan dibalikkan di RTL)Semua pengembang mencoba mengikuti standar. Jadi sekarang mereka akan memaksa kotak teks menjadi RTL atau LTR, Otomatis adalah yang terbaik untuk sebagian besar pengguna.
Jadi untuk Anda, hal terbaik yang dapat saya tawarkan adalah menggunakan Unicode BiDi Control Char's.
Di bilah alamat kosong, Ctrl+ Shift+ u, garis bawah kecil yang
u
muncul, masukkan200f
laluEnterLihat
<
tidak membalik sebagai LTR.Ctrl+ Shift+ khusus untuk uGTK / Gnome. KDE melewatkan opsi tersebut dan sepertinya tidak diperbaiki, karena laporan bug ini menyebutkan konflik antara KDE / Qt / Xorg Perlu cara untuk memasukkan karakter Unicode yang sewenang-wenang di Kubuntu .
Karena hanya beberapa karakter, Anda dapat memetakan ulang kunci yang tidak diperlukan atau memetakan yang tidak digunakan. Misalnya, saya menggunakan bahasa Inggris AS (kunci mati AltGr internasional)
Buka
xkb
file tata letaknya untuk diedit:Cari definisi grup dengan nama yang sama:
Mari kita lihat contoh untuk
r
(mudah diingat) ,: AltGr+ r→ RLM, Shift+ AltGr+ r→ LRM. Alih-alihë
&Ë
. Menggantikan:Dengan:
Perbarui xkb
Beralih ke tata letak lain lalu kembali, itu akan segera aktif.
Catatan:
Gunakan metode yang sama untuk menambahkannya ke tata letak Arab, jika Anda ingin dapat menggunakannya dari kedua tata letak.
Anda dapat menggunakan
U+061C arabic letter mark (ALM)
bukannya RLM karena Anda adalah pengguna bahasa Arab.xkb
mendukung format entri kode Unicode lainnya,0x100200f
mis.U200F
(yaitu0x100
sebagai awalan)Untuk menghindari menimpa peta kunci yang dimodifikasi dengan
xkb-data
pembaruan, yang terbaik adalah membuat peta XKB khusus baru. Lihat Cara menambahkan tata letak keyboard baru (Definisi tata letak keyboard khusus) atau Apa langkah-langkah yang diperlukan untuk membuat tata letak keyboard baru di ubuntu?Mungkin menambahkan semua karakter kontrol Unicode lainnya. Beberapa aplikasi sudah memiliki opsi dalam Menu Popup dari Kotak Teks Input Multi-baris. Contoh Poedit:
Senang dibaca untuk pemahaman lebih lanjut:
Referensi:
Cara memasukkan Unicode apa pun yang tidak tersedia pada keyboard, lihat Tidak dapat mengetik "ć" pada tata letak Hongaria
Howto: Definisi tata letak keyboard khusus
0x100
awalan)sumber
0x100200F
, saya tidak tahu apakah itu sama denganU200F
.