Commit graph

4883 commits

Author SHA1 Message Date
Joshua Horton
913f0b4c67
Merge pull request #11866 from keymanapp/feat/web/auto-prediction
feat(web): add and enable auto-correction 📚
2024-07-08 14:37:57 +07:00
Joshua Horton
847077b419
Merge pull request #11875 from keymanapp/change/web/track-prediction-base-corrections
change(web): track the base correction for generated predictions 📚
2024-07-08 14:37:46 +07:00
Joshua Horton
479ea32dd0
Merge pull request #11870 from keymanapp/change/common/models/templates/trie-results-through-traversal
change(common/models/templates): rework Trie predict method to utilize traversals 📚
2024-07-08 14:37:36 +07:00
Joshua Horton
d84268a139
Merge pull request #11869 from keymanapp/feat/common/models/direct-lexicon-traversal
feat(common/models): support direct-child access for Trie node iteration 📚
2024-07-08 14:37:24 +07:00
Joshua Horton
6ecb4619c5
Merge pull request #11868 from keymanapp/feat/common/models/lexicon-traversal-probs
feat(web): provide lexicon probabilities directly on the search path 📚
2024-07-08 14:37:14 +07:00
Joshua A. Horton
a7365abd66 docs(common/models): comment format adjustment per PR review 2024-07-08 10:26:40 +07:00
Joshua A. Horton
9e2f0b16a4 chore(common/models/templates): Merge branch 'feat/common/models/direct-lexicon-traversal' into change/common/models/templates/trie-results-through-traversal 2024-07-08 10:25:35 +07:00
Joshua A. Horton
dc7c1f1923 chore(common/models): makes minor adjustments per review 2024-07-08 10:15:57 +07:00
Joshua A. Horton
211c04a83e chore(common/models): Merge branch 'feat/common/models/lexicon-traversal-probs' into feat/common/models/direct-lexicon-traversal 2024-07-08 10:15:08 +07:00
Joshua A. Horton
14b453c2a6 change(common/models): enact changes per PR review 2024-07-08 09:39:54 +07:00
Marc Durdin
4f39c75ae7
Merge pull request #11906 from keymanapp/refactor/windows/11904-merge-keyman32-keyman64
refactor(windows): merge keyman64 build into keyman32
2024-07-04 06:58:19 +10:00
Joshua Horton
2f3a0cbf14
Merge pull request #11867 from keymanapp/refactor/common/models/priority-queue-as-util
refactor(common/models): move TS priority-queue implementation to web-utils 📚
2024-07-03 08:13:53 +07:00
Marc Durdin
643ebca530 refactor(windows): merge keyman64 build into keyman32
Merges the build settings for keyman64.dll vc++ project into the
keyman32.dll project, so they are both built from the same project, in
preparation for ARM support, to minimize repetition in the source tree.

There should be no material differences to the built libraries.

Also cleans up some noise in keyman32.vcxproj which made it easier to
verify the changes.

