mirror of
https://github.com/keymanapp/keyman.git
synced 2026-08-28 03:07:43 +00:00
chore(resources): Merge branch 'master' into maint/resources/14201_prefixtc
This commit is contained in:
commit
19ff2fd0a6
23 changed files with 75 additions and 41 deletions
29
HISTORY.md
29
HISTORY.md
|
|
@ -1,5 +1,34 @@
|
|||
# Keyman Version History
|
||||
|
||||
## 19.0.78 alpha 2025-07-04
|
||||
|
||||
* docs(developer): Fix links in gestures guide (#14297)
|
||||
|
||||
## 19.0.77 alpha 2025-07-04
|
||||
|
||||
* maint(mac): rename `_do_publish` function to `do_publish` to fix release build (#14273)
|
||||
* maint(ios): remove extra `cd` command from ios release builds (#14272)
|
||||
* maint(android): remove `--ci` parameter from android builds (#14264)
|
||||
* refactor(resources): replace shebang for TC include files (#14265)
|
||||
* fix(core): fix failing `common-test-core.sh` script (#14271)
|
||||
* maint(common): match OSTYPE correctly on macOS (#14277)
|
||||
* fix(common): fix triggering builds if no builds to start (#14274)
|
||||
* maint(common): trigger common builds for resources/teamcity/common changes (#14279)
|
||||
|
||||
## 19.0.76 alpha 2025-07-03
|
||||
|
||||
* maint(common): move TC configuration for common tests (#14205)
|
||||
* refactor(common): improve downloads include script (#14253)
|
||||
* maint(web): move rsync code to shared functions (#14254)
|
||||
* maint(developer): replace Powershell scripts (#14255)
|
||||
* maint(windows): move TC configuration for Keyman Windows to scripts (#14186)
|
||||
* feat(windows): human text message for 413 error (#14055)
|
||||
* refactor(web): move helper functions to beginning of function (#14252)
|
||||
* maint(android): add TC build scripts for Keyman for Android (#14222)
|
||||
* maint(linux): use `tc_rsync_upload` and `write_download_info` functions (#14258)
|
||||
* maint(ios): add TC build scripts for iOS (#14229)
|
||||
* maint(mac): add TC build scripts for macOS (#14239)
|
||||
|
||||
## 19.0.75 alpha 2025-07-02
|
||||
|
||||
* feat(resources): support ignoring unknown options in builder (#14216)
|
||||
|
|
|
|||
|
|
@ -1 +1 @@
|
|||
19.0.76
|
||||
19.0.79
|
||||
|
|
@ -39,7 +39,6 @@ builder_describe \
|
|||
test \
|
||||
"publish Publishes symbols to Sentry and the APKs to the Play Store." \
|
||||
"archive Copy release artifacts to upload/ and rsync to downloads.keyman" \
|
||||
"--ci+ Deprecated build option. Remove in 20.0" \
|
||||
--upload-sentry+ \
|
||||
":engine=KMEA Keyman Engine for Android" \
|
||||
":app=KMAPro Keyman for Android" \
|
||||
|
|
|
|||
|
|
@ -4,11 +4,11 @@ title: Using Gestures in Keyman Developer
|
|||
|
||||
Keyman Developer offers **Longpress** keys, **Flicks**, and **Multitaps** for touch keyboard layout. To allow gestures onto your keyboard, go to the Touch layout tab and define the keys as follows:
|
||||
|
||||
<img src="../../../images/touch-layout-gestures.jpg" alt="Keyman Developer touch layout gestures" width="70%"/>
|
||||
<img src="../../../images/touch-keyboard-tutorial/touch-layout-gestures.jpg" alt="Keyman Developer touch layout gestures" width="70%"/>
|
||||
|
||||
## Tips
|
||||
|
||||
***Flicks** and **long presses** can both be used in a single keyboard. In this scenario, it is recommended to use flicks in only one direction—south (down). Long presses work well alongside this pattern. See, for example, [sil_euro_latin](../../../../keyboard/sil_euro_latin/3.0.3/sil_euro_latin#toc-mobile-keyboard-layout).
|
||||
***Flicks** and **long presses** can both be used in a single keyboard. In this scenario, it is recommended to use flicks in only one direction—south (down). Long presses work well alongside this pattern. See, for example, [sil_euro_latin](https://help.keyman.com/keyboard/sil_euro_latin/3.0.3/sil_euro_latin#toc-mobile-keyboard-layout).
|
||||
* Another helpful tip seen in the sil_euro_latin keyboard is using south-flicks on the base and shift layers corresponding to the numeric/symbol layer, this aids in both memorization and discovery.
|
||||
* **Flicks** in multiple directions are possible, but currently Keyman does not support hints for multiple directions, so they are not very discoverable.
|
||||
* **Long presses** are more discoverable, but **flicks** are faster. We suggest using south flicks along with long presses, and including the flick output in the long press for maximum discoverability and optimum ergonomics.
|
||||
|
|
@ -22,5 +22,5 @@ Keyman Developer offers **Longpress** keys, **Flicks**, and **Multitaps** for to
|
|||
|
||||
## See also
|
||||
|
||||
* The [Winchus keyboard](../../../../keyboard/winchus/1.4/winchus#guia-rapida-celular)
|
||||
* The [GFF Amharic keyboard](../../../../keyboard/gff_amharic/3.2.1/gff_amharic#toc-using-this-keyboard)
|
||||
* The [Winchus keyboard](https://help.keyman.com/keyboard/winchus/1.4/winchus#guia-rapida-celular)
|
||||
* The [GFF Amharic keyboard](https://help.keyman.com/keyboard/gff_amharic/3.2.1/gff_amharic#toc-using-this-keyboard)
|
||||
|
|
@ -259,7 +259,7 @@ fi
|
|||
# Start test builds as required
|
||||
#
|
||||
|
||||
if (( ${#build_platforms[@]} > 0)); then
|
||||
if [[ ! -z ${build_platforms:-} ]] && (( ${#build_platforms[@]:-0} > 0)); then
|
||||
builder_echo heading "Start test builds"
|
||||
triggerTestBuilds build_platforms $PRNUM
|
||||
else
|
||||
|
|
|
|||
|
|
@ -38,15 +38,23 @@ available_platforms_regex=`echo "${available_platforms[@]}" | sed 's/ /|/g'`
|
|||
# We also allow 'common' and 'core' platforms for Build-bot: commands
|
||||
readonly available_platforms_regex="$available_platforms_regex|common|core"
|
||||
|
||||
# the base folder for each pattern does not need to be included, nor oem folders
|
||||
# e.g. android='common/models|common/predictive-text'
|
||||
# will expand into android='^(android|(oem/[^/]+/android)|common/models|common/predictive-text)'
|
||||
# the base folder for each pattern does not need to be included, nor oem
|
||||
# folders, nor resources/teamcity folders
|
||||
#
|
||||
# e.g. watch_android='web|comon/web' will expand to cover:
|
||||
# android
|
||||
# oem/*/android
|
||||
# web
|
||||
# common/web
|
||||
# resources/teamcity/android
|
||||
# resources/teamcity/includes
|
||||
|
||||
watch_android='web|common/models|common/predictive-text|common/web'
|
||||
watch_ios='web|common/models|common/predictive-text|common/web'
|
||||
|
||||
watch_android='web|common/web'
|
||||
watch_ios='web|common/web'
|
||||
watch_linux='core|common/test/keyboards/baseline'
|
||||
watch_mac='core'
|
||||
watch_web='common/models|common/predictive-text|common/web|core'
|
||||
watch_web='common/web|core'
|
||||
watch_windows='common|core|web'
|
||||
watch_developer='common|core|web'
|
||||
|
||||
|
|
@ -55,10 +63,10 @@ watch_developer='common|core|web'
|
|||
watch_common_web='common/web'
|
||||
# Currently, we run web tests on all three of our build platforms, to ensure
|
||||
# that they work in all our environments. So we need to include common/web in
|
||||
# the matches for these
|
||||
watch_common_windows='common/windows|common/web'
|
||||
watch_common_mac='common/mac|common/web'
|
||||
watch_common_linux='common/linux|common/web'
|
||||
# the matches for these, as well as resources/teamcity/common
|
||||
watch_common_windows='common/windows|common/web|resources/teamcity/common'
|
||||
watch_common_mac='common/mac|common/web|resources/teamcity/common'
|
||||
watch_common_linux='common/linux|common/web|resources/teamcity/common'
|
||||
|
||||
#
|
||||
# Available build configurations and VCS identifiers; identifiers are somewhat inconsistent due
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
#!/usr/bin/env bash
|
||||
# shellcheck shell=bash
|
||||
# Keyman is copyright (C) SIL Global. MIT License.
|
||||
|
||||
android_clean_action() {
|
||||
|
|
@ -11,8 +11,9 @@ android_clean_action() {
|
|||
android_build_action() {
|
||||
builder_echo start "build" "Building Keyman for Android"
|
||||
local TARGETS="$1"
|
||||
local ARGS="$2"
|
||||
|
||||
# REVIEW: is it deliberate that we `configure` all targets but only `build,test` `$TARGETS`?
|
||||
"${KEYMAN_ROOT}/android/build.sh" configure build,test:"${TARGETS}" --debug --ci
|
||||
"${KEYMAN_ROOT}/android/build.sh" configure build,test:"${TARGETS}" ${ARGS}
|
||||
builder_echo end "build" success "Finished building Keyman for Android"
|
||||
}
|
||||
|
|
|
|||
|
|
@ -120,10 +120,10 @@ fi
|
|||
|
||||
if builder_has_action all; then
|
||||
android_clean_action
|
||||
android_build_action "${TARGETS}"
|
||||
android_build_action "${TARGETS}" --release
|
||||
do_publish
|
||||
else
|
||||
builder_run_action clean android_clean_action
|
||||
builder_run_action build android_build_action "${TARGETS}"
|
||||
builder_run_action build android_build_action "${TARGETS}" --release
|
||||
builder_run_action publish do_publish
|
||||
fi
|
||||
|
|
|
|||
|
|
@ -31,7 +31,7 @@ cd "${KEYMAN_ROOT}/android"
|
|||
function do_build() {
|
||||
"${KEYMAN_ROOT}/android/build.sh" \
|
||||
configure,build:engine,sample1,sample2,keyboardharness \
|
||||
--debug --ci
|
||||
--debug
|
||||
}
|
||||
|
||||
if builder_has_action all; then
|
||||
|
|
|
|||
|
|
@ -38,8 +38,8 @@ fi
|
|||
|
||||
if builder_has_action all; then
|
||||
android_clean_action
|
||||
android_build_action "${TARGETS}"
|
||||
android_build_action "${TARGETS}" --debug
|
||||
else
|
||||
builder_run_action clean android_clean_action
|
||||
builder_run_action build android_build_action "${TARGETS}"
|
||||
builder_run_action build android_build_action "${TARGETS}" --debug
|
||||
fi
|
||||
|
|
|
|||
|
|
@ -25,19 +25,16 @@ builder_parse "$@"
|
|||
if is_ubuntu; then
|
||||
ARCH=arch
|
||||
elif is_windows; then
|
||||
ARCH=x86
|
||||
ARCH=win
|
||||
elif is_macos; then
|
||||
ARCH=mac
|
||||
else
|
||||
builder_echo error "Unknown architecture"
|
||||
return 1
|
||||
exit 1
|
||||
fi
|
||||
|
||||
function do_all() {
|
||||
"${KEYMAN_ROOT}/core/build.sh" configure,build,test:${ARCH}
|
||||
if is_windows; then
|
||||
"${KEYMAN_ROOT}/core/build.sh" configure,build,test:x64
|
||||
fi
|
||||
}
|
||||
|
||||
builder_run_action all do_all
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
#!/usr/bin/env bash
|
||||
# shellcheck shell=bash
|
||||
# Keyman is copyright (C) SIL Global. MIT License.
|
||||
|
||||
developer_install_dependencies_on_linux_action() {
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
#!/usr/bin/env bash
|
||||
# shellcheck shell=bash
|
||||
# Keyman is copyright (C) SIL Global. MIT License.
|
||||
|
||||
# shellcheck disable=SC2154
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
#!/usr/bin/env bash
|
||||
# shellcheck shell=bash
|
||||
# Keyman is copyright (C) SIL Global. MIT License.
|
||||
|
||||
# Returns 0 if we're running on Ubuntu.
|
||||
|
|
@ -22,7 +22,7 @@ is_windows() {
|
|||
|
||||
# Returns 0 if we're running on macOS.
|
||||
is_macos() {
|
||||
if [[ "${OSTYPE:-}" == "darwin" ]]; then
|
||||
if [[ "${OSTYPE:-}" == darwin* ]]; then
|
||||
return 0
|
||||
else
|
||||
return 1
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
#!/usr/bin/env bash
|
||||
# shellcheck shell=bash
|
||||
# Keyman is copyright (C) SIL Global. MIT License.
|
||||
#
|
||||
# Shared functions for any builds that run on Linux agents,
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
#!/usr/bin/env bash
|
||||
# shellcheck shell=bash
|
||||
# Keyman is copyright (C) SIL Global. MIT License.
|
||||
#
|
||||
# Shared functions for any builds that run on Mac agents
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
#!/usr/bin/env bash
|
||||
# shellcheck shell=bash
|
||||
# Keyman is copyright (C) SIL Global. MIT License.
|
||||
#
|
||||
# Shared functions for any builds that run on Windows agents
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
#!/usr/bin/env bash
|
||||
# shellcheck shell=bash
|
||||
# Keyman is copyright (C) SIL Global. MIT License.
|
||||
|
||||
ios_build() {
|
||||
|
|
|
|||
|
|
@ -203,7 +203,6 @@ function __do_upload_to_fastlane() {
|
|||
export PILOT_GROUPS="Alpha"
|
||||
fi
|
||||
|
||||
cd "upload/${KEYMAN_VERSION}"
|
||||
command -v fastlane
|
||||
# shellcheck disable=SC2154
|
||||
fastlane pilot upload \
|
||||
|
|
|
|||
|
|
@ -69,7 +69,7 @@ function _build_publish() {
|
|||
builder_echo end success "publish" "Finished publishing Keyman for macOS"
|
||||
}
|
||||
|
||||
function _do_publish() {
|
||||
function do_publish() {
|
||||
_build_publish
|
||||
_publish_to_downloads_keyman_com
|
||||
tc_upload_help "Keyman for macOS" mac
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
#!/usr/bin/env bash
|
||||
# shellcheck shell=bash
|
||||
# Keyman is copyright (C) SIL Global. MIT License.
|
||||
|
||||
macos_clean_action() {
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
#!/usr/bin/env bash
|
||||
# shellcheck shell=bash
|
||||
# Keyman is copyright (C) SIL Global. MIT License.
|
||||
|
||||
web_install_dependencies_on_linux_action() {
|
||||
|
|
|
|||
|
|
@ -1,3 +1,4 @@
|
|||
# shellcheck shell=bash
|
||||
# Keyman is copyright (C) SIL Global. MIT License.
|
||||
|
||||
windows_build_action() {
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue