keymanapp / keymanapp/keyman

feat(developer): Add kmc module to generate help documentation charts of all "gesture" keys

Open
#11,792 0 comments 0 reactions 0 assignees View on GitHub
developer/ developer/compilers/ feat low-priority
Dominant language
Pascal
Stars
534
Forks
143
Avg merge
2d 10h
Merged PRs (30d)
113

Description

To address keymanapp/keyboards#2213, a prototype was started in keymanapp/keyboards#2594

I'll recap the review comments from the PR here:

- [ ] move the tool from keymanapp/gestureChart to keymanapp/keyman, and ideally we will integrate this into kmc as a kmc module. Then we could merge it in 18.0.
- [ ] `TouchLayoutFileReader` should be used to read the keyman touch layout file because that does validation and normalization of content
- [ ] For handling vertical line character, we want to use `escapeMarkdownChar` function in [Developer](https://github.com/keymanapp/keyman/blob/5062bbad984760a40e5ee3d012b65d54d805db1d/developer/src/common/web/utils/src/markdown.ts#L2-L21)
- [ ] Can cleanup console warnings about not handling `T_` keys in the touch layout (not needed) :link: keymanapp/gestureChart#1
- [ ] One other challenge is that while this tool generates Markdown, we don't currently support Markdown in keyboard documentation welcome.htm, which is where this content belongs (not just on help.keyman.com).

Contributor guide

Open the contributing guide

Research direction

Review the prototype in keymanapp/gestureChart and PR keymanapp/keyboards#2594, then trace the proposed move into keymanapp/keyman. Check TouchLayoutFileReader, escapeMarkdownChar in developer/src/common/web/utils/src/markdown.ts, and the keyboard documentation welcome.htm path. Done means the chart generator is integrated as a kmc module with the listed review concerns addressed.

Written by the indexing model from the issue text.

Assessment

Domain
documentation, tooling
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.