Compare commits

..

63 Commits

Author SHA1 Message Date
5dee848875 Merge branch 'rel-1.42.0_rc1' into 'main'
treewide: Document changes and release 1.42.0~rc1

See merge request World/Phosh/squeekboard!680
2024-09-23 13:01:53 +00:00
151921931b treewide: Document changes and release 1.42.0~rc1
Part-of: <https://gitlab.gnome.org/World/Phosh/squeekboard/-/merge_requests/680>
2024-09-23 14:42:41 +02:00
f84426f1a6 hacking.md: Simplify gbp dch …-command
Part-of: <https://gitlab.gnome.org/World/Phosh/squeekboard/-/merge_requests/680>
2024-09-23 14:40:51 +02:00
b74d8aa173 README.md: Improve the information about using the settings
Part-of: <https://gitlab.gnome.org/World/Phosh/squeekboard/-/merge_requests/680>
2024-09-23 14:40:51 +02:00
48e13dce0a Cargo.lock: Update dependencies
Part-of: <https://gitlab.gnome.org/World/Phosh/squeekboard/-/merge_requests/680>
2024-09-23 13:50:13 +02:00
ca8d29647b Merge branch 'scaling-settings' into 'main'
scaling: Add GSettings for adjusting the height of the panel

See merge request World/Phosh/squeekboard!679
2024-09-23 11:21:47 +00:00
a76c3c714e testing: Mention non-default scaling-settings during scaling-tests
Part-of: <https://gitlab.gnome.org/World/Phosh/squeekboard/-/merge_requests/679>
2024-09-23 11:49:54 +02:00
5288e10cab scaling: Add GSettings for adjusting the height of the panel
Part-of: <https://gitlab.gnome.org/World/Phosh/squeekboard/-/merge_requests/679>
2024-09-23 11:49:53 +02:00
18bd7062f2 dependencies: Require at least version 1.0.0 of Meson
Part-of: <https://gitlab.gnome.org/World/Phosh/squeekboard/-/merge_requests/679>
2024-09-22 14:42:56 +02:00
57253e22f4 Merge branch 'osk-dbus' into 'main'
dbus: Update OSK0 protocol from phosh

See merge request World/Phosh/squeekboard!678
2024-09-21 11:18:53 +00:00
3604b93797 dbus: Update OSK0 protocol from phosh
No functional change. Let's just make sure people copy pasting from here
get the commented version.

Part-of: <https://gitlab.gnome.org/World/Phosh/squeekboard/-/merge_requests/678>
2024-09-21 11:09:15 +00:00
dc13e378e6 Merge branch 'scaling-improvement' into 'main'
scaling: Improve scaling

Closes #404

See merge request World/Phosh/squeekboard!677
2024-09-21 10:46:46 +00:00
3387154ac1 scaling: Improve scaling
Issues fixed by this change:

- Empty space above and below layouts.
- The compact shape, which is supposed to be used on small screens,
  did not scale up until it reached the border of the screen, on some
  screens, resulting in empty space next to it, and smaller buttons.
- The compact shape was used on some screens in horizontal orientation,
  instead of the wide shape.
- The panel was rather small on large screens.

Part-of: <https://gitlab.gnome.org/World/Phosh/squeekboard/-/merge_requests/677>
2024-09-21 10:21:42 +00:00
9a261acdfd state.rs: Make get_preferred_height_and_arrangement easier to understand
Part-of: <https://gitlab.gnome.org/World/Phosh/squeekboard/-/merge_requests/677>
2024-09-21 10:21:42 +00:00
8f73e1300e Merge branch 'cargo.toml-versions' into 'main'
Cargo.toml: Change accepted version-range to SemVer-compatible versions

See merge request World/Phosh/squeekboard!676
2024-09-20 23:40:22 +00:00
948762fdf1 Cargo.toml: Update dependencies
Part-of: <https://gitlab.gnome.org/World/Phosh/squeekboard/-/merge_requests/676>
2024-09-20 23:22:52 +00:00
9b9a95c6d2 Cargo.toml: Change accepted version-range to SemVer-compatible versions
instead of updating only to newer bugfix-releases with `x.y.*`, or
newer major versions with `>=`.

For more information about how Cargo handles this, read:
https://doc.rust-lang.org/cargo/reference/resolver.html#semver-compatibility

Part-of: <https://gitlab.gnome.org/World/Phosh/squeekboard/-/merge_requests/676>
2024-09-20 23:22:52 +00:00
2668827ed9 Cargo.toml: Simplify versions
This should not change the selection of the versions to update to.

Cargo considers the leftmost non-zero part of the version, to be the
number that changes compatibility, and will not update to a version that
it considers to be incompatible.

For more information, read:
https://doc.rust-lang.org/cargo/reference/resolver.html#semver-compatibility

Part-of: <https://gitlab.gnome.org/World/Phosh/squeekboard/-/merge_requests/676>
2024-09-20 23:22:52 +00:00
80ded34601 Merge branch 'rename-NEWS.md' into 'main'
NEWS.md: Rename to `NEWS` and Change `-` to `*` in lists

See merge request World/Phosh/squeekboard!675
2024-09-17 14:11:20 +00:00
590f236794 NEWS.md: Rename to NEWS and Change - to * in lists
and add the month of the release-date for all listed versions.

For consistency with other Phosh-related projects.

Part-of: <https://gitlab.gnome.org/World/Phosh/squeekboard/-/merge_requests/675>
2024-09-17 13:47:10 +00:00
13bcb14a24 Merge branch 'placeholder-in-emoji-layout' into 'main'
layouts: Add a placeholder to the emoji-layout

See merge request World/Phosh/squeekboard!674
2024-09-17 13:16:26 +00:00
f5024d6452 layouts: Add a placeholder to the emoji-layout
so the shape of the layout does not change when switching to the view.

Part-of: <https://gitlab.gnome.org/World/Phosh/squeekboard/-/merge_requests/674>
2024-09-15 12:02:31 +02:00
213f08f5fc Merge branch 'settings-panel' into 'main'
popover.rs: Open correct panel in GNOME Settings

Closes #415

See merge request World/Phosh/squeekboard!672
2024-09-13 19:49:14 +00:00
e761208630 popover.rs: Open correct panel in GNOME Settings
Part-of: <https://gitlab.gnome.org/World/Phosh/squeekboard/-/merge_requests/672>
2024-09-13 19:38:19 +00:00
84291a3a15 Merge branch 'better-fallbacks' into 'main'
Layouts: Fallback to more appropriate layouts

See merge request World/Phosh/squeekboard!670
2024-09-13 15:47:10 +00:00
2b07946af2 Layouts: Fallback to more appropriate layouts
Part-of: <https://gitlab.gnome.org/World/Phosh/squeekboard/-/merge_requests/670>
2024-09-13 15:08:56 +00:00
e6a98e3572 Merge branch 'add-japanese-keyboard-layout' into 'main'
Layouts: Add Japanese (jp) layout based on japanese keyboards

See merge request World/Phosh/squeekboard!669
2024-09-13 14:56:59 +00:00
8b26ea691b Layouts: Add Japanese (jp) layout based on japanese keyboards
Part-of: <https://gitlab.gnome.org/World/Phosh/squeekboard/-/merge_requests/669>
2024-09-13 14:28:48 +00:00
b1962eca5a Merge branch 'add-belarusian-layout' into 'main'
Layouts: Add Belarusian layout

See merge request World/Phosh/squeekboard!668
2024-09-07 18:31:04 +00:00
9decd5bd74 Layouts: Add Belarusian layout
Part-of: <https://gitlab.gnome.org/World/Phosh/squeekboard/-/merge_requests/668>
2024-09-07 18:15:54 +00:00
4668138aa6 Merge branch 'language-names-in-layout-files' into 'main'
layouts: Add English language-names to layout-files

See merge request World/Phosh/squeekboard!671
2024-09-05 22:37:54 +00:00
656a598935 layouts: Add English language-names to layout-files
to make it easier to know which language those are for.

Part-of: <https://gitlab.gnome.org/World/Phosh/squeekboard/-/merge_requests/671>
2024-09-05 22:20:16 +00:00
37db3e2959 Merge branch 'malayalam-increase-font-size' into 'main'
layouts: Increase the font-size of the wide shape of the Malayalam layout

See merge request World/Phosh/squeekboard!667
2024-09-05 22:12:38 +00:00
31dfdea533 layouts: Increase the font-size of the wide shape of the Malayalam layout
Part-of: <https://gitlab.gnome.org/World/Phosh/squeekboard/-/merge_requests/667>
2024-09-05 21:56:38 +00:00
1d89d49e7e Merge branch 'serbian-layout' into 'main'
layouts: Add Serbian layouts