Fixes: #11904
2024-07-02 17:00:38 +10:00
Joshua A. Horton
8d9d39fc59 change(web): enforce single auto-selection 2024-07-02 08:27:31 +07:00
Joshua A. Horton
b2b088ac6e fix(web): show reversion after backspace following key-based auto-apply 2024-06-27 10:22:43 +07:00
Joshua A. Horton
017d0e4521 feat(web): apply auto-correct suggestions when applicable 2024-06-27 09:51:31 +07:00
Joshua A. Horton
7bda1e5d93 feat(web): determine suggestion to use for auto-correct 2024-06-27 09:51:30 +07:00
Joshua A. Horton
60772bfdfa chore(web): minor cleanup after generalizing fix with prior commit 2024-06-27 09:50:40 +07:00
Joshua A. Horton
34986503c9 fix(web): patch-up automated tests that utilize dummy models
The dummy model never set a prediction's probability on the suggestion, so it never emitted p, lexical-p, or correction-p values before this branch's changes.
2024-06-27 09:49:09 +07:00
Joshua A. Horton
ba5b0f6c91 change(web): track the base correction when generating predictions 2024-06-26 14:48:50 +07:00
Joshua A. Horton
3423c63bc0 change(web): avoid use of Array.from with iterators (in TrieModel.predict) 2024-06-26 11:48:20 +07:00
Joshua A. Horton
f3cedac5e0 change(web): better div-by-zero fudge factor for fat-fingering 2024-06-24 09:26:22 +07:00
Joshua Horton
7f55d74ee6
Merge pull request #11265 from keymanapp/feat/web/layer-processing-deferral
feat(web): optimization via lazy preprocessing of keyboard touch-layout info ⏩
2024-06-24 08:01:48 +07:00
Joshua A. Horton
fe31917bb5 change(common/models/templates): predict methods now utilize traversals 2024-06-21 15:15:15 +07:00
Joshua A. Horton
aef1dacc59 fix(common/models): traverse by key, not true wordform 2024-06-21 15:12:37 +07:00
Joshua A. Horton
e0892deccf fix(common/models/templates): unit test patchup post maxP -> p 2024-06-21 15:12:37 +07:00
Joshua A. Horton
6de595394b docs(common/models/templates): a bit more for traversal child method 2024-06-21 15:12:36 +07:00
Joshua A. Horton
64efabbc49 change(common/models/templates): traversal on Trie 2024-06-21 15:12:36 +07:00
Joshua A. Horton
b58945e255 feat(common/models/templates): unit test for new feature 2024-06-21 15:12:35 +07:00
Joshua A. Horton
15f49f2551 feat(common/models): direct, non-iterative traversal to specific children 2024-06-21 15:12:34 +07:00
Joshua A. Horton
27bc02137c fix(common/models/templates): unit test patchup after maxP -> p 2024-06-21 15:04:17 +07:00
Joshua A. Horton
0c47fcdbe6 change(web): maxP -> p, to ensure common field name for node and entry 2024-06-21 15:04:17 +07:00
Joshua A. Horton
17fefaa86f feat(common/models/templates): unit test enhancements for new feature 2024-06-21 15:04:16 +07:00
Joshua A. Horton
8e058a5078 fix(common/models): basic unit test patchup 2024-06-21 15:04:16 +07:00
Joshua A. Horton
abb326490f feat(common/models): lexicon traversals - probability access 2024-06-21 15:04:15 +07:00
Joshua A. Horton
ef7d87ace1 refactor(common/models): moves TS priority-queue implementation to web-utils 2024-06-21 15:02:52 +07:00
Joshua Horton
b782800de1
Merge pull request #11263 from keymanapp/change/web/keyboard-preprocess-optimization
change(web): optimization for keyboard-layout preprocessing ⏩
2024-06-21 11:22:50 +07:00
Joshua A. Horton
7166428d72 fix(web): check for longpresses with .sk, not .sp 2024-06-21 08:38:53 +07:00
Joshua A. Horton
8841dd9ee2 chore(web): define common timeout variable for automated testing
Fixes: #11499
2024-06-20 11:43:11 +07:00
Joshua A. Horton
7dbadef7bd chore(web): Merge branch 'feat/web/osk-layer-deferral' into feat/web/layer-processing-deferral 2024-06-19 15:49:05 +07:00
Joshua A. Horton
9c79aa4f65 chore(web): Merge branch 'master' into change/web/keyboard-preprocess-optimization 2024-06-19 15:21:14 +07:00
Joshua Horton
e4b0d1859c
Merge pull request #11784 from keymanapp/feat/web/interruptible-predictions
feat(web): improve predictive-text responsiveness when typing rapidly 🕐
2024-06-19 14:54:14 +07:00
Joshua Horton
342ffd82fa
Merge pull request #11758 from keymanapp/refactor/web/prediction-execution-timer
refactor(web): overhaul predictive-text engine's timer to better detect paused time 🕐
2024-06-19 14:54:06 +07:00
Joshua Horton
0be4943a21
Merge pull request #11757 from keymanapp/chore/web/extract-execution-timer
chore(web): move correction-search execution timer to its own file 🕐
2024-06-19 14:53:58 +07:00
Joshua Horton
2b9a12fade
Merge pull request #11768 from keymanapp/change/web/drop-correction-batching
change(web): drop correction batching 🕐
2024-06-19 14:53:49 +07:00
Joshua A. Horton
f22bb5fc68 chore(web): Merge remote-tracking branch 'origin/change/web/drop-correction-batching' into change/web/drop-correction-batching 2024-06-19 08:21:42 +07:00
Joshua A. Horton
7545957546 chore(web): adjustments per PR review
- let -> const
- drops no-op expression
2024-06-19 08:21:14 +07:00
Joshua Horton
e65ba7ca04
Merge pull request #11800 from keymanapp/change/web/after-word-whitespace-check
change(web): change after-word whitespace check to be more selective
2024-06-19 08:12:08 +07:00
Marc Durdin
26328463c8
Merge branch 'master' into change/web/drop-correction-batching 2024-06-18 07:49:26 +10:00
Marc Durdin
e081e0c72e fix(developer): check HISTORY.md to get last modified date for keyboard_info and model_info
This updates the calculation of the lastModifiedDate property of the
.keyboard_info and .model_info file. It now looks for the most recent
commit to HISTORY.md, and then falls back to the project folder for
.keyboard_info and .model_info.

getLastGitCommitDate now also returns UTC date (it was giving TZ=0
which is affected by daylight saving), and works for a file rather than
just for a folder, and a corresponding unit test has been added.

The date strings returned will now always include '.000' msec suffix. I
have manually verified that the import into the api.keyman.com database
copes with this, and that this change still conforms to the expected
schema for .keyboard_info and .model_info files.

Last, but important, it turned out that the unit tests for kmc were not
running. This has been resolved in kmc/build.sh.

Fixes: #11793
2024-06-18 07:03:08 +10:00