Normalisation of Control/Meta key across different OSs
Nobody has claimed this yet.
- Dominant language
- HTML
- Stars
- 718
- Forks
- 228
- PR merge metrics
- No merged PRs in 30d
Description
In chapter E. Index:
The following attributes are defined in the UI Events Code specification: [UIEVENTS-KEY]
Keyboard modifier keys
This is not explicitly mentioned, except to link to the UIEVENTS-KEY spec, which then defines:
"Control": The Control or Ctrl key, to enable control modifier function for interpreting concurrent or subsequent keyboard input.
"Meta": The Meta key, to enable meta modifier function for interpreting concurrent or subsequent keyboard input. This key value is used for the Windows Logo key and the Apple Command or ⌘ key.
This means that use of the Control key to perform certain actions, for example Control + A, will be operating-system specific. On Windows, Linux, and most other hosts Control + A will select all. On a Mac the Control + Meta keys are swapped around and Control + A will go to the start of the line in an input and have no effect outside of a field.
Technically the specification is doing the right thing. It is sending exactly the key requested, but it may be worth clarifying at some point in the specification which Node should be responsible for normalisation of these keys, if any. At the very least it may be worth pointing it out as I suspect most people will not know about it until they've spent significant time debugging why their key combinations do not work.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with chapter E. Index of the WebDriver specification and compare its Control and Meta key definitions with the linked UI Events Code specification. Determine whether the specification should clarify node-side normalization across operating systems, and consider the issue complete when that responsibility and expected cross-platform behavior are explicitly documented.
Written by the indexing model from the issue text.
Assessment
- Domain
- documentation, operating-systems
- Issue type
- Documentation
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 30/100