See merge request World/Phosh/squeekboard!666
2024-09-03 08:47:00 +00:00
8a527c64c3 layouts: Add Serbian layouts
Part-of: <https://gitlab.gnome.org/World/Phosh/squeekboard/-/merge_requests/666>
2024-09-03 08:35:15 +00:00
c91dc28f9c Update Turkish translation 2024-09-01 11:20:28 +00:00
bb315d6ba0 Merge branch 'gitignore-more' into 'main'
.gitignore: Add debian/*.debhelper

See merge request World/Phosh/squeekboard!665
2024-08-17 13:37:33 +00:00
ac3c17eee9 .gitignore: Add debian/*.debhelper
Part-of: <https://gitlab.gnome.org/World/Phosh/squeekboard/-/merge_requests/665>
2024-08-17 13:08:58 +00:00
332c0f289a Merge branch 'improve-documentation' into 'main'
documentation: Improve documentation

See merge request World/Phosh/squeekboard!662
2024-08-17 13:01:22 +00:00
0adbc40426 documentation: Improve documentation
Part-of: <https://gitlab.gnome.org/World/Phosh/squeekboard/-/merge_requests/662>
2024-08-17 12:48:01 +00:00
d67653abdf Merge branch 'update-alternatives' into 'main'
debian: Support using `update-alternatives`

Closes #412

See merge request World/Phosh/squeekboard!664
2024-08-16 20:38:04 +00:00
b327912efc debian: Support using update-alternatives
to make it easier to switch to another on-screen-keyboard.

Part-of: <https://gitlab.gnome.org/World/Phosh/squeekboard/-/merge_requests/664>
2024-08-16 20:13:37 +00:00
ac4e8ea064 Merge branch 'meson-add-check' into 'main'
meson.build: Check the exit-status-code of `run_command()`

See merge request World/Phosh/squeekboard!663
2024-08-16 12:41:35 +00:00
359f8bfefb meson.build: Check the exit-status-code of run_command()
Part-of: <https://gitlab.gnome.org/World/Phosh/squeekboard/-/merge_requests/663>
2024-08-16 13:51:19 +02:00
35785f3d41 Merge branch 'release-squeekboard-1.41.0' into 'main'
Release Squeekboard 1.41.0

See merge request World/Phosh/squeekboard!661
2024-08-15 11:54:41 +00:00
5e0c95feea Release Squeekboard 1.41.0
New layouts:
 - Malayalam
 - German (Bone)
 - German (Neo 2)

New icons:
 - zwsp (zero-width-space)
 - zwj (zero-width-joiner)

Part-of: <https://gitlab.gnome.org/World/Phosh/squeekboard/-/merge_requests/661>
2024-08-15 10:48:05 +02:00
c7c6081da3 Cargo.lock: Update dependencies
Part-of: <https://gitlab.gnome.org/World/Phosh/squeekboard/-/merge_requests/661>
2024-08-14 18:22:08 +02:00
8c6c66e867 Merge branch 'xkbcommon-0.7' into 'main'
Port to crate xkbcommon 0.7

See merge request World/Phosh/squeekboard!656
2024-08-14 15:29:10 +00:00
34564edf32 Port to crate xkbcommon 0.7
Part-of: <https://gitlab.gnome.org/World/Phosh/squeekboard/-/merge_requests/656>
2024-08-14 15:18:43 +00:00
a267f6c742 Merge branch 'add-malayalam-layout' into 'main'
Layouts: Add Malayalam layout

See merge request World/Phosh/squeekboard!660
2024-08-13 08:31:57 +00:00
0b0585eb66 Layouts: Add Malayalam layout
Part-of: <https://gitlab.gnome.org/World/Phosh/squeekboard/-/merge_requests/660>
2024-08-12 17:50:38 +02:00
ab4659ea03 data/icons: Add zwsp and zwj
Part-of: <https://gitlab.gnome.org/World/Phosh/squeekboard/-/merge_requests/660>
2024-08-12 17:50:37 +02:00
9c9f953efd Merge branch 'use-vendored-dependencies' into 'main'
Build: Use vendored dependencies for building .deb packages

See merge request World/Phosh/squeekboard!659
2024-08-11 15:03:26 +00:00
4ea7cccaec debian/cargo/config: Rename to config.toml
to fix a deprecation-warning:

"…/squeekboard/debian/cargo/config` is deprecated in favor of `config.toml`
note: if you need to support cargo 1.38 or earlier,
you can symlink `config` to `config.toml`"

Part-of: <https://gitlab.gnome.org/World/Phosh/squeekboard/-/merge_requests/659>
2024-08-11 14:53:39 +00:00
117b3e0763 Build: Use vendored dependencies for building .deb packages
It is currently not possible to build Squeekboard with only
packages that are available in Debian.
This is not likely to change until Squeekboard has been ported
to GTK4 or gtk4-layer-shell.
Until then, vendor the dependencies during the build,
so that one can still use the ".deb"-packages for testing.

Part-of: <https://gitlab.gnome.org/World/Phosh/squeekboard/-/merge_requests/659>
2024-08-11 14:53:39 +00:00
c3f46c8db8 Build/CI: Remove workaround that does not work any more
Part-of: <https://gitlab.gnome.org/World/Phosh/squeekboard/-/merge_requests/659>
2024-08-11 14:53:39 +00:00
60f8249fe6 Merge branch 'make-rust-analyzer-work' into 'main'
Build: Use meson_Cargo.toml.in for setting up the build

See merge request World/Phosh/squeekboard!657
2024-08-11 08:32:59 +00:00
271184b9d1 .gitignore: Ignore more files
Part-of: <https://gitlab.gnome.org/World/Phosh/squeekboard/-/merge_requests/657>
2024-08-11 08:17:03 +00:00
0403fe4cde Build: Use meson_Cargo.toml.in for setting up the build
to make rust-analyzer work correctly.

When the paths in Cargo.toml have '@path@' in them,
rust-analyzer cannot find the correct paths.

Before this change, rust-analyzer was unable to offer information
about code (in files other than main.rs), and instead
showed an error-message:
"1:1 unused: This file is not included anywhere in the module tree,
so rust-analyzer can't offer IDE services.".

Part-of: <https://gitlab.gnome.org/World/Phosh/squeekboard/-/merge_requests/657>
2024-08-11 08:17:03 +00:00
0b83eb7d9f Merge branch 'add-ergonomic-de-layouts' into 'main'
Layouts: Add ergonomic German layouts

See merge request World/Phosh/squeekboard!658
2024-08-08 20:39:24 +00:00
a905d03fc9 resources.rs: Correct sorting of layouts
Part-of: <https://gitlab.gnome.org/World/Phosh/squeekboard/-/merge_requests/658>
2024-08-05 12:41:00 +02:00
9f7d2d539e Layouts: Add ergonomic German layouts
The "Neo 2"-layout is optimised for typing in German.
The "Bone"-layout is an improved version of the "Neo 2"-layout.

Part-of: <https://gitlab.gnome.org/World/Phosh/squeekboard/-/merge_requests/658>
2024-08-05 12:40:54 +02:00
156 changed files with 3945 additions and 510 deletions

12
.gitignore vendored
View File

@ -1,9 +1,21 @@
_build/ _build/
debian/*.debhelper
debian/.debhelper/
debian/cargo/registry/
debian/cargo/.*cache*
debian/debhelper-build-stamp
debian/files
debian/*.substvars
debian/squeekboard/
debian/squeekboard-devel/
debian/tmp/
meson_Cargo.toml.in
po/squeekboard.pot po/squeekboard.pot
po/*.mo po/*.mo
TAGS TAGS
tags tags
target/ target/
vendor/
vgdump vgdump
*.swp *.swp
*~ *~

View File

@ -23,9 +23,6 @@ stages:
- deploy - deploy
before_script: before_script:
# Workaround for unavailable dependencies
- mv debian/control.debian-testing debian/control
# End of workaround for unavailable dependencies
- apt-get -y update - apt-get -y update
- apt-get -y install ca-certificates - apt-get -y install ca-certificates
@ -65,17 +62,6 @@ build_deb:
- '*.deb' - '*.deb'
script: script:
- rm -f ../*.deb - rm -f ../*.deb
# Workaround for unavailable dependencies
# TODO: Port Squeekboard to GTK4/GTK4-layer-shell
# https://gitlab.gnome.org/World/Phosh/squeekboard/-/issues/64
- echo "deb http://deb.debian.org/debian/ unstable main" > /etc/apt/sources.list.d/unstable.list
- echo "deb http://deb.debian.org/debian/ experimental main" > /etc/apt/sources.list.d/experimental.list
- echo "APT::Default-Release \"trixie\";" > /etc/apt/apt.conf.d/default-release
- apt-get -y update
- apt-get -y --no-upgrade install librust-gio-dev librust-glib-dev librust-glib-sys-dev
librust-gtk-dev librust-gtk-sys-dev
- apt-get -y --no-upgrade install -t experimental librust-serde-yaml-dev
# End of workaround for unavailable dependencies
- apt-get -y build-dep . - apt-get -y build-dep .
- apt-get -y install devscripts - apt-get -y install devscripts
- REV=$(git log -1 --format=%h) - REV=$(git log -1 --format=%h)

212
Cargo.lock generated
View File

@ -4,9 +4,9 @@ version = 3
[[package]] [[package]]
name = "anstyle" name = "anstyle"
version = "1.0.7" version = "1.0.8"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "038dfcf04a5feb68e9c60b21c9625a54c2c0616e79b72b0fd87075a056ae1d1b" checksum = "1bec1de6f59aedf83baf9ff929c98f2ad654b97c9510f4e70cf6f661d49fd5b1"
[[package]] [[package]]
name = "async-io" name = "async-io"
@ -74,9 +74,9 @@ checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
[[package]] [[package]]
name = "bitflags" name = "bitflags"
version = "2.5.0" version = "2.6.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "cf4b9d6a944f767f8e5e0db018570623c85f3d925ac718db4e06d0187adb21c1" checksum = "b048fb63fd8b5923fc5aa7b340d8e156aec7ec02f0c78fa8a6ddc2613f6f71de"
[[package]] [[package]]
name = "byteorder" name = "byteorder"
@ -90,7 +90,7 @@ version = "0.18.5"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8ca26ef0159422fb77631dc9d17b102f253b876fe1586b03b803e63a309b4ee2" checksum = "8ca26ef0159422fb77631dc9d17b102f253b876fe1586b03b803e63a309b4ee2"
dependencies = [ dependencies = [
"bitflags 2.5.0", "bitflags 2.6.0",
"cairo-sys-rs", "cairo-sys-rs",
"glib", "glib",
"libc", "libc",
@ -111,9 +111,12 @@ dependencies = [
[[package]] [[package]]
name = "cc" name = "cc"
version = "1.0.96" version = "1.1.21"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "065a29261d53ba54260972629f9ca6bffa69bac13cd1fed61420f7fa68b9f8bd" checksum = "07b1695e2c7e8fc85310cde85aeaab7e3097f593c91d209d3f9df76c928100f0"
dependencies = [
"shlex",
]
[[package]] [[package]]
name = "cfg-expr" name = "cfg-expr"
@ -133,18 +136,18 @@ checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
[[package]] [[package]]
name = "clap" name = "clap"
version = "4.4.18" version = "4.5.18"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1e578d6ec4194633722ccf9544794b71b1385c3c027efe0c55db226fc880865c" checksum = "b0956a43b323ac1afaffc053ed5c4b7c1f1800bacd1683c353aabbb752515dd3"
dependencies = [ dependencies = [
"clap_builder", "clap_builder",
] ]
[[package]] [[package]]
name = "clap_builder" name = "clap_builder"
version = "4.4.18" version = "4.5.18"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4df4df40ec50c46000231c914968278b1eb05098cf8f1b3a518a95030e71d1c7" checksum = "4d72166dd41634086d5803a47eb71ae740e61d84709c36f3c34110173db3961b"
dependencies = [ dependencies = [
"anstyle", "anstyle",
"clap_lex", "clap_lex",
@ -152,9 +155,9 @@ dependencies = [
[[package]] [[package]]
name = "clap_lex" name = "clap_lex"
version = "0.6.0" version = "0.7.2"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "702fc72eb24e5a1e48ce58027a675bc24edd52096d5397d4aea7c6dd9eca0bd1" checksum = "1462739cb27611015575c0c11df5df7601141071f07518d56fcc1be504cbec97"
[[package]] [[package]]
name = "concurrent-queue" name = "concurrent-queue"
@ -167,9 +170,9 @@ dependencies = [
[[package]] [[package]]
name = "crossbeam-utils" name = "crossbeam-utils"
version = "0.8.19" version = "0.8.20"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "248e3bacc7dc6baa3b21e405ee045c3047101a49145e7e9eca583ab4c2ca5345" checksum = "22ec99545bb0ed0ea7bb9b8e1e9122ea386ff8a48c0922e43f36d45ab09e0e80"
[[package]] [[package]]
name = "derivative" name = "derivative"
@ -211,9 +214,9 @@ checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5"
[[package]] [[package]]
name = "errno" name = "errno"
version = "0.3.8" version = "0.3.9"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a258e46cdc063eb8519c00b9fc845fc47bcfca4130e2f08e88665ceda8474245" checksum = "534c5cf6194dfab3db3242765c03bbe257cf92f22b38f6bc0c58d59108a820ba"
dependencies = [ dependencies = [
"libc", "libc",
"windows-sys 0.52.0", "windows-sys 0.52.0",
@ -315,7 +318,7 @@ checksum = "87750cf4b7a4c0625b1529e4c543c2182106e4dedc60a2a6455e00d212c489ac"
dependencies = [ dependencies = [
"proc-macro2", "proc-macro2",
"quote", "quote",
"syn 2.0.60", "syn 2.0.77",
] ]
[[package]] [[package]]
@ -444,7 +447,7 @@ version = "0.18.5"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "233daaf6e83ae6a12a52055f568f9d7cf4671dabb78ff9560ab6da230ce00ee5" checksum = "233daaf6e83ae6a12a52055f568f9d7cf4671dabb78ff9560ab6da230ce00ee5"
dependencies = [ dependencies = [
"bitflags 2.5.0", "bitflags 2.6.0",
"futures-channel", "futures-channel",
"futures-core", "futures-core",
"futures-executor", "futures-executor",
@ -472,7 +475,7 @@ dependencies = [
"proc-macro-error", "proc-macro-error",
"proc-macro2", "proc-macro2",
"quote", "quote",
"syn 2.0.60", "syn 2.0.77",
] ]
[[package]] [[package]]
@ -545,7 +548,7 @@ dependencies = [
"proc-macro-error", "proc-macro-error",
"proc-macro2", "proc-macro2",
"quote", "quote",
"syn 2.0.60", "syn 2.0.77",
] ]
[[package]] [[package]]
@ -574,9 +577,9 @@ checksum = "d231dfb89cfffdbc30e7fc41579ed6066ad03abda9e567ccafae602b97ec5024"
[[package]] [[package]]
name = "indexmap" name = "indexmap"
version = "2.2.6" version = "2.5.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "168fb715dda47215e360912c096649d23d58bf392ac62f73919e831745e40f26" checksum = "68b900aa2f7301e21c36462b170ee99994de34dff39a4a6a528e80e7376d07e5"
dependencies = [ dependencies = [
"equivalent", "equivalent",
"hashbrown", "hashbrown",
@ -584,9 +587,9 @@ dependencies = [
[[package]] [[package]]
name = "instant" name = "instant"
version = "0.1.12" version = "0.1.13"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7a5bbe824c507c5da5956355e86a746d82e0e1464f65d862cc5e71da70e94b2c" checksum = "e0242819d153cba4b4b05a5a8f2a7e9bbf97b6055b2a002b395c96b5ff3c0222"
dependencies = [ dependencies = [
"cfg-if", "cfg-if",
] ]
@ -610,9 +613,9 @@ checksum = "49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b"
[[package]] [[package]]
name = "libc" name = "libc"
version = "0.2.154" version = "0.2.158"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ae743338b92ff9146ce83992f766a31066a91a8c84a45e0e9f21e7cf6de6d346" checksum = "d8adc4bb1803a324070e64a98ae98f38934d91957a99cfb3a43dcbc01bc56439"
[[package]] [[package]]
name = "linux-raw-sys" name = "linux-raw-sys"
@ -622,9 +625,9 @@ checksum = "ef53942eb7bf7ff43a617b3e2c1c4a5ecf5944a7c1bc12d7ee39bbb15e5c1519"
[[package]] [[package]]
name = "log" name = "log"
version = "0.4.21" version = "0.4.22"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "90ed8c1e510134f979dbc4f070f87d4313098b704861a105fe34231c70a3901c" checksum = "a7a70ba024b9dc04c27ea2f0c0548feb474ec5c54bba33a7f72f873a39d07b24"
[[package]] [[package]]
name = "maplit" name = "maplit"
@ -634,15 +637,15 @@ checksum = "3e2e65a1a2e43cfcb47a895c4c8b10d1f4a61097f9f254f183aee60cad9c651d"
[[package]] [[package]]
name = "memchr" name = "memchr"
version = "2.7.2" version = "2.7.4"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6c8640c5d730cb13ebd907d8d04b52f55ac9a2eec55b440c8892f40d56c76c1d" checksum = "78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3"
[[package]] [[package]]
name = "memmap2" name = "memmap2"
version = "0.7.1" version = "0.8.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f49388d20533534cd19360ad3d6a7dadc885944aa802ba3995040c5ec11288c6" checksum = "43a5a03cefb0d953ec0be133036f14e109412fa594edc2f77227249db66cc3ed"
dependencies = [ dependencies = [
"libc", "libc",
] ]
@ -721,9 +724,9 @@ dependencies = [
[[package]] [[package]]
name = "parking" name = "parking"
version = "2.2.0" version = "2.2.1"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "bb813b8af86854136c6922af0598d719255ecb2179515e6e7730d468f05c9cae" checksum = "f38d5652c16fde515bb1ecef450ab0f6a219d619a7274976324d5e377f7dceba"
[[package]] [[package]]
name = "pin-project-lite" name = "pin-project-lite"
@ -739,9 +742,9 @@ checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184"
[[package]] [[package]]
name = "pkg-config" name = "pkg-config"
version = "0.3.30" version = "0.3.31"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d231b230927b5e4ad203db57bbcbee2802f6bce620b1e4a9024a07d94e2907ec" checksum = "953ec861398dccce10c670dfeaf3ec4911ca479e9c02154b3a215178c5f566f2"
[[package]] [[package]]
name = "polling" name = "polling"
@ -814,18 +817,18 @@ dependencies = [
[[package]] [[package]]
name = "proc-macro2" name = "proc-macro2"
version = "1.0.81" version = "1.0.86"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3d1597b0c024618f09a9c3b8655b7e430397a36d23fdafec26d6965e9eec3eba" checksum = "5e719e8df665df0d1c8fbfd238015744736151d4445ec0836b8e628aae103b77"
dependencies = [ dependencies = [
"unicode-ident", "unicode-ident",
] ]
[[package]] [[package]]
name = "quote" name = "quote"
version = "1.0.36" version = "1.0.37"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0fa76aaf39101c457836aec0ce2316dbdc3ab723cdda1c6bd4e6ad4208acaca7" checksum = "b5b9d34b8991d19d98081b46eacdd8eb58c6f2b201139f7c5f643cc155a633af"
dependencies = [ dependencies = [
"proc-macro2", "proc-macro2",
] ]
@ -855,9 +858,9 @@ dependencies = [
[[package]] [[package]]
name = "rustc_version" name = "rustc_version"
version = "0.4.0" version = "0.4.1"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366" checksum = "cfcb3a22ef46e85b45de6ee7e79d063319ebb6594faafcf1c225ea92ab6e9b92"
dependencies = [ dependencies = [
"semver", "semver",
] ]
@ -878,9 +881,9 @@ dependencies = [
[[package]] [[package]]
name = "ryu" name = "ryu"
version = "1.0.17" version = "1.0.18"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e86697c916019a8588c99b5fac3cead74ec0b4b819707a682fd4d23fa0ce1ba1" checksum = "f3cb5ba0dc43242ce17de99c180e96db90b235b8a9fdc9543c96d2209116bd9f"
[[package]] [[package]]
name = "scoped-tls" name = "scoped-tls"
@ -890,28 +893,28 @@ checksum = "e1cf6437eb19a8f4a6cc0f7dca544973b0b78843adbfeb3683d1a94a0024a294"
[[package]] [[package]]
name = "semver" name = "semver"
version = "1.0.22" version = "1.0.23"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "92d43fe69e652f3df9bdc2b85b2854a0825b86e4fb76bc44d945137d053639ca" checksum = "61697e0a1c7e512e84a621326239844a24d8207b4669b41bc18b32ea5cbf988b"
[[package]] [[package]]
name = "serde" name = "serde"
version = "1.0.200" version = "1.0.210"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ddc6f9cc94d67c0e21aaf7eda3a010fd3af78ebf6e096aa6e2e13c79749cce4f" checksum = "c8e3592472072e6e22e0a54d5904d9febf8508f65fb8552499a1abc7d1078c3a"
dependencies = [ dependencies = [
"serde_derive", "serde_derive",
] ]
[[package]] [[package]]
name = "serde_derive" name = "serde_derive"
version = "1.0.200" version = "1.0.210"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "856f046b9400cee3c8c94ed572ecdb752444c24528c035cd35882aad6f492bcb" checksum = "243902eda00fad750862fc144cea25caca5e20d615af0a81bee94ca738f1df1f"
dependencies = [ dependencies = [
"proc-macro2", "proc-macro2",
"quote", "quote",
"syn 2.0.60", "syn 2.0.77",
] ]
[[package]] [[package]]
@ -922,14 +925,14 @@ checksum = "6c64451ba24fc7a6a2d60fc75dd9c83c90903b19028d4eff35e88fc1e86564e9"
dependencies = [ dependencies = [
"proc-macro2", "proc-macro2",
"quote", "quote",
"syn 2.0.60", "syn 2.0.77",
] ]
[[package]] [[package]]
name = "serde_spanned" name = "serde_spanned"
version = "0.6.5" version = "0.6.7"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "eb3622f419d1296904700073ea6cc23ad690adbd66f13ea683df73298736f0c1" checksum = "eb5b1b31579f3811bf615c144393417496f152e12ac8b7663bf664f4a815306d"
dependencies = [ dependencies = [
"serde", "serde",
] ]
@ -947,6 +950,12 @@ dependencies = [
"unsafe-libyaml", "unsafe-libyaml",
] ]
[[package]]
name = "shlex"
version = "1.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64"
[[package]] [[package]]
name = "slab" name = "slab"
version = "0.4.9" version = "0.4.9"
@ -991,9 +1000,9 @@ dependencies = [
[[package]] [[package]]
name = "syn" name = "syn"
version = "2.0.60" version = "2.0.77"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "909518bc7b1c9b779f1bbf07f2929d35af9f0f37e47c6e9ef7f9dddc1e1821f3" checksum = "9f35bcdf61fd8e7be6caf75f429fdca8beb3ed76584befb503b1569faee373ed"
dependencies = [ dependencies = [
"proc-macro2", "proc-macro2",
"quote", "quote",
@ -1015,28 +1024,28 @@ dependencies = [
[[package]] [[package]]
name = "target-lexicon" name = "target-lexicon"
version = "0.12.14" version = "0.12.16"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e1fc403891a21bcfb7c37834ba66a547a8f402146eba7265b5a6d88059c9ff2f" checksum = "61c41af27dd6d1e27b1b16b489db798443478cef1f06a660c96db617ba5de3b1"
[[package]] [[package]]
name = "thiserror" name = "thiserror"
version = "1.0.59" version = "1.0.64"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f0126ad08bff79f29fc3ae6a55cc72352056dfff61e3ff8bb7129476d44b23aa" checksum = "d50af8abc119fb8bb6dbabcfa89656f46f84aa0ac7688088608076ad2b459a84"
dependencies = [ dependencies = [
"thiserror-impl", "thiserror-impl",
] ]
[[package]] [[package]]
name = "thiserror-impl" name = "thiserror-impl"
version = "1.0.59" version = "1.0.64"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d1cd413b5d558b4c5bf3680e324a6fa5014e7b7c067a51e69dbdf47eb7148b66" checksum = "08904e7672f5eb876eaaf87e0ce17857500934f4981c4a0ab2b4aa98baac7fc3"
dependencies = [ dependencies = [
"proc-macro2", "proc-macro2",
"quote", "quote",
"syn 2.0.60", "syn 2.0.77",
] ]
[[package]] [[package]]
@ -1095,9 +1104,9 @@ dependencies = [
[[package]] [[package]]
name = "unicode-ident" name = "unicode-ident"
version = "1.0.12" version = "1.0.13"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b" checksum = "e91b56cd4cadaeb79bbf1a5645f6b4f8dc5bde8834ad5894a8db35fda9efa1fe"
[[package]] [[package]]
name = "unsafe-libyaml" name = "unsafe-libyaml"
@ -1113,15 +1122,15 @@ checksum = "852e951cb7832cb45cb1169900d19760cfa39b82bc0ea9c0e5a14ae88411c98b"
[[package]] [[package]]
name = "version_check" name = "version_check"
version = "0.9.4" version = "0.9.5"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f" checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a"
[[package]] [[package]]
name = "waker-fn" name = "waker-fn"
version = "1.1.1" version = "1.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f3c4517f54858c779bbcbf228f4fca63d121bf85fbecb2dc578cdf4a39395690" checksum = "317211a0dc0ceedd78fb2ca9a44aed3d7b9b26f81870d485c07122b4350673b7"
[[package]] [[package]]
name = "winapi" name = "winapi"
@ -1160,7 +1169,7 @@ version = "0.52.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d" checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d"
dependencies = [ dependencies = [
"windows-targets 0.52.5", "windows-targets 0.52.6",
] ]
[[package]] [[package]]
@ -1180,18 +1189,18 @@ dependencies = [
[[package]] [[package]]
name = "windows-targets" name = "windows-targets"
version = "0.52.5" version = "0.52.6"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6f0713a46559409d202e70e28227288446bf7841d3211583a4b53e3f6d96e7eb" checksum = "9b724f72796e036ab90c1021d4780d4d3d648aca59e491e6b98e725b84e99973"
dependencies = [ dependencies = [
"windows_aarch64_gnullvm 0.52.5", "windows_aarch64_gnullvm 0.52.6",
"windows_aarch64_msvc 0.52.5", "windows_aarch64_msvc 0.52.6",
"windows_i686_gnu 0.52.5", "windows_i686_gnu 0.52.6",
"windows_i686_gnullvm", "windows_i686_gnullvm",
"windows_i686_msvc 0.52.5", "windows_i686_msvc 0.52.6",
"windows_x86_64_gnu 0.52.5", "windows_x86_64_gnu 0.52.6",
"windows_x86_64_gnullvm 0.52.5", "windows_x86_64_gnullvm 0.52.6",
"windows_x86_64_msvc 0.52.5", "windows_x86_64_msvc 0.52.6",
] ]
[[package]] [[package]]
@ -1202,9 +1211,9 @@ checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8"
[[package]] [[package]]
name = "windows_aarch64_gnullvm" name = "windows_aarch64_gnullvm"
version = "0.52.5" version = "0.52.6"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7088eed71e8b8dda258ecc8bac5fb1153c5cffaf2578fc8ff5d61e23578d3263" checksum = "32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3"
[[package]] [[package]]
name = "windows_aarch64_msvc" name = "windows_aarch64_msvc"
@ -1214,9 +1223,9 @@ checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc"
[[package]] [[package]]
name = "windows_aarch64_msvc" name = "windows_aarch64_msvc"
version = "0.52.5" version = "0.52.6"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9985fd1504e250c615ca5f281c3f7a6da76213ebd5ccc9561496568a2752afb6" checksum = "09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469"
[[package]] [[package]]
name = "windows_i686_gnu" name = "windows_i686_gnu"
@ -1226,15 +1235,15 @@ checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e"
[[package]] [[package]]
name = "windows_i686_gnu" name = "windows_i686_gnu"
version = "0.52.5" version = "0.52.6"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "88ba073cf16d5372720ec942a8ccbf61626074c6d4dd2e745299726ce8b89670" checksum = "8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b"
[[package]] [[package]]
name = "windows_i686_gnullvm" name = "windows_i686_gnullvm"
version = "0.52.5" version = "0.52.6"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "87f4261229030a858f36b459e748ae97545d6f1ec60e5e0d6a3d32e0dc232ee9" checksum = "0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66"
[[package]] [[package]]
name = "windows_i686_msvc" name = "windows_i686_msvc"
@ -1244,9 +1253,9 @@ checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406"
[[package]] [[package]]
name = "windows_i686_msvc" name = "windows_i686_msvc"
version = "0.52.5" version = "0.52.6"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "db3c2bf3d13d5b658be73463284eaf12830ac9a26a90c717b7f771dfe97487bf" checksum = "240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66"
[[package]] [[package]]
name = "windows_x86_64_gnu" name = "windows_x86_64_gnu"
@ -1256,9 +1265,9 @@ checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e"
[[package]] [[package]]
name = "windows_x86_64_gnu" name = "windows_x86_64_gnu"
version = "0.52.5" version = "0.52.6"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4e4246f76bdeff09eb48875a0fd3e2af6aada79d409d33011886d3e1581517d9" checksum = "147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78"
[[package]] [[package]]
name = "windows_x86_64_gnullvm" name = "windows_x86_64_gnullvm"
@ -1268,9 +1277,9 @@ checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc"
[[package]] [[package]]
name = "windows_x86_64_gnullvm" name = "windows_x86_64_gnullvm"
version = "0.52.5" version = "0.52.6"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "852298e482cd67c356ddd9570386e2862b5673c85bd5f88df9ab6802b334c596" checksum = "24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d"
[[package]] [[package]]
name = "windows_x86_64_msvc" name = "windows_x86_64_msvc"
@ -1280,9 +1289,9 @@ checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538"
[[package]] [[package]]
name = "windows_x86_64_msvc" name = "windows_x86_64_msvc"
version = "0.52.5" version = "0.52.6"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "bec47e5bfd1bff0eeaf6d8b485cc1074891a197ab4225d504cb7a1ab88b02bf0" checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec"
[[package]] [[package]]
name = "winnow" name = "winnow"
@ -1295,14 +1304,21 @@ dependencies = [
[[package]] [[package]]
name = "xkbcommon" name = "xkbcommon"
version = "0.5.1" version = "0.7.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "52db25b599e92bf6e3904134618728eeb7b49a5a4f38f107f92399bb9c496b88" checksum = "13867d259930edc7091a6c41b4ce6eee464328c6ff9659b7e4c668ca20d4c91e"
dependencies = [ dependencies = [
"libc", "libc",
"memmap2", "memmap2",
"xkeysym",
] ]
[[package]]
name = "xkeysym"
version = "0.2.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b9cc00251562a284751c9973bace760d86c0276c471b4be569fe6b068ee97a56"
[[package]] [[package]]
name = "zbus" name = "zbus"
version = "1.9.3" version = "1.9.3"

View File

@ -5,62 +5,62 @@ edition = "2021"
[lib] [lib]
name = "rs" name = "rs"
path = "@path@/src/lib.rs" path = "src/lib.rs"
crate-type = ["staticlib", "rlib"] crate-type = ["staticlib", "rlib"]
# Cargo can't do autodiscovery if Cargo.toml is not in the root. # Cargo can't do autodiscovery if Cargo.toml is not in the root.
[[bin]] [[bin]]
name = "test_layout" name = "test_layout"
path = "@path@/src/bin/test_layout.rs" path = "src/bin/test_layout.rs"
[[example]] [[example]]
name = "test_layout" name = "test_layout"
path = "@path@/examples/test_layout.rs" path = "examples/test_layout.rs"
[[example]] [[example]]
name = "find_orphan_layouts" name = "find_orphan_layouts"
path = "@path@/examples/find_orphan_layouts.rs" path = "examples/find_orphan_layouts.rs"
[features] [features]
zbus_v1_5 = [] zbus_v1_5 = []
clap_v4 = [] clap_v4 = []
[dependencies] [dependencies]
maplit = "1.0.*" maplit = "1.0"
serde = { version = "1.0.*", features = ["derive"] } serde = { version = "1.0", features = ["derive"] }
serde_yaml = "0.9.*" serde_yaml = "0.9"
bitflags = "1.3.*" bitflags = "1.3"
clap = { version = "4.4.*", features=["std"], default-features = false } clap = { version = "4.4", features=["std"], default-features = false }
zbus = "1.9.*" zbus = "1.9"
zvariant = "2.10.*" zvariant = "2.10"
zvariant_derive = "2.10.*" zvariant_derive = "2.10"
xkbcommon = { version = "0.5.*", features = ["wayland"] } xkbcommon = { version = "0.7", features = ["wayland"] }
[dependencies.cairo-rs] [dependencies.cairo-rs]
version = "0.18.*" version = "0.18"
[dependencies.cairo-sys-rs] [dependencies.cairo-sys-rs]
version = "0.18.*" version = "0.18"
[dependencies.gdk] [dependencies.gdk]
version = "0.18.*" version = "0.18"
[dependencies.gio] [dependencies.gio]
version = "0.18.*" version = "0.18"
features = ["v2_58"] features = ["v2_58"]
[dependencies.glib] [dependencies.glib]
version = "0.18.*" version = "0.18"
features = ["v2_58"] features = ["v2_58"]
[dependencies.glib-sys] [dependencies.glib-sys]
version = "0.18.*" version = "0.18"
features = ["v2_58"] features = ["v2_58"]
[dependencies.gtk] [dependencies.gtk]
version = "0.18.*" version = "0.18"
features = ["v3_24"] features = ["v3_24"]
[dependencies.gtk-sys] [dependencies.gtk-sys]
version = "0.18.*" version = "0.18"
features = ["v3_24"] features = ["v3_24"]

138
NEWS Normal file
View File

@ -0,0 +1,138 @@
squeekboard 1.42.0~rc1
----------------------
Released September 2024
* New layouts:
* Belarusian (by)
* Japanese (jp)
* Serbian (rs), (rs+latin), (rs+latinunicode)
* Fixes:
* "Keyboard Settings" in the language-selection-popover will now open the correct panel in GNOME Settings.
* On some relatively small screens in horizontal orientation, the compact shape was used instead of the wide shape,
even though the wide shape can fit into the same height. The wide shape will be used on those screens now.
* Changes:
* The height of the panel will adapt to screens differently now.
In particular, the panel will now be 1/3 of the screen's height on most monitors in horizontal orientation,
and as tall as it can be, while maintaining the aspect-ratio of the wide shape (16:5) without empty space next to it,
for most monitors in vertical orientation.
* Settings for adjusting the height of the panel for the keyboard have been added.
* The documentation has been improved. In particular, it should now be much easier to learn how to test changes to Squeekboard and layouts.
* After building a Debian-package for Squeekboard and installing it, `update-alternatives` is now supported.
* The layout-files now have the English name of the language for which the respective layout is, in a comment at the top of the file.
* For a few languages which do not have a layout yet, a more appropriate fallback-layout will be chosen.
* Contributors:
* Guido Günther
* MoonlightWave-12
* UI translations:
* Sabri Ünal (tr)
squeekboard 1.41.0
------------------
Released August 2024
* New layouts:
* Malayalam
* German (Bone)
* German (Neo 2)
* New icons:
* zwsp (zero-width-space)
* zwj (zero-width-joiner)
squeekboard 1.39.0
------------------
Released May 2024
* New button-styles:
* `change-view`: Highlighted like `special`, but with a border at the bottom.
* `character-group`: Like `change-view`, but with less highlighting.
* `placeholder`: Less contrast to the background and does not visually change when pressed.
* `subtle-highlight`: For highlighting commonly used characters in accent-views, for example.
* New layouts:
* Portuguese
* Slovenian
* Turkish (F-layout)
* Turkish (Q-layout)
* Remade layout:
* Portuguese (Brazil): A view for accents has been added.
* Changes:
* The new button-styles are used in the available layouts, where appropriate.
* The top rows of the terminal-layouts are a little taller.
* Squeekboard will choose the wide shape of layouts, for more displays in horizontal orientation.
* Highlighted buttons now show visual feedback too, when pressed.
* Many layouts have been adjusted, so that those change their form less when switching views.
* Various small issues have been fixed, to make layouts more consistent.
* Development:
* Scaling-tests for many display-types have been added.
squeekboard 1.38.0
------------------
Released March 2024
* Changes:
* 25 wide shapes have been added, so that every available layout now has a wide shape
* "PgUp" and "PgDn" on the terminal-layouts have been relabeled to "Page ↑" and "Page ↓"
* The Spanish and French terminal-layouts now have translated key-names
* The Spanish terminal-layout has been updated with the additional keys that are already available on the US-terminal-layout.
* The wide and base shapes of the German layout had a different key-arrangement and the wide shape did not have a button to access additional characters; this has been fixed.
* Development:
* Squeekboard's versioning now follows Phosh's versioning (for example: Squeekboard 1.38 was released in time for Phosh 0.38)
* The build-system has been simplified
* A single Cargo.toml file is used, instead of assembling it from multiple parts
* Newer dependencies are now used for building Squeekboard by default
* Squeekboard's main development-platform is now Debian Testing
* The layout-files have been cleaned up, so that those are easier to understand and edit
squeekboard 1.24.0
------------------
Released March 2024
* Changes:
* The emoji-layout has been replaced with a new one, which offers many more emojis to choose from.
squeekboard 1.23.0
------------------
Released March 2024
* New or updated translations:
* Belarusian
* Haitian Creole
* New layouts:
* French Canadian (QWERTY + accented letters)
* German terminal-layout
* Spanish terminal-layout
* Changes:
* Fixed Persian and Swiss layouts
* Fixed various small style-issues in many layouts
* Improved the US-terminal-layout
squeekboard 1.22.0 "Superposition"
------------------
Released April 2023
* New or updated translations:
* Basque
* Changes:
* fixed panel sizing when scaling
* fixed panel sizing when rotating
* fixed Dvorak terminal layout
squeekboard 1.21.0 "Expected value"
------------------
Released February 2023
* New or updated translations:
* Hindi
* Czech
* German
* New layouts:
* wide Swedish
* Hungarian
* Changes:
* use a custom font for gr+polytonic, where the default is unreadable
* require newer Rust
* fixed panel sizing when rotating
* internal improvements.
squeekboard 1.20.0 "PID controller"
------------------
Released September 2023
* New translations:
* Greek
* Croatian
* New layouts:
* US Dvorak terminal
* Improvements:
* forcing the panel to hide now takes effect immediately
* Squeekboard icon will present itself when other applications need to show it

112
NEWS.md
View File

@ -1,112 +0,0 @@
1.39.0
------------------
New button-styles:
- `change-view`: Highlighted like `special`, but with a border at the bottom.
- `character-group`: Like `change-view`, but with less highlighting.
- `placeholder`: Less contrast to the background and does not visually change when pressed.
- `subtle-highlight`: For highlighting commonly used characters in accent-views, for example.
New layouts:
- Portuguese
- Slovenian
- Turkish (F-layout)
- Turkish (Q-layout)
Remade layout:
- Portuguese (Brazil): A view for accents has been added.
Changes:
- The new button-styles are used in the available layouts, where appropriate.
- The top rows of the terminal-layouts are a little taller.
- Squeekboard will choose the wide shape of layouts, for more displays in horizontal orientation.
- Highlighted buttons now show visual feedback too, when pressed.
- Many layouts have been adjusted, so that those change their form less when switching views.
- Various small issues have been fixed, to make layouts more consistent.
Development:
- Scaling-tests for many display-types have been added.
1.38.0
------------------
Changes:
- 25 wide shapes have been added, so that every available layout now has a wide shape
- "PgUp" and "PgDn" on the terminal-layouts have been relabeled to "Page ↑" and "Page ↓"
- The Spanish and French terminal-layouts now have translated key-names
- The Spanish terminal-layout has been updated with the additional keys that are already available on the US-terminal-layout.
- The wide and base shapes of the German layout had a different key-arrangement and the wide shape did not have a button to access additional characters; this has been fixed.
Development:
- Squeekboard's versioning now follows Phosh's versioning (for example: Squeekboard 1.38 was released in time for Phosh 0.38)
- The build-system has been simplified
- A single Cargo.toml file is used, instead of assembling it from multiple parts
- Newer dependencies are now used for building Squeekboard by default
- Squeekboard's main development-platform is now Debian Testing
- The layout-files have been cleaned up, so that those are easier to understand and edit
1.24.0
------------------
Changes:
- The emoji-layout has been replaced with a new one, which offers many more emojis to choose from.
1.23.0
------------------
New or updated translations:
- Belarusian
- Haitian Creole
New layouts:
- French Canadian (QWERTY + accented letters)
- German terminal-layout
- Spanish terminal-layout
Changes:
- Fixed Persian and Swiss layouts
- Fixed various small style-issues in many layouts
- Improved the US-terminal-layout
1.22.0 "Superposition"
------------------
New or updated translations:
- Basque
Changes:
- fixed panel sizing when scaling
- fixed panel sizing when rotating
- fixed Dvorak terminal layout
1.21.0 "Expected value"
------------------
New or updated translations:
- Hindi
- Czech
- German
New layouts:
- wide Swedish
- Hungarian
Changes:
- use a custom font for gr+polytonic, where the default is unreadable
- require newer Rust
- fixed panel sizing when rotating
- internal improvements.
1.20.0 "PID controller"
------------------
New translations:
- Greek
- Croatian
New layouts:
- US Dvorak terminal
Improvements:
- forcing the panel to hide now takes effect immediately
- Squeekboard icon will present itself when other applications need to show it

View File

@ -1,7 +1,7 @@
*squeekboard* - a Wayland on-screen keyboard *squeekboard* - a Wayland on-screen keyboard
======================================== ========================================
*Squeekboard* is the on-screen keyboard for Phosh. It is primarily designed for smartphones, tablet-PCs, and other devices with touchscreens. *Squeekboard* is the on-screen-keyboard input-method for Phosh. It is primarily designed for smartphones, tablet-PCs, and other devices with touchscreens.
It squeaks because some Rust got inside. It squeaks because some Rust got inside.
@ -30,6 +30,12 @@ Creating layouts
If you want to work on layouts, check out the [guide](doc/tutorial.md). If you want to work on layouts, check out the [guide](doc/tutorial.md).
Nightly builds
--------------
For testing the latest commits of the `main`-branch, one can install the nightly builds of Squeekboard.
For more information about the nightly builds, read the ["Phosh Nightly Package Builds"-blog-post](https://phosh.mobi/posts/phosh-nightly/).
Building Building
-------- --------
@ -43,7 +49,7 @@ See `.gitlab-ci.yml` or run `apt-get build-dep .`
$ git clone https://gitlab.gnome.org/World/Phosh/squeekboard.git $ git clone https://gitlab.gnome.org/World/Phosh/squeekboard.git
$ cd squeekboard $ cd squeekboard
$ mkdir _build $ mkdir _build
$ meson _build/ $ meson setup _build/
$ cd _build $ cd _build
$ ninja $ ninja
``` ```
@ -54,11 +60,16 @@ Running
------- -------
```sh ```sh
$ phoc # if no compatible Wayland compositor is running yet
$ cd ../build/ $ cd ../build/
$ src/squeekboard $ src/squeekboard
``` ```
If no compatible Wayland compositor is running yet, you can use Phoc (after installing it):
```sh
$ phoc --exec 'src/squeekboard'
```
Squeekboard's panel will appear whenever a compatible application requests an input method. Click a text field in any GTK application, like `python3 ./tools/entry.py`. Squeekboard's panel will appear whenever a compatible application requests an input method. Click a text field in any GTK application, like `python3 ./tools/entry.py`.
Squeekboard honors the gnome "screen-keyboard-enabled" setting. Either enable this through gnome-settings under accessibility or run: Squeekboard honors the gnome "screen-keyboard-enabled" setting. Either enable this through gnome-settings under accessibility or run:
@ -73,6 +84,8 @@ Alternatively, force panel visibility manually with:
$ busctl call --user sm.puri.OSK0 /sm/puri/OSK0 sm.puri.OSK0 SetVisible b true $ busctl call --user sm.puri.OSK0 /sm/puri/OSK0 sm.puri.OSK0 SetVisible b true
``` ```
or by using the environment-variable `SQUEEKBOARD_DEBUG=force_show`.
### What the compositor has to support ### What the compositor has to support
A compatible compositor has to support the protocols: A compatible compositor has to support the protocols:
@ -84,6 +97,25 @@ It's strongly recommended to support:
- input-method-v2 - input-method-v2
Settings
--------
You can change the height of the panel for the keyboard with:
```sh
$ gsettings set sm.puri.Squeekboard scale-in-horizontal-screen-orientation 1.0
$ gsettings set sm.puri.Squeekboard scale-in-vertical-screen-orientation 1.0
```
Note: If the keyboard is open when the settings for the panel-height are changed, the height of the keyboard will not change until it is opened again, or the layout is changed.
While using Phosh, you can long-click/long-tap the home-bar at the bottom, to open and close the keyboard.
To reset the settings to the default, you can use:
```sh
$ gsettings reset-recursively sm.puri.Squeekboard
```
Developing Developing
---------- ----------

View File

@ -12,6 +12,9 @@ SOURCE_DIR="$(dirname "$SCRIPT_PATH")"
CARGO_TARGET_DIR="$(pwd)" CARGO_TARGET_DIR="$(pwd)"
export CARGO_TARGET_DIR export CARGO_TARGET_DIR
GSETTINGS_SCHEMA_DIR="${CARGO_TARGET_DIR}/data:${GSETTINGS_SCHEMA_DIR}"
export GSETTINGS_SCHEMA_DIR
cd "$SOURCE_DIR" cd "$SOURCE_DIR"
# the 'run" command takes arguments at the end, # the 'run" command takes arguments at the end,

View File

@ -11,10 +11,22 @@ sq_view.gr_polytonic {
font-size: 2em; font-size: 2em;
} }
sq_view.in_mal {
font-size: 1em;
}
sq_view.wide.in_mal {
font-size: 1.25em;
}
sq_view.ir_azb { sq_view.ir_azb {
font-size: 1.368em; font-size: 1.368em;
} }
sq_view.wide.jp {
font-size: 1.15em;
}
sq_button { sq_button {
border-radius: 4px; border-radius: 4px;
margin: 2px; margin: 2px;

View File

@ -1,20 +1,31 @@
<!DOCTYPE node PUBLIC "-//freedesktop//DTD D-BUS Object Introspection 1.0//EN" <!DOCTYPE node PUBLIC "-//freedesktop//DTD D-BUS Object Introspection 1.0//EN"
"http://www.freedesktop.org/standards/dbus/1.0/introspect.dtd"> "http://www.freedesktop.org/standards/dbus/1.0/introspect.dtd">
<node xmlns:doc="http://www.freedesktop.org/dbus/1.0/doc.dtd"> <node xmlns:doc="http://www.freedesktop.org/dbus/1.0/doc.dtd">
<!--
sm.puri.OSK0:
This interface is exported by on screen keyboards (OSK) to
indicate and set state like visibility.
-->
<interface name="sm.puri.OSK0"> <interface name="sm.puri.OSK0">
<!--
SetVisible:
@visible: %TRUE if the OSK should be shown to the user, %FALSE otherwise
Toggle keyboard visibility.
-->
<method name="SetVisible"> <method name="SetVisible">
<arg name="visible" type="b" direction="in"/> <arg type="b" direction="in" name="visible"/>
<doc:doc><doc:description>
Switch keyboard visibility
</doc:description></doc:doc>
</method> </method>
<method name="GetVisible"> <!--
<arg name="visible" type="b" direction="out"/> Visible:
<doc:doc><doc:description>
Get keyboard visibility Indicates whether the on screen keyboard is currently
</doc:description></doc:doc> unfolded. %TRUE if the OSK is currently visible to the user,
</method> %FALSE otherwise.
<property name="Visible" type="b" access="read"> -->
</property> <property name="Visible" type="b" access="read"/>
</interface> </interface>
</node> </node>

8
data/icons/zwj.svg Normal file
View File

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg width="200" height="200" version="1.1" xmlns="http://www.w3.org/2000/svg">
<g fill="none" stroke="#000">
<path d="m135.66 182.97a51.681 32.879 0 0 1-71.332 9.8e-4" stroke-width="12.123"/>
<path d="m135.66 17.029a51.681 32.879 0 0 0-71.332-0.0011" stroke-width="12.123"/>
<path d="m100 7.7071v184.59" stroke-width="10"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 384 B

8
data/icons/zwsp.svg Normal file
View File

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg width="200" height="200" version="1.1" xmlns="http://www.w3.org/2000/svg">
<g fill="none" stroke="#000">
<circle cx="100" cy="20.429" r="14.118" stroke-width="9.05"/>
<circle cx="100" cy="179.57" r="14.118" stroke-width="9.05"/>
<path d="m100 34.739v130.52" stroke-width="8.5856"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 346 B

View File

@ -1,3 +1,4 @@
# Language: Armenian (phonetic)
# Armenian layout based on work by Norayr Chilingarian # Armenian layout based on work by Norayr Chilingarian
# Yerevan # Yerevan
# Oct 2021 # Oct 2021

View File

@ -1,3 +1,4 @@
# Language: Armenian (phonetic)
# Armenian layout based on work by Norayr Chilingarian # Armenian layout based on work by Norayr Chilingarian
# Yerevan # Yerevan
# Oct 2021 # Oct 2021

View File

@ -1,3 +1,4 @@
# Language: Armenian
# Armenian layout based on work by Norayr Chilingarian # Armenian layout based on work by Norayr Chilingarian
# Yerevan # Yerevan
# Oct 2021 # Oct 2021

View File

@ -1,3 +1,4 @@
# Language: Armenian
# Armenian layout based on work by Norayr Chilingarian # Armenian layout based on work by Norayr Chilingarian
# Yerevan # Yerevan
# Oct 2021 # Oct 2021

View File

@ -1,3 +1,4 @@
# Language: Arabic
# Maintained by: Khaled Eldoheiri <khalid@kdehairy.com> # Maintained by: Khaled Eldoheiri <khalid@kdehairy.com>
--- ---
outlines: outlines:

View File

@ -1,3 +1,4 @@
# Language: Arabic
# Maintained by: Khaled Eldoheiri <khalid@kdehairy.com> # Maintained by: Khaled Eldoheiri <khalid@kdehairy.com>
--- ---
outlines: outlines:

View File

@ -1,3 +1,4 @@
# Language: Belgian
--- ---
outlines: outlines:
default: { width: 35.33, height: 52 } default: { width: 35.33, height: 52 }

View File

@ -1,3 +1,4 @@
# Language: Belgian
--- ---
outlines: outlines:
default: { width: 54, height: 42 } default: { width: 54, height: 42 }

View File

@ -1,3 +1,4 @@
# Language: Bulgarian (phonetic)
--- ---
outlines: outlines:
default: { width: 32.72, height: 52 } default: { width: 32.72, height: 52 }

View File

@ -1,3 +1,4 @@
# Language: Bulgarian (phonetic)
--- ---
outlines: outlines:
default: { width: 48.75, height: 42 } default: { width: 48.75, height: 42 }

View File

@ -1,3 +1,4 @@
# Language: Bulgarian
--- ---
outlines: outlines:
default: { width: 32.72, height: 52 } default: { width: 32.72, height: 52 }

View File

@ -1,3 +1,4 @@
# Language: Bulgarian
--- ---
outlines: outlines:
default: { width: 48.75, height: 42 } default: { width: 48.75, height: 42 }

View File

@ -1,3 +1,4 @@
# Language: Portuguese (Brazil)
--- ---
outlines: outlines:
default: { width: 35.67, height: 52 } default: { width: 35.67, height: 52 }

View File

@ -1,3 +1,4 @@
# Language: Portuguese (Brazil)
--- ---
outlines: outlines:
default: { width: 53.75, height: 42 } default: { width: 53.75, height: 42 }

91
data/keyboards/by.yaml Normal file
View File

@ -0,0 +1,91 @@
# Language: Belarusian
---
outlines:
default: { width: 32.45, height: 52 }
altline: { width: 32, height: 52 }
wide: { width: 64.55, height: 52 }
change-view: { width: 32, height: 52 }
change-view-2: { width: 64.55, height: 52 }
spaceline: { width: 91.96, height: 52 }
fill: { width: 156.86, height: 52 }
fill-2: { width: 64.9, height: 52 }
special: { width: 35.67, height: 52 }
large: { width: 35.67, height: 52 }
views:
base:
- "й ц у к е н г ш ў з х"
- "ф ы в а п р о л д ж э"
- "Shift_L я ч с м і т ь б ю BackSpace"
- "show_numbers preferences ё space , . Return"
upper:
- "Й Ц У К Е Н Г Ш Ў З Х"
- "Ф Ы В А П Р О Л Д Ж Э"
- "Shift_L Я Ч С М І Т Ь Б Ю BackSpace"
- "show_numbers preferences Ё space , . Return"
numbers:
- "1 2 3 4 5 6 7 8 9 0"
- "@ # $ % & - _ + ( )"
- "show_symbols , \" ' : ; ! ? BackSpace-wide"
- "show_letters preferences space-fill . Return"
symbols:
- "~ ` | · √ π τ ÷ × ¶"
- "© ® £ € ¥ ^ ° * { }"
- "show_numbers \\ / < > = [ ] BackSpace-wide"
- "show_letters preferences space-fill . Return"
buttons:
Shift_L:
action:
locking:
lock_view: "upper"
unlock_view: "base"
outline: "change-view"
icon: "key-shift"
BackSpace:
outline: "altline"
icon: "edit-clear-symbolic"
action: "erase"
BackSpace-wide:
outline: "wide"
icon: "edit-clear-symbolic"
action: "erase"
preferences:
action: "show_prefs"
outline: "special"
icon: "keyboard-mode-symbolic"
show_numbers:
action:
set_view: "numbers"
outline: "change-view-2"
label: "123"
show_letters:
action:
set_view: "base"
outline: "change-view-2"
label: "АБВ"
show_symbols:
action:
set_view: "symbols"
outline: "change-view-2"
label: "*/="
.:
outline: "large"
space:
outline: "spaceline"
text: " "
space-fill:
outline: "fill"
text: " "
Return:
outline: "wide"
icon: "key-enter"
keysym: "Return"
5:
outline: "fill-2"
"&":
outline: "fill-2"
:
outline: "fill-2"
¥:
outline: "fill-2"

