Windows build number: 10.0.19041.0
Windows Terminal version (if applicable): 1.1.2021.0
Any other software?
Ubuntu 20.04 LTS (WSL2)
WinCompose v0.9.4 (https://github.com/samhocevar/wincompose/releases/tag/v0.9.4)
rightAlt
+ o
a
Karakter yang benar ('å' dalam contoh di atas) dikirim ke terminal.
Tampaknya tidak ada karakter yang dikirim, setidaknya tidak ada yang ditampilkan.
Mungkin terkait dengan # 6309 karena pengaturan "experimental.input.forceVT": true
memberikan perilaku yang diharapkan.
Hah. Ini juga tidak benar-benar berfungsi di konsol tradisional, dan itu agak kebetulan yang berhasil di WT. Itu _harus_, meskipun.
Inilah yang saya dapatkan jika saya mengintip peristiwa penting yang keluar dari WC ke konsol tradisional:
v 001 0010 002a 0000 ^@ 00000010
^ 001 0010 002a 0000 ^@ 00000000
v 001 0000 0000 00f6 � 00000000
^ 001 00e7 0000 00f6 � 00000000
^ 001 004f 0018 006f o 00000000
dan inilah yang saya dapatkan dari keran:
␛[255;0;0;1;16;1_␛[255;0;0;0;16;1_
255 itu pasti tidak benar
Jadi, bagaimana aplikasi pihak ketiga mengirim karakter Unicode ke Terminal Windows jika SendInput()
tidak lagi berfungsi secara default?
Sejauh yang saya lihat, masalah ini telah diperbaiki di # 7900. Saya akan menutup masalah ini untuk saat ini karena WinCompose berfungsi dengan baik di pihak saya dengan versi WT terbaru.
Hal baiknya adalah sekarang saya akhirnya mengerti, mengapa kami menerima peristiwa penting yang aneh, yang berisi kode pemindaian yang tidak valid, untuk aplikasi pihak ketiga yang menggunakan SendInput
: WT tidak menggunakan TranslateMessage(Ex)
dengan benar. (Maksud saya, ada alasan yang sangat spesifik mengapa tidak ... Yaitu kebutuhan untuk menerima peristiwa kunci bahkan untuk kunci karakter.)
Komentar yang paling membantu
Sejauh yang saya lihat, masalah ini telah diperbaiki di # 7900. Saya akan menutup masalah ini untuk saat ini karena WinCompose berfungsi dengan baik di pihak saya dengan versi WT terbaru.
Hal baiknya adalah sekarang saya akhirnya mengerti, mengapa kami menerima peristiwa penting yang aneh, yang berisi kode pemindaian yang tidak valid, untuk aplikasi pihak ketiga yang menggunakan
SendInput
: WT tidak menggunakanTranslateMessage(Ex)
dengan benar. (Maksud saya, ada alasan yang sangat spesifik mengapa tidak ... Yaitu kebutuhan untuk menerima peristiwa kunci bahkan untuk kunci karakter.)