Commit graph

1966 commits

Author SHA1 Message Date
Eberhard Beilharz
dba2002287
feat(linux): Still support older ibus versions
If we're dealing with an older ibus version that doesn't have the
necessary patches we fall back to the old behaviour. Otherwise
we use the new output reordering.
2022-10-11 18:44:29 +02:00
Eberhard Beilharz
e1d4169eeb
feat(linux): Optimizations 2022-10-11 18:44:29 +02:00
Eberhard Beilharz
18d0711ff3
fix(linux): Fix reordering of output
This change implements a commit queue which allows to control the
order of the output. This ensures that any backspace we generate
will be processed before the character we're adding.

Requires changes in ibus (surrounding text fix (see #7072) and
prefilter change)

Fixes #1489, #4028, #4029, #4030, #4505, #5510, #6639
2022-10-11 18:44:28 +02:00
Eberhard Beilharz
efbfaa1be4
chore(linux): Cleanup unnecessary surrogate check
Previously `process_unicode_char_action` checked for
`action_item->character` being a surrogate. This should never happen
because `action_item->character` is a 32-bit character. This change
removes the unnecessary check and the `keyman->firstsurrogate` field.

Fixes #6385.
2022-10-04 19:24:58 +02:00
Marc Durdin
7e9f9ce86f
Merge pull request #7311 from keymanapp/chore/core/epic-ldml/fixup-kmc-outfile-param-in-tests
chore(core): `kmc --outFile` to `kmc --out-file` (and `--` rider) 🙀
2022-09-20 15:03:37 +10:00
Marc Durdin
55f302d929
Merge pull request #7322 from keymanapp/chore/merge-master-to-feature-ldml
chore: merge master into feature-ldml 🙀
2022-09-20 13:42:40 +10:00
Marc Durdin
11d63ef1e2 chore(linux): more build.sh updates 2022-09-20 10:57:57 +10:00
Marc Durdin
736db7179c feat(common): support -- for build scripts
Allows use of `./build.sh configure -- --param-one=foo ...`.

Updates Core build to support `--` (including build.bat wrapper for
Windows builds). Fixes Linux debian rules to pass additional
parameters in with this format again, and adds `:arch` to only build
current architecture, not wasm as well...

Note that when using `--` you should typically avoid multiple actions in
a single command, as each action may interpret the additional parameters
differently!
2022-09-20 09:51:31 +10:00
Marc Durdin
fce1db65e9 chore(core): update debian build 2022-09-19 14:15:05 +10:00
Eberhard Beilharz
af6c6db49a
chore(linux): Remove unused IBusLookupTable 2022-09-15 18:53:44 +02:00
Eberhard Beilharz
71f41b0c80
Merge pull request #7284 from keymanapp/fix/linux/7275-error
fix(linux): Fix ignored error
2022-09-14 10:35:58 +02:00
Eberhard Beilharz
34b8e136b0
fix(linux): Fix ignored error
Previously we ignored an error that showed in the build logs
because the eval line got executed before calling reconf.sh which
created the version file. I think despite this error things worked,
but it didn't look nice to have and ignore a build error in the
build log.

Fixes #7275.
2022-09-13 16:01:10 +02:00
Eberhard Beilharz
e6403c3092
chore(linux): Update debian changelog
(cherry picked from commit 6c31e9ed83)
2022-09-13 11:20:43 +02:00
Marc Durdin
3fd9df5277 chore(core): Merge branch 'feature-ldml' into chore/core/7247-use-builder-for-build-sh 2022-09-13 07:25:10 +10:00
Marc Durdin
e67b90cd83 chore(linux): missed a cd statement 2022-09-13 07:16:58 +10:00
Marc Durdin
5adac5b683 chore(linux): restore meson configure step for install 2022-09-13 06:37:58 +10:00
Marc Durdin
9be0e6f553 chore(linux): clean core and reconfigure as required 2022-09-13 06:16:07 +10:00
Marc Durdin
6987a170c0 chore(core): fixup paths for linux build 2022-09-12 17:22:21 +10:00
Marc Durdin
74a6c65710
Merge branch 'feature-ldml' into chore/merge-master-into-feature-ldml 2022-09-12 15:24:19 +10:00
Marc Durdin
854ace08fc chore(linux): fix typos 2022-09-12 15:19:43 +10:00
Marc Durdin
7173715372 chore(linux): core:arch in reconf.sh also 2022-09-12 11:11:29 +10:00
Marc Durdin
85dfb95563 chore(linux): add arch param for core build 2022-09-12 10:15:25 +10:00
Marc Durdin
91d375ac81 chore(core): use builder_ for build.sh
Refactoring of build.sh to use the builder_ functions. The script should
now be a lot cleaner. Usage is available with `core/build.sh --help`

Targets are :x86, :x64, :wasm, :arch (linux/mac).

Supports additional requirements of Linux build (--target-path,
--configure).

By default will attempt to build all available targets.

Actions are: clean, configure, build, test, install, uninstall.

The install and uninstall actions only work for linux and mac targets at
present.
2022-09-12 09:56:32 +10:00
Marc Durdin
279960ff40
Merge pull request #7246 from keymanapp/chore/merge-master-into-feature-ldml
chore: merge master into feature-ldml 🙀
2022-09-09 07:56:57 +10:00
Marc Durdin
f836574cbc chore: use keyman.com instead of keyman-staging.com
Fixes #7227.

We want to use keyman.com for now even for alpha builds, as
keyman-staging.com is going to be used for transition to Docker-based
hosting, and it will be problematic to try and share that process with
alpha builds.
2022-09-08 14:32:39 +10:00
Eberhard Beilharz
9d1004b9ec
chore(linux): Fix ibus-keyman.postinst script
When installing ibus-keyman it could happen that we got an (ignored)
error "user name does not exist". This change tries to work around
this problem.
2022-09-02 18:05:52 +02:00
Marc Durdin
36b7dcc46a
Merge pull request #7174 from keymanapp/chore/merge-master-into-feature-ldml
chore: merge master into feature-ldml 🙀
2022-08-31 17:04:25 -05:00
Eberhard Beilharz
aa55fc2571
Merge pull request #7147 from keymanapp/fix/linux/jenkins.sh
fix(linux): Allow downgrades for installing build deps
2022-08-30 00:26:17 +02:00
Eberhard Beilharz
54a314df0e
Merge pull request #7145 from keymanapp/chore/linux/cherry-pick/changelog
chore(linux): Update debian changelog 🍒
2022-08-30 00:23:23 +02:00
Marc Durdin
655c872dc8 chore: Merge branch 'master' into chore/merge-master-feature-ldml 2022-08-30 06:31:04 +10:00
Marc Durdin
895ce930a0
Merge pull request #6993 from keymanapp/chore/core/rename-json-source
chore(core): rename json.hpp to jsonpp.hpp 🛩
2022-08-29 14:48:32 -05:00
Eberhard Beilharz
fc3c991293
fix(linux): Allow downgrades for installing build deps
When install the keyman-build-deps_*.deb file it can happen that
we end up with a lower version number than what we previously
built. This change allows downgrades so that the build dependencies
can be installed.
2022-08-29 19:06:33 +02:00
Eberhard Beilharz
72b9fa3d21
chore(linux): Update debian changelog
(cherry picked from commit f2b1277166)
2022-08-29 15:14:33 +02:00
Steven R. Loomis
4816e590cf feat(linux): Dockerfile for linux builder
- add Dockerfile in linux/Dockerfile, referencing linux/debian/control
- add docs in docs/build/linux-ubuntu.md

Fixes: #7102
2022-08-26 17:08:56 -05:00
Eberhard Beilharz
7169723d54
fix(linux): Remove wrong ok_for_single_backspace method
The implementation of `ok_for_single_backspace` checked the current
action_item multiple times. However, we already know that that
item is `KM_KBP_IT_BACK` because the only place this method gets
called is from the `process_backspace_action` method. So basically
this method always returns `FALSE`. "Fixing" this method to check
the next action_items makes things fail.

Removing this method since it doesn't do anything except burn
processing cycles...

Fixes #5614.
2022-08-25 18:38:06 +02:00
Marc Durdin
e6ff47f2b3 chore: Merge branch 'master' into feature-ldml 2022-08-24 04:21:21 +10:00
Eberhard Beilharz
7d449a5534
Merge pull request #7060 from keymanapp/chore/linux/improve_include
chore(linux): Refactor `jenkins.sh`
2022-08-15 09:32:22 +02:00
Steven R. Loomis
e8dff5cf4e feat(core): add event_flags to process_event #7046
- use a constant, KM_KBP_EVENT_FLAG_DEFAULT for 0
- update pascal and python
- update linux and windows
2022-08-12 09:58:58 -05:00
Marc Durdin
139b26e4a5 chore(linux): update tar ignore for common folder 2022-08-12 11:12:27 +02:00
Marc Durdin
e30871f01e chore(linux): add common/include to further paths 2022-08-11 14:56:46 +02:00
Marc Durdin
600f6bfec4 chore(linux): update include paths 2022-08-11 13:18:28 +02:00
Eberhard Beilharz
16082ff2ae
chore(linux): Refactor jenkins.sh
- use standard Keyman include scripts
- remove package build support for legacy projects
- install dependencies from `debian/control` file instead of
  maintaining a separate list
2022-08-11 12:34:33 +02:00
Eberhard Beilharz
7cf2b0c924
Merge pull request #7056 from keymanapp/chore/linux/packaging
chore(linux): Adjust Linux source package to restructured code
2022-08-09 15:42:33 +02:00
Eberhard Beilharz
e6b46485ed
Merge pull request #7051 from keymanapp/feat/linux/6955_Replace-deprecated-distutils
feat(linux): Replace deprecated distutils
2022-08-09 15:40:55 +02:00
Eberhard Beilharz
dbca5712e7
chore(linux): Adjust Linux source package to restructured code 2022-08-09 12:08:42 +02:00
Eberhard Beilharz
b1d201a3d7
feat(linux): Replace deprecated distutils
Fixes #6955
2022-08-08 16:38:35 +02:00
Eberhard Beilharz
3657219374
chore(linux): Update debian changelog
(cherry picked from commit cbb9e6537d)
2022-08-05 17:31:54 +02:00
Eberhard Beilharz
ae0378a57f
chore(linux): Add code comment
Follow-up of PR #6997.
2022-07-28 09:43:25 +02:00
Eberhard Beilharz
c8730901dc
Merge pull request #6997 from keymanapp/chore/linux/upload-to-debian
chore(linux): Add script to upload to debian
2022-07-28 09:22:15 +02:00
Eberhard Beilharz
420cc0814d
chore(linux): Apply suggestions from code review
Co-authored-by: Marc Durdin <marc@durdin.net>
2022-07-28 09:19:25 +02:00