View File

@ -0,0 +1,88 @@
# Language: Belarusian
---
outlines:
default: { width: 48.75, height: 42 }
altline: { width: 48.75, height: 42 }
wide: { width: 97.5, height: 42 }
change-view: { width: 48.75, height: 42 }
change-view-2: { width: 97.5, height: 42 }
spaceline: { width: 146.5, height: 42 }
fill: { width: 244, height: 42 }
fill-2: { width: 97.5, height: 42 }
special: { width: 48.75, height: 42 }
views:
base:
- "й ц у к е н г ш ў з х"
- "ф ы в а п р о л д ж э"
- "Shift_L я ч с м і т ь б ю BackSpace"
- "show_numbers preferences ё space , . Return"
upper:
- "Й Ц У К Е Н Г Ш Ў З Х"
- "Ф Ы В А П Р О Л Д Ж Э"
- "Shift_L Я Ч С М І Т Ь Б Ю BackSpace"
- "show_numbers preferences Ё space , . Return"
numbers:
- "1 2 3 4 5 6 7 8 9 0"
- "@ # $ % & - _ + ( )"
- "show_symbols , \" ' : ; ! ? BackSpace-wide"
- "show_letters preferences space-fill . Return"
symbols:
- "~ ` | · √ π τ ÷ × ¶"
- "© ® £ € ¥ ^ ° * { }"
- "show_numbers \\ / < > = [ ] BackSpace-wide"
- "show_letters preferences space-fill . Return"
buttons:
Shift_L:
action:
locking:
lock_view: "upper"
unlock_view: "base"
outline: "change-view"
icon: "key-shift"
BackSpace:
outline: "altline"
icon: "edit-clear-symbolic"
action: "erase"
BackSpace-wide:
outline: "wide"
icon: "edit-clear-symbolic"
action: "erase"
preferences:
action: "show_prefs"
outline: "special"
icon: "keyboard-mode-symbolic"
show_numbers:
action:
set_view: "numbers"
outline: "change-view-2"
label: "123"
show_letters:
action:
set_view: "base"
outline: "change-view-2"
label: "АБВ"
show_symbols:
action:
set_view: "symbols"
outline: "change-view-2"
label: "*/="
space:
outline: "spaceline"
text: " "
space-fill:
outline: "fill"
text: " "
Return:
outline: "wide"
icon: "key-enter"
keysym: "Return"
5:
outline: "fill-2"
"&":
outline: "fill-2"
:
outline: "fill-2"
¥:
outline: "fill-2"

