keymanapp / keymanapp/keyman

feat: Add Support for Key-Specific Keyclicks

Open
#13,764 1 comment 0 reactions 0 assignees View on GitHub
common/ feat
Dominant language
Pascal
Stars
534
Forks
143
Avg merge
2d 10h
Merged PRs (30d)
113

Description

### Is your feature request related to a problem? Please describe.

A keyboard with many keys can take some time to learn. Most of the learning effort may go into remembering the geometric location of the keys. This can be a particular problem for writing systems that do not have a history of physical keyboards. It is also a problem for users who type infrequently and do not benefit from daily practice.

Audio cues engage an additional sensory system and can help reinforce memory. For example, a keyboard could be designed where higher pitches appear in the top rows, and lower pitches at the bottom. The left and right sides of the keyboard can similarly be designed to produce different tones. In this example, the keyboard could be designed to have 4 sound quadrants ( "+" style, diagonal quadrants, "X" style could also be done). The user will develop a sense of of these sound regions. Layers could have octave changes.

Then, if a user could not recall where the "Z" key (for some language) is located, they might remember the key sound as being low-pitched and light-toned and be able to locate the key more quickly.

### Describe the solution you'd like

I would like a new key attribute to be provided in KMD where one could configure an audio chirp. The property could use a dialog with 3 sliders, or dials, to set the pitch, tone, and note -or whatever is a normal interface is here. Alternatively, the property could point to a sound file.

The audio cue is played whenever the user hits the key. A configuration option should also be available to turn keyclicks off.

### Describe alternatives you've considered

_No response_

### Related issues

_No response_

### Keyman apps

- [x] Keyman for Android
- [x] Keyman for iPhone and iPad
- [x] Keyman for Linux
- [x] Keyman for macOS
- [x] Keyman for Windows
- [ ] Keyman Developer
- [x] KeymanWeb
- [ ] Other - give details at bottom of form

### Keyman version

18.0.235

### Operating system

All

### Device

All

### Target application

N/A

### Browser

N/A

### Keyboard name

Any

### Keyboard version

N/A

### Language name

N/A

### Additional context

_No response_

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.