Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

Chapter 52: Modifier KeyCode Input Problem in Linux

Aperta
#180 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
4/5
Tempo stimato
3-5 giorni
Idoneità per principianti
35/100
Tipo di issue
Bug
Chiarezza
Da chiarire
Stato di attività
Ferma
Stack tecnologico
linux, rust

Direzione di ricerca

Inizia confrontando il codice di gestione dell’input di Chapter 52 con il glutin window example di issue 8, concentrandoti sui dati dei modificatori mostrati per Linux. Traccia il percorso di questo input fino a tick() e al game loop, usando come contesto il workaround di bracket-lib issue 180. Il lavoro è completato quando le scorciatoie Shift+Number funzionano su Lubuntu, mentre il comportamento esistente su Windows continua a funzionare.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

Regarding Chapter 52: User Interface, the Shift+Number hotkeys are not working, in Linux (Lubuntu 20.04). In my case the keyboard layout is US. It's working exactly as expected on my Windows 10 machine. It seems the modifier key is not being recognized in Linux.

I think this is a different/separate Issue from https://github.com/amethyst/rustrogueliketutorial/issues/8. Repeating the glutin window example used by @mgedmin in https://github.com/amethyst/rustrogueliketutorial/issues/8 yields the following on my Linux machine:

DeviceEvent { device_id: DeviceId(X(DeviceId(12))), event: Key(KeyboardInput { scancode: 42, state: Pressed, virtual_keycode: Some(LShift), modifiers: (empty) }) }

DeviceEvent { device_id: DeviceId(X(DeviceId(12))), event: Key(KeyboardInput { scancode: 2, state: Pressed, virtual_keycode: Some(Key1), modifiers: SHIFT }) }

In my case the virtual keycodes are Some rather than None, but I am unsure of how to get this to work correctly in Linux.

As a workaround, I tried implementing the suggestion in issue https://github.com/amethyst/bracket-lib/issues/180, but the results of which were unsatisfactory, likely due to my implementation and poor understanding of the library. I'm not quite sure where the "game loop" section of the code should go with regards to the tutorial (I had tried putting it in the tick() function, as shown in their own source code).

Lingua principale
Rust
Stelle
968
Fork
166
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di amethyst/rustrogueliketutorial

Tutte le issue di amethyst/rustrogueliketutorial

Issue simili

Altre issue su Rust

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.