View File

@ -1,3 +1,4 @@
# Language: French (Canada)
--- ---
outlines: outlines:
default: { width: 35.5, height: 52 } default: { width: 35.5, height: 52 }

View File

@ -1,3 +1,4 @@
# Language: French (Canada)
--- ---
outlines: outlines:
default: { width: 53.7, height: 42 } default: { width: 53.7, height: 42 }

View File

@ -1,3 +1,4 @@
# Language: German (Switzerland) (ch+de)
# Maintained by Patrick Jörg <patrickjoerg@gmx.ch>. No Copyright, enjoy! # Maintained by Patrick Jörg <patrickjoerg@gmx.ch>. No Copyright, enjoy!
--- ---

View File

@ -1,3 +1,4 @@
# Language: German (Switzerland) (ch+de)
# Maintained by Patrick Jörg <patrickjoerg@gmx.ch>. No Copyright, enjoy! # Maintained by Patrick Jörg <patrickjoerg@gmx.ch>. No Copyright, enjoy!
--- ---

View File

@ -1,3 +1,4 @@
# Language: French (Switzerland)
# Maintained by: Jordi Bossy <jordi@bossy.space>. No Copyright, enjoy! # Maintained by: Jordi Bossy <jordi@bossy.space>. No Copyright, enjoy!
--- ---
outlines: outlines:

View File

@ -1,3 +1,4 @@
# Language: French (Switzerland)
# Maintained by: Jordi Bossy <jordi@bossy.space>. No Copyright, enjoy! # Maintained by: Jordi Bossy <jordi@bossy.space>. No Copyright, enjoy!
--- ---
outlines: outlines:

View File

@ -1,3 +1,4 @@
# Language: German (Switzerland)
# Maintained by: Jordy Bossy <jordi@bossy.space> # Maintained by: Jordy Bossy <jordi@bossy.space>
# and Patrick Jörg <patrickjoerg@gmx.ch>. No Copyright, enjoy! # and Patrick Jörg <patrickjoerg@gmx.ch>. No Copyright, enjoy!

View File

@ -1,3 +1,4 @@
# Language: German (Switzerland)
# Maintained by: Jordy Bossy <jordy@bossy.space> # Maintained by: Jordy Bossy <jordy@bossy.space>
# and Patrick Jörg <patrickjoerg@gmx.ch>. No Copyright, enjoy! # and Patrick Jörg <patrickjoerg@gmx.ch>. No Copyright, enjoy!

View File

@ -1,3 +1,4 @@
# Language: Czech (QWERTY)
--- ---
outlines: outlines:
default: { width: 35.33, height: 52 } default: { width: 35.33, height: 52 }

View File

@ -1,3 +1,4 @@
# Language: Czech (QWERTY)
--- ---
outlines: outlines:
default: { width: 54, height: 42 } default: { width: 54, height: 42 }

View File

@ -1,3 +1,4 @@
# Language: Czech
--- ---
outlines: outlines:
default: { width: 35.33, height: 52 } default: { width: 35.33, height: 52 }

View File

@ -1,3 +1,4 @@
# Language: Czech
--- ---
outlines: outlines:
default: { width: 54, height: 42 } default: { width: 54, height: 42 }

122
data/keyboards/de+bone.yaml Normal file
View File

@ -0,0 +1,122 @@
# Language: German (Bone)
---
outlines:
default: { width: 32.12, height: 52 }
subtle-highlight: { width: 32.12, height: 52 }
special: { width: 32.12, height: 52 }
altline: { width: 48.17, height: 52 }
change-view: { width: 48.17, height: 52 }
fill: { width: 64.24, height: 52 }
subtle-highlight-2: { width: 64.24, height: 52 }
spaceline: { width: 112.45, height: 52 }
views:
base:
- "j d u a x p h l m w ß"
- "c t i e o b n r s g q"
- "Shift_L f v ü ä ö y z k BackSpace"
- "show_numbers show_eschars preferences space , . Return"
upper:
- "J D U A X P H L M W ẞ"
- "C T I E O B N R S G Q"
- "Shift_L F V Ü Ä Ö Y Z K BackSpace"
- "show_numbers show_eschars preferences space ! ? Return"
numbers:
- "1 2 3 4 5 6 7 8 9 0"
- "@ # € % & - _ + ( )"
- "show_symbols ; \" ' : = < > BackSpace"
- "show_letters show_eschars preferences space , . Return"
symbols:
- "~ ` ´ | · √ µ ÷ × ¶"
- "© ® £ $ ¥ ^ ° * { }"
- "show_numbers \\ / § π τ [ ] BackSpace"
- "show_letters show_eschars preferences space , . Return"
eschars:
- "ä-subtle-highlight è é ö-subtle-highlight ü-subtle-highlight-2 Ä-subtle-highlight È É Ö-subtle-highlight Ü-subtle-highlight"
- "à â ê î ô À Â Ê Î Ô"
- "show_numbers « » ç Ç æ œ ß-subtle-highlight BackSpace"
- "show_letters show_eschars preferences space „ “ Return"
buttons:
Shift_L:
action:
locking:
lock_view: "upper"
unlock_view: "base"
outline: "change-view"
icon: "key-shift"
BackSpace:
outline: "altline"
icon: "edit-clear-symbolic"
action: "erase"
preferences:
action: "show_prefs"
outline: "special"
icon: "keyboard-mode-symbolic"
show_numbers:
action:
set_view: "numbers"
outline: "change-view"
label: "123"
show_letters:
action:
set_view: "base"
outline: "change-view"
label: "ABC"
show_symbols:
action:
set_view: "symbols"
outline: "change-view"
label: "*/="
show_eschars:
action:
locking:
lock_view: "eschars"
unlock_view: "base"
outline: "change-view"
label: "Ää"
space:
outline: "spaceline"
text: " "
Return:
outline: "altline"
icon: "key-enter"
keysym: "Return"
ä-subtle-highlight:
outline: "subtle-highlight"
text: "ä"
ö-subtle-highlight:
outline: "subtle-highlight"
text: "ö"
ü-subtle-highlight-2:
outline: "subtle-highlight-2"
text: "ü"
Ä-subtle-highlight:
outline: "subtle-highlight"
text: "Ä"
Ö-subtle-highlight:
outline: "subtle-highlight"
text: "Ö"
Ü-subtle-highlight:
outline: "subtle-highlight"
text: "Ü"
ß-subtle-highlight:
outline: "subtle-highlight"
text: "ß"
5:
outline: "fill"
"&":
outline: "fill"
·:
outline: "fill"
¥:
outline: "fill"
ô:
outline: "fill"
Ç:
outline: "fill"
":":
outline: "fill"
π:
outline: "fill"

