Tidak dapat menggunakan kode Alt untuk penyisipan karakter Unicode lagi

10

Saya telah menggunakan kode Alt untuk ellipsis, 8230, untuk beberapa waktu sekarang, di beberapa aplikasi. Beberapa hari yang lalu itu berhenti bekerja, dan &ditampilkan bukan ketika menekan Alt+ 8+ 2+ 3+ 0(pada numpad). Ini terjadi pada desktop saya dan laptop saya (di mana saya menggunakannya Fn). Keduanya berjalan pada 64bit-Win-7 dengan kode halaman 850, dan keduanya mungkin baru saja memperbarui Windows dan Opera 12.

Apa yang bisa menjadi alasan metode input ini dinonaktifkan , dan bagaimana cara mengembalikannya ?

Omong-omong, saya baru tahu bahwa Alt+ 0+ 1+ 3+ 3berhasil. Juga saya menemukan bahwa Alt+ 8+ 2+ 3+ 0masih berfungsi di WordPad atau MsWord10, tetapi tidak di Opera atau Notepad ++ - ada kode karakter yang diterjemahkan modulus 256 sebelum dimasukkan.

Bergi
sumber
Saya sarankan mencoba WinCompose karena memungkinkan Anda memasukkan elipsis dengan kombinasi sederhana dan intuitif [Alt] [.] [.].
sam hocevar
@ LưuVĩnhPhúc Tidak, itu pertanyaan yang sangat berbeda. Perhatikan bahwa 8230 adalah kode karakter desimal dari elipsis, bukan kode hex.
Bergi

Jawaban:

6

Sejauh yang saya tahu, metode Alt nnnn (nnnn decimal> 255) adalah fitur RichEdit dan karenanya hanya bekerja pada program yang dipilih saja, seperti WordPad dan MS Word. Dalam program lain, angka yang dimasukkan, nnnn, dikurangi modulo 256 untuk menghasilkan angka dalam kisaran 0 ... 255, ditafsirkan sesuai dengan halaman kode yang digunakan.

Lih untuk Insert Unicode karakter melalui keyboard? yang menjelaskan beberapa metode alternatif. Sayangnya, metode Alt + xxxx (xxxx heksadesimal; mis. Alt + 2026 untuk "...") tampaknya dinonaktifkan secara default, dan Anda perlu memodifikasi registri Windows untuk memperbolehkannya. Selain utilitas UnicodeInput, ada juga Unicode Input by Name , tetapi metode ini tidak cukup nyaman untuk mengetik cepat seperti metode Alt.

Jukka K. Korpela
sumber
Terima kasih, itu sepertinya arah yang benar. Tampaknya Opera 12 telah menjatuhkan fitur RichEdit ini. Dapatkah saya mengaktifkan kembali secara manual entah bagaimana atau saya perlu menulis laporan bug?
Bergi
1
+1 Komentar Anda bahwa di program lain, nilai karakter mod 256 adalah perilaku yang saya amati di Notepad.
Nicole Hamilton
4

Kode Alt dan karakter unicode hanya terkait samar-samar, dan (sebagian besar) tergantung pada masing-masing aplikasi untuk menentukan cara menanganinya, sehingga dapat berbeda antara aplikasi, versi aplikasi dan semacamnya.

Pada dasarnya ini tentang pengkodean karakter dan Halaman Kode , bukan font atau input pengguna.

Kode Alt untuk ASCII hanya 0-255 (halaman kode 8-bit). Banyak program (dan OS) menangani angka yang lebih besar yang diinput oleh pengguna dengan membungkus 256.

256 = 0, 257 = 1, dll.

Jadi memasuki ALT + 8230, sebenarnya sama dengan mengetik ALT + 38 (8230/256 = 32.1484375. 256 * 32 = 8192. 8230 - 8192 = 38), yang merupakan karakter ASCII "&" - kecuali jika program memotongnya dan menggantinya dengan kode Unicode 'tepat', atau dengan menggunakan halaman kode yang berbeda (yaitu: Unicode), seperti MS Word, dan versi WordPad yang lebih baru, misalnya.

