Wpis z mikrobloga

Jak w tigervnc na debianie prawidłowo włączyć obsługę polskich znaków tak, aby klient RealVNC na androidzie mógł je obsługiwać, kiedy korzystam z klawiatury sprzętowej? Ktoś zna jakiegoś klienta VNC na androidzie, gdzie polskie znaki działają z klawiatury sprzętowej?

Ja sobie poradziłem dodając "-RemapKeys 0xffea<>0xfe03" oraz uwaga... #!$%@?ąc binarkę Xtigervnc, usuwając z niej logikę dot. tymczasowego usuwania wciśniętego modyfikatora lvl3 (jeden nop załatwił sprawę).

... ale czy to naprawdę wymaga aż tak drastycznych rozwiązań?
Czy ja pominąłem jakiś oczywisty sposób na obsługę polskich znaków?

Od razu mówię, że rzeczy takie jak setxkbmap -model pc104 -layout pl, setxkbmap -model pc104 -layout pl -option lvl3:ralt_switch nic nie dawały, to jest następny etap, kiedy już prawy klawisz alt jest rozpoznawany jako lvl3, ale nie jest to końcowy etap, bo jeśli tigervnc dostaje od klienta symbol "a" a lvl3 jest wciśnięty, to tigervnc myśli, że docelowy symbol to nadal "a", więc tymczasowo wysyła eventy tak, aby ten modyfikator nie był aktywny. Trudno winić tigervnc... ale łatwiej zmodyfikować :)

Tu RealVNC może być winny, bo np. duże litery działają - symbol znaku jest wysyłany prawidłowo (jest shift, ale potem odpowiedni symbol znaku). Z klawiatury ekranowej też działa, bo polskie znaki też mają od razu odpowiednie symbole (0xfe03 czyli lvl3 też jest wysyłany). A z klawiatury sprzętowej polskie znaki nie działały mimo tego, że sam system android je rozpoznawał, bo język klawiatury był dobrze ustawiony. Zamiast tego RealVNC po naciśnięciu prawego alta po prostu wysyła 0xffea(ALTR) a potem kod podstawowego znaku, czyli jak wciskam "a", to wysyłany jest symbol znaku "a", ale to jest niezbyt poprawne bo to przecież symbol znaku (keysym), a nie klawisza (keycode)..

Opcja RawKeyboard w tigervnc działa tylko z klientami, które obsługują rozszerzony pakiet w protokole (qemu events), ale RealVNC nie komunikuje serwerowi obsługi tej opcji.

#linux #android
  • 7
  • Odpowiedz
@fervi: sprawdziłem, ale z klawiatury sprzętowej na aVNC też nie działa. Symbol klawisza jest wysyłany prawidłowo, ale ALT.R też jest wysyłany i nic nie widać... Może tym razem to wina tigervnc, który ALT.R traktuje jako ALT.L?...
  • Odpowiedz
@fervi: to nic nie dało, bo taki layout już był, ale przynajmniej aVNC działa z samym -RemapKeys '0xffea<>0xfe03', bez patcha. Pewnie w twoim przypadku nie ma tigervnc
  • Odpowiedz