View File

@ -0,0 +1,122 @@
# Language: German (Bone)
---
outlines:
default: { width: 48.87, height: 42 }
subtle-highlight: { width: 48.87, height: 42 }
special: { width: 48.87, height: 42 }
altline: { width: 73.31, height: 42 }
change-view: { width: 73.31, height: 42 }
fill: { width: 97.74, height: 42 }
subtle-highlight-2: { width: 97.74, height: 42 }
spaceline: { width: 171.03, height: 42 }
views:
base:
- "j d u a x p h l m w ß"
- "c t i e o b n r s g q"
- "Shift_L f v ü ä ö y z k BackSpace"
- "show_numbers show_eschars preferences space , . Return"
upper:
- "J D U A X P H L M W ẞ"
- "C T I E O B N R S G Q"
- "Shift_L F V Ü Ä Ö Y Z K BackSpace"
- "show_numbers show_eschars preferences space ! ? Return"
numbers:
- "1 2 3 4 5 6 7 8 9 0"
- "@ # € % & - _ + ( )"
- "show_symbols ; \" ' : = < > BackSpace"
- "show_letters show_eschars preferences space , . Return"
symbols:
- "~ ` ´ | · √ µ ÷ × ¶"
- "© ® £ $ ¥ ^ ° * { }"
- "show_numbers \\ / § π τ [ ] BackSpace"
- "show_letters show_eschars preferences space , . Return"
eschars:
- "ä-subtle-highlight è é ö-subtle-highlight ü-subtle-highlight-2 Ä-subtle-highlight È É Ö-subtle-highlight Ü-subtle-highlight"
- "à â ê î ô À Â Ê Î Ô"
- "show_numbers « » ç Ç æ œ ß-subtle-highlight BackSpace"
- "show_letters show_eschars preferences space „ “ Return"
buttons:
Shift_L:
action:
locking:
lock_view: "upper"
unlock_view: "base"
outline: "change-view"
icon: "key-shift"
BackSpace:
outline: "altline"
icon: "edit-clear-symbolic"
action: "erase"
preferences:
action: "show_prefs"
outline: "special"
icon: "keyboard-mode-symbolic"
show_numbers:
action:
set_view: "numbers"
outline: "change-view"
label: "123"
show_letters:
action:
set_view: "base"
outline: "change-view"
label: "ABC"
show_symbols:
action:
set_view: "symbols"
outline: "change-view"
label: "*/="
show_eschars:
action:
locking:
lock_view: "eschars"
unlock_view: "base"
outline: "change-view"
label: "Ää"
space:
outline: "spaceline"
text: " "
Return:
outline: "altline"
icon: "key-enter"
keysym: "Return"
ä-subtle-highlight:
outline: "subtle-highlight"
text: "ä"
ö-subtle-highlight:
outline: "subtle-highlight"
text: "ö"
ü-subtle-highlight-2:
outline: "subtle-highlight-2"
text: "ü"
Ä-subtle-highlight:
outline: "subtle-highlight"
text: "Ä"
Ö-subtle-highlight:
outline: "subtle-highlight"
text: "Ö"
Ü-subtle-highlight:
outline: "subtle-highlight"
text: "Ü"
ß-subtle-highlight:
outline: "subtle-highlight"
text: "ß"
5:
outline: "fill"
"&":
outline: "fill"
·:
outline: "fill"
¥:
outline: "fill"
ô:
outline: "fill"
Ç:
outline: "fill"
":":
outline: "fill"
π:
outline: "fill"

122
data/keyboards/de+neo.yaml Normal file
View File

@ -0,0 +1,122 @@
# Language: German (Neo 2)
---
outlines:
default: { width: 32.12, height: 52 }
subtle-highlight: { width: 32.12, height: 52 }
special: { width: 32.12, height: 52 }
altline: { width: 48.17, height: 52 }
change-view: { width: 48.17, height: 52 }
fill: { width: 64.24, height: 52 }
subtle-highlight-2: { width: 64.24, height: 52 }
spaceline: { width: 112.45, height: 52 }
views:
base:
- "x v l c w k h g f q ß"
- "u i a e o s n r t d y"
- "Shift_L ü ö ä p z b m j BackSpace"
- "show_numbers show_eschars preferences space , . Return"
upper:
- "X V L C W K H G F Q ẞ"
- "U I A E O S N R T D Y"
- "Shift_L Ü Ö Ä P Z B M J BackSpace"
- "show_numbers show_eschars preferences space ! ? Return"
numbers:
- "1 2 3 4 5 6 7 8 9 0"
- "@ # € % & - _ + ( )"
- "show_symbols ; \" ' : = < > BackSpace"
- "show_letters show_eschars preferences space , . Return"
symbols:
- "~ ` ´ | · √ µ ÷ × ¶"
- "© ® £ $ ¥ ^ ° * { }"
- "show_numbers \\ / § π τ [ ] BackSpace"
- "show_letters show_eschars preferences space , . Return"
eschars:
- "ä-subtle-highlight è é ö-subtle-highlight ü-subtle-highlight-2 Ä-subtle-highlight È É Ö-subtle-highlight Ü-subtle-highlight"
- "à â ê î ô À Â Ê Î Ô"
- "show_numbers « » ç Ç æ œ ß-subtle-highlight BackSpace"
- "show_letters show_eschars preferences space „ “ Return"
buttons:
Shift_L:
action:
locking:
lock_view: "upper"
unlock_view: "base"
outline: "change-view"
icon: "key-shift"
BackSpace:
outline: "altline"
icon: "edit-clear-symbolic"
action: "erase"
preferences:
action: "show_prefs"
outline: "special"
icon: "keyboard-mode-symbolic"
show_numbers:
action:
set_view: "numbers"
outline: "change-view"
label: "123"
show_letters:
action:
set_view: "base"
outline: "change-view"
label: "ABC"
show_symbols:
action:
set_view: "symbols"
outline: "change-view"
label: "*/="
show_eschars:
action:
locking:
lock_view: "eschars"
unlock_view: "base"
outline: "change-view"
label: "Ää"
space:
outline: "spaceline"
text: " "
Return:
outline: "altline"
icon: "key-enter"
keysym: "Return"
ä-subtle-highlight:
outline: "subtle-highlight"
text: "ä"
ö-subtle-highlight:
outline: "subtle-highlight"
text: "ö"
ü-subtle-highlight-2:
outline: "subtle-highlight-2"
text: "ü"
Ä-subtle-highlight:
outline: "subtle-highlight"
text: "Ä"
Ö-subtle-highlight:
outline: "subtle-highlight"
text: "Ö"
Ü-subtle-highlight:
outline: "subtle-highlight"
text: "Ü"
ß-subtle-highlight:
outline: "subtle-highlight"
text: "ß"
5:
outline: "fill"
"&":
outline: "fill"
·:
outline: "fill"
¥:
outline: "fill"
ô:
outline: "fill"
Ç:
outline: "fill"
":":
outline: "fill"
π:
outline: "fill"

View File

@ -0,0 +1,122 @@
# Language: German (Neo 2)
---
outlines:
default: { width: 48.87, height: 42 }
subtle-highlight: { width: 48.87, height: 42 }
special: { width: 48.87, height: 42 }
altline: { width: 73.31, height: 42 }
change-view: { width: 73.31, height: 42 }
fill: { width: 97.74, height: 42 }
subtle-highlight-2: { width: 97.74, height: 42 }
spaceline: { width: 171.03, height: 42 }
views:
base:
- "x v l c w k h g f q ß"
- "u i a e o s n r t d y"
- "Shift_L ü ö ä p z b m j BackSpace"
- "show_numbers show_eschars preferences space , . Return"
upper:
- "X V L C W K H G F Q ẞ"
- "U I A E O S N R T D Y"
- "Shift_L Ü Ö Ä P Z B M J BackSpace"
- "show_numbers show_eschars preferences space ! ? Return"
numbers:
- "1 2 3 4 5 6 7 8 9 0"
- "@ # € % & - _ + ( )"
- "show_symbols ; \" ' : = < > BackSpace"
- "show_letters show_eschars preferences space , . Return"
symbols:
- "~ ` ´ | · √ µ ÷ × ¶"
- "© ® £ $ ¥ ^ ° * { }"
- "show_numbers \\ / § π τ [ ] BackSpace"
- "show_letters show_eschars preferences space , . Return"
eschars:
- "ä-subtle-highlight è é ö-subtle-highlight ü-subtle-highlight-2 Ä-subtle-highlight È É Ö-subtle-highlight Ü-subtle-highlight"
- "à â ê î ô À Â Ê Î Ô"
- "show_numbers « » ç Ç æ œ ß-subtle-highlight BackSpace"
- "show_letters show_eschars preferences space „ “ Return"
buttons:
Shift_L:
action:
locking:
lock_view: "upper"
unlock_view: "base"
outline: "change-view"
icon: "key-shift"
BackSpace:
outline: "altline"
icon: "edit-clear-symbolic"
action: "erase"
preferences:
action: "show_prefs"
outline: "special"
icon: "keyboard-mode-symbolic"
show_numbers:
action:
set_view: "numbers"
outline: "change-view"
label: "123"
show_letters:
action:
set_view: "base"
outline: "change-view"
label: "ABC"
show_symbols:
action:
set_view: "symbols"
outline: "change-view"
label: "*/="
show_eschars:
action:
locking:
lock_view: "eschars"
unlock_view: "base"
outline: "change-view"
label: "Ää"
space:
outline: "spaceline"
text: " "
Return:
outline: "altline"
icon: "key-enter"
keysym: "Return"
ä-subtle-highlight:
outline: "subtle-highlight"
text: "ä"
ö-subtle-highlight:
outline: "subtle-highlight"
text: "ö"
ü-subtle-highlight-2:
outline: "subtle-highlight-2"
text: "ü"
Ä-subtle-highlight:
outline: "subtle-highlight"
text: "Ä"
Ö-subtle-highlight:
outline: "subtle-highlight"
text: "Ö"
Ü-subtle-highlight:
outline: "subtle-highlight"
text: "Ü"
ß-subtle-highlight:
outline: "subtle-highlight"
text: "ß"
5:
outline: "fill"
"&":
outline: "fill"
·:
outline: "fill"
¥:
outline: "fill"
ô:
outline: "fill"
Ç:
outline: "fill"
":":
outline: "fill"
π:
outline: "fill"

View File

@ -1,3 +1,4 @@
# Language: German
--- ---
outlines: outlines:
default: { width: 35.33, height: 52 } default: { width: 35.33, height: 52 }

View File

@ -1,3 +1,4 @@
# Language: German
--- ---
outlines: outlines:
default: { width: 48.87, height: 42 } default: { width: 48.87, height: 42 }

View File

@ -1,3 +1,4 @@
# Language: Danish
--- ---
outlines: outlines:
default: { width: 32.4, height: 52 } default: { width: 32.4, height: 52 }

View File

@ -1,3 +1,4 @@
# Language: Danish
--- ---
outlines: outlines:
default: { width: 48.87, height: 42 } default: { width: 48.87, height: 42 }

View File

@ -37,7 +37,7 @@ views:
face-neutral-skeptical: face-neutral-skeptical:
- "🤐 🤨 😐 😑 😶 🫥 😶‍🌫️" - "🤐 🤨 😐 😑 😶 🫥 😶‍🌫️"
- "😏 😒 🙄 😬 😮‍💨 🤥 🫨" - "😏 😒 🙄 😬 😮‍💨 🤥 🫨"
- "preferences 🙂‍↔️ 🙂‍↕️ 0 0 BackSpace" - "preferences 🙂‍↔️ 🙂‍↕️ 0 0 0 BackSpace"
- "1 2 3 4 5 6 7 8 9 10" - "1 2 3 4 5 6 7 8 9 10"
face-sleepy: face-sleepy:
- "😌 😔 😪 🤤 😴 0 0" - "😌 😔 😪 🤤 😴 0 0"

View File

@ -37,7 +37,7 @@ views:
face-neutral-skeptical: face-neutral-skeptical:
- "🤐 🤨 😐 😑 😶 🫥 😶‍🌫️" - "🤐 🤨 😐 😑 😶 🫥 😶‍🌫️"
- "😏 😒 🙄 😬 😮‍💨 🤥 🫨" - "😏 😒 🙄 😬 😮‍💨 🤥 🫨"
- "preferences 🙂‍↔️ 🙂‍↕️ 0 0 BackSpace" - "preferences 🙂‍↔️ 🙂‍↕️ 0 0 0 BackSpace"
- "1 2 3 4 5 6 7 8 9 10" - "1 2 3 4 5 6 7 8 9 10"
face-sleepy: face-sleepy:
- "😌 😔 😪 🤤 😴 0 0" - "😌 😔 😪 🤤 😴 0 0"

View File

@ -1,3 +1,4 @@
# Language: Esperanto
--- ---
outlines: outlines:
default: { width: 35.67, height: 52 } default: { width: 35.67, height: 52 }

View File

@ -1,3 +1,4 @@
# Language: Esperanto
--- ---
outlines: outlines:
default: { width: 53.75, height: 42 } default: { width: 53.75, height: 42 }

View File

@ -1,3 +1,4 @@
# Language: Catalan (Spain, with middle-dot L)
--- ---
outlines: outlines:
default: { width: 35.67, height: 52 } default: { width: 35.67, height: 52 }

View File

@ -1,3 +1,4 @@
# Language: Catalan (Spain, with middle-dot L)
--- ---
outlines: outlines:
default: { width: 53.75, height: 42 } default: { width: 53.75, height: 42 }

View File

@ -1,3 +1,4 @@
# Language: Spanish
--- ---
outlines: outlines:
default: { width: 35.67, height: 52 } default: { width: 35.67, height: 52 }

View File

@ -1,3 +1,4 @@
# Language: Spanish
--- ---
outlines: outlines:
default: { width: 53.75, height: 42 } default: { width: 53.75, height: 42 }

View File

@ -1,3 +1,4 @@
# Language: Finnish
--- ---
outlines: outlines:
default: { width: 32.4, height: 52 } default: { width: 32.4, height: 52 }

View File

@ -1,3 +1,4 @@
# Language: Finnish
--- ---
outlines: outlines:
default: { width: 48.87, height: 42 } default: { width: 48.87, height: 42 }

View File

@ -1,3 +1,4 @@
# Language: French (BEPO)
--- ---
outlines: outlines:
default: { width: 35.33, height: 52 } default: { width: 35.33, height: 52 }

View File

@ -1,3 +1,4 @@
# Language: French (BEPO)
--- ---
outlines: outlines:
default: { width: 54, height: 42 } default: { width: 54, height: 42 }

View File

@ -1,3 +1,4 @@
# Language: French
--- ---
outlines: outlines:
default: { width: 35.33, height: 52 } default: { width: 35.33, height: 52 }

View File

@ -1,3 +1,4 @@
# Language: French
--- ---
outlines: outlines:
default: { width: 54, height: 42 } default: { width: 54, height: 42 }

View File

@ -1,3 +1,4 @@
# Language: Georgian
--- ---
outlines: outlines:
default: { width: 35.67, height: 52 } default: { width: 35.67, height: 52 }

View File

@ -1,3 +1,4 @@
# Language: Georgian
--- ---
outlines: outlines:
default: { width: 53.5, height: 42 } default: { width: 53.5, height: 42 }

View File

@ -1,3 +1,4 @@
# Language: Greek (polytonic)
# Greek polytonic layout by Antonis Tsolomitis # Greek polytonic layout by Antonis Tsolomitis
# University of the Aegean, Department of Mathematics, atsol@aegean.gr # University of the Aegean, Department of Mathematics, atsol@aegean.gr
# March 2022 # March 2022

View File

@ -1,3 +1,4 @@
# Language: Greek (polytonic)
# Greek polytonic layout by Antonis Tsolomitis # Greek polytonic layout by Antonis Tsolomitis
# University of the Aegean, Department of Mathematics, atsol@aegean.gr # University of the Aegean, Department of Mathematics, atsol@aegean.gr
# March 2022 # March 2022

View File

@ -1,3 +1,4 @@
# Language: Greek
# Greek layout originally created by Antonis Tsolomitis # Greek layout originally created by Antonis Tsolomitis
# University of the Aegean, Department of Mathematics, atsol@aegean.gr # University of the Aegean, Department of Mathematics, atsol@aegean.gr
# Sep 2019 # Sep 2019

View File

@ -1,3 +1,4 @@
# Language: Greek
# Created by Sotiris Papadopoulos, sotirios.papadopoulos@inserm.fr # Created by Sotiris Papadopoulos, sotirios.papadopoulos@inserm.fr
--- ---
outlines: outlines:

View File

@ -1,3 +1,4 @@
# Language: Hungarian
# Based on work by: soyer <soyer@irl.hu> # Based on work by: soyer <soyer@irl.hu>
--- ---
outlines: outlines:

View File

@ -1,3 +1,4 @@
# Language: Hungarian
# Based on work by: soyer <soyer@irl.hu> # Based on work by: soyer <soyer@irl.hu>
--- ---
outlines: outlines:

View File

