bipp-sneltoetsen: toetsen per rol (NL en EN), Alt voor zijacties

Ctrl+Enter, Ctrl+S, Ctrl+[ voor de standaardacties, Alt+S/R/N/C/H voor Zoeken, Reset, Nieuw, Annuleren en In wachtstand. Authorization is Bevestigen in het Engels. Hints verschijnen ook bij Alt en schuiven naar rechts als ze overlappen.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
Glenn Goossens
2026-10-26 15:29:49 +01:00
co-authored by Claude Sonnet 5.5
parent 3e610366fe
commit ae411e8884
2 changed files with 70 additions and 75 deletions
+18 -14
View File
@@ -1,28 +1,32 @@
# bipp-sneltoetsen
Ctrl+letter drukt in BIPP op een knop. De letter is onderstreept, de tooltip toont de sneltoets, en zolang je Ctrl ingedrukt houdt verschijnt de sneltoets onder elke knop die er een heeft.
Sneltoetsen in BIPP, per rol van de knop. Ze werken in de Nederlandse en de Engelse interface, want de toets hangt aan de rol en niet aan een letter uit het label. De tooltip toont de sneltoets, en zolang je Ctrl, Cmd of Alt ingedrukt houdt verschijnt de sneltoets onder elke knop die er een heeft.
| toets | knop | waar |
| ------ | ---------- | ------------------------------------------------- |
| Ctrl+B | Bevestigen | Aanvraag evalueren, bestelbon detail |
| Ctrl+Z | Zoeken | Artikelen, Favorietenlijsten, Aanvragen, Bestelbonnen, Ontvangstregistratie |
| Ctrl+R | Reset | idem |
| Ctrl+N | Nieuw | Artikelen, Favorietenlijsten |
| Ctrl+S | Opslaan | Winkelmandje, bestelbon detail |
| Ctrl+I | Indienen | Winkelmandje |
| Ctrl+T | Terug | detailpagina's |
| toets | rol | NL | EN |
| ------------------------------ | ---------- | --------------------------- | ---------------------- |
| Ctrl+Enter (Mac ook Cmd+Enter) | hoofdactie | Bevestigen, anders Indienen | Authorization, anders Submit |
| Ctrl+S | opslaan | Opslaan | Save |
| Ctrl+[ | terug | Terug | Back |
| Alt+S | zoeken | Zoeken | Search |
| Alt+R | reset | Reset | Reset |
| Alt+N | nieuw | Nieuw | New |
| Alt+C | annuleren | Annuleren | Cancel |
| Alt+H | wachtstand | In wachtstand | On hold |
Verwijderen, Annuleren en In wachtstand krijgen bewust geen sneltoets: die zijn niet terug te draaien of komen zelden voor.
Ctrl voor de standaardtoetsen, Alt voor de zijacties. Op een Mac is Alt de Option-toets.
[**Installeren**](https://gitea.flw.uantwerpen.be/glenn/ua-userscripts/raw/branch/main/scripts/bipp-sneltoetsen/bipp-sneltoetsen.user.js)
· gebeurt er niets, zie de [installatie-uitleg](../../README.md).
## Hoe het werkt
- Het script zoekt op elke pagina onder `/web/` per sneltoets de eerste zichtbare, actieve knop met dat label. Is er geen, dan doet de toets niets en gaat hij gewoon door naar de browser.
- Op macOS gebruikt Chrome Cmd voor zijn eigen sneltoetsen, dus Ctrl+letter is vrij. In tekstvelden zijn sommige Ctrl-letters Emacs-bindings (Ctrl+B één teken terug, Ctrl+N volgende regel, Ctrl+T letters wisselen): die heb je in BIPP niet meer.
- Het script zoekt op elke pagina onder `/web/` per sneltoets de eerste zichtbare, actieve knop met een van de labels van die rol. Is er geen, dan doet de toets niets en gaat hij gewoon naar de browser.
- Staan Bevestigen en Indienen allebei op de pagina, dan krijgt alleen Bevestigen Ctrl+Enter.
- Ctrl+S overschrijft de opslaantoets van de browser, maar alleen op pagina's met een Opslaan-knop. Cmd (macOS) blijft bij de browser, behalve voor Enter.
- De zijacties staan op Alt: Chrome geeft Ctrl+N (nieuw venster) niet aan een pagina, Ctrl+F en Ctrl+R zijn zoeken en herladen, en Ctrl+Alt is AltGr op Windows. Op een Mac typt Option+letter normaal een teken, dat het script onderdrukt op pagina's met zo'n knop.
- De hints onder de knoppen staan op één regel. Raken ze elkaar, dan schuift de volgende hint naar rechts.
- Annuleren en In wachtstand klikken de knop zoals een muisklik, dus een bevestigingsdialoog van BIPP verschijnt gewoon.
- Zet BIPP zelf al een tooltip op de knop (Bevestigen, Indienen), dan komt de sneltoets op een eigen regel eronder.
- De onderstreping en de hints verschuiven niets: ze staan `position:absolute` buiten de flow. Bij een `<input>` kan de letter niet onderstreept worden met HTML, dus komt er een lijntje onder, berekend uit de lettermaat.
- Pagina's die hun knoppen later opbouwen krijgen tot 15 seconden de tijd.
## Licentie