Windows menggunakan versi diperpanjang dari MSDOS 8-bit Codepage (850) yang disebut halaman kode " Windows-1252 " (untuk bahasa Inggris). Tetapi ini hanya menggunakan ini untuk bagian-bagian lama OS yang tidak sepenuhnya mendukung halaman kode Unicode.

Ini adalah alasan mengapa Anda dapat dengan mudah melihat hasil yang berbeda di berbagai OS dan aplikasi, serta di dalam berbagai bagian Windows itu sendiri.

Ini masalah yang membingungkan untuk sedikitnya. :)

Saya cukup yakin Alt-0133 adalah kode ALT "resmi" Windows yang diperluas untuk elipsis (di halaman kode Windows), jadi Anda mungkin akan memiliki keberuntungan yang lebih konsisten menggunakannya.

Berikut ini beberapa info terkait lainnya .

Ƭᴇcʜιᴇ007
sumber
Terima kasih atas tautan informatifnya. Saya sudah melihat ada perbedaan yang membingungkan ketika mencari masalah :-)
Bergi
1

U + 8230 tidak elipsis, itu adalah Han Karakter kapal perang : . Saya tidak tahu mengapa Anda pernah mendapatkan elipsis dengan kode itu, tetapi 133 memang titik kode yang benar untuk itu.

Di mana tepatnya di mana Anda melihat elipsis untuk 8230? Mungkin itu adalah bug di Opera yang telah diperbaiki sejak pembaruan terakhir. Jika ada di "beberapa aplikasi", maka mungkin Anda memiliki bug di tata letak font atau keyboard / regional atau sesuatu (tidak ada yang jelas atau rasional yang terlintas dalam pikiran, jadi itu pasti bug yang bertentangan dengan pengaturan yang sah).

Jika (karena alasan tertentu) Anda benar - benar ingin / perlu menggunakan kode-titik yang salah untuk itu alih-alih menggunakan yang benar, Anda dapat menggunakan dapat menggunakan sesuatu seperti Authotkey untuk membuat skrip yang menerima akor atau urutan dan menghasilkan apa yang Anda inginkan .

Apakah Anda yakin dapat memasukkan Alt+ Numpad-8+ Numpad-0+ Numpad-2+ Numpad-3? Meskipun beberapa program mungkin secara independen mendukungnya, Windows tidak menerima titik kode Unicode tinggi seperti itu secara default. Anda dapat menggunakan entri hex : Alt+ Numpad-++ 2+ 0+ 2+ 6.

Synetech
sumber
8230 adalah desimal untuk hex 2026 yang memang merupakan elipsis. fileformat.info/info/unicode/char/2026/index.htm Alt + 8230 berfungsi di beberapa aplikasi (misalnya, pesan baru Outlook) tetapi tidak yang lain (misalnya, Notepad) untuk saya di Win7 x64.
Nicole Hamilton
8230adalah kode karakter desimal dari U + 2026 ( Ellipsis ). Saya tidak pernah menggunakan +atau 0awalan, saya hanya menahan Altdan memasukkan kode angka desimal empat digit. Seperti yang dikatakan dalam pertanyaan, ini masih berfungsi dengan baik di Word.
Bergi
Ya, saya yakin itu berhasil, tapi saya kira itu hanya terjadi dalam aplikasi favorit saya: - / Hex entri saat ini tidak diaktifkan dan menghasilkan , jadi saya akan tetap berpegang pada 0133...
Bergi
> Entri hex saat ini tidak diaktifkan Mungkin tidak, tetapi Anda dapat mengaktifkannya untuk kenyamanan karena seperti yang saya katakan, Windows tidak menerima 8000+ kode-poin (dalam desimal) secara default. Menggunakan hex-entry adalah pengaturan Windows, sehingga berfungsi di semua aplikasi (setidaknya semua yang mendukung kotak edit Unicode).
Synetech
0

Mungkin font saat ini tidak mendukung karakter Unicode atas, ubah font menjadi 'Arial' dan coba lagi.

Ketika saya menguji ini di WordPad, ALT + 8 + 2 + 3 + 0 berfungsi untuk Arial, tetapi tidak untuk beberapa font lainnya.

Peter Hahndorf
sumber
1
Tidak, font-font tersebut mendukung menampilkannya. Saya juga tidak berpikir font diizinkan untuk mempengaruhi metode input.
Bergi