@ -1,3 +1,4 @@
# Language: Hebrew
--- ---
outlines: outlines:
default: { width: 41, height: 60 } default: { width: 41, height: 60 }

View File

@ -1,3 +1,4 @@
# Language: Hebrew
--- ---
outlines: outlines:
default: { width: 53.75, height: 42 } default: { width: 53.75, height: 42 }

View File

@ -0,0 +1,89 @@
# Language: Malayalam
---
outlines:
default: { width: 29.44, height: 44.5 }
altline: { width: 58.88, height: 44.5 }
change-view: { width: 58.88, height: 44.5 }
spaceline: { width: 235.52, height: 44.5 }
special: { width: 29.44, height: 44.5 }
placeholder: { width: 29.44, height: 44.5 }
views:
base:
- " ൊ ൧ ൨ ൩ ൪ ൫ ൬ ൮ ൯ - ൃ "
- " ൗ ൈ ാ ീ ൂ ബ ഹ ഗ ദ ജ ഡ zwj zwnj "
- " -- ോ േ ് ി ു പ ര ക ത ച ട zwsp "
- "Shift_L െ മ ന വ ല സ യ -- BackSpace"
- "show_numbers preferences space Return"
upper:
- " ഒ ! @ # ₹ % ^ & ൾ ( ) ഃ ഋ "
- " ഔ ഐ ആ ഈ ഊ ഭ ങ ഘ ധ ഝ ഢ ഞ ർ "
- " -- ഓ ഏ അ ഇ ഉ ഫ റ ഖ ഥ ഛ -- "
- "Shift_L എ ൺ ണ ൻ ഴ ള ശ ഷ ൽ BackSpace"
- "show_numbers preferences space Return"
numbers:
- " -- ൧ ൨ ൩ ൪ ൫ ൬ ൮ ൯ -- -- "
- "-- 1 2 3 4 5 6 7 8 9 0 -- --"
- "-- @ # $ % & - _ + ( ) -- --"
- "show_symbols ₹ , \" ' : ; ! ? -- BackSpace"
- "show_letters preferences space Return"
symbols:
- "-- -- -- -- -- -- -- -- -- -- -- -- --"
- "-- ~ ` | · √ π τ ÷ × ¶ -- --"
- "-- © ® £ € ¥ ^ ° * { } -- --"
- "show_numbers -- \\ / < > = [ ] -- BackSpace"
- "show_letters preferences space Return"
buttons:
Shift_L:
action:
locking:
lock_view: "upper"
unlock_view: "base"
outline: "change-view"
icon: "key-shift"
BackSpace:
outline: "altline"
icon: "edit-clear-symbolic"
action: "erase"
preferences:
action: "show_prefs"
outline: "special"
icon: "keyboard-mode-symbolic"
show_numbers:
action:
set_view: "numbers"
outline: "change-view"
label: "123"
show_letters:
action:
set_view: "base"
outline: "change-view"
label: "ABC"
show_symbols:
action:
set_view: "symbols"
outline: "change-view"
label: "*/="
space:
outline: "spaceline"
text: " "
Return:
outline: "altline"
icon: "key-enter"
keysym: "Return"
--:
outline: "placeholder"
text: ""
# U+200B - zero-width-space
zwsp:
icon: "zwsp"
text: ""
# U+200C - zero-width-non-joiner
zwnj:
icon: "zwnj"
text: ""
# U+200D - zero-width-joiner
zwj:
icon: "zwj"
text: ""

View File

@ -0,0 +1,89 @@
# Language: Malayalam
---
outlines:
default: { width: 45.11, height: 36.65 }
altline: { width: 90.22, height: 36.65 }
change-view: { width: 90.22, height: 36.65 }
spaceline: { width: 360.88, height: 36.65 }
special: { width: 45.11, height: 36.65 }
placeholder: { width: 45.11, height: 36.65 }
views:
base:
- " ൊ ൧ ൨ ൩ ൪ ൫ ൬ ൮ ൯ - ൃ "
- " ൗ ൈ ാ ീ ൂ ബ ഹ ഗ ദ ജ ഡ zwj zwnj "
- " -- ോ േ ് ി ു പ ര ക ത ച ട zwsp "
- "Shift_L െ മ ന വ ല സ യ -- BackSpace"
- "show_numbers preferences space Return"
upper:
- " ഒ ! @ # ₹ % ^ & ൾ ( ) ഃ ഋ "
- " ഔ ഐ ആ ഈ ഊ ഭ ങ ഘ ധ ഝ ഢ ഞ ർ "
- " -- ഓ ഏ അ ഇ ഉ ഫ റ ഖ ഥ ഛ -- "
- "Shift_L എ ൺ ണ ൻ ഴ ള ശ ഷ ൽ BackSpace"
- "show_numbers preferences space Return"
numbers:
- " -- ൧ ൨ ൩ ൪ ൫ ൬ ൮ ൯ -- -- "
- "-- 1 2 3 4 5 6 7 8 9 0 -- --"
- "-- @ # $ % & - _ + ( ) -- --"
- "show_symbols ₹ , \" ' : ; ! ? -- BackSpace"
- "show_letters preferences space Return"
symbols:
- "-- -- -- -- -- -- -- -- -- -- -- -- --"
- "-- ~ ` | · √ π τ ÷ × ¶ -- --"
- "-- © ® £ € ¥ ^ ° * { } -- --"
- "show_numbers -- \\ / < > = [ ] -- BackSpace"
- "show_letters preferences space Return"
buttons:
Shift_L:
action:
locking:
lock_view: "upper"
unlock_view: "base"
outline: "change-view"
icon: "key-shift"
BackSpace:
outline: "altline"
icon: "edit-clear-symbolic"
action: "erase"
preferences:
action: "show_prefs"
outline: "special"
icon: "keyboard-mode-symbolic"
show_numbers:
action:
set_view: "numbers"
outline: "change-view"
label: "123"
show_letters:
action:
set_view: "base"
outline: "change-view"
label: "ABC"
show_symbols:
action:
set_view: "symbols"
outline: "change-view"
label: "*/="
space:
outline: "spaceline"
text: " "
Return:
outline: "altline"
icon: "key-enter"
keysym: "Return"
--:
outline: "placeholder"
text: ""
# U+200B - zero-width-space
zwsp:
icon: "zwsp"
text: ""
# U+200C - zero-width-non-joiner
zwnj:
icon: "zwnj"
text: ""
# U+200D - zero-width-joiner
zwj:
icon: "zwj"
text: ""

View File

@ -1,3 +1,4 @@
# Language: Azerbaijani (Iran)
--- ---
outlines: outlines:
default: { width: 32.75, height: 52 } default: { width: 32.75, height: 52 }

View File

@ -1,3 +1,4 @@
# Language: Azerbaijani (Iran)
--- ---
outlines: outlines:
default: { width: 44.75, height: 42 } default: { width: 44.75, height: 42 }

View File

@ -1,3 +1,4 @@
# Language: Friulian (Italy)
# Based on the Friulian layout created by Fabio Tomat # Based on the Friulian layout created by Fabio Tomat
# 14 october 2020 # 14 october 2020
--- ---

View File

@ -1,3 +1,4 @@
# Language: Friulian (Italy)
# Based on the Friulian layout created by Fabio Tomat # Based on the Friulian layout created by Fabio Tomat
# 14 october 2020 # 14 october 2020
--- ---

View File

@ -1,3 +1,4 @@
# Language: Italian
# Italian layout created by Antonio Pandolfo # Italian layout created by Antonio Pandolfo
# 03 october 2019 # 03 october 2019
--- ---

View File

@ -1,3 +1,4 @@
# Language: Italian
# Italian layout created by Antonio Pandolfo # Italian layout created by Antonio Pandolfo
# 03 october 2019 # 03 october 2019
--- ---

View File

@ -1,3 +1,4 @@
# Language: Japanese (Kana)
# Based on work by: Mark Müller <markmueller86@gmail.com> # Based on work by: Mark Müller <markmueller86@gmail.com>
--- ---
outlines: outlines:

View File

@ -1,3 +1,4 @@
# Language: Japanese (Kana)
# Based on work by: Mark Müller <markmueller86@gmail.com> # Based on work by: Mark Müller <markmueller86@gmail.com>
--- ---
outlines: outlines:

787
data/keyboards/jp.yaml Normal file
View File

@ -0,0 +1,787 @@
# Language: Japanese
---
outlines:
default: { width: 40, height: 56 }
default-2: { width: 48, height: 56 }
thin: { width: 36.92, height: 56 }
change-view: { width: 36.92, height: 56 }
change-view-2: { width: 72, height: 56 }
change-view-3: { width: 80, height: 56 }
spaceline: { width: 80, height: 56 }
special: { width: 36.92, height: 56 }
special-2: { width: 40, height: 56 }
special-3: { width: 72, height: 56 }
placeholder: { width: 48, height: 56 }
placeholder-2: { width: 80, height: 56 }
views:
base:
- "ぬ ふ あ う え お や ゆ よ わ ほ へ"
- "た て い す か ん な に ら せ ゙ ゚ "
- "ち と し は き く ま の り れ け む"
- "show_hiragana_upper つ さ そ ひ こ み も ね る め ろ BackSpace"
- "show_numbers show_romaji preferences fullwidth-space --- show_katakana Return"
hiragana_upper:
- "ぬ ふ ぁ ぅ ぇ ぉ ゃ ゅ ょ を ほ ゑ"
- "た て ぃ す ヵ ん な に ら せ ゙ 「"
- "ち と し ゎ き く ま の り れ ヶ 」"
- "show_hiragana_upper っ さ そ ゐ こ み も 、 。 ・ ー BackSpace"
- "show_numbers show_romaji preferences fullwidth-space --- show_katakana Return"
katakana:
- "ヌ フ ア ウ エ オ ヤ ユ ヨ ワ ホ ヘ"
- "タ テ イ ス カ ン ナ ニ ラ セ ゙ ゚ "
- "チ ト シ ハ キ ク マ リ レ ケ ム"
- "show_katakana_upper ツ サ ソ ヒ コ ミ モ ネ ル メ ロ BackSpace"
- "show_numbers show_romaji preferences fullwidth-space katakana_width_toggle_half show_hiragana Return"
katakana_upper:
- "ヌ フ ァ ゥ ェ ォ ャ ュ ョ ヲ ホ ヱ"
- "タ テ ィ ス ヵ ン ナ ニ ラ セ ゙ 「"
- "チ ト シ ハ キ ク マ リ レ ケ 」"
- "show_katakana_upper ッ サ ソ ヰ コ ミ モ 、 。 ・ ー BackSpace"
- "show_numbers show_romaji preferences fullwidth-space katakana_width_toggle_half show_hiragana Return"
katakana_halfwidth:
- "ヌ フ ア ウ エ オ ヤ ユ ヨ ワ ホ ヘ"
- "タ テ イ ス カ ン ナ ニ ラ セ ゙ ゚ "
- "チ ト シ ハ キ ク マ ノ リ レ ケ ム"
- "show_katakana_halfwidth_upper ツ サ ソ ヒ コ ミ モ ネ ル メ ロ BackSpace"
- "show_numbers show_romaji preferences space katakana_halfwidth_width_toggle_full show_hiragana Return"
katakana_halfwidth_upper:
- "ヌ フ ァ ゥ ェ ォ ャ ュ ョ ヲ ェ ヘ"
- "タ テ ィ ス カ ン ナ ニ ラ セ ゙ 「"
- "チ ト シ ワ キ ク マ ノ リ レ ケ 」"
- "show_katakana_halfwidth_upper ッ サ ソ ヒ コ ミ モ 、 。 ・ ー BackSpace"
- "show_numbers show_romaji preferences space katakana_halfwidth_width_toggle_full show_hiragana Return"
numbers:
- " … -- -- -- -- -- -- -- -- --"
- "1 2 3 4 5 6 7 8 9 0"
- "@ # ¥ % & - _ + ( )"
- "show_symbols ; \" ' : = < > BackSpace-special-3"
- "show_hiragana show_romaji preferences space numbers_width_toggle_full , . Return"
numbers_fullwidth:
- " -- -- -- -- -- -- -- -- --"
- " "
- " _ "
- "show_symbols_fullwidth BackSpace-special-3"
- "show_hiragana show_romaji_fullwidth preferences fullwidth-space numbers_fullwidth_width_toggle_half Return"
symbols:
- "ヽ ♪ -- -- -- -- -- ヿ 【 】"
- "~ ` ´ | · √ µ ÷ × ¶"
- "© ® £ $ € ^ ° * { }"
- "show_numbers_from_symbols \\ / § π τ [ ] BackSpace-special-3"
- "show_hiragana show_romaji preferences space symbols_width_toggle_full ! ? Return"
symbols_fullwidth:
- " ̄ ¦ -- -- -- -- -- ¬ ⦅ ⦆"
- " -- -- -- -- -- -- --"
- "-- -- £ -- -- "
- "show_numbers_fullwidth_from_symbols -- -- -- BackSpace-special-3"
- "show_hiragana show_romaji_fullwidth preferences fullwidth-space symbols_fullwidth_width_toggle_half Return"
romaji:
- "1 2 3 4 5 6 7 8 9 0"
- "q w e r t y u i o p"
- "a s d f g h j k l --"
- "show_romaji_upper z x c v b n m BackSpace-special-3"
- "show_numbers show_hiragana preferences space romaji_width_toggle_full , . Return"
romaji_upper:
- "1 2 3 4 5 6 7 8 9 0"
- "Q W E R T Y U I O P"
- "A S D F G H J K L --"
- "show_romaji_upper Z X C V B N M BackSpace-special-3"
- "show_numbers show_hiragana preferences space romaji_width_toggle_full ! ? Return"
romaji_fullwidth:
- " "
- " "
- " --"
- "show_romaji_fullwidth_upper BackSpace-special-3"
- "show_numbers_fullwidth show_hiragana preferences fullwidth-space romaji_fullwidth_width_toggle_half Return"
romaji_fullwidth_upper:
- " "
- " "
- " --"
- "show_romaji_fullwidth_upper BackSpace-special-3"
- "show_numbers_fullwidth show_hiragana preferences fullwidth-space romaji_fullwidth_width_toggle_half Return"
# k s t n h m y r w
#a あア かカ さサ たタ なナ はハ まマ やヤ らラ わワ
#i いイ きキ しシ ちチ にニ ひヒ みミ ※ りリ ゐヰ
#u うウ くク すス つツ ぬヌ ふフ むム ゆユ るル ※
#e えエ けケ せセ てテ ねネ へヘ めメ ※ れレ ゑヱ
#o おオ こコ そソ とト のノ ほホ もモ よヨ ろロ をヲ
# g z d b p n
#a が ガ ざ ザ だ ダ ば バ ぱ パ ん ン
#i ぎ ギ じ ジ ぢ ヂ び ビ ぴ ピ
#u ぐ グ ず ズ づ ヅ ぶ ブ ぷ プ
#e げ ゲ ぜ ゼ で デ べ ベ ぺ ペ
#o ご ゴ ぞ ゾ ど ド ぼ ボ ぽ ポ
buttons:
BackSpace:
outline: "special"
icon: "edit-clear-symbolic"
action: "erase"
BackSpace-special-3:
outline: "special-3"
icon: "edit-clear-symbolic"
action: "erase"
preferences:
action: "show_prefs"
outline: "special-2"
icon: "keyboard-mode-symbolic"
show_numbers:
action:
set_view: "numbers"
outline: "change-view-3"
label: "123"
show_numbers_from_symbols:
action:
set_view: "numbers"
outline: "change-view-2"
label: "123"
numbers_fullwidth_width_toggle_half:
action:
set_view: "numbers"
outline: "change-view-3"
label: "半/全"
show_symbols:
action:
set_view: "symbols"
outline: "change-view-2"
label: "*/="
symbols_fullwidth_width_toggle_half:
action:
set_view: "symbols"
outline: "change-view-3"
label: "半/全"
show_hiragana:
action:
set_view: "base"
outline: "change-view-3"
label: "あいう"
show_hiragana_upper:
action:
locking:
lock_view: "hiragana_upper"
unlock_view: "base"
outline: "change-view"
icon: "key-shift"
show_katakana:
action:
set_view: "katakana"
outline: "change-view-3"
label: "アイウ"
katakana_halfwidth_width_toggle_full:
action:
set_view: "katakana"
outline: "change-view-3"
label: "半/全"
show_katakana_upper:
action:
locking:
lock_view: "katakana_upper"
unlock_view: "katakana"
outline: "change-view"
icon: "key-shift"
show_romaji:
action:
set_view: "romaji"
outline: "change-view-3"
label: "ABC"
romaji_fullwidth_width_toggle_half:
action:
set_view: "romaji"
outline: "change-view-3"
label: "半/全"
show_romaji_upper:
action:
locking:
lock_view: "romaji_upper"
unlock_view: "romaji"
outline: "change-view-2"
icon: "key-shift"
katakana_width_toggle_half:
action:
set_view: "katakana_halfwidth"
outline: "change-view-3"
label: "半/全"
show_katakana_halfwidth_upper:
action:
locking:
lock_view: "katakana_halfwidth_upper"
unlock_view: "katakana_halfwidth"
outline: "change-view"
icon: "key-shift"
show_romaji_fullwidth:
action:
set_view: "romaji_fullwidth"
outline: "change-view-3"
label: ""
romaji_width_toggle_full:
action:
set_view: "romaji_fullwidth"
outline: "change-view-3"
label: "半/全"
show_romaji_fullwidth_upper:
action:
locking:
lock_view: "romaji_fullwidth_upper"
unlock_view: "romaji_fullwidth"
outline: "change-view-2"
icon: "key-shift"
show_numbers_fullwidth:
action:
set_view: "numbers_fullwidth"
outline: "change-view-3"
label: ""
show_numbers_fullwidth_from_symbols:
action:
set_view: "numbers_fullwidth"
outline: "change-view-2"
label: ""
numbers_width_toggle_full:
action:
set_view: "numbers_fullwidth"
outline: "change-view-3"
label: "半/全"
show_symbols_fullwidth:
action:
set_view: "symbols_fullwidth"
outline: "change-view-2"
label: ""
symbols_width_toggle_full:
action:
set_view: "symbols_fullwidth"
outline: "change-view-3"
label: "半/全"
space:
outline: "spaceline"
text: " "
label: "␣"
fullwidth-space:
outline: "spaceline"
text: " "
label: "␣"
Return:
outline: "special-2"
icon: "key-enter"
keysym: "Return"
--:
outline: "placeholder"
text: ""
---:
outline: "placeholder-2"
text: ""
:
outline: "thin"
:
outline: "thin"
:
outline: "thin"
:
outline: "thin"
:
outline: "thin"
:
outline: "thin"
:
outline: "thin"
:
outline: "thin"
:
outline: "thin"
:
outline: "thin"
:
outline: "thin"
:
outline: "thin"
:
outline: "thin"
:
outline: "thin"
:
outline: "thin"
:
outline: "thin"
:
outline: "thin"
:
outline: "thin"
:
outline: "thin"
:
outline: "thin"
:
outline: "thin"
:
outline: "thin"
:
outline: "thin"
:
outline: "thin"
:
outline: "thin"
:
outline: "thin"
:
outline: "thin"
:
outline: "thin"
:
outline: "thin"
:
outline: "thin"
:
outline: "thin"
ソ:
outline: "thin"
:
outline: "thin"
:
outline: "thin"
:
outline: "thin"
:
outline: "thin"
:
outline: "thin"
:
outline: "thin"
:
outline: "thin"
:
outline: "thin"
:
outline: "thin"
:
outline: "thin"
:
outline: "thin"
:
outline: "thin"
:
outline: "thin"
:
outline: "thin"
:
outline: "default-2"
1:
outline: "default-2"
2:
outline: "default-2"
3:
outline: "default-2"
4:
outline: "default-2"
5:
outline: "default-2"
6:
outline: "default-2"
7:
outline: "default-2"
8:
outline: "default-2"
9:
outline: "default-2"
0:
outline: "default-2"
"@":
outline: "default-2"
"#":
outline: "default-2"
¥:
outline: "default-2"
"%":
outline: "default-2"
"&":
outline: "default-2"
-:
outline: "default-2"
_:
outline: "default-2"
+:
outline: "default-2"
(:
outline: "default-2"
):
outline: "default-2"
;:
outline: "default-2"
"\"":
outline: "default-2"
"'":
outline: "default-2"
":":
outline: "default-2"
=:
outline: "default-2"
<:
outline: "default-2"
">":
outline: "default-2"
a:
outline: "default-2"
b:
outline: "default-2"
c:
outline: "default-2"
d:
outline: "default-2"
e:
outline: "default-2"
f:
outline: "default-2"
g:
outline: "default-2"
h:
outline: "default-2"
i:
outline: "default-2"
j:
outline: "default-2"
k:
outline: "default-2"
l:
outline: "default-2"
m:
outline: "default-2"
n:
outline: "default-2"
o:
outline: "default-2"
p:
outline: "default-2"
q:
outline: "default-2"
r:
outline: "default-2"
s:
outline: "default-2"
t:
outline: "default-2"
u:
outline: "default-2"
v:
outline: "default-2"
w:
outline: "default-2"
x:
outline: "default-2"
y:
outline: "default-2"
z:
outline: "default-2"
A:
outline: "default-2"
B:
outline: "default-2"
C:
outline: "default-2"
D:
outline: "default-2"
E:
outline: "default-2"
F:
outline: "default-2"
G:
outline: "default-2"
H:
outline: "default-2"
I:
outline: "default-2"
J:
outline: "default-2"
K:
outline: "default-2"
L:
outline: "default-2"
M:
outline: "default-2"
N:
outline: "default-2"
O:
outline: "default-2"
P:
outline: "default-2"
Q:
outline: "default-2"
R:
outline: "default-2"
S:
outline: "default-2"
T:
outline: "default-2"
U:
outline: "default-2"
V:
outline: "default-2"
W:
outline: "default-2"
X:
outline: "default-2"
Y:
outline: "default-2"
Z:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
~:
outline: "default-2"
"`":
outline: "default-2"
´:
outline: "default-2"
"|":
outline: "default-2"
·:
outline: "default-2"
:
outline: "default-2"
µ:
outline: "default-2"
÷:
outline: "default-2"
×:
outline: "default-2"
:
outline: "default-2"
©:
outline: "default-2"
®:
outline: "default-2"
£:
outline: "default-2"
$:
outline: "default-2"
:
outline: "default-2"
^:
outline: "default-2"
°:
outline: "default-2"
"*":
outline: "default-2"
"{":
outline: "default-2"
"}":
outline: "default-2"
"\\":
outline: "default-2"
/:
outline: "default-2"
§:
outline: "default-2"
π:
outline: "default-2"
τ:
outline: "default-2"
"[":
outline: "default-2"
"]":
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
_:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"

787
data/keyboards/jp_wide.yaml Normal file
View File

@ -0,0 +1,787 @@
# Language: Japanese
---
outlines:
default: { width: 40, height: 30 }
default-2: { width: 48, height: 30 }
thin: { width: 36.92, height: 30 }
change-view: { width: 36.92, height: 30 }
change-view-2: { width: 72, height: 30 }
change-view-3: { width: 80, height: 30 }
spaceline: { width: 80, height: 30 }
special: { width: 36.92, height: 30 }
special-2: { width: 40, height: 30 }
special-3: { width: 72, height: 30 }
placeholder: { width: 48, height: 30 }
placeholder-2: { width: 80, height: 30 }
views:
base:
- "ぬ ふ あ う え お や ゆ よ わ ほ へ"
- "た て い す か ん な に ら せ ゙ ゚ "
- "ち と し は き く ま の り れ け む"
- "show_hiragana_upper つ さ そ ひ こ み も ね る め ろ BackSpace"
- "show_numbers show_romaji preferences fullwidth-space --- show_katakana Return"
hiragana_upper:
- "ぬ ふ ぁ ぅ ぇ ぉ ゃ ゅ ょ を ほ ゑ"
- "た て ぃ す ヵ ん な に ら せ ゙ 「"
- "ち と し ゎ き く ま の り れ ヶ 」"
- "show_hiragana_upper っ さ そ ゐ こ み も 、 。 ・ ー BackSpace"
- "show_numbers show_romaji preferences fullwidth-space --- show_katakana Return"
katakana:
- "ヌ フ ア ウ エ オ ヤ ユ ヨ ワ ホ ヘ"
- "タ テ イ ス カ ン ナ ニ ラ セ ゙ ゚ "
- "チ ト シ ハ キ ク マ リ レ ケ ム"
- "show_katakana_upper ツ サ ソ ヒ コ ミ モ ネ ル メ ロ BackSpace"
- "show_numbers show_romaji preferences fullwidth-space katakana_width_toggle_half show_hiragana Return"
katakana_upper:
- "ヌ フ ァ ゥ ェ ォ ャ ュ ョ ヲ ホ ヱ"
- "タ テ ィ ス ヵ ン ナ ニ ラ セ ゙ 「"
- "チ ト シ ハ キ ク マ リ レ ケ 」"
- "show_katakana_upper ッ サ ソ ヰ コ ミ モ 、 。 ・ ー BackSpace"
- "show_numbers show_romaji preferences fullwidth-space katakana_width_toggle_half show_hiragana Return"
katakana_halfwidth:
- "ヌ フ ア ウ エ オ ヤ ユ ヨ ワ ホ ヘ"
- "タ テ イ ス カ ン ナ ニ ラ セ ゙ ゚ "
- "チ ト シ ハ キ ク マ ノ リ レ ケ ム"
- "show_katakana_halfwidth_upper ツ サ ソ ヒ コ ミ モ ネ ル メ ロ BackSpace"
- "show_numbers show_romaji preferences space katakana_halfwidth_width_toggle_full show_hiragana Return"
katakana_halfwidth_upper:
- "ヌ フ ァ ゥ ェ ォ ャ ュ ョ ヲ ェ ヘ"
- "タ テ ィ ス カ ン ナ ニ ラ セ ゙ 「"
- "チ ト シ ワ キ ク マ ノ リ レ ケ 」"
- "show_katakana_halfwidth_upper ッ サ ソ ヒ コ ミ モ 、 。 ・ ー BackSpace"
- "show_numbers show_romaji preferences space katakana_halfwidth_width_toggle_full show_hiragana Return"
numbers:
- " … -- -- -- -- -- -- -- -- --"
- "1 2 3 4 5 6 7 8 9 0"
- "@ # ¥ % & - _ + ( )"
- "show_symbols ; \" ' : = < > BackSpace-special-3"
- "show_hiragana show_romaji preferences space numbers_width_toggle_full , . Return"
numbers_fullwidth:
- " -- -- -- -- -- -- -- -- --"
- " "
- " _ "
- "show_symbols_fullwidth BackSpace-special-3"
- "show_hiragana show_romaji_fullwidth preferences fullwidth-space numbers_fullwidth_width_toggle_half Return"
symbols:
- "ヽ ♪ -- -- -- -- -- ヿ 【 】"
- "~ ` ´ | · √ µ ÷ × ¶"
- "© ® £ $ € ^ ° * { }"
- "show_numbers_from_symbols \\ / § π τ [ ] BackSpace-special-3"
- "show_hiragana show_romaji preferences space symbols_width_toggle_full ! ? Return"
symbols_fullwidth:
- " ̄ ¦ -- -- -- -- -- ¬ ⦅ ⦆"
- " -- -- -- -- -- -- --"
- "-- -- £ -- -- "
- "show_numbers_fullwidth_from_symbols -- -- -- BackSpace-special-3"
- "show_hiragana show_romaji_fullwidth preferences fullwidth-space symbols_fullwidth_width_toggle_half Return"
romaji:
- "1 2 3 4 5 6 7 8 9 0"
- "q w e r t y u i o p"
- "a s d f g h j k l --"
- "show_romaji_upper z x c v b n m BackSpace-special-3"
- "show_numbers show_hiragana preferences space romaji_width_toggle_full , . Return"
romaji_upper:
- "1 2 3 4 5 6 7 8 9 0"
- "Q W E R T Y U I O P"
- "A S D F G H J K L --"
- "show_romaji_upper Z X C V B N M BackSpace-special-3"
- "show_numbers show_hiragana preferences space romaji_width_toggle_full ! ? Return"
romaji_fullwidth:
- " "
- " "
- " --"
- "show_romaji_fullwidth_upper BackSpace-special-3"
- "show_numbers_fullwidth show_hiragana preferences fullwidth-space romaji_fullwidth_width_toggle_half Return"
romaji_fullwidth_upper:
- " "
- " "
- " --"
- "show_romaji_fullwidth_upper BackSpace-special-3"
- "show_numbers_fullwidth show_hiragana preferences fullwidth-space romaji_fullwidth_width_toggle_half Return"
# k s t n h m y r w
#a あア かカ さサ たタ なナ はハ まマ やヤ らラ わワ
#i いイ きキ しシ ちチ にニ ひヒ みミ ※ りリ ゐヰ
#u うウ くク すス つツ ぬヌ ふフ むム ゆユ るル ※
#e えエ けケ せセ てテ ねネ へヘ めメ ※ れレ ゑヱ
#o おオ こコ そソ とト のノ ほホ もモ よヨ ろロ をヲ
# g z d b p n
#a が ガ ざ ザ だ ダ ば バ ぱ パ ん ン
#i ぎ ギ じ ジ ぢ ヂ び ビ ぴ ピ
#u ぐ グ ず ズ づ ヅ ぶ ブ ぷ プ
#e げ ゲ ぜ ゼ で デ べ ベ ぺ ペ
#o ご ゴ ぞ ゾ ど ド ぼ ボ ぽ ポ
buttons:
BackSpace:
outline: "special"
icon: "edit-clear-symbolic"
action: "erase"
BackSpace-special-3:
outline: "special-3"
icon: "edit-clear-symbolic"
action: "erase"
preferences:
action: "show_prefs"
outline: "special-2"
icon: "keyboard-mode-symbolic"
show_numbers:
action:
set_view: "numbers"
outline: "change-view-3"
label: "123"
show_numbers_from_symbols:
action:
set_view: "numbers"
outline: "change-view-2"
label: "123"
numbers_fullwidth_width_toggle_half:
action:
set_view: "numbers"
outline: "change-view-3"
label: "半/全"
show_symbols:
action:
set_view: "symbols"
outline: "change-view-2"
label: "*/="
symbols_fullwidth_width_toggle_half:
action:
set_view: "symbols"
outline: "change-view-3"
label: "半/全"
show_hiragana:
action:
set_view: "base"
outline: "change-view-3"
label: "あいう"
show_hiragana_upper:
action:
locking:
lock_view: "hiragana_upper"
unlock_view: "base"
outline: "change-view"
icon: "key-shift"
show_katakana:
action:
set_view: "katakana"
outline: "change-view-3"
label: "アイウ"
katakana_halfwidth_width_toggle_full:
action:
set_view: "katakana"
outline: "change-view-3"
label: "半/全"
show_katakana_upper:
action:
locking:
lock_view: "katakana_upper"
unlock_view: "katakana"
outline: "change-view"
icon: "key-shift"
show_romaji:
action:
set_view: "romaji"
outline: "change-view-3"
label: "ABC"
romaji_fullwidth_width_toggle_half:
action:
set_view: "romaji"
outline: "change-view-3"
label: "半/全"
show_romaji_upper:
action:
locking:
lock_view: "romaji_upper"
unlock_view: "romaji"
outline: "change-view-2"
icon: "key-shift"
katakana_width_toggle_half:
action:
set_view: "katakana_halfwidth"
outline: "change-view-3"
label: "半/全"
show_katakana_halfwidth_upper:
action:
locking:
lock_view: "katakana_halfwidth_upper"
unlock_view: "katakana_halfwidth"
outline: "change-view"
icon: "key-shift"
show_romaji_fullwidth:
action:
set_view: "romaji_fullwidth"
outline: "change-view-3"
label: ""
romaji_width_toggle_full:
action:
set_view: "romaji_fullwidth"
outline: "change-view-3"
label: "半/全"
show_romaji_fullwidth_upper:
action:
locking:
lock_view: "romaji_fullwidth_upper"
unlock_view: "romaji_fullwidth"
outline: "change-view-2"
icon: "key-shift"
show_numbers_fullwidth:
action:
set_view: "numbers_fullwidth"
outline: "change-view-3"
label: ""
show_numbers_fullwidth_from_symbols:
action:
set_view: "numbers_fullwidth"
outline: "change-view-2"
label: ""
numbers_width_toggle_full:
action:
set_view: "numbers_fullwidth"
outline: "change-view-3"
label: "半/全"
show_symbols_fullwidth:
action:
set_view: "symbols_fullwidth"
outline: "change-view-2"
label: ""
symbols_width_toggle_full:
action:
set_view: "symbols_fullwidth"
outline: "change-view-3"
label: "半/全"
space:
outline: "spaceline"
text: " "
label: "␣"
fullwidth-space:
outline: "spaceline"
text: " "
label: "␣"
Return:
outline: "special-2"
icon: "key-enter"
keysym: "Return"
--:
outline: "placeholder"
text: ""
---:
outline: "placeholder-2"
text: ""
:
outline: "thin"
:
outline: "thin"
:
outline: "thin"
:
outline: "thin"
:
outline: "thin"
:
outline: "thin"
:
outline: "thin"
:
outline: "thin"
:
outline: "thin"
:
outline: "thin"
:
outline: "thin"
:
outline: "thin"
:
outline: "thin"
:
outline: "thin"
:
outline: "thin"
:
outline: "thin"
:
outline: "thin"
:
outline: "thin"
:
outline: "thin"
:
outline: "thin"
:
outline: "thin"
:
outline: "thin"
:
outline: "thin"
:
outline: "thin"
:
outline: "thin"
:
outline: "thin"
:
outline: "thin"
:
outline: "thin"
:
outline: "thin"
:
outline: "thin"
:
outline: "thin"
ソ:
outline: "thin"
:
outline: "thin"
:
outline: "thin"
:
outline: "thin"
:
outline: "thin"
:
outline: "thin"
:
outline: "thin"
:
outline: "thin"
:
outline: "thin"
:
outline: "thin"
:
outline: "thin"
:
outline: "thin"
:
outline: "thin"
:
outline: "thin"
:
outline: "thin"
:
outline: "default-2"
1:
outline: "default-2"
2:
outline: "default-2"
3:
outline: "default-2"
4:
outline: "default-2"
5:
outline: "default-2"
6:
outline: "default-2"
7:
outline: "default-2"
8:
outline: "default-2"
9:
outline: "default-2"
0:
outline: "default-2"
"@":
outline: "default-2"
"#":
outline: "default-2"
¥:
outline: "default-2"
"%":
outline: "default-2"
"&":
outline: "default-2"
-:
outline: "default-2"
_:
outline: "default-2"
+:
outline: "default-2"
(:
outline: "default-2"
):
outline: "default-2"
;:
outline: "default-2"
"\"":
outline: "default-2"
"'":
outline: "default-2"
":":
outline: "default-2"
=:
outline: "default-2"
<:
outline: "default-2"
">":
outline: "default-2"
a:
outline: "default-2"
b:
outline: "default-2"
c:
outline: "default-2"
d:
outline: "default-2"
e:
outline: "default-2"
f:
outline: "default-2"
g:
outline: "default-2"
h:
outline: "default-2"
i:
outline: "default-2"
j:
outline: "default-2"
k:
outline: "default-2"
l:
outline: "default-2"
m:
outline: "default-2"
n:
outline: "default-2"
o:
outline: "default-2"
p:
outline: "default-2"
q:
outline: "default-2"
r:
outline: "default-2"
s:
outline: "default-2"
t:
outline: "default-2"
u:
outline: "default-2"
v:
outline: "default-2"
w:
outline: "default-2"
x:
outline: "default-2"
y:
outline: "default-2"
z:
outline: "default-2"
A:
outline: "default-2"
B:
outline: "default-2"
C:
outline: "default-2"
D:
outline: "default-2"
E:
outline: "default-2"
F:
outline: "default-2"
G:
outline: "default-2"
H:
outline: "default-2"
I:
outline: "default-2"
J:
outline: "default-2"
K:
outline: "default-2"
L:
outline: "default-2"
M:
outline: "default-2"
N:
outline: "default-2"
O:
outline: "default-2"
P:
outline: "default-2"
Q:
outline: "default-2"
R:
outline: "default-2"
S:
outline: "default-2"
T:
outline: "default-2"
U:
outline: "default-2"
V:
outline: "default-2"
W:
outline: "default-2"
X:
outline: "default-2"
Y:
outline: "default-2"
Z:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
~:
outline: "default-2"
"`":
outline: "default-2"
´:
outline: "default-2"
"|":
outline: "default-2"
·:
outline: "default-2"
:
outline: "default-2"
µ:
outline: "default-2"
÷:
outline: "default-2"
×:
outline: "default-2"
:
outline: "default-2"
©:
outline: "default-2"
®:
outline: "default-2"
£:
outline: "default-2"
$:
outline: "default-2"
:
outline: "default-2"
^:
outline: "default-2"
°:
outline: "default-2"
"*":
outline: "default-2"
"{":
outline: "default-2"
"}":
outline: "default-2"
"\\":
outline: "default-2"
/:
outline: "default-2"
§:
outline: "default-2"
π:
outline: "default-2"
τ:
outline: "default-2"
"[":
outline: "default-2"
"]":
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
_:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"
:
outline: "default-2"

View File

@ -1,3 +1,4 @@
# Language: Norwegian
--- ---
outlines: outlines:
default: { width: 32.4, height: 52 } default: { width: 32.4, height: 52 }

View File

@ -1,3 +1,4 @@
# Language: Norwegian
--- ---
outlines: outlines:
default: { width: 48.87, height: 42 } default: { width: 48.87, height: 42 }

View File

@ -1,3 +1,4 @@
# Language: Polish
--- ---
outlines: outlines:
default: { width: 35.67, height: 52 } default: { width: 35.67, height: 52 }

View File

@ -1,3 +1,4 @@
# Language: Polish
--- ---
outlines: outlines:
default: { width: 54, height: 42 } default: { width: 54, height: 42 }

View File

@ -1,3 +1,4 @@
# Language: Portuguese
# This layout-file is a copy of "br.yaml" # This layout-file is a copy of "br.yaml"
--- ---
outlines: outlines:

View File

@ -1,3 +1,4 @@
# Language: Portuguese
# This layout-file is a copy of "br_wide.yaml" # This layout-file is a copy of "br_wide.yaml"
--- ---
outlines: outlines:

View File

@ -1,3 +1,4 @@
# Language: Romanian
--- ---
outlines: outlines:
default: { width: 35.67, height: 52 } default: { width: 35.67, height: 52 }

View File

@ -1,3 +1,4 @@
# Language: Romanian
--- ---
outlines: outlines:
default: { width: 54, height: 42 } default: { width: 54, height: 42 }

View File

@ -0,0 +1,88 @@
# Language: Serbian (Latin)
---
outlines:
default: { width: 32.42, height: 52 }
fill: { width: 64.84, height: 52 }
altline: { width: 32.42, height: 52 }
wide: { width: 48.63, height: 52 }
change-view: { width: 32.42, height: 52 }
change-view-2: { width: 48.63, height: 52 }
spaceline: { width: 162.1, height: 52 }
special: { width: 32.42, height: 52 }
placeholder: { width: 32.42, height: 52 }
views:
base:
- "q w e r t z u i o p š"
- "a s d f g h j k l č ć"
- "Shift_L y x c v b n m đ ž BackSpace"
- "show_numbers preferences space , . Return"
upper:
- "Q W E R T Z U I O P Š"
- "A S D F G H J K L Č Ć"
- "Shift_L Y X C V B N M Đ Ž BackSpace"
- "show_numbers preferences space ! ? Return"
numbers:
- "1 2 3 4 5 6 7 8 9 0"
- "@ # $ % & - _ + ( )"
- "show_symbols , \" ' : ; ! ? -- BackSpace-wide"
- "show_letters preferences space , . Return"
symbols:
- "~ ` | · √ π τ ÷ × ¶"
- "© ® £ € ¥ ^ ° * { }"
- "show_numbers \\ / < > = [ ] -- BackSpace-wide"
- "show_letters preferences space , . Return"
buttons:
Shift_L:
action:
locking:
lock_view: "upper"
unlock_view: "base"
outline: "change-view"
icon: "key-shift"
BackSpace:
outline: "altline"
icon: "edit-clear-symbolic"
action: "erase"
BackSpace-wide:
outline: "wide"
icon: "edit-clear-symbolic"
action: "erase"
preferences:
action: "show_prefs"
outline: "special"
icon: "keyboard-mode-symbolic"
show_numbers:
action:
set_view: "numbers"
outline: "change-view-2"
label: "123"
show_letters:
action:
set_view: "base"
outline: "change-view-2"
label: "ABC"
show_symbols:
action:
set_view: "symbols"
outline: "change-view-2"
label: "*/="
space:
outline: "spaceline"
text: " "
Return:
outline: "wide"
icon: "key-enter"
keysym: "Return"
--:
outline: "placeholder"
text: ""
5:
outline: "fill"
"&":
outline: "fill"
:
outline: "fill"
¥:
outline: "fill"

View File

@ -0,0 +1,96 @@
# Language: Serbian (Latin)
---
outlines:
default: { width: 48.87, height: 42 }
fill: { width: 73.31, height: 42 }
altline: { width: 48.87, height: 42 }
wide: { width: 73.31, height: 42 }
change-view: { width: 48.87, height: 42 }
change-view-2: { width: 73.31, height: 42 }
spaceline: { width: 244.34, height: 42 }
special: { width: 48.87, height: 42 }
placeholder: { width: 48.87, height: 42 }
views:
base:
- "q w e r t z u i o p š"
- "a s d f g h j k l č ć"
- "Shift_L y x c v b n m đ ž BackSpace"
- "show_numbers preferences space , . Return"
upper:
- "Q W E R T Z U I O P Š"
- "A S D F G H J K L Č Ć"
- "Shift_L Y X C V B N M Đ Ž BackSpace"
- "show_numbers preferences space ! ? Return"
numbers:
- "1 2 3 4 5 6 7 8 9 0"
- "@ # $ % & - _ + ( )"
- "show_symbols , \" ' : ; ! ? -- BackSpace-wide"
- "show_letters preferences space , . Return"
symbols:
- "~ ` | · √ π τ ÷ × ¶"
- "© ® £ € ¥ ^ ° * { }"
- "show_numbers \\ / < > = [ ] -- BackSpace-wide"
- "show_letters preferences space , . Return"
buttons:
Shift_L:
action:
locking:
lock_view: "upper"
unlock_view: "base"
outline: "change-view"
icon: "key-shift"
BackSpace:
outline: "altline"
icon: "edit-clear-symbolic"
action: "erase"
BackSpace-wide:
outline: "wide"
icon: "edit-clear-symbolic"
action: "erase"
preferences:
action: "show_prefs"
outline: "special"
icon: "keyboard-mode-symbolic"
show_numbers:
action:
set_view: "numbers"
outline: "change-view-2"
label: "123"
show_letters:
action:
set_view: "base"
outline: "change-view-2"
label: "ABC"
show_symbols:
action:
set_view: "symbols"
outline: "change-view-2"
label: "*/="
space:
outline: "spaceline"
text: " "
Return:
outline: "wide"
icon: "key-enter"
keysym: "Return"
--:
outline: "placeholder"
text: ""
5:
outline: "fill"
6:
outline: "fill"
"&":
outline: "fill"
-:
outline: "fill"
:
outline: "fill"
π:
outline: "fill"
¥:
outline: "fill"
^:
outline: "fill"

View File

@ -0,0 +1,89 @@
# Language: Serbian (Latin, Unicode)
---
outlines:
default: { width: 32.42, height: 52 }
fill: { width: 64.84, height: 52 }
altline: { width: 48.63, height: 52 }
wide: { width: 64.84, height: 52 }
change-view: { width: 48.63, height: 52 }
change-view-2: { width: 64.84, height: 52 }
spaceline: { width: 129.68, height: 52 }
special: { width: 32.42, height: 52 }
placeholder: { width: 32.42, height: 52 }
views:
base:
- "lj nj e r t z u i o p š"
- "a s d f g h j k l č ć"
- "Shift_L ž dž c v b n m đ BackSpace"
- "show_numbers preferences space , . Return"
upper:
- "Lj Nj E R T Z U I O P Š"
- "A S D F G H J K L Č Ć"
- "Shift_L Ž Dž C V B N M Đ BackSpace"
- "show_numbers preferences space ! ? Return"
numbers:
- "1 2 3 4 5 6 7 8 9 0"
- "@ # $ % & - _ + ( )"
- "show_symbols , \" ' : ; ! ? -- BackSpace"
- "show_letters preferences space , . Return"
symbols:
- "~ ` | · √ π τ ÷ × ¶"
- "© ® £ € ¥ ^ ° * { }"
- "show_numbers_from_symbols \\ / < > = [ ] -- BackSpace"
- "show_letters preferences space , . Return"
buttons:
Shift_L:
action:
locking:
lock_view: "upper"
unlock_view: "base"
outline: "change-view"
icon: "key-shift"
BackSpace:
outline: "altline"
icon: "edit-clear-symbolic"
action: "erase"
preferences:
action: "show_prefs"
outline: "special"
icon: "keyboard-mode-symbolic"
show_numbers:
action:
set_view: "numbers"
outline: "change-view-2"
label: "123"
show_numbers_from_symbols:
action:
set_view: "numbers"
outline: "change-view"
label: "123"
show_letters:
action:
set_view: "base"
outline: "change-view-2"
label: "ABC"
show_symbols:
action:
set_view: "symbols"
outline: "change-view"
label: "*/="
space:
outline: "spaceline"
text: " "
Return:
outline: "wide"
icon: "key-enter"
keysym: "Return"
--:
outline: "placeholder"
text: ""
5:
outline: "fill"
"&":
outline: "fill"
:
outline: "fill"
¥:
outline: "fill"

View File

@ -0,0 +1,91 @@
# Language: Serbian (Latin, Unicode)
---
outlines:
default: { width: 48.87, height: 42 }
fill: { width: 73.31, height: 42 }
altline: { width: 73.31, height: 42 }
wide: { width: 73.31, height: 42 }
change-view: { width: 73.31, height: 42 }
spaceline: { width: 244.34, height: 42 }
special: { width: 48.87, height: 42 }
placeholder: { width: 48.87, height: 42 }
views:
base:
- "lj nj e r t z u i o p š"
- "a s d f g h j k l č ć"
- "Shift_L ž dž c v b n m đ BackSpace"
- "show_numbers preferences space , . Return"
upper:
- "Lj Nj E R T Z U I O P Š"
- "A S D F G H J K L Č Ć"
- "Shift_L Ž Dž C V B N M Đ BackSpace"
- "show_numbers preferences space ! ? Return"
numbers:
- "1 2 3 4 5 6 7 8 9 0"
- "@ # $ % & - _ + ( )"
- "show_symbols , \" ' : ; ! ? -- BackSpace"
- "show_letters preferences space , . Return"
symbols:
- "~ ` | · √ π τ ÷ × ¶"
- "© ® £ € ¥ ^ ° * { }"
- "show_numbers \\ / < > = [ ] -- BackSpace"
- "show_letters preferences space , . Return"
buttons:
Shift_L:
action:
locking:
lock_view: "upper"
unlock_view: "base"
outline: "change-view"
icon: "key-shift"
BackSpace:
outline: "altline"
icon: "edit-clear-symbolic"
action: "erase"
preferences:
action: "show_prefs"
outline: "special"
icon: "keyboard-mode-symbolic"
show_numbers:
action:
set_view: "numbers"
outline: "change-view"
label: "123"
show_letters:
action:
set_view: "base"
outline: "change-view"
label: "ABC"
show_symbols:
action:
set_view: "symbols"
outline: "change-view"
label: "*/="
space:
outline: "spaceline"
text: " "
Return:
outline: "wide"
icon: "key-enter"
keysym: "Return"
--:
outline: "placeholder"
text: ""
5:
outline: "fill"
6:
outline: "fill"
"&":
outline: "fill"
-:
outline: "fill"
:
outline: "fill"
π:
outline: "fill"
¥:
outline: "fill"
^:
outline: "fill"

89
data/keyboards/rs.yaml Normal file
View File

@ -0,0 +1,89 @@
# Language: Serbian
---
outlines:
default: { width: 32.12, height: 52 }
fill: { width: 64.24, height: 52 }
altline: { width: 48.18, height: 52 }
wide: { width: 64.24, height: 52 }
change-view: { width: 48.18, height: 52 }
change-view-2: { width: 64.24, height: 52 }
spaceline: { width: 128.48, height: 52 }
special: { width: 32.12, height: 52 }
placeholder: { width: 32.12, height: 52 }
views:
base:
- "љ њ е р т з у и о п ш"
- "а с д ф г х ј к л ч ћ"
- "Shift_L џ ц в б н м ђ ж BackSpace"
- "show_numbers preferences space , . Return"
upper:
- "Љ Њ Е Р Т З У И О П Ш"
- "А С Д Ф Г Х Ј К Л Ч Ћ"
- "Shift_L Џ Ц В Б Н М Ђ Ж BackSpace"
- "show_numbers preferences space ! ? Return"
numbers:
- "1 2 3 4 5 6 7 8 9 0"
- "@ # $ % & - _ + ( )"
- "show_symbols , \" ' : ; ! ? -- BackSpace"
- "show_letters preferences space , . Return"
symbols:
- "~ ` | · √ π τ ÷ × ¶"
- "© ® £ € ¥ ^ ° * { }"
- "show_numbers_from_symbols \\ / < > = [ ] -- BackSpace"
- "show_letters preferences space , . Return"
buttons:
Shift_L:
action:
locking:
lock_view: "upper"
unlock_view: "base"
outline: "change-view"
icon: "key-shift"
BackSpace:
outline: "altline"
icon: "edit-clear-symbolic"
action: "erase"
preferences:
action: "show_prefs"
outline: "special"
icon: "keyboard-mode-symbolic"
show_numbers:
action:
set_view: "numbers"
outline: "change-view-2"
label: "123"
show_numbers_from_symbols:
action:
set_view: "numbers"
outline: "change-view"
label: "123"
show_letters:
action:
set_view: "base"
outline: "change-view-2"
label: "ABC"
show_symbols:
action:
set_view: "symbols"
outline: "change-view"
label: "*/="
space:
outline: "spaceline"
text: " "
Return:
outline: "wide"
icon: "key-enter"
keysym: "Return"
--:
outline: "placeholder"
text: ""
5:
outline: "fill"
"&":
outline: "fill"
:
outline: "fill"
¥:
outline: "fill"

View File

@ -0,0 +1,91 @@
# Language: Serbian
---
outlines:
default: { width: 48.87, height: 42 }
fill: { width: 73.31, height: 42 }
altline: { width: 73.31, height: 42 }
wide: { width: 73.31, height: 42 }
change-view: { width: 73.31, height: 42 }
spaceline: { width: 244.35, height: 42 }
special: { width: 48.87, height: 42 }
placeholder: { width: 48.87, height: 42 }
views:
base:
- "љ њ е р т з у и о п ш"
- "а с д ф г х ј к л ч ћ"
- "Shift_L џ ц в б н м ђ ж BackSpace"
- "show_numbers preferences space , . Return"
upper:
- "Љ Њ Е Р Т З У И О П Ш"
- "А С Д Ф Г Х Ј К Л Ч Ћ"
- "Shift_L Џ Ц В Б Н М Ђ Ж BackSpace"
- "show_numbers preferences space ! ? Return"
numbers:
- "1 2 3 4 5 6 7 8 9 0"
- "@ # $ % & - _ + ( )"
- "show_symbols , \" ' : ; ! ? -- BackSpace"
- "show_letters preferences space , . Return"
symbols:
- "~ ` | · √ π τ ÷ × ¶"
- "© ® £ € ¥ ^ ° * { }"
- "show_numbers \\ / < > = [ ] -- BackSpace"
- "show_letters preferences space , . Return"
buttons:
Shift_L:
action:
locking:
lock_view: "upper"
unlock_view: "base"
outline: "change-view"
icon: "key-shift"
BackSpace:
outline: "altline"
icon: "edit-clear-symbolic"
action: "erase"
preferences:
action: "show_prefs"
outline: "special"
icon: "keyboard-mode-symbolic"
show_numbers:
action:
set_view: "numbers"
outline: "change-view"
label: "123"
show_letters:
action:
set_view: "base"
outline: "change-view"
label: "ABC"
show_symbols:
action:
set_view: "symbols"
outline: "change-view"
label: "*/="
space:
outline: "spaceline"
text: " "
Return:
outline: "wide"
icon: "key-enter"
keysym: "Return"
--:
outline: "placeholder"
text: ""
5:
outline: "fill"
6:
outline: "fill"
"&":
outline: "fill"
-:
outline: "fill"
:
outline: "fill"
π:
outline: "fill"
¥:
outline: "fill"
^:
outline: "fill"

View File

@ -1,3 +1,4 @@
# Language: Russian
--- ---
outlines: outlines:
default: { width: 32.45, height: 52 } default: { width: 32.45, height: 52 }

View File

@ -1,3 +1,4 @@
# Language: Russian
--- ---
outlines: outlines:
default: { width: 48.75, height: 42 } default: { width: 48.75, height: 42 }

Some files were not shown because too many files have changed in this diff Show More