Compare commits
	
		
			4 Commits
		
	
	
		
			v1.20.0
			...
			eekboard-0
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 87a0540627 | |||
| 878a1c73fd | |||
| b465cbc5de | |||
| 2622e4eb59 | 
							
								
								
									
										84
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							
							
						
						@ -1,10 +1,76 @@
 | 
			
		||||
_build
 | 
			
		||||
po/squeekboard.pot
 | 
			
		||||
po/*.mo
 | 
			
		||||
TAGS
 | 
			
		||||
tags
 | 
			
		||||
vgdump
 | 
			
		||||
*.swp
 | 
			
		||||
*.la
 | 
			
		||||
*.lo
 | 
			
		||||
*.loT
 | 
			
		||||
*.o
 | 
			
		||||
*.so
 | 
			
		||||
*~
 | 
			
		||||
\#*#
 | 
			
		||||
.\#*
 | 
			
		||||
Makefile
 | 
			
		||||
Makefile.in
 | 
			
		||||
.deps
 | 
			
		||||
.libs
 | 
			
		||||
INSTALL
 | 
			
		||||
aclocal.m4
 | 
			
		||||
autom4te.cache
 | 
			
		||||
compile
 | 
			
		||||
config.guess
 | 
			
		||||
config.h
 | 
			
		||||
config.h.in
 | 
			
		||||
config.log
 | 
			
		||||
config.rpath
 | 
			
		||||
config.status
 | 
			
		||||
config.sub
 | 
			
		||||
configure
 | 
			
		||||
depcomp
 | 
			
		||||
install-sh
 | 
			
		||||
libtool
 | 
			
		||||
ltmain.sh
 | 
			
		||||
missing
 | 
			
		||||
stamp-h1
 | 
			
		||||
libkeyactor*.tar.*
 | 
			
		||||
mkinstalldirs
 | 
			
		||||
m4/*.m4
 | 
			
		||||
gtk-doc.make
 | 
			
		||||
eek/eek-special-keysym-entries.h
 | 
			
		||||
eek/eek-unicode-keysym-entries.h
 | 
			
		||||
eek/eek-xkeysym-keysym-entries.h
 | 
			
		||||
eek/eek-marshalers.[ch]
 | 
			
		||||
eek/*.pc
 | 
			
		||||
eek/*.gir
 | 
			
		||||
eek/*.typelib
 | 
			
		||||
eekboard/*.pc
 | 
			
		||||
eekboard/*.gir
 | 
			
		||||
eekboard/*.typelib
 | 
			
		||||
tests/eek-simple-test
 | 
			
		||||
tests/eek-xkb-test
 | 
			
		||||
tests/eek-xml-test
 | 
			
		||||
src/eekboard-server
 | 
			
		||||
src/eekboard-client
 | 
			
		||||
src/eekboard-system-client
 | 
			
		||||
src/eekboard-xml
 | 
			
		||||
docs/reference/eek/*.stamp
 | 
			
		||||
docs/reference/eek/*.txt
 | 
			
		||||
!/docs/reference/eek/eek-sections.txt
 | 
			
		||||
docs/reference/eek/xml
 | 
			
		||||
docs/reference/eek/html
 | 
			
		||||
docs/reference/eek/eek.signals
 | 
			
		||||
docs/reference/eek/eek.args
 | 
			
		||||
docs/reference/eek/eek.hierarchy
 | 
			
		||||
docs/reference/eek/eek.interfaces
 | 
			
		||||
docs/reference/eek/eek.prerequisites
 | 
			
		||||
docs/reference/eekboard/*.stamp
 | 
			
		||||
docs/reference/eekboard/*.txt
 | 
			
		||||
!/docs/reference/eekboard/eekboard-sections.txt
 | 
			
		||||
docs/reference/eekboard/xml
 | 
			
		||||
docs/reference/eekboard/html
 | 
			
		||||
docs/reference/eekboard/eekboard.signals
 | 
			
		||||
docs/reference/eekboard/eekboard.args
 | 
			
		||||
docs/reference/eekboard/eekboard.hierarchy
 | 
			
		||||
docs/reference/eekboard/eekboard.interfaces
 | 
			
		||||
docs/reference/eekboard/eekboard.prerequisites
 | 
			
		||||
po/*.gmo
 | 
			
		||||
po/Makefile.in.in
 | 
			
		||||
po/POTFILES
 | 
			
		||||
po/stamp-it
 | 
			
		||||
bindings/vala/*.vapi
 | 
			
		||||
py-compile
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										180
									
								
								.gitlab-ci.yml
									
									
									
									
									
								
							
							
						
						@ -1,180 +0,0 @@
 | 
			
		||||
image: pureos/byzantium
 | 
			
		||||
 | 
			
		||||
stages:
 | 
			
		||||
  - build
 | 
			
		||||
  - test
 | 
			
		||||
  - deploy
 | 
			
		||||
 | 
			
		||||
before_script:
 | 
			
		||||
  - apt-get -y update
 | 
			
		||||
  - apt-get -y install ca-certificates
 | 
			
		||||
 | 
			
		||||
build_docs:
 | 
			
		||||
  stage: build
 | 
			
		||||
  artifacts:
 | 
			
		||||
    paths:
 | 
			
		||||
      - _build
 | 
			
		||||
  script:
 | 
			
		||||
    - apt-get -y install python3-pip python3-sphinx
 | 
			
		||||
    - pip3 install recommonmark
 | 
			
		||||
    - ./doc/build.sh _build
 | 
			
		||||
  except:
 | 
			
		||||
    variables:
 | 
			
		||||
      - $PKG_ONLY == "1"
 | 
			
		||||
 | 
			
		||||
build_meson:
 | 
			
		||||
  image: debian:bookworm
 | 
			
		||||
  stage: build
 | 
			
		||||
  artifacts:
 | 
			
		||||
    paths:
 | 
			
		||||
      - _build
 | 
			
		||||
    expire_in: 3h
 | 
			
		||||
  script:
 | 
			
		||||
    - mv debian/control-newer debian/control
 | 
			
		||||
    - apt-get -y build-dep .
 | 
			
		||||
    - meson . _build/ -Ddepdatadir=/usr/share --werror
 | 
			
		||||
    - ninja -C _build install
 | 
			
		||||
  except:
 | 
			
		||||
    variables:
 | 
			
		||||
      - $PKG_ONLY == "1"
 | 
			
		||||
 | 
			
		||||
build_deb:
 | 
			
		||||
  stage: build
 | 
			
		||||
  artifacts:
 | 
			
		||||
    paths:
 | 
			
		||||
      - '*.deb'
 | 
			
		||||
  script:
 | 
			
		||||
    - rm -f ../*.deb
 | 
			
		||||
    - apt-get -y build-dep .
 | 
			
		||||
    - apt-get -y install devscripts
 | 
			
		||||
    - REV=$(git log -1 --format=%h)
 | 
			
		||||
    - VER=$(dpkg-parsechangelog -SVersion)
 | 
			
		||||
    - DEBFULLNAME="Librem5 CI"
 | 
			
		||||
    - EMAIL="librem5-builds@lists.community.puri.sm"
 | 
			
		||||
    - dch -v"$VER+librem5ci$CI_PIPELINE_ID.$REV" "$MSG"
 | 
			
		||||
    - debuild -i -us -uc -b
 | 
			
		||||
    - cp ../*.deb .
 | 
			
		||||
 | 
			
		||||
build_deb:arm64:
 | 
			
		||||
  image: pureos/byzantium
 | 
			
		||||
  tags:
 | 
			
		||||
    - aarch64
 | 
			
		||||
  stage: build
 | 
			
		||||
  artifacts:
 | 
			
		||||
    paths:
 | 
			
		||||
      - '*.deb'
 | 
			
		||||
  script:
 | 
			
		||||
    - rm -f ../*.deb
 | 
			
		||||
    - apt-get -y build-dep .
 | 
			
		||||
    - apt-get -y install devscripts
 | 
			
		||||
    - REV=$(git log -1 --format=%h)
 | 
			
		||||
    - VER=$(dpkg-parsechangelog -SVersion)
 | 
			
		||||
    - DEBFULLNAME="Librem5 CI"
 | 
			
		||||
    - EMAIL="librem5-builds@lists.community.puri.sm"
 | 
			
		||||
    - dch -v"$VER+librem5ci$CI_PIPELINE_ID.$REV" "$MSG"
 | 
			
		||||
    - debuild -i -us -uc -b
 | 
			
		||||
    - cp ../*.deb .
 | 
			
		||||
 | 
			
		||||
build_deb:future:
 | 
			
		||||
  image: debian:sid
 | 
			
		||||
  allow_failure: true
 | 
			
		||||
  tags:
 | 
			
		||||
    - aarch64
 | 
			
		||||
  stage: build
 | 
			
		||||
  artifacts:
 | 
			
		||||
    paths:
 | 
			
		||||
      - '*.deb'
 | 
			
		||||
  script:
 | 
			
		||||
    - rm -f ../*.deb
 | 
			
		||||
    - mv debian/control-newer debian/control
 | 
			
		||||
    - apt-get -y build-dep .
 | 
			
		||||
    - apt-get -y install devscripts
 | 
			
		||||
    - REV=$(git log -1 --format=%h)
 | 
			
		||||
    - VER=$(dpkg-parsechangelog -SVersion)
 | 
			
		||||
    - DEBFULLNAME="Librem5 CI"
 | 
			
		||||
    - EMAIL="librem5-builds@lists.community.puri.sm"
 | 
			
		||||
    - dch -v"$VER+librem5ci$CI_PIPELINE_ID.$REV" "$MSG"
 | 
			
		||||
    - debuild -i -us -uc -b
 | 
			
		||||
    - cp ../*.deb .
 | 
			
		||||
 | 
			
		||||
build_reference:
 | 
			
		||||
  image: debian:bookworm
 | 
			
		||||
  stage: build
 | 
			
		||||
  needs:
 | 
			
		||||
    - job: build_meson
 | 
			
		||||
      artifacts: true
 | 
			
		||||
  artifacts:
 | 
			
		||||
    paths:
 | 
			
		||||
      - _build/doc
 | 
			
		||||
  script:
 | 
			
		||||
    - apt-get -y install cargo
 | 
			
		||||
    - cd _build
 | 
			
		||||
    - ../cargo.sh doc --no-deps --document-private-items
 | 
			
		||||
  except:
 | 
			
		||||
    variables:
 | 
			
		||||
      - $PKG_ONLY == "1"
 | 
			
		||||
 | 
			
		||||
test_lintian:
 | 
			
		||||
  stage: test
 | 
			
		||||
  needs:
 | 
			
		||||
    - job: build_deb
 | 
			
		||||
      artifacts: true
 | 
			
		||||
  script:
 | 
			
		||||
    - apt-get -y install lintian
 | 
			
		||||
    - lintian *.deb
 | 
			
		||||
  except:
 | 
			
		||||
    variables:
 | 
			
		||||
      - $PKG_ONLY == "1"
 | 
			
		||||
 | 
			
		||||
test:
 | 
			
		||||
  image: debian:bookworm
 | 
			
		||||
  stage: test
 | 
			
		||||
  needs:
 | 
			
		||||
    - job: build_meson
 | 
			
		||||
      artifacts: true
 | 
			
		||||
  script:
 | 
			
		||||
    - mv debian/control-newer debian/control
 | 
			
		||||
    - apt-get -y build-dep .
 | 
			
		||||
    - apt-get -y install clang-tidy
 | 
			
		||||
    - ninja -C _build test
 | 
			
		||||
    - tools/style-check_build _build
 | 
			
		||||
  except:
 | 
			
		||||
    variables:
 | 
			
		||||
      - $PKG_ONLY == "1"
 | 
			
		||||
 | 
			
		||||
test_style:
 | 
			
		||||
  stage: test
 | 
			
		||||
  needs: []
 | 
			
		||||
  script:
 | 
			
		||||
    - apt-get -y build-dep .
 | 
			
		||||
    - tools/style-check_source
 | 
			
		||||
  except:
 | 
			
		||||
    variables:
 | 
			
		||||
      - $PKG_ONLY == "1"
 | 
			
		||||
 | 
			
		||||
check_release:
 | 
			
		||||
  stage: test
 | 
			
		||||
  needs: []
 | 
			
		||||
  only:
 | 
			
		||||
    refs:
 | 
			
		||||
      - master
 | 
			
		||||
  script:
 | 
			
		||||
    - apt-get -y install git python3
 | 
			
		||||
    - (head -n 1 ./debian/changelog && git tag) | ./debian/check_release.py
 | 
			
		||||
  except:
 | 
			
		||||
    variables:
 | 
			
		||||
      - $PKG_ONLY == "1"
 | 
			
		||||
 | 
			
		||||
pages:
 | 
			
		||||
  stage: deploy
 | 
			
		||||
  needs:
 | 
			
		||||
    - build_docs
 | 
			
		||||
    - build_reference
 | 
			
		||||
  script:
 | 
			
		||||
    - mv _build/ public/
 | 
			
		||||
  artifacts:
 | 
			
		||||
    paths:
 | 
			
		||||
      - public
 | 
			
		||||
  only:
 | 
			
		||||
    refs:
 | 
			
		||||
      - master
 | 
			
		||||
							
								
								
									
										37
									
								
								AUTHORS
									
									
									
									
									
								
							
							
						
						@ -1,5 +1,36 @@
 | 
			
		||||
squeekboard is written by Dorota Czaplejewicz <dorota.czaplejewicz@puri.sm> on behlf of Purism, SPC.
 | 
			
		||||
eekboard was written by Daiki Ueno <ueno@unixuser.org>
 | 
			
		||||
eekboard is written by Daiki Ueno <ueno@unixuser.org>.  The following
 | 
			
		||||
files contain code derived from other free software packages:
 | 
			
		||||
 | 
			
		||||
For more details, see the debian/copyright file.
 | 
			
		||||
eek/eek-keyboard-drawing.h
 | 
			
		||||
eek/eek-keyboard-drawing.c
 | 
			
		||||
 | 
			
		||||
  These files contain code derived from the libgnomekbd library.
 | 
			
		||||
  Copyright (C) 2006 Sergey V. Udaltsov <svu@gnome.org>
 | 
			
		||||
 | 
			
		||||
eek/eek-theme.h
 | 
			
		||||
eek/eek-theme.c
 | 
			
		||||
eek/eek-theme-context.h
 | 
			
		||||
eek/eek-theme-context.c
 | 
			
		||||
eek/eek-theme-node.h
 | 
			
		||||
eek/eek-theme-node.c
 | 
			
		||||
 | 
			
		||||
  These files contain code derived from gnome-shell.
 | 
			
		||||
 | 
			
		||||
  Copyright 2008-2010 Red Hat, Inc.
 | 
			
		||||
  Copyright 2009 Steve Frécinaux
 | 
			
		||||
  Copyright 2009, 2010 Florian Müllner
 | 
			
		||||
  Copyright 2010 Adel Gadllah
 | 
			
		||||
  Copyright 2010 Giovanni Campagna
 | 
			
		||||
  Copyright 2003-2004 Dodji Seketeli
 | 
			
		||||
 | 
			
		||||
data/icons/8x8/Makefile.am
 | 
			
		||||
data/icons/16x16/Makefile.am
 | 
			
		||||
data/icons/22x22/Makefile.am
 | 
			
		||||
data/icons/24x24/Makefile.am
 | 
			
		||||
data/icons/32x32/Makefile.am
 | 
			
		||||
data/icons/48x48/Makefile.am
 | 
			
		||||
data/icons/scalable/Makefile.am
 | 
			
		||||
 | 
			
		||||
  These files contain code derived from im-chooser.
 | 
			
		||||
 | 
			
		||||
  Copyright (C) 2006-2008 Red Hat, Inc. All rights reserved.
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										36
									
								
								Cargo.deps
									
									
									
									
									
								
							
							
						
						@ -1,36 +0,0 @@
 | 
			
		||||
# Dependencies which change based on build flags
 | 
			
		||||
bitflags = "1.2.*"
 | 
			
		||||
clap = { version = "2.33.*", default-features = false }
 | 
			
		||||
zbus = "1.0.*"
 | 
			
		||||
zvariant = "2.0.*"
 | 
			
		||||
# Newer versions seem to confuse the version of Cargo on Debian Bullseye
 | 
			
		||||
zvariant_derive = "2.0.*"
 | 
			
		||||
 | 
			
		||||
[dependencies.cairo-rs]
 | 
			
		||||
version = "0.7.*"
 | 
			
		||||
 | 
			
		||||
[dependencies.cairo-sys-rs]
 | 
			
		||||
version = "0.9"
 | 
			
		||||
 | 
			
		||||
[dependencies.gdk]
 | 
			
		||||
version = "0.11.*"
 | 
			
		||||
 | 
			
		||||
[dependencies.gio]
 | 
			
		||||
version = "0.7.*"
 | 
			
		||||
features = ["v2_44"]
 | 
			
		||||
 | 
			
		||||
[dependencies.glib]
 | 
			
		||||
version = "0.8.*"
 | 
			
		||||
features = ["v2_44"]
 | 
			
		||||
 | 
			
		||||
[dependencies.glib-sys]
 | 
			
		||||
version = "*"
 | 
			
		||||
features = ["v2_44"]
 | 
			
		||||
 | 
			
		||||
[dependencies.gtk]
 | 
			
		||||
version = "0.7.*"
 | 
			
		||||
features = ["v3_22"]
 | 
			
		||||
 | 
			
		||||
[dependencies.gtk-sys]
 | 
			
		||||
version = "0.9"
 | 
			
		||||
features = ["v3_22"]
 | 
			
		||||
@ -1,37 +0,0 @@
 | 
			
		||||
# Dependencies which change based on build flags
 | 
			
		||||
# For the newer-than-Byzantium config
 | 
			
		||||
bitflags = "1.3.*"
 | 
			
		||||
clap = { version = "3.1.*", features=["std"], default-features = false }
 | 
			
		||||
zbus = "1.9.*"
 | 
			
		||||
zvariant = "2.10.*"
 | 
			
		||||
# Newer versions seem to confuse the version of Cargo on Debian Bullseye
 | 
			
		||||
zvariant_derive = "2.10.*"
 | 
			
		||||
 | 
			
		||||
[dependencies.cairo-rs]
 | 
			
		||||
version = "0.14.*"
 | 
			
		||||
 | 
			
		||||
[dependencies.cairo-sys-rs]
 | 
			
		||||
version = "0.14.*"
 | 
			
		||||
 | 
			
		||||
[dependencies.gdk]
 | 
			
		||||
version = "0.14.*"
 | 
			
		||||
 | 
			
		||||
[dependencies.gio]
 | 
			
		||||
version = "0.14.*"
 | 
			
		||||
features = ["v2_58"]
 | 
			
		||||
 | 
			
		||||
[dependencies.glib]
 | 
			
		||||
version = "0.14.*"
 | 
			
		||||
features = ["v2_58"]
 | 
			
		||||
 | 
			
		||||
[dependencies.glib-sys]
 | 
			
		||||
version = "0.14.*"
 | 
			
		||||
features = ["v2_58"]
 | 
			
		||||
 | 
			
		||||
[dependencies.gtk]
 | 
			
		||||
version = "0.14.*"
 | 
			
		||||
features = ["v3_22"]
 | 
			
		||||
 | 
			
		||||
[dependencies.gtk-sys]
 | 
			
		||||
version = "0.14.*"
 | 
			
		||||
features = ["v3_22"]
 | 
			
		||||
@ -1,4 +0,0 @@
 | 
			
		||||
# Dependencies which are only used with online, crates.io builds.
 | 
			
		||||
[patch.crates-io]
 | 
			
		||||
# Dependency was yanked, but gio 0.7 needs it.
 | 
			
		||||
fragile = { git = "https://source.puri.sm/dorota.czaplejewicz/fragile.git", tag = "0.3.0" }
 | 
			
		||||
							
								
								
									
										670
									
								
								Cargo.lock
									
									
									
										generated
									
									
									
								
							
							
						
						@ -1,670 +0,0 @@
 | 
			
		||||
# This file is automatically @generated by Cargo.
 | 
			
		||||
# It is not intended for manual editing.
 | 
			
		||||
version = 3
 | 
			
		||||
 | 
			
		||||
[[package]]
 | 
			
		||||
name = "atk"
 | 
			
		||||
version = "0.7.0"
 | 
			
		||||
source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
			
		||||
checksum = "86b7499272acf036bb5820c6e346bbfb5acc5dceb104bc2c4fd7e6e33dfcde6a"
 | 
			
		||||
dependencies = [
 | 
			
		||||
 "atk-sys",
 | 
			
		||||
 "bitflags",
 | 
			
		||||
 "glib",
 | 
			
		||||
 "glib-sys",
 | 
			
		||||
 "gobject-sys",
 | 
			
		||||
 "libc",
 | 
			
		||||
]
 | 
			
		||||
 | 
			
		||||
[[package]]
 | 
			
		||||
name = "atk-sys"
 | 
			
		||||
version = "0.9.1"
 | 
			
		||||
source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
			
		||||
checksum = "e552c1776737a4c80110d06b36d099f47c727335f9aaa5d942a72b6863a8ec6f"
 | 
			
		||||
dependencies = [
 | 
			
		||||
 "glib-sys",
 | 
			
		||||
 "gobject-sys",
 | 
			
		||||
 "libc",
 | 
			
		||||
 "pkg-config",
 | 
			
		||||
]
 | 
			
		||||
 | 
			
		||||
[[package]]
 | 
			
		||||
name = "autocfg"
 | 
			
		||||
version = "1.1.0"
 | 
			
		||||
source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
			
		||||
checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa"
 | 
			
		||||
 | 
			
		||||
[[package]]
 | 
			
		||||
name = "bitflags"
 | 
			
		||||
version = "1.2.1"
 | 
			
		||||
source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
			
		||||
checksum = "cf1de2fe8c75bc145a2f577add951f8134889b4795d47466a54a5c846d691693"
 | 
			
		||||
 | 
			
		||||
[[package]]
 | 
			
		||||
name = "byteorder"
 | 
			
		||||
version = "1.4.3"
 | 
			
		||||
source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
			
		||||
checksum = "14c189c53d098945499cdfa7ecc63567cf3886b3332b312a5b4585d8d3a6a610"
 | 
			
		||||
 | 
			
		||||
[[package]]
 | 
			
		||||
name = "cairo-rs"
 | 
			
		||||
version = "0.7.1"
 | 
			
		||||
source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
			
		||||
checksum = "e05db47de3b0f09a222fa4bba2eab957d920d4243962a86b2d77ab401e4a359c"
 | 
			
		||||
dependencies = [
 | 
			
		||||
 "bitflags",
 | 
			
		||||
 "cairo-sys-rs",
 | 
			
		||||
 "glib",
 | 
			
		||||
 "glib-sys",
 | 
			
		||||
 "gobject-sys",
 | 
			
		||||
 "libc",
 | 
			
		||||
]
 | 
			
		||||
 | 
			
		||||
[[package]]
 | 
			
		||||
name = "cairo-sys-rs"
 | 
			
		||||
version = "0.9.2"
 | 
			
		||||
source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
			
		||||
checksum = "ff65ba02cac715be836f63429ab00a767d48336efc5497c5637afb53b4f14d63"
 | 
			
		||||
dependencies = [
 | 
			
		||||
 "glib-sys",
 | 
			
		||||
 "libc",
 | 
			
		||||
 "pkg-config",
 | 
			
		||||
]
 | 
			
		||||
 | 
			
		||||
[[package]]
 | 
			
		||||
name = "cc"
 | 
			
		||||
version = "1.0.73"
 | 
			
		||||
source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
			
		||||
checksum = "2fff2a6927b3bb87f9595d67196a70493f627687a71d87a0d692242c33f58c11"
 | 
			
		||||
 | 
			
		||||
[[package]]
 | 
			
		||||
name = "cfg-if"
 | 
			
		||||
version = "0.1.10"
 | 
			
		||||
source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
			
		||||
checksum = "4785bdd1c96b2a846b2bd7cc02e86b6b3dbf14e7e53446c4f54c92a361040822"
 | 
			
		||||
 | 
			
		||||
[[package]]
 | 
			
		||||
name = "cfg-if"
 | 
			
		||||
version = "1.0.0"
 | 
			
		||||
source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
			
		||||
checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
 | 
			
		||||
 | 
			
		||||
[[package]]
 | 
			
		||||
name = "clap"
 | 
			
		||||
version = "2.33.4"
 | 
			
		||||
source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
			
		||||
checksum = "826bf7bc84f9435630275cb8e802a4a0ec792b615969934bd16d42ffed10f207"
 | 
			
		||||
dependencies = [
 | 
			
		||||
 "bitflags",
 | 
			
		||||
 "textwrap",
 | 
			
		||||
 "unicode-width",
 | 
			
		||||
]
 | 
			
		||||
 | 
			
		||||
[[package]]
 | 
			
		||||
name = "derivative"
 | 
			
		||||
version = "2.2.0"
 | 
			
		||||
source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
			
		||||
checksum = "fcc3dd5e9e9c0b295d6e1e4d811fb6f157d5ffd784b8d202fc62eac8035a770b"
 | 
			
		||||
dependencies = [
 | 
			
		||||
 "proc-macro2",
 | 
			
		||||
 "quote",
 | 
			
		||||
 "syn",
 | 
			
		||||
]
 | 
			
		||||
 | 
			
		||||
[[package]]
 | 
			
		||||
name = "enumflags2"
 | 
			
		||||
version = "0.6.4"
 | 
			
		||||
source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
			
		||||
checksum = "83c8d82922337cd23a15f88b70d8e4ef5f11da38dd7cdb55e84dd5de99695da0"
 | 
			
		||||
dependencies = [
 | 
			
		||||
 "enumflags2_derive",
 | 
			
		||||
 "serde",
 | 
			
		||||
]
 | 
			
		||||
 | 
			
		||||
[[package]]
 | 
			
		||||
name = "enumflags2_derive"
 | 
			
		||||
version = "0.6.4"
 | 
			
		||||
source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
			
		||||
checksum = "946ee94e3dbf58fdd324f9ce245c7b238d46a66f00e86a020b71996349e46cce"
 | 
			
		||||
dependencies = [
 | 
			
		||||
 "proc-macro2",
 | 
			
		||||
 "quote",
 | 
			
		||||
 "syn",
 | 
			
		||||
]
 | 
			
		||||
 | 
			
		||||
[[package]]
 | 
			
		||||
name = "fastrand"
 | 
			
		||||
version = "1.7.0"
 | 
			
		||||
source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
			
		||||
checksum = "c3fcf0cee53519c866c09b5de1f6c56ff9d647101f81c1964fa632e148896cdf"
 | 
			
		||||
dependencies = [
 | 
			
		||||
 "instant",
 | 
			
		||||
]
 | 
			
		||||
 | 
			
		||||
[[package]]
 | 
			
		||||
name = "fragile"
 | 
			
		||||
version = "0.3.0"
 | 
			
		||||
source = "git+https://source.puri.sm/dorota.czaplejewicz/fragile.git?tag=0.3.0#51048ca11824279c2114c77fef5bcb950838fc09"
 | 
			
		||||
 | 
			
		||||
[[package]]
 | 
			
		||||
name = "gdk"
 | 
			
		||||
version = "0.11.0"
 | 
			
		||||
source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
			
		||||
checksum = "6243e995f41f3a61a31847e54cc719edce93dd9140c89dca3b9919be1cfe22d5"
 | 
			
		||||
dependencies = [
 | 
			
		||||
 "bitflags",
 | 
			
		||||
 "cairo-rs",
 | 
			
		||||
 "cairo-sys-rs",
 | 
			
		||||
 "gdk-pixbuf",
 | 
			
		||||
 "gdk-sys",
 | 
			
		||||
 "gio",
 | 
			
		||||
 "gio-sys",
 | 
			
		||||
 "glib",
 | 
			
		||||
 "glib-sys",
 | 
			
		||||
 "gobject-sys",
 | 
			
		||||
 "libc",
 | 
			
		||||
 "pango",
 | 
			
		||||
]
 | 
			
		||||
 | 
			
		||||
[[package]]
 | 
			
		||||
name = "gdk-pixbuf"
 | 
			
		||||
version = "0.7.0"
 | 
			
		||||
source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
			
		||||
checksum = "9726408ee1bbada83094326a99b9c68fea275f9dbb515de242a69e72051f4fcc"
 | 
			
		||||
dependencies = [
 | 
			
		||||
 "gdk-pixbuf-sys",
 | 
			
		||||
 "gio",
 | 
			
		||||
 "gio-sys",
 | 
			
		||||
 "glib",
 | 
			
		||||
 "glib-sys",
 | 
			
		||||
 "gobject-sys",
 | 
			
		||||
 "libc",
 | 
			
		||||
]
 | 
			
		||||
 | 
			
		||||
[[package]]
 | 
			
		||||
name = "gdk-pixbuf-sys"
 | 
			
		||||
version = "0.9.1"
 | 
			
		||||
source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
			
		||||
checksum = "d8991b060a9e9161bafd09bf4a202e6fd404f5b4dd1a08d53a1e84256fb34ab0"
 | 
			
		||||
dependencies = [
 | 
			
		||||
 "gio-sys",
 | 
			
		||||
 "glib-sys",
 | 
			
		||||
 "gobject-sys",
 | 
			
		||||
 "libc",
 | 
			
		||||
 "pkg-config",
 | 
			
		||||
]
 | 
			
		||||
 | 
			
		||||
[[package]]
 | 
			
		||||
name = "gdk-sys"
 | 
			
		||||
version = "0.9.1"
 | 
			
		||||
source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
			
		||||
checksum = "6adf679e91d1bff0c06860287f80403e7db54c2d2424dce0a470023b56c88fbb"
 | 
			
		||||
dependencies = [
 | 
			
		||||
 "cairo-sys-rs",
 | 
			
		||||
 "gdk-pixbuf-sys",
 | 
			
		||||
 "gio-sys",
 | 
			
		||||
 "glib-sys",
 | 
			
		||||
 "gobject-sys",
 | 
			
		||||
 "libc",
 | 
			
		||||
 "pango-sys",
 | 
			
		||||
 "pkg-config",
 | 
			
		||||
]
 | 
			
		||||
 | 
			
		||||
[[package]]
 | 
			
		||||
name = "gio"
 | 
			
		||||
version = "0.7.0"
 | 
			
		||||
source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
			
		||||
checksum = "6261b5d34c30c2d59f879e643704cf54cb44731f3a2038000b68790c03e360e3"
 | 
			
		||||
dependencies = [
 | 
			
		||||
 "bitflags",
 | 
			
		||||
 "fragile",
 | 
			
		||||
 "gio-sys",
 | 
			
		||||
 "glib",
 | 
			
		||||
 "glib-sys",
 | 
			
		||||
 "gobject-sys",
 | 
			
		||||
 "lazy_static",
 | 
			
		||||
 "libc",
 | 
			
		||||
]
 | 
			
		||||
 | 
			
		||||
[[package]]
 | 
			
		||||
name = "gio-sys"
 | 
			
		||||
version = "0.9.1"
 | 
			
		||||
source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
			
		||||
checksum = "4fad225242b9eae7ec8a063bb86974aca56885014672375e5775dc0ea3533911"
 | 
			
		||||
dependencies = [
 | 
			
		||||
 "glib-sys",
 | 
			
		||||
 "gobject-sys",
 | 
			
		||||
 "libc",
 | 
			
		||||
 "pkg-config",
 | 
			
		||||
]
 | 
			
		||||
 | 
			
		||||
[[package]]
 | 
			
		||||
name = "glib"
 | 
			
		||||
version = "0.8.2"
 | 
			
		||||
source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
			
		||||
checksum = "be27232841baa43e0fd5ae003f7941925735b2f733a336dc75f07b9eff415e7b"
 | 
			
		||||
dependencies = [
 | 
			
		||||
 "bitflags",
 | 
			
		||||
 "glib-sys",
 | 
			
		||||
 "gobject-sys",
 | 
			
		||||
 "lazy_static",
 | 
			
		||||
 "libc",
 | 
			
		||||
]
 | 
			
		||||
 | 
			
		||||
[[package]]
 | 
			
		||||
name = "glib-sys"
 | 
			
		||||
version = "0.9.1"
 | 
			
		||||
source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
			
		||||
checksum = "95856f3802f446c05feffa5e24859fe6a183a7cb849c8449afc35c86b1e316e2"
 | 
			
		||||
dependencies = [
 | 
			
		||||
 "libc",
 | 
			
		||||
 "pkg-config",
 | 
			
		||||
]
 | 
			
		||||
 | 
			
		||||
[[package]]
 | 
			
		||||
name = "gobject-sys"
 | 
			
		||||
version = "0.9.1"
 | 
			
		||||
source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
			
		||||
checksum = "31d1a804f62034eccf370006ccaef3708a71c31d561fee88564abe71177553d9"
 | 
			
		||||
dependencies = [
 | 
			
		||||
 "glib-sys",
 | 
			
		||||
 "libc",
 | 
			
		||||
 "pkg-config",
 | 
			
		||||
]
 | 
			
		||||
 | 
			
		||||
[[package]]
 | 
			
		||||
name = "gtk"
 | 
			
		||||
version = "0.7.0"
 | 
			
		||||
source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
			
		||||
checksum = "709f1074259d4685b96133f92b75c7f35b504715b0fcdc96ec95de2607296a60"
 | 
			
		||||
dependencies = [
 | 
			
		||||
 "atk",
 | 
			
		||||
 "bitflags",
 | 
			
		||||
 "cairo-rs",
 | 
			
		||||
 "cairo-sys-rs",
 | 
			
		||||
 "cc",
 | 
			
		||||
 "gdk",
 | 
			
		||||
 "gdk-pixbuf",
 | 
			
		||||
 "gdk-pixbuf-sys",
 | 
			
		||||
 "gdk-sys",
 | 
			
		||||
 "gio",
 | 
			
		||||
 "gio-sys",
 | 
			
		||||
 "glib",
 | 
			
		||||
 "glib-sys",
 | 
			
		||||
 "gobject-sys",
 | 
			
		||||
 "gtk-sys",
 | 
			
		||||
 "lazy_static",
 | 
			
		||||
 "libc",
 | 
			
		||||
 "pango",
 | 
			
		||||
 "pango-sys",
 | 
			
		||||
]
 | 
			
		||||
 | 
			
		||||
[[package]]
 | 
			
		||||
name = "gtk-sys"
 | 
			
		||||
version = "0.9.2"
 | 
			
		||||
source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
			
		||||
checksum = "53def660c7b48b00b510c81ef2d2fbd3c570f1527081d8d7947f471513e1a4c1"
 | 
			
		||||
dependencies = [
 | 
			
		||||
 "atk-sys",
 | 
			
		||||
 "cairo-sys-rs",
 | 
			
		||||
 "gdk-pixbuf-sys",
 | 
			
		||||
 "gdk-sys",
 | 
			
		||||
 "gio-sys",
 | 
			
		||||
 "glib-sys",
 | 
			
		||||
 "gobject-sys",
 | 
			
		||||
 "libc",
 | 
			
		||||
 "pango-sys",
 | 
			
		||||
 "pkg-config",
 | 
			
		||||
]
 | 
			
		||||
 | 
			
		||||
[[package]]
 | 
			
		||||
name = "hashbrown"
 | 
			
		||||
version = "0.11.2"
 | 
			
		||||
source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
			
		||||
checksum = "ab5ef0d4909ef3724cc8cce6ccc8572c5c817592e9285f5464f8e86f8bd3726e"
 | 
			
		||||
 | 
			
		||||
[[package]]
 | 
			
		||||
name = "indexmap"
 | 
			
		||||
version = "1.8.2"
 | 
			
		||||
source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
			
		||||
checksum = "e6012d540c5baa3589337a98ce73408de9b5a25ec9fc2c6fd6be8f0d39e0ca5a"
 | 
			
		||||
dependencies = [
 | 
			
		||||
 "autocfg",
 | 
			
		||||
 "hashbrown",
 | 
			
		||||
]
 | 
			
		||||
 | 
			
		||||
[[package]]
 | 
			
		||||
name = "instant"
 | 
			
		||||
version = "0.1.12"
 | 
			
		||||
source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
			
		||||
checksum = "7a5bbe824c507c5da5956355e86a746d82e0e1464f65d862cc5e71da70e94b2c"
 | 
			
		||||
dependencies = [
 | 
			
		||||
 "cfg-if 1.0.0",
 | 
			
		||||
]
 | 
			
		||||
 | 
			
		||||
[[package]]
 | 
			
		||||
name = "lazy_static"
 | 
			
		||||
version = "1.4.0"
 | 
			
		||||
source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
			
		||||
checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
 | 
			
		||||
 | 
			
		||||
[[package]]
 | 
			
		||||
name = "libc"
 | 
			
		||||
version = "0.2.126"
 | 
			
		||||
source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
			
		||||
checksum = "349d5a591cd28b49e1d1037471617a32ddcda5731b99419008085f72d5a53836"
 | 
			
		||||
 | 
			
		||||
[[package]]
 | 
			
		||||
name = "linked-hash-map"
 | 
			
		||||
version = "0.5.6"
 | 
			
		||||
source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
			
		||||
checksum = "0717cef1bc8b636c6e1c1bbdefc09e6322da8a9321966e8928ef80d20f7f770f"
 | 
			
		||||
 | 
			
		||||
[[package]]
 | 
			
		||||
name = "maplit"
 | 
			
		||||
version = "1.0.2"
 | 
			
		||||
source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
			
		||||
checksum = "3e2e65a1a2e43cfcb47a895c4c8b10d1f4a61097f9f254f183aee60cad9c651d"
 | 
			
		||||
 | 
			
		||||
[[package]]
 | 
			
		||||
name = "memmap"
 | 
			
		||||
version = "0.7.0"
 | 
			
		||||
source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
			
		||||
checksum = "6585fd95e7bb50d6cc31e20d4cf9afb4e2ba16c5846fc76793f11218da9c475b"
 | 
			
		||||
dependencies = [
 | 
			
		||||
 "libc",
 | 
			
		||||
 "winapi",
 | 
			
		||||
]
 | 
			
		||||
 | 
			
		||||
[[package]]
 | 
			
		||||
name = "nix"
 | 
			
		||||
version = "0.17.0"
 | 
			
		||||
source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
			
		||||
checksum = "50e4785f2c3b7589a0d0c1dd60285e1188adac4006e8abd6dd578e1567027363"
 | 
			
		||||
dependencies = [
 | 
			
		||||
 "bitflags",
 | 
			
		||||
 "cc",
 | 
			
		||||
 "cfg-if 0.1.10",
 | 
			
		||||
 "libc",
 | 
			
		||||
 "void",
 | 
			
		||||
]
 | 
			
		||||
 | 
			
		||||
[[package]]
 | 
			
		||||
name = "pango"
 | 
			
		||||
version = "0.7.0"
 | 
			
		||||
source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
			
		||||
checksum = "393fa071b144f8ffb83ede273758983cf414ca3c0b1d2a5a9ce325b3ba3dd786"
 | 
			
		||||
dependencies = [
 | 
			
		||||
 "bitflags",
 | 
			
		||||
 "glib",
 | 
			
		||||
 "glib-sys",
 | 
			
		||||
 "gobject-sys",
 | 
			
		||||
 "lazy_static",
 | 
			
		||||
 "libc",
 | 
			
		||||
 "pango-sys",
 | 
			
		||||
]
 | 
			
		||||
 | 
			
		||||
[[package]]
 | 
			
		||||
name = "pango-sys"
 | 
			
		||||
version = "0.9.1"
 | 
			
		||||
source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
			
		||||
checksum = "86b93d84907b3cf0819bff8f13598ba72843bee579d5ebc2502e4b0367b4be7d"
 | 
			
		||||
dependencies = [
 | 
			
		||||
 "glib-sys",
 | 
			
		||||
 "gobject-sys",
 | 
			
		||||
 "libc",
 | 
			
		||||
 "pkg-config",
 | 
			
		||||
]
 | 
			
		||||
 | 
			
		||||
[[package]]
 | 
			
		||||
name = "pkg-config"
 | 
			
		||||
version = "0.3.25"
 | 
			
		||||
source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
			
		||||
checksum = "1df8c4ec4b0627e53bdf214615ad287367e482558cf84b109250b37464dc03ae"
 | 
			
		||||
 | 
			
		||||
[[package]]
 | 
			
		||||
name = "proc-macro-crate"
 | 
			
		||||
version = "0.1.5"
 | 
			
		||||
source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
			
		||||
checksum = "1d6ea3c4595b96363c13943497db34af4460fb474a95c43f4446ad341b8c9785"
 | 
			
		||||
dependencies = [
 | 
			
		||||
 "toml",
 | 
			
		||||
]
 | 
			
		||||
 | 
			
		||||
[[package]]
 | 
			
		||||
name = "proc-macro2"
 | 
			
		||||
version = "1.0.40"
 | 
			
		||||
source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
			
		||||
checksum = "dd96a1e8ed2596c337f8eae5f24924ec83f5ad5ab21ea8e455d3566c69fbcaf7"
 | 
			
		||||
dependencies = [
 | 
			
		||||
 "unicode-ident",
 | 
			
		||||
]
 | 
			
		||||
 | 
			
		||||
[[package]]
 | 
			
		||||
name = "quote"
 | 
			
		||||
version = "1.0.20"
 | 
			
		||||
source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
			
		||||
checksum = "3bcdf212e9776fbcb2d23ab029360416bb1706b1aea2d1a5ba002727cbcab804"
 | 
			
		||||
dependencies = [
 | 
			
		||||
 "proc-macro2",
 | 
			
		||||
]
 | 
			
		||||
 | 
			
		||||
[[package]]
 | 
			
		||||
name = "rs"
 | 
			
		||||
version = "0.1.0"
 | 
			
		||||
dependencies = [
 | 
			
		||||
 "bitflags",
 | 
			
		||||
 "cairo-rs",
 | 
			
		||||
 "cairo-sys-rs",
 | 
			
		||||
 "clap",
 | 
			
		||||
 "gdk",
 | 
			
		||||
 "gio",
 | 
			
		||||
 "glib",
 | 
			
		||||
 "glib-sys",
 | 
			
		||||
 "gtk",
 | 
			
		||||
 "gtk-sys",
 | 
			
		||||
 "indexmap",
 | 
			
		||||
 "maplit",
 | 
			
		||||
 "serde",
 | 
			
		||||
 "serde_yaml",
 | 
			
		||||
 "xkbcommon",
 | 
			
		||||
 "zbus",
 | 
			
		||||
 "zvariant",
 | 
			
		||||
 "zvariant_derive",
 | 
			
		||||
]
 | 
			
		||||
 | 
			
		||||
[[package]]
 | 
			
		||||
name = "ryu"
 | 
			
		||||
version = "1.0.10"
 | 
			
		||||
source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
			
		||||
checksum = "f3f6f92acf49d1b98f7a81226834412ada05458b7364277387724a237f062695"
 | 
			
		||||
 | 
			
		||||
[[package]]
 | 
			
		||||
name = "scoped-tls"
 | 
			
		||||
version = "1.0.0"
 | 
			
		||||
source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
			
		||||
checksum = "ea6a9290e3c9cf0f18145ef7ffa62d68ee0bf5fcd651017e586dc7fd5da448c2"
 | 
			
		||||
 | 
			
		||||
[[package]]
 | 
			
		||||
name = "serde"
 | 
			
		||||
version = "1.0.137"
 | 
			
		||||
source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
			
		||||
checksum = "61ea8d54c77f8315140a05f4c7237403bf38b72704d031543aa1d16abbf517d1"
 | 
			
		||||
dependencies = [
 | 
			
		||||
 "serde_derive",
 | 
			
		||||
]
 | 
			
		||||
 | 
			
		||||
[[package]]
 | 
			
		||||
name = "serde_derive"
 | 
			
		||||
version = "1.0.137"
 | 
			
		||||
source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
			
		||||
checksum = "1f26faba0c3959972377d3b2d306ee9f71faee9714294e41bb777f83f88578be"
 | 
			
		||||
dependencies = [
 | 
			
		||||
 "proc-macro2",
 | 
			
		||||
 "quote",
 | 
			
		||||
 "syn",
 | 
			
		||||
]
 | 
			
		||||
 | 
			
		||||
[[package]]
 | 
			
		||||
name = "serde_repr"
 | 
			
		||||
version = "0.1.8"
 | 
			
		||||
source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
			
		||||
checksum = "a2ad84e47328a31223de7fed7a4f5087f2d6ddfe586cf3ca25b7a165bc0a5aed"
 | 
			
		||||
dependencies = [
 | 
			
		||||
 "proc-macro2",
 | 
			
		||||
 "quote",
 | 
			
		||||
 "syn",
 | 
			
		||||
]
 | 
			
		||||
 | 
			
		||||
[[package]]
 | 
			
		||||
name = "serde_yaml"
 | 
			
		||||
version = "0.8.24"
 | 
			
		||||
source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
			
		||||
checksum = "707d15895415db6628332b737c838b88c598522e4dc70647e59b72312924aebc"
 | 
			
		||||
dependencies = [
 | 
			
		||||
 "indexmap",
 | 
			
		||||
 "ryu",
 | 
			
		||||
 "serde",
 | 
			
		||||
 "yaml-rust",
 | 
			
		||||
]
 | 
			
		||||
 | 
			
		||||
[[package]]
 | 
			
		||||
name = "syn"
 | 
			
		||||
version = "1.0.98"
 | 
			
		||||
source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
			
		||||
checksum = "c50aef8a904de4c23c788f104b7dddc7d6f79c647c7c8ce4cc8f73eb0ca773dd"
 | 
			
		||||
dependencies = [
 | 
			
		||||
 "proc-macro2",
 | 
			
		||||
 "quote",
 | 
			
		||||
 "unicode-ident",
 | 
			
		||||
]
 | 
			
		||||
 | 
			
		||||
[[package]]
 | 
			
		||||
name = "textwrap"
 | 
			
		||||
version = "0.11.0"
 | 
			
		||||
source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
			
		||||
checksum = "d326610f408c7a4eb6f51c37c330e496b08506c9457c9d34287ecc38809fb060"
 | 
			
		||||
dependencies = [
 | 
			
		||||
 "unicode-width",
 | 
			
		||||
]
 | 
			
		||||
 | 
			
		||||
[[package]]
 | 
			
		||||
name = "toml"
 | 
			
		||||
version = "0.5.9"
 | 
			
		||||
source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
			
		||||
checksum = "8d82e1a7758622a465f8cee077614c73484dac5b836c02ff6a40d5d1010324d7"
 | 
			
		||||
dependencies = [
 | 
			
		||||
 "serde",
 | 
			
		||||
]
 | 
			
		||||
 | 
			
		||||
[[package]]
 | 
			
		||||
name = "unicode-ident"
 | 
			
		||||
version = "1.0.1"
 | 
			
		||||
source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
			
		||||
checksum = "5bd2fe26506023ed7b5e1e315add59d6f584c621d037f9368fea9cfb988f368c"
 | 
			
		||||
 | 
			
		||||
[[package]]
 | 
			
		||||
name = "unicode-width"
 | 
			
		||||
version = "0.1.9"
 | 
			
		||||
source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
			
		||||
checksum = "3ed742d4ea2bd1176e236172c8429aaf54486e7ac098db29ffe6529e0ce50973"
 | 
			
		||||
 | 
			
		||||
[[package]]
 | 
			
		||||
name = "void"
 | 
			
		||||
version = "1.0.2"
 | 
			
		||||
source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
			
		||||
checksum = "6a02e4885ed3bc0f2de90ea6dd45ebcbb66dacffe03547fadbb0eeae2770887d"
 | 
			
		||||
 | 
			
		||||
[[package]]
 | 
			
		||||
name = "winapi"
 | 
			
		||||
version = "0.3.9"
 | 
			
		||||
source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
			
		||||
checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419"
 | 
			
		||||
dependencies = [
 | 
			
		||||
 "winapi-i686-pc-windows-gnu",
 | 
			
		||||
 "winapi-x86_64-pc-windows-gnu",
 | 
			
		||||
]
 | 
			
		||||
 | 
			
		||||
[[package]]
 | 
			
		||||
name = "winapi-i686-pc-windows-gnu"
 | 
			
		||||
version = "0.4.0"
 | 
			
		||||
source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
			
		||||
checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
 | 
			
		||||
 | 
			
		||||
[[package]]
 | 
			
		||||
name = "winapi-x86_64-pc-windows-gnu"
 | 
			
		||||
version = "0.4.0"
 | 
			
		||||
source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
			
		||||
checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
 | 
			
		||||
 | 
			
		||||
[[package]]
 | 
			
		||||
name = "xkbcommon"
 | 
			
		||||
version = "0.4.0"
 | 
			
		||||
source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
			
		||||
checksum = "fda0ea5f7ddabd51deeeda7799bee06274112f577da7dd3d954b8eda731b2fce"
 | 
			
		||||
dependencies = [
 | 
			
		||||
 "libc",
 | 
			
		||||
 "memmap",
 | 
			
		||||
]
 | 
			
		||||
 | 
			
		||||
[[package]]
 | 
			
		||||
name = "yaml-rust"
 | 
			
		||||
version = "0.4.5"
 | 
			
		||||
source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
			
		||||
checksum = "56c1936c4cc7a1c9ab21a1ebb602eb942ba868cbd44a99cb7cdc5892335e1c85"
 | 
			
		||||
dependencies = [
 | 
			
		||||
 "linked-hash-map",
 | 
			
		||||
]
 | 
			
		||||
 | 
			
		||||
[[package]]
 | 
			
		||||
name = "zbus"
 | 
			
		||||
version = "1.0.0"
 | 
			
		||||
source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
			
		||||
checksum = "1cb97c72cbfd5c7537ca730eeb810da7348f345ba67ab7673bcbe0d81c076427"
 | 
			
		||||
dependencies = [
 | 
			
		||||
 "byteorder",
 | 
			
		||||
 "derivative",
 | 
			
		||||
 "enumflags2",
 | 
			
		||||
 "fastrand",
 | 
			
		||||
 "nix",
 | 
			
		||||
 "scoped-tls",
 | 
			
		||||
 "serde",
 | 
			
		||||
 "serde_repr",
 | 
			
		||||
 "zbus_macros",
 | 
			
		||||
 "zvariant",
 | 
			
		||||
 "zvariant_derive",
 | 
			
		||||
]
 | 
			
		||||
 | 
			
		||||
[[package]]
 | 
			
		||||
name = "zbus_macros"
 | 
			
		||||
version = "1.0.0"
 | 
			
		||||
source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
			
		||||
checksum = "c0c1f2a20a4cb90922b44d3bebd232b246e52b3dd95ed5bea8aec83cde3a5a8a"
 | 
			
		||||
dependencies = [
 | 
			
		||||
 "proc-macro-crate",
 | 
			
		||||
 "proc-macro2",
 | 
			
		||||
 "quote",
 | 
			
		||||
 "syn",
 | 
			
		||||
]
 | 
			
		||||
 | 
			
		||||
[[package]]
 | 
			
		||||
name = "zvariant"
 | 
			
		||||
version = "2.0.1"
 | 
			
		||||
source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
			
		||||
checksum = "f0bf85e67d1a3780cb1c56c80227532354f21907cba14805a773eb507b444580"
 | 
			
		||||
dependencies = [
 | 
			
		||||
 "byteorder",
 | 
			
		||||
 "enumflags2",
 | 
			
		||||
 "serde",
 | 
			
		||||
]
 | 
			
		||||
 | 
			
		||||
[[package]]
 | 
			
		||||
name = "zvariant_derive"
 | 
			
		||||
version = "2.0.0"
 | 
			
		||||
source = "registry+https://github.com/rust-lang/crates.io-index"
 | 
			
		||||
checksum = "d68726e8c12757384a8d1485080527e263dea67d91f19e97cd71b9292f22d7c5"
 | 
			
		||||
dependencies = [
 | 
			
		||||
 "proc-macro2",
 | 
			
		||||
 "quote",
 | 
			
		||||
 "syn",
 | 
			
		||||
]
 | 
			
		||||
							
								
								
									
										1142
									
								
								Cargo.lock.newer
									
									
									
									
									
								
							
							
						
						@ -1,28 +0,0 @@
 | 
			
		||||
[package]
 | 
			
		||||
name = "rs"
 | 
			
		||||
version = "0.1.0"
 | 
			
		||||
 | 
			
		||||
[lib]
 | 
			
		||||
name = "rs"
 | 
			
		||||
path = "@path@/src/lib.rs"
 | 
			
		||||
crate-type = ["staticlib", "rlib"]
 | 
			
		||||
 | 
			
		||||
# Cargo can't do autodiscovery if Cargo.toml is not in the root.
 | 
			
		||||
[[bin]]
 | 
			
		||||
name = "test_layout"
 | 
			
		||||
path = "@path@/src/bin/test_layout.rs"
 | 
			
		||||
 | 
			
		||||
[[example]]
 | 
			
		||||
name = "test_layout"
 | 
			
		||||
path = "@path@/examples/test_layout.rs"
 | 
			
		||||
 | 
			
		||||
[features]
 | 
			
		||||
glib_v0_14 = []
 | 
			
		||||
 | 
			
		||||
# Dependencies which don't change based on build flags
 | 
			
		||||
[dependencies]
 | 
			
		||||
maplit = "1.0.*"
 | 
			
		||||
serde = { version = "1.0.*", features = ["derive"] }
 | 
			
		||||
serde_yaml = "0.8.*"
 | 
			
		||||
xkbcommon = { version = "0.4.*", features = ["wayland"] }
 | 
			
		||||
# Here is inserted the Cargo.deps file
 | 
			
		||||
							
								
								
									
										21
									
								
								Makefile.am
									
									
									
									
									
										Normal file
									
								
							
							
						
						@ -0,0 +1,21 @@
 | 
			
		||||
# Copyright (C) 2010-2011 Daiki Ueno <ueno@unixuser.org>
 | 
			
		||||
# Copyright (C) 2010-2011 Red Hat, Inc.
 | 
			
		||||
 | 
			
		||||
# This library is free software; you can redistribute it and/or
 | 
			
		||||
# modify it under the terms of the GNU Lesser General Public License
 | 
			
		||||
# as published by the Free Software Foundation; either version 2 of
 | 
			
		||||
# the License, or (at your option) any later version.
 | 
			
		||||
 | 
			
		||||
# This library is distributed in the hope that it will be useful, but
 | 
			
		||||
# WITHOUT ANY WARRANTY; without even the implied warranty of
 | 
			
		||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 | 
			
		||||
# Lesser General Public License for more details.
 | 
			
		||||
 | 
			
		||||
# You should have received a copy of the GNU Lesser General Public
 | 
			
		||||
# License along with this library; if not, write to the Free Software
 | 
			
		||||
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
 | 
			
		||||
# 02110-1301 USA
 | 
			
		||||
 | 
			
		||||
ACLOCAL_AMFLAGS = -I m4
 | 
			
		||||
SUBDIRS = eek eekboard src tests bindings docs po data examples
 | 
			
		||||
DISTCHECK_CONFIGURE_FLAGS = --enable-gtk-doc --enable-introspection
 | 
			
		||||
							
								
								
									
										65
									
								
								README
									
									
									
									
									
										Normal file
									
								
							
							
						
						@ -0,0 +1,65 @@
 | 
			
		||||
eekboard - an easy to use virtual keyboard toolkit -*- outline -*-
 | 
			
		||||
 | 
			
		||||
eekboard is a virtual keyboard software package, including a set of
 | 
			
		||||
tools to implement desktop virtual keyboards.
 | 
			
		||||
 | 
			
		||||
* How to build
 | 
			
		||||
 | 
			
		||||
** Dependencies
 | 
			
		||||
 | 
			
		||||
REQUIRED: GLib2, GTK, GConf2, PangoCairo, libxklavier, libcroco
 | 
			
		||||
OPTIONAL: fakekey, CSPI, Clutter, Clutter-Gtk, Vala, gobject-introspection
 | 
			
		||||
 | 
			
		||||
** Build from git repo
 | 
			
		||||
 | 
			
		||||
  $ git clone git://github.com/ueno/eekboard.git
 | 
			
		||||
  $ cd eekboard
 | 
			
		||||
  $ ./autogen.sh --prefix=/usr --enable-gtk-doc
 | 
			
		||||
  $ make
 | 
			
		||||
  $ sudo make install
 | 
			
		||||
 | 
			
		||||
** Build from tarball
 | 
			
		||||
 | 
			
		||||
  $ ./configure --prefix=/usr
 | 
			
		||||
  $ make
 | 
			
		||||
  $ sudo make install
 | 
			
		||||
 | 
			
		||||
* How to test
 | 
			
		||||
 | 
			
		||||
eekboard currently includes 3 tools to implement your own virtual
 | 
			
		||||
keyboard.
 | 
			
		||||
 | 
			
		||||
** eekboard-server
 | 
			
		||||
 | 
			
		||||
eekboard-server is a D-Bus server which is responsible for drawing
 | 
			
		||||
interactive on-screen keyboards.  Since it has a D-Bus service
 | 
			
		||||
activation entry, you will not need to start it manually, but you can
 | 
			
		||||
do that with:
 | 
			
		||||
 | 
			
		||||
  $ eekboard-server &
 | 
			
		||||
 | 
			
		||||
** eekboard
 | 
			
		||||
 | 
			
		||||
eekboard is a client of eekboard-server.  It listens desktop events
 | 
			
		||||
(keyboard change, focus in/out, and keystroke) and generates key
 | 
			
		||||
events when some keys are pressed on the on-screen keyboard.  It can
 | 
			
		||||
be started with:
 | 
			
		||||
 | 
			
		||||
  $ eekboard
 | 
			
		||||
 | 
			
		||||
** eekboard-xml
 | 
			
		||||
 | 
			
		||||
eekboard-xml is a tool to manipulate XML keyboard description used by
 | 
			
		||||
eekboard-client tool and in the eekboard library.
 | 
			
		||||
 | 
			
		||||
To dump the current system keyboard layout into an XML file:
 | 
			
		||||
 | 
			
		||||
  $ eekboard-xml --dump > keyboard.xml
 | 
			
		||||
 | 
			
		||||
You can display the dumped layout with:
 | 
			
		||||
 | 
			
		||||
  $ eekboard-xml --load keyboard.xml
 | 
			
		||||
 | 
			
		||||
* Documentation
 | 
			
		||||
 | 
			
		||||
See file:docs/reference/eek/html/index.html
 | 
			
		||||
							
								
								
									
										89
									
								
								README.md
									
									
									
									
									
								
							
							
						
						@ -1,89 +0,0 @@
 | 
			
		||||
*squeekboard* - a Wayland on-screen keyboard
 | 
			
		||||
========================================
 | 
			
		||||
 | 
			
		||||
*Squeekboard* is a keyboard-shaped input method supporting Wayland, built primarily for the *Librem 5* phone.
 | 
			
		||||
 | 
			
		||||
It squeaks because some Rust got inside.
 | 
			
		||||
 | 
			
		||||
Features
 | 
			
		||||
--------
 | 
			
		||||
 | 
			
		||||
### Present
 | 
			
		||||
 | 
			
		||||
- GTK3
 | 
			
		||||
- Custom keyboard layouts defined in yaml
 | 
			
		||||
- Input purpose dependent keyboard layouts
 | 
			
		||||
- DBus interface to show and hide
 | 
			
		||||
- Use Wayland input method protocol to submit text
 | 
			
		||||
- Use Wayland virtual keyboard protocol
 | 
			
		||||
 | 
			
		||||
### TODO
 | 
			
		||||
 | 
			
		||||
- Text prediction/correction
 | 
			
		||||
- Use preedit
 | 
			
		||||
- Submit actions like "next field" using a future Wayland protocol
 | 
			
		||||
- Pick up DBus interface files from /usr/share
 | 
			
		||||
 | 
			
		||||
Creating layouts
 | 
			
		||||
-------------------
 | 
			
		||||
 | 
			
		||||
If you want to work on layouts, check out the [guide](doc/tutorial.md).
 | 
			
		||||
 | 
			
		||||
Building
 | 
			
		||||
--------
 | 
			
		||||
 | 
			
		||||
### Dependencies
 | 
			
		||||
 | 
			
		||||
See `.gitlab-ci.yml` or run `apt-get build-dep .`
 | 
			
		||||
 | 
			
		||||
### Build from git repo
 | 
			
		||||
 | 
			
		||||
```bash
 | 
			
		||||
$ git clone https://gitlab.gnome.org/World/Phosh/squeekboard.git
 | 
			
		||||
$ cd squeekboard
 | 
			
		||||
$ mkdir _build
 | 
			
		||||
$ meson _build/
 | 
			
		||||
$ cd _build
 | 
			
		||||
$ ninja
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
To run tests use `ninja test`. To install squeekboard run `ninja install`.
 | 
			
		||||
 | 
			
		||||
Running
 | 
			
		||||
-------
 | 
			
		||||
 | 
			
		||||
```bash
 | 
			
		||||
$ phoc # if no compatible Wayland compositor is running yet
 | 
			
		||||
$ cd ../build/
 | 
			
		||||
$ 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 honors the gnome "screen-keyboard-enabled" setting. Either enable this through gnome-settings under accessibility or run:
 | 
			
		||||
 | 
			
		||||
```bash
 | 
			
		||||
$ gsettings set org.gnome.desktop.a11y.applications screen-keyboard-enabled true
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
Alternatively, force panel visibility manually with:
 | 
			
		||||
 | 
			
		||||
```bash
 | 
			
		||||
busctl call --user sm.puri.OSK0 /sm/puri/OSK0 sm.puri.OSK0 SetVisible b true
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
### What the compositor has to support
 | 
			
		||||
 | 
			
		||||
A compatible compositor has to support the protocols:
 | 
			
		||||
 | 
			
		||||
- layer-shell
 | 
			
		||||
- virtual-keyboard-v1
 | 
			
		||||
 | 
			
		||||
It's strongly recommended to support:
 | 
			
		||||
 | 
			
		||||
- input-method-v2
 | 
			
		||||
 | 
			
		||||
Developing
 | 
			
		||||
----------
 | 
			
		||||
 | 
			
		||||
See [`doc/hacking.md`](doc/hacking.md) for this copy, or the [official documentation](https://world.pages.gitlab.gnome.org/Phosh/squeekboard) for the current release.
 | 
			
		||||
							
								
								
									
										25
									
								
								autogen.sh
									
									
									
									
									
										Executable file
									
								
							
							
						
						@ -0,0 +1,25 @@
 | 
			
		||||
#!/bin/sh
 | 
			
		||||
# Run this to generate all the initial makefiles, etc.
 | 
			
		||||
 | 
			
		||||
srcdir=`dirname $0`
 | 
			
		||||
test -z "$srcdir" && srcdir=.
 | 
			
		||||
 | 
			
		||||
PKG_NAME="eekboard"
 | 
			
		||||
 | 
			
		||||
(test -f $srcdir/configure.ac \
 | 
			
		||||
  && test -f $srcdir/README ) || {
 | 
			
		||||
    echo -n "**Error**: Directory "\`$srcdir\'" does not look like the"
 | 
			
		||||
    echo " top-level $PKG_NAME directory"
 | 
			
		||||
    exit 1
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
which gnome-autogen.sh || {
 | 
			
		||||
    echo "You need to install gnome-common from the GNOME CVS"
 | 
			
		||||
    exit 1
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
ACLOCAL_FLAGS="$ACLOCAL_FLAGS -I m4"
 | 
			
		||||
REQUIRED_AUTOMAKE_VERSION=1.10
 | 
			
		||||
REQUIRED_AUTOCONF_VERSION=2.60
 | 
			
		||||
 | 
			
		||||
. gnome-autogen.sh
 | 
			
		||||
							
								
								
									
										27
									
								
								bindings/Makefile.am
									
									
									
									
									
										Normal file
									
								
							
							
						
						@ -0,0 +1,27 @@
 | 
			
		||||
# Copyright (C) 2010-2011 Daiki Ueno <ueno@unixuser.org>
 | 
			
		||||
# Copyright (C) 2010-2011 Red Hat, Inc.
 | 
			
		||||
 | 
			
		||||
# This library is free software; you can redistribute it and/or
 | 
			
		||||
# modify it under the terms of the GNU Lesser General Public License
 | 
			
		||||
# as published by the Free Software Foundation; either version 2 of
 | 
			
		||||
# the License, or (at your option) any later version.
 | 
			
		||||
 | 
			
		||||
# This library is distributed in the hope that it will be useful, but
 | 
			
		||||
# WITHOUT ANY WARRANTY; without even the implied warranty of
 | 
			
		||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 | 
			
		||||
# Lesser General Public License for more details.
 | 
			
		||||
 | 
			
		||||
# You should have received a copy of the GNU Lesser General Public
 | 
			
		||||
# License along with this library; if not, write to the Free Software
 | 
			
		||||
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
 | 
			
		||||
# 02110-1301 USA
 | 
			
		||||
 | 
			
		||||
SUBDIRS =
 | 
			
		||||
 | 
			
		||||
if ENABLE_PYTHON
 | 
			
		||||
SUBDIRS += python
 | 
			
		||||
endif
 | 
			
		||||
 | 
			
		||||
if ENABLE_VALA
 | 
			
		||||
SUBDIRS += vala
 | 
			
		||||
endif
 | 
			
		||||
							
								
								
									
										18
									
								
								bindings/python/Makefile.am
									
									
									
									
									
										Normal file
									
								
							
							
						
						@ -0,0 +1,18 @@
 | 
			
		||||
# Copyright (C) 2011 Daiki Ueno <ueno@unixuser.org>
 | 
			
		||||
# Copyright (C) 2011 Red Hat, Inc.
 | 
			
		||||
 | 
			
		||||
# This program is free software: you can redistribute it and/or modify
 | 
			
		||||
# it under the terms of the GNU General Public License as published by
 | 
			
		||||
# the Free Software Foundation, either version 3 of the License, or
 | 
			
		||||
# (at your option) any later version.
 | 
			
		||||
 | 
			
		||||
# This program is distributed in the hope that it will be useful, but
 | 
			
		||||
# WITHOUT ANY WARRANTY; without even the implied warranty of
 | 
			
		||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 | 
			
		||||
# General Public License for more details.
 | 
			
		||||
 | 
			
		||||
# You should have received a copy of the GNU General Public License
 | 
			
		||||
# along with this program.  If not, see
 | 
			
		||||
# <http://www.gnu.org/licenses/>.
 | 
			
		||||
 | 
			
		||||
SUBDIRS = eekboard
 | 
			
		||||
							
								
								
									
										21
									
								
								bindings/python/eekboard/Makefile.am
									
									
									
									
									
										Normal file
									
								
							
							
						
						@ -0,0 +1,21 @@
 | 
			
		||||
# Copyright (C) 2011 Daiki Ueno <ueno@unixuser.org>
 | 
			
		||||
# Copyright (C) 2011 Red Hat, Inc.
 | 
			
		||||
 | 
			
		||||
# This program is free software: you can redistribute it and/or modify
 | 
			
		||||
# it under the terms of the GNU General Public License as published by
 | 
			
		||||
# the Free Software Foundation, either version 3 of the License, or
 | 
			
		||||
# (at your option) any later version.
 | 
			
		||||
 | 
			
		||||
# This program is distributed in the hope that it will be useful, but
 | 
			
		||||
# WITHOUT ANY WARRANTY; without even the implied warranty of
 | 
			
		||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 | 
			
		||||
# General Public License for more details.
 | 
			
		||||
 | 
			
		||||
# You should have received a copy of the GNU General Public License
 | 
			
		||||
# along with this program.  If not, see
 | 
			
		||||
# <http://www.gnu.org/licenses/>.
 | 
			
		||||
 | 
			
		||||
pkgpython_PYTHON = \
 | 
			
		||||
	__init__.py \
 | 
			
		||||
	eekboard.py \
 | 
			
		||||
	context.py
 | 
			
		||||
							
								
								
									
										67
									
								
								bindings/python/eekboard/__init__.py
									
									
									
									
									
										Normal file
									
								
							
							
						
						@ -0,0 +1,67 @@
 | 
			
		||||
# Copyright (C) 2011 Daiki Ueno <ueno@unixuser.org>
 | 
			
		||||
# Copyright (C) 2011 Red Hat, Inc.
 | 
			
		||||
 | 
			
		||||
# This program is free software: you can redistribute it and/or modify
 | 
			
		||||
# it under the terms of the GNU General Public License as published by
 | 
			
		||||
# the Free Software Foundation, either version 3 of the License, or
 | 
			
		||||
# (at your option) any later version.
 | 
			
		||||
 | 
			
		||||
# This program is distributed in the hope that it will be useful, but
 | 
			
		||||
# WITHOUT ANY WARRANTY; without even the implied warranty of
 | 
			
		||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 | 
			
		||||
# General Public License for more details.
 | 
			
		||||
 | 
			
		||||
# You should have received a copy of the GNU General Public License
 | 
			
		||||
# along with this program.  If not, see
 | 
			
		||||
# <http://www.gnu.org/licenses/>.
 | 
			
		||||
 | 
			
		||||
from gi.repository import Eek, EekXkl, Gio
 | 
			
		||||
 | 
			
		||||
from eekboard import Eekboard
 | 
			
		||||
from context import Context
 | 
			
		||||
 | 
			
		||||
Keyboard = Eek.Keyboard
 | 
			
		||||
Section = Eek.Section
 | 
			
		||||
Key = Eek.Key
 | 
			
		||||
Symbol = Eek.Symbol
 | 
			
		||||
Keysym = Eek.Keysym
 | 
			
		||||
SymbolMatrix = Eek.SymbolMatrix
 | 
			
		||||
 | 
			
		||||
MODIFIER_BEHAVIOR_NONE, \
 | 
			
		||||
MODIFIER_BEHAVIOR_LOCK, \
 | 
			
		||||
MODIFIER_BEHAVIOR_LATCH = \
 | 
			
		||||
(Eek.ModifierBehavior.NONE,
 | 
			
		||||
 Eek.ModifierBehavior.LOCK,
 | 
			
		||||
 Eek.ModifierBehavior.LATCH)
 | 
			
		||||
 | 
			
		||||
SymbolCategory = Eek.SymbolCategory
 | 
			
		||||
 | 
			
		||||
CSW = 640
 | 
			
		||||
CSH = 480
 | 
			
		||||
 | 
			
		||||
def XmlKeyboard(path, modifier_behavior=MODIFIER_BEHAVIOR_NONE):
 | 
			
		||||
    _file = Gio.file_new_for_path(path)
 | 
			
		||||
    layout = Eek.XmlLayout.new(_file.read())
 | 
			
		||||
    keyboard = Eek.Keyboard.new(layout, CSW, CSH)
 | 
			
		||||
    keyboard.set_modifier_behavior(modifier_behavior)
 | 
			
		||||
    keyboard.set_alt_gr_mask(Eek.ModifierType.MOD5_MASK)
 | 
			
		||||
    return keyboard
 | 
			
		||||
 | 
			
		||||
def XklKeyboard(modifier_behavior=MODIFIER_BEHAVIOR_NONE):
 | 
			
		||||
    layout = EekXkl.Layout.new()
 | 
			
		||||
    keyboard = Eek.Keyboard.new(layout, CSW, CSH)
 | 
			
		||||
    keyboard.set_modifier_behavior(modifier_behavior)
 | 
			
		||||
    return keyboard
 | 
			
		||||
 | 
			
		||||
__all__ = ['Eekboard',
 | 
			
		||||
           'Context',
 | 
			
		||||
           'Keyboard',
 | 
			
		||||
           'Section',
 | 
			
		||||
           'Key',
 | 
			
		||||
           'Symbol',
 | 
			
		||||
           'Keysym',
 | 
			
		||||
           'MODIFIER_BEHAVIOR_NONE',
 | 
			
		||||
           'MODIFIER_BEHAVIOR_LOCK',
 | 
			
		||||
           'MODIFIER_BEHAVIOR_LATCH',
 | 
			
		||||
           'XmlKeyboard',
 | 
			
		||||
           'XklKeyboard']
 | 
			
		||||
							
								
								
									
										100
									
								
								bindings/python/eekboard/context.py
									
									
									
									
									
										Normal file
									
								
							
							
						
						@ -0,0 +1,100 @@
 | 
			
		||||
# Copyright (C) 2011 Daiki Ueno <ueno@unixuser.org>
 | 
			
		||||
# Copyright (C) 2011 Red Hat, Inc.
 | 
			
		||||
 | 
			
		||||
# This program is free software: you can redistribute it and/or modify
 | 
			
		||||
# it under the terms of the GNU General Public License as published by
 | 
			
		||||
# the Free Software Foundation, either version 3 of the License, or
 | 
			
		||||
# (at your option) any later version.
 | 
			
		||||
 | 
			
		||||
# This program is distributed in the hope that it will be useful, but
 | 
			
		||||
# WITHOUT ANY WARRANTY; without even the implied warranty of
 | 
			
		||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 | 
			
		||||
# General Public License for more details.
 | 
			
		||||
 | 
			
		||||
# You should have received a copy of the GNU General Public License
 | 
			
		||||
# along with this program.  If not, see
 | 
			
		||||
# <http://www.gnu.org/licenses/>.
 | 
			
		||||
 | 
			
		||||
from gi.repository import Eekboard
 | 
			
		||||
import gobject
 | 
			
		||||
 | 
			
		||||
class Context(gobject.GObject):
 | 
			
		||||
    __gtype_name__ = "PYEekboardContext"
 | 
			
		||||
    __gsignals__ = {
 | 
			
		||||
        'enabled': (
 | 
			
		||||
            gobject.SIGNAL_RUN_LAST,
 | 
			
		||||
            gobject.TYPE_NONE,
 | 
			
		||||
            ()),
 | 
			
		||||
        'disabled': (
 | 
			
		||||
            gobject.SIGNAL_RUN_LAST,
 | 
			
		||||
            gobject.TYPE_NONE,
 | 
			
		||||
            ()),
 | 
			
		||||
        'key-pressed': (
 | 
			
		||||
            gobject.SIGNAL_RUN_LAST,
 | 
			
		||||
            gobject.TYPE_NONE,
 | 
			
		||||
            (gobject.TYPE_UINT,)),
 | 
			
		||||
        'key-released': (
 | 
			
		||||
            gobject.SIGNAL_RUN_LAST,
 | 
			
		||||
            gobject.TYPE_NONE,
 | 
			
		||||
            (gobject.TYPE_UINT,)),
 | 
			
		||||
        'destroyed': (
 | 
			
		||||
            gobject.SIGNAL_RUN_LAST,
 | 
			
		||||
            gobject.TYPE_NONE,
 | 
			
		||||
            ()),
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
    __gproperties__ = {
 | 
			
		||||
        'keyboard-visible': (bool, None, None, False, gobject.PARAM_READWRITE),
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
    def __init__(self, giobject):
 | 
			
		||||
        super(Context, self).__init__()
 | 
			
		||||
        self.__properties = dict()
 | 
			
		||||
        self.__giobject = giobject
 | 
			
		||||
        self.__giobject.connect('enabled', lambda *args: self.emit('enabled'))
 | 
			
		||||
        self.__giobject.connect('disabled', lambda *args: self.emit('disabled'))
 | 
			
		||||
        self.__giobject.connect('key-pressed', lambda *args: self.emit('key-pressed', args[1]))
 | 
			
		||||
        self.__giobject.connect('key-released', lambda *args: self.emit('key-released', args[1]))
 | 
			
		||||
        self.__giobject.connect('destroyed', lambda *args: self.emit('destroyed'))
 | 
			
		||||
        self.__giobject.connect('notify::keyboard-visible', self.__notify_keyboard_visible_cb)
 | 
			
		||||
 | 
			
		||||
    def do_set_property(self, pspec, value):
 | 
			
		||||
        self.__properties[pspec.name] = value
 | 
			
		||||
 | 
			
		||||
    def do_get_property(self, pspec):
 | 
			
		||||
        return self.__properties[pspec.name]
 | 
			
		||||
 | 
			
		||||
    def __notify_keyboard_visible_cb(self, *args):
 | 
			
		||||
        self.set_property('keyboard-visible',
 | 
			
		||||
                          self.__giobject.get_property(args[1].name))
 | 
			
		||||
        self.notify('keyboard-visible')
 | 
			
		||||
 | 
			
		||||
    def get_giobject(self):
 | 
			
		||||
        return self.__giobject
 | 
			
		||||
 | 
			
		||||
    def add_keyboard(self, keyboard):
 | 
			
		||||
        return self.__giobject.add_keyboard(keyboard, None)
 | 
			
		||||
 | 
			
		||||
    def remove_keyboard(self, keyboard_id):
 | 
			
		||||
        return self.__giobject.remove_keyboard(keyboard_id, None)
 | 
			
		||||
        
 | 
			
		||||
    def set_keyboard(self, keyboard_id):
 | 
			
		||||
        self.__giobject.set_keyboard(keyboard_id, None)
 | 
			
		||||
 | 
			
		||||
    def show_keyboard(self):
 | 
			
		||||
        self.__giobject.show_keyboard(None)
 | 
			
		||||
 | 
			
		||||
    def hide_keyboard(self):
 | 
			
		||||
        self.__giobject.hide_keyboard(None)
 | 
			
		||||
 | 
			
		||||
    def set_group(self, group):
 | 
			
		||||
        self.__giobject.set_group(group, None)
 | 
			
		||||
 | 
			
		||||
    def press_key(self, keycode):
 | 
			
		||||
        self.__giobject.press_key(keycode, None)
 | 
			
		||||
 | 
			
		||||
    def release_key(self, keycode):
 | 
			
		||||
        self.__giobject.release_key(keycode, None)
 | 
			
		||||
 | 
			
		||||
    def is_enabled(self):
 | 
			
		||||
        return self.__giobject.is_enabled()
 | 
			
		||||
							
								
								
									
										49
									
								
								bindings/python/eekboard/eekboard.py
									
									
									
									
									
										Normal file
									
								
							
							
						
						@ -0,0 +1,49 @@
 | 
			
		||||
# Copyright (C) 2011 Daiki Ueno <ueno@unixuser.org>
 | 
			
		||||
# Copyright (C) 2011 Red Hat, Inc.
 | 
			
		||||
 | 
			
		||||
# This program is free software: you can redistribute it and/or modify
 | 
			
		||||
# it under the terms of the GNU General Public License as published by
 | 
			
		||||
# the Free Software Foundation, either version 3 of the License, or
 | 
			
		||||
# (at your option) any later version.
 | 
			
		||||
 | 
			
		||||
# This program is distributed in the hope that it will be useful, but
 | 
			
		||||
# WITHOUT ANY WARRANTY; without even the implied warranty of
 | 
			
		||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 | 
			
		||||
# General Public License for more details.
 | 
			
		||||
 | 
			
		||||
# You should have received a copy of the GNU General Public License
 | 
			
		||||
# along with this program.  If not, see
 | 
			
		||||
# <http://www.gnu.org/licenses/>.
 | 
			
		||||
 | 
			
		||||
from gi.repository import Gio
 | 
			
		||||
import gi.repository
 | 
			
		||||
import gobject
 | 
			
		||||
from context import Context
 | 
			
		||||
 | 
			
		||||
class Eekboard(gobject.GObject):
 | 
			
		||||
    __gtype_name__ = "PYEekboardEekboard"
 | 
			
		||||
    __gsignals__ = {
 | 
			
		||||
        'destroyed': (
 | 
			
		||||
            gobject.SIGNAL_RUN_LAST,
 | 
			
		||||
            gobject.TYPE_NONE,
 | 
			
		||||
            ())
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
    def __init__(self):
 | 
			
		||||
        super(Eekboard, self).__init__()
 | 
			
		||||
        self.__connection = Gio.bus_get_sync(Gio.BusType.SESSION, None)
 | 
			
		||||
        self.__eekboard = gi.repository.Eekboard.Eekboard.new(self.__connection, None);
 | 
			
		||||
        self.__eekboard.connect('destroyed', lambda *args: self.emit('destroyed'))
 | 
			
		||||
 | 
			
		||||
    def create_context(self, client_name):
 | 
			
		||||
        context = self.__eekboard.create_context(client_name, None)
 | 
			
		||||
        return Context(context)
 | 
			
		||||
 | 
			
		||||
    def push_context(self, context):
 | 
			
		||||
        self.__eekboard.push_context(context.get_giobject(), None)
 | 
			
		||||
 | 
			
		||||
    def pop_context(self):
 | 
			
		||||
        self.__eekboard.pop_context(None)
 | 
			
		||||
 | 
			
		||||
    def destroy_context(self, context):
 | 
			
		||||
        self.__eekboard.destroy_context(context.get_giobject(), None)
 | 
			
		||||
							
								
								
									
										50
									
								
								bindings/vala/Makefile.am
									
									
									
									
									
										Normal file
									
								
							
							
						
						@ -0,0 +1,50 @@
 | 
			
		||||
# Copyright (C) 2010-2011 Daiki Ueno <ueno@unixuser.org>
 | 
			
		||||
# Copyright (C) 2010-2011 Red Hat, Inc.
 | 
			
		||||
 | 
			
		||||
# This library is free software; you can redistribute it and/or
 | 
			
		||||
# modify it under the terms of the GNU Lesser General Public License
 | 
			
		||||
# as published by the Free Software Foundation; either version 2 of
 | 
			
		||||
# the License, or (at your option) any later version.
 | 
			
		||||
 | 
			
		||||
# This library is distributed in the hope that it will be useful, but
 | 
			
		||||
# WITHOUT ANY WARRANTY; without even the implied warranty of
 | 
			
		||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 | 
			
		||||
# Lesser General Public License for more details.
 | 
			
		||||
 | 
			
		||||
# You should have received a copy of the GNU Lesser General Public
 | 
			
		||||
# License along with this library; if not, write to the Free Software
 | 
			
		||||
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
 | 
			
		||||
# 02110-1301 USA
 | 
			
		||||
 | 
			
		||||
vapidir = $(datadir)/vala/vapi
 | 
			
		||||
dist_vapi_DATA = \
 | 
			
		||||
	eek-$(EEK_API_VERSION).vapi \
 | 
			
		||||
	eek-clutter-$(EEK_API_VERSION).vapi \
 | 
			
		||||
	eek-gtk-$(EEK_API_VERSION).vapi \
 | 
			
		||||
	eek-xkb-$(EEK_API_VERSION).vapi \
 | 
			
		||||
	eek-xkl-$(EEK_API_VERSION).vapi
 | 
			
		||||
MAINTAINERCLEANFILES = $(dist_vapi_DATA)
 | 
			
		||||
 | 
			
		||||
eek-$(EEK_API_VERSION).vapi:
 | 
			
		||||
	vapigen --library eek-$(EEK_API_VERSION) \
 | 
			
		||||
		eek-$(EEK_API_VERSION)/eek-$(EEK_API_VERSION).gi
 | 
			
		||||
 | 
			
		||||
eek-clutter-$(EEK_API_VERSION).vapi: eek-$(EEK_API_VERSION).vapi
 | 
			
		||||
	vapigen --vapidir=$(builddir) --library eek-clutter-$(EEK_API_VERSION) \
 | 
			
		||||
		--pkg eek-$(EEK_API_VERSION) --pkg clutter-1.0 \
 | 
			
		||||
		eek-clutter-$(EEK_API_VERSION)/eek-clutter-$(EEK_API_VERSION).gi
 | 
			
		||||
 | 
			
		||||
eek-gtk-$(EEK_API_VERSION).vapi: eek-$(EEK_API_VERSION).vapi
 | 
			
		||||
	vapigen --vapidir=$(builddir) --library eek-gtk-$(EEK_API_VERSION) \
 | 
			
		||||
		--pkg eek-$(EEK_API_VERSION) --pkg gtk+-2.0 \
 | 
			
		||||
		eek-gtk-$(EEK_API_VERSION)/eek-gtk-$(EEK_API_VERSION).gi
 | 
			
		||||
 | 
			
		||||
eek-xkb-$(EEK_API_VERSION).vapi: eek-$(EEK_API_VERSION).vapi
 | 
			
		||||
	vapigen --vapidir=$(builddir) --library eek-xkb-$(EEK_API_VERSION) \
 | 
			
		||||
		--pkg eek-$(EEK_API_VERSION) \
 | 
			
		||||
		eek-xkb-$(EEK_API_VERSION)/eek-xkb-$(EEK_API_VERSION).gi
 | 
			
		||||
 | 
			
		||||
eek-xkl-$(EEK_API_VERSION).vapi: eek-xkb-$(EEK_API_VERSION).vapi
 | 
			
		||||
	vapigen --vapidir=$(builddir) --library eek-xkl-$(EEK_API_VERSION) \
 | 
			
		||||
		--pkg eek-$(EEK_API_VERSION) --pkg eek-xkb-$(EEK_API_VERSION) \
 | 
			
		||||
		eek-xkl-$(EEK_API_VERSION)/eek-xkl-$(EEK_API_VERSION).gi
 | 
			
		||||
							
								
								
									
										9
									
								
								bindings/vala/eek-0.90/eek-0.90.files
									
									
									
									
									
										Normal file
									
								
							
							
						
						@ -0,0 +1,9 @@
 | 
			
		||||
include/eek-0.1/eek/eek-layout.h
 | 
			
		||||
include/eek-0.1/eek/eek-element.h
 | 
			
		||||
include/eek-0.1/eek/eek-container.h
 | 
			
		||||
include/eek-0.1/eek/eek-keyboard.h
 | 
			
		||||
include/eek-0.1/eek/eek-section.h
 | 
			
		||||
include/eek-0.1/eek/eek-key.h
 | 
			
		||||
include/eek-0.1/eek/eek-types.h
 | 
			
		||||
include/eek-0.1/eek/eek-keysym.h
 | 
			
		||||
lib/libeek.so
 | 
			
		||||
							
								
								
									
										680
									
								
								bindings/vala/eek-0.90/eek-0.90.gi
									
									
									
									
									
										Normal file
									
								
							
							
						
						@ -0,0 +1,680 @@
 | 
			
		||||
<?xml version="1.0"?>
 | 
			
		||||
<api version="1.0">
 | 
			
		||||
	<namespace name="Eek">
 | 
			
		||||
		<function name="keysym_get_category" symbol="eek_keysym_get_category">
 | 
			
		||||
			<return-type type="EekKeysymCategory"/>
 | 
			
		||||
			<parameters>
 | 
			
		||||
				<parameter name="keysym" type="guint"/>
 | 
			
		||||
			</parameters>
 | 
			
		||||
		</function>
 | 
			
		||||
		<function name="keysym_to_string" symbol="eek_keysym_to_string">
 | 
			
		||||
			<return-type type="gchar*"/>
 | 
			
		||||
			<parameters>
 | 
			
		||||
				<parameter name="keysym" type="guint"/>
 | 
			
		||||
			</parameters>
 | 
			
		||||
		</function>
 | 
			
		||||
		<callback name="EekCallback">
 | 
			
		||||
			<return-type type="void"/>
 | 
			
		||||
			<parameters>
 | 
			
		||||
				<parameter name="element" type="EekElement*"/>
 | 
			
		||||
				<parameter name="user_data" type="gpointer"/>
 | 
			
		||||
			</parameters>
 | 
			
		||||
		</callback>
 | 
			
		||||
		<callback name="EekCompareFunc">
 | 
			
		||||
			<return-type type="gint"/>
 | 
			
		||||
			<parameters>
 | 
			
		||||
				<parameter name="element" type="EekElement*"/>
 | 
			
		||||
				<parameter name="user_data" type="gpointer"/>
 | 
			
		||||
			</parameters>
 | 
			
		||||
		</callback>
 | 
			
		||||
		<boxed name="EekBounds" type-name="EekBounds" get-type="eek_bounds_get_type">
 | 
			
		||||
			<field name="x" type="gdouble"/>
 | 
			
		||||
			<field name="y" type="gdouble"/>
 | 
			
		||||
			<field name="width" type="gdouble"/>
 | 
			
		||||
			<field name="height" type="gdouble"/>
 | 
			
		||||
		</boxed>
 | 
			
		||||
		<boxed name="EekKeysymMatrix" type-name="EekKeysymMatrix" get-type="eek_keysym_matrix_get_type">
 | 
			
		||||
			<field name="data" type="guint*"/>
 | 
			
		||||
			<field name="num_groups" type="gint"/>
 | 
			
		||||
			<field name="num_levels" type="gint"/>
 | 
			
		||||
		</boxed>
 | 
			
		||||
		<boxed name="EekOutline" type-name="EekOutline" get-type="eek_outline_get_type">
 | 
			
		||||
			<field name="corner_radius" type="gdouble"/>
 | 
			
		||||
			<field name="points" type="EekPoint*"/>
 | 
			
		||||
			<field name="num_points" type="gint"/>
 | 
			
		||||
		</boxed>
 | 
			
		||||
		<boxed name="EekPoint" type-name="EekPoint" get-type="eek_point_get_type">
 | 
			
		||||
			<field name="x" type="gdouble"/>
 | 
			
		||||
			<field name="y" type="gdouble"/>
 | 
			
		||||
		</boxed>
 | 
			
		||||
		<enum name="EekKeysymCategory">
 | 
			
		||||
			<member name="EEK_KEYSYM_CATEGORY_LETTER" value="0"/>
 | 
			
		||||
			<member name="EEK_KEYSYM_CATEGORY_FUNCTION" value="1"/>
 | 
			
		||||
			<member name="EEK_KEYSYM_CATEGORY_KEYNAME" value="2"/>
 | 
			
		||||
			<member name="EEK_KEYSYM_CATEGORY_UNKNOWN" value="3"/>
 | 
			
		||||
			<member name="EEK_KEYSYM_CATEGORY_LAST" value="3"/>
 | 
			
		||||
		</enum>
 | 
			
		||||
		<enum name="EekOrientation">
 | 
			
		||||
			<member name="EEK_ORIENTATION_VERTICAL" value="0"/>
 | 
			
		||||
			<member name="EEK_ORIENTATION_HORIZONTAL" value="1"/>
 | 
			
		||||
			<member name="EEK_ORIENTATION_INVALID" value="-1"/>
 | 
			
		||||
		</enum>
 | 
			
		||||
		<object name="EekContainer" parent="EekElement" type-name="EekContainer" get-type="eek_container_get_type">
 | 
			
		||||
			<method name="find" symbol="eek_container_find">
 | 
			
		||||
				<return-type type="EekElement*"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="container" type="EekContainer*"/>
 | 
			
		||||
					<parameter name="func" type="EekCompareFunc"/>
 | 
			
		||||
					<parameter name="user_data" type="gpointer"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</method>
 | 
			
		||||
			<method name="find_by_position" symbol="eek_container_find_by_position">
 | 
			
		||||
				<return-type type="EekElement*"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="container" type="EekContainer*"/>
 | 
			
		||||
					<parameter name="x" type="gdouble"/>
 | 
			
		||||
					<parameter name="y" type="gdouble"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</method>
 | 
			
		||||
			<method name="foreach_child" symbol="eek_container_foreach_child">
 | 
			
		||||
				<return-type type="void"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="container" type="EekContainer*"/>
 | 
			
		||||
					<parameter name="callback" type="EekCallback"/>
 | 
			
		||||
					<parameter name="user_data" type="gpointer"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</method>
 | 
			
		||||
			<signal name="child-added" when="FIRST">
 | 
			
		||||
				<return-type type="void"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="self" type="EekContainer*"/>
 | 
			
		||||
					<parameter name="element" type="EekElement*"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</signal>
 | 
			
		||||
			<signal name="child-removed" when="FIRST">
 | 
			
		||||
				<return-type type="void"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="self" type="EekContainer*"/>
 | 
			
		||||
					<parameter name="element" type="EekElement*"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</signal>
 | 
			
		||||
			<vfunc name="add_child">
 | 
			
		||||
				<return-type type="void"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="self" type="EekContainer*"/>
 | 
			
		||||
					<parameter name="element" type="EekElement*"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</vfunc>
 | 
			
		||||
			<vfunc name="find">
 | 
			
		||||
				<return-type type="EekElement*"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="self" type="EekContainer*"/>
 | 
			
		||||
					<parameter name="func" type="EekCompareFunc"/>
 | 
			
		||||
					<parameter name="user_data" type="gpointer"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</vfunc>
 | 
			
		||||
			<vfunc name="foreach_child">
 | 
			
		||||
				<return-type type="void"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="self" type="EekContainer*"/>
 | 
			
		||||
					<parameter name="callback" type="EekCallback"/>
 | 
			
		||||
					<parameter name="user_data" type="gpointer"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</vfunc>
 | 
			
		||||
			<vfunc name="remove_child">
 | 
			
		||||
				<return-type type="void"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="self" type="EekContainer*"/>
 | 
			
		||||
					<parameter name="element" type="EekElement*"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</vfunc>
 | 
			
		||||
		</object>
 | 
			
		||||
		<object name="EekElement" parent="GInitiallyUnowned" type-name="EekElement" get-type="eek_element_get_type">
 | 
			
		||||
			<method name="get_absolute_position" symbol="eek_element_get_absolute_position">
 | 
			
		||||
				<return-type type="void"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="element" type="EekElement*"/>
 | 
			
		||||
					<parameter name="x" type="gdouble*"/>
 | 
			
		||||
					<parameter name="y" type="gdouble*"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</method>
 | 
			
		||||
			<method name="get_bounds" symbol="eek_element_get_bounds">
 | 
			
		||||
				<return-type type="void"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="element" type="EekElement*"/>
 | 
			
		||||
					<parameter name="bounds" type="EekBounds*"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</method>
 | 
			
		||||
			<method name="get_name" symbol="eek_element_get_name">
 | 
			
		||||
				<return-type type="gchar*"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="element" type="EekElement*"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</method>
 | 
			
		||||
			<method name="get_parent" symbol="eek_element_get_parent">
 | 
			
		||||
				<return-type type="EekElement*"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="element" type="EekElement*"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</method>
 | 
			
		||||
			<method name="set_bounds" symbol="eek_element_set_bounds">
 | 
			
		||||
				<return-type type="void"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="element" type="EekElement*"/>
 | 
			
		||||
					<parameter name="bounds" type="EekBounds*"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</method>
 | 
			
		||||
			<method name="set_name" symbol="eek_element_set_name">
 | 
			
		||||
				<return-type type="void"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="element" type="EekElement*"/>
 | 
			
		||||
					<parameter name="name" type="gchar*"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</method>
 | 
			
		||||
			<method name="set_parent" symbol="eek_element_set_parent">
 | 
			
		||||
				<return-type type="void"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="element" type="EekElement*"/>
 | 
			
		||||
					<parameter name="parent" type="EekElement*"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</method>
 | 
			
		||||
			<property name="bounds" type="EekBounds*" readable="1" writable="1" construct="0" construct-only="0"/>
 | 
			
		||||
			<property name="name" type="char*" readable="1" writable="1" construct="0" construct-only="0"/>
 | 
			
		||||
			<vfunc name="get_bounds">
 | 
			
		||||
				<return-type type="void"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="self" type="EekElement*"/>
 | 
			
		||||
					<parameter name="bounds" type="EekBounds*"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</vfunc>
 | 
			
		||||
			<vfunc name="get_name">
 | 
			
		||||
				<return-type type="gchar*"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="self" type="EekElement*"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</vfunc>
 | 
			
		||||
			<vfunc name="get_parent">
 | 
			
		||||
				<return-type type="EekElement*"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="self" type="EekElement*"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</vfunc>
 | 
			
		||||
			<vfunc name="set_bounds">
 | 
			
		||||
				<return-type type="void"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="self" type="EekElement*"/>
 | 
			
		||||
					<parameter name="bounds" type="EekBounds*"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</vfunc>
 | 
			
		||||
			<vfunc name="set_name">
 | 
			
		||||
				<return-type type="void"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="self" type="EekElement*"/>
 | 
			
		||||
					<parameter name="name" type="gchar*"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</vfunc>
 | 
			
		||||
			<vfunc name="set_parent">
 | 
			
		||||
				<return-type type="void"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="self" type="EekElement*"/>
 | 
			
		||||
					<parameter name="parent" type="EekElement*"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</vfunc>
 | 
			
		||||
		</object>
 | 
			
		||||
		<object name="EekKey" parent="EekElement" type-name="EekKey" get-type="eek_key_get_type">
 | 
			
		||||
			<method name="get_index" symbol="eek_key_get_index">
 | 
			
		||||
				<return-type type="void"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="key" type="EekKey*"/>
 | 
			
		||||
					<parameter name="column" type="gint*"/>
 | 
			
		||||
					<parameter name="row" type="gint*"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</method>
 | 
			
		||||
			<method name="get_keycode" symbol="eek_key_get_keycode">
 | 
			
		||||
				<return-type type="guint"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="key" type="EekKey*"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</method>
 | 
			
		||||
			<method name="get_keysym" symbol="eek_key_get_keysym">
 | 
			
		||||
				<return-type type="guint"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="key" type="EekKey*"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</method>
 | 
			
		||||
			<method name="get_keysym_index" symbol="eek_key_get_keysym_index">
 | 
			
		||||
				<return-type type="void"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="key" type="EekKey*"/>
 | 
			
		||||
					<parameter name="group" type="gint*"/>
 | 
			
		||||
					<parameter name="level" type="gint*"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</method>
 | 
			
		||||
			<method name="get_keysyms" symbol="eek_key_get_keysyms">
 | 
			
		||||
				<return-type type="void"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="key" type="EekKey*"/>
 | 
			
		||||
					<parameter name="keysyms" type="guint**"/>
 | 
			
		||||
					<parameter name="num_groups" type="gint*"/>
 | 
			
		||||
					<parameter name="num_levels" type="gint*"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</method>
 | 
			
		||||
			<method name="get_outline" symbol="eek_key_get_outline">
 | 
			
		||||
				<return-type type="EekOutline*"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="key" type="EekKey*"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</method>
 | 
			
		||||
			<method name="set_index" symbol="eek_key_set_index">
 | 
			
		||||
				<return-type type="void"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="key" type="EekKey*"/>
 | 
			
		||||
					<parameter name="column" type="gint"/>
 | 
			
		||||
					<parameter name="row" type="gint"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</method>
 | 
			
		||||
			<method name="set_keycode" symbol="eek_key_set_keycode">
 | 
			
		||||
				<return-type type="void"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="key" type="EekKey*"/>
 | 
			
		||||
					<parameter name="keycode" type="guint"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</method>
 | 
			
		||||
			<method name="set_keysym_index" symbol="eek_key_set_keysym_index">
 | 
			
		||||
				<return-type type="void"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="key" type="EekKey*"/>
 | 
			
		||||
					<parameter name="group" type="gint"/>
 | 
			
		||||
					<parameter name="level" type="gint"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</method>
 | 
			
		||||
			<method name="set_keysyms" symbol="eek_key_set_keysyms">
 | 
			
		||||
				<return-type type="void"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="key" type="EekKey*"/>
 | 
			
		||||
					<parameter name="keysyms" type="guint*"/>
 | 
			
		||||
					<parameter name="num_groups" type="gint"/>
 | 
			
		||||
					<parameter name="num_levels" type="gint"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</method>
 | 
			
		||||
			<method name="set_outline" symbol="eek_key_set_outline">
 | 
			
		||||
				<return-type type="void"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="key" type="EekKey*"/>
 | 
			
		||||
					<parameter name="outline" type="EekOutline*"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</method>
 | 
			
		||||
			<property name="column" type="gint" readable="1" writable="1" construct="0" construct-only="0"/>
 | 
			
		||||
			<property name="group" type="gint" readable="1" writable="1" construct="0" construct-only="0"/>
 | 
			
		||||
			<property name="keycode" type="guint" readable="1" writable="1" construct="0" construct-only="0"/>
 | 
			
		||||
			<property name="keysyms" type="EekKeysymMatrix*" readable="1" writable="1" construct="0" construct-only="0"/>
 | 
			
		||||
			<property name="level" type="gint" readable="1" writable="1" construct="0" construct-only="0"/>
 | 
			
		||||
			<property name="outline" type="gpointer" readable="1" writable="1" construct="0" construct-only="0"/>
 | 
			
		||||
			<property name="row" type="gint" readable="1" writable="1" construct="0" construct-only="0"/>
 | 
			
		||||
			<signal name="pressed" when="FIRST">
 | 
			
		||||
				<return-type type="void"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="key" type="EekKey*"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</signal>
 | 
			
		||||
			<signal name="released" when="FIRST">
 | 
			
		||||
				<return-type type="void"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="key" type="EekKey*"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</signal>
 | 
			
		||||
			<vfunc name="get_index">
 | 
			
		||||
				<return-type type="void"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="self" type="EekKey*"/>
 | 
			
		||||
					<parameter name="column" type="gint*"/>
 | 
			
		||||
					<parameter name="row" type="gint*"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</vfunc>
 | 
			
		||||
			<vfunc name="get_keycode">
 | 
			
		||||
				<return-type type="guint"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="self" type="EekKey*"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</vfunc>
 | 
			
		||||
			<vfunc name="get_keysym">
 | 
			
		||||
				<return-type type="guint"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="self" type="EekKey*"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</vfunc>
 | 
			
		||||
			<vfunc name="get_keysym_index">
 | 
			
		||||
				<return-type type="void"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="self" type="EekKey*"/>
 | 
			
		||||
					<parameter name="group" type="gint*"/>
 | 
			
		||||
					<parameter name="level" type="gint*"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</vfunc>
 | 
			
		||||
			<vfunc name="get_keysyms">
 | 
			
		||||
				<return-type type="void"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="self" type="EekKey*"/>
 | 
			
		||||
					<parameter name="keysyms" type="guint**"/>
 | 
			
		||||
					<parameter name="num_groups" type="gint*"/>
 | 
			
		||||
					<parameter name="num_levels" type="gint*"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</vfunc>
 | 
			
		||||
			<vfunc name="get_outline">
 | 
			
		||||
				<return-type type="EekOutline*"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="self" type="EekKey*"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</vfunc>
 | 
			
		||||
			<vfunc name="set_index">
 | 
			
		||||
				<return-type type="void"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="self" type="EekKey*"/>
 | 
			
		||||
					<parameter name="column" type="gint"/>
 | 
			
		||||
					<parameter name="row" type="gint"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</vfunc>
 | 
			
		||||
			<vfunc name="set_keycode">
 | 
			
		||||
				<return-type type="void"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="self" type="EekKey*"/>
 | 
			
		||||
					<parameter name="keycode" type="guint"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</vfunc>
 | 
			
		||||
			<vfunc name="set_keysym_index">
 | 
			
		||||
				<return-type type="void"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="self" type="EekKey*"/>
 | 
			
		||||
					<parameter name="group" type="gint"/>
 | 
			
		||||
					<parameter name="level" type="gint"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</vfunc>
 | 
			
		||||
			<vfunc name="set_keysyms">
 | 
			
		||||
				<return-type type="void"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="self" type="EekKey*"/>
 | 
			
		||||
					<parameter name="keysyms" type="guint*"/>
 | 
			
		||||
					<parameter name="num_groups" type="gint"/>
 | 
			
		||||
					<parameter name="num_levels" type="gint"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</vfunc>
 | 
			
		||||
			<vfunc name="set_outline">
 | 
			
		||||
				<return-type type="void"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="self" type="EekKey*"/>
 | 
			
		||||
					<parameter name="outline" type="EekOutline*"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</vfunc>
 | 
			
		||||
		</object>
 | 
			
		||||
		<object name="EekKeyboard" parent="EekContainer" type-name="EekKeyboard" get-type="eek_keyboard_get_type">
 | 
			
		||||
			<method name="create_section" symbol="eek_keyboard_create_section">
 | 
			
		||||
				<return-type type="EekSection*"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="keyboard" type="EekKeyboard*"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</method>
 | 
			
		||||
			<method name="find_key_by_keycode" symbol="eek_keyboard_find_key_by_keycode">
 | 
			
		||||
				<return-type type="EekKey*"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="keyboard" type="EekKeyboard*"/>
 | 
			
		||||
					<parameter name="keycode" type="guint"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</method>
 | 
			
		||||
			<method name="get_keysym_index" symbol="eek_keyboard_get_keysym_index">
 | 
			
		||||
				<return-type type="void"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="keyboard" type="EekKeyboard*"/>
 | 
			
		||||
					<parameter name="group" type="gint*"/>
 | 
			
		||||
					<parameter name="level" type="gint*"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</method>
 | 
			
		||||
			<method name="realize" symbol="eek_keyboard_realize">
 | 
			
		||||
				<return-type type="void"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="keyboard" type="EekKeyboard*"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</method>
 | 
			
		||||
			<method name="set_keysym_index" symbol="eek_keyboard_set_keysym_index">
 | 
			
		||||
				<return-type type="void"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="keyboard" type="EekKeyboard*"/>
 | 
			
		||||
					<parameter name="group" type="gint"/>
 | 
			
		||||
					<parameter name="level" type="gint"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</method>
 | 
			
		||||
			<method name="set_layout" symbol="eek_keyboard_set_layout">
 | 
			
		||||
				<return-type type="void"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="keyboard" type="EekKeyboard*"/>
 | 
			
		||||
					<parameter name="layout" type="EekLayout*"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</method>
 | 
			
		||||
			<property name="group" type="gint" readable="1" writable="1" construct="0" construct-only="0"/>
 | 
			
		||||
			<property name="level" type="gint" readable="1" writable="1" construct="0" construct-only="0"/>
 | 
			
		||||
			<signal name="key-pressed" when="FIRST">
 | 
			
		||||
				<return-type type="void"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="object" type="EekKeyboard*"/>
 | 
			
		||||
					<parameter name="p0" type="EekKey*"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</signal>
 | 
			
		||||
			<signal name="key-released" when="FIRST">
 | 
			
		||||
				<return-type type="void"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="object" type="EekKeyboard*"/>
 | 
			
		||||
					<parameter name="p0" type="EekKey*"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</signal>
 | 
			
		||||
			<vfunc name="create_section">
 | 
			
		||||
				<return-type type="EekSection*"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="self" type="EekKeyboard*"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</vfunc>
 | 
			
		||||
			<vfunc name="find_key_by_keycode">
 | 
			
		||||
				<return-type type="EekKey*"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="self" type="EekKeyboard*"/>
 | 
			
		||||
					<parameter name="keycode" type="guint"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</vfunc>
 | 
			
		||||
			<vfunc name="get_keysym_index">
 | 
			
		||||
				<return-type type="void"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="self" type="EekKeyboard*"/>
 | 
			
		||||
					<parameter name="group" type="gint*"/>
 | 
			
		||||
					<parameter name="level" type="gint*"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</vfunc>
 | 
			
		||||
			<vfunc name="realize">
 | 
			
		||||
				<return-type type="void"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="self" type="EekKeyboard*"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</vfunc>
 | 
			
		||||
			<vfunc name="set_keysym_index">
 | 
			
		||||
				<return-type type="void"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="self" type="EekKeyboard*"/>
 | 
			
		||||
					<parameter name="group" type="gint"/>
 | 
			
		||||
					<parameter name="level" type="gint"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</vfunc>
 | 
			
		||||
			<vfunc name="set_layout">
 | 
			
		||||
				<return-type type="void"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="self" type="EekKeyboard*"/>
 | 
			
		||||
					<parameter name="layout" type="EekLayout*"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</vfunc>
 | 
			
		||||
		</object>
 | 
			
		||||
		<object name="EekSection" parent="EekContainer" type-name="EekSection" get-type="eek_section_get_type">
 | 
			
		||||
			<method name="add_row" symbol="eek_section_add_row">
 | 
			
		||||
				<return-type type="void"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="section" type="EekSection*"/>
 | 
			
		||||
					<parameter name="num_columns" type="gint"/>
 | 
			
		||||
					<parameter name="orientation" type="EekOrientation"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</method>
 | 
			
		||||
			<method name="create_key" symbol="eek_section_create_key">
 | 
			
		||||
				<return-type type="EekKey*"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="section" type="EekSection*"/>
 | 
			
		||||
					<parameter name="column" type="gint"/>
 | 
			
		||||
					<parameter name="row" type="gint"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</method>
 | 
			
		||||
			<method name="find_key_by_keycode" symbol="eek_section_find_key_by_keycode">
 | 
			
		||||
				<return-type type="EekKey*"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="section" type="EekSection*"/>
 | 
			
		||||
					<parameter name="keycode" type="guint"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</method>
 | 
			
		||||
			<method name="get_angle" symbol="eek_section_get_angle">
 | 
			
		||||
				<return-type type="gint"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="section" type="EekSection*"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</method>
 | 
			
		||||
			<method name="get_n_rows" symbol="eek_section_get_n_rows">
 | 
			
		||||
				<return-type type="gint"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="section" type="EekSection*"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</method>
 | 
			
		||||
			<method name="get_row" symbol="eek_section_get_row">
 | 
			
		||||
				<return-type type="void"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="section" type="EekSection*"/>
 | 
			
		||||
					<parameter name="index" type="gint"/>
 | 
			
		||||
					<parameter name="num_columns" type="gint*"/>
 | 
			
		||||
					<parameter name="orientation" type="EekOrientation*"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</method>
 | 
			
		||||
			<method name="set_angle" symbol="eek_section_set_angle">
 | 
			
		||||
				<return-type type="void"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="section" type="EekSection*"/>
 | 
			
		||||
					<parameter name="angle" type="gint"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</method>
 | 
			
		||||
			<property name="angle" type="gint" readable="1" writable="1" construct="0" construct-only="0"/>
 | 
			
		||||
			<signal name="key-pressed" when="FIRST">
 | 
			
		||||
				<return-type type="void"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="object" type="EekSection*"/>
 | 
			
		||||
					<parameter name="p0" type="EekKey*"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</signal>
 | 
			
		||||
			<signal name="key-released" when="FIRST">
 | 
			
		||||
				<return-type type="void"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="object" type="EekSection*"/>
 | 
			
		||||
					<parameter name="p0" type="EekKey*"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</signal>
 | 
			
		||||
			<vfunc name="add_row">
 | 
			
		||||
				<return-type type="void"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="self" type="EekSection*"/>
 | 
			
		||||
					<parameter name="num_columns" type="gint"/>
 | 
			
		||||
					<parameter name="orientation" type="EekOrientation"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</vfunc>
 | 
			
		||||
			<vfunc name="create_key">
 | 
			
		||||
				<return-type type="EekKey*"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="self" type="EekSection*"/>
 | 
			
		||||
					<parameter name="row" type="gint"/>
 | 
			
		||||
					<parameter name="column" type="gint"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</vfunc>
 | 
			
		||||
			<vfunc name="find_key_by_keycode">
 | 
			
		||||
				<return-type type="EekKey*"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="self" type="EekSection*"/>
 | 
			
		||||
					<parameter name="keycode" type="guint"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</vfunc>
 | 
			
		||||
			<vfunc name="get_angle">
 | 
			
		||||
				<return-type type="gint"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="self" type="EekSection*"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</vfunc>
 | 
			
		||||
			<vfunc name="get_n_rows">
 | 
			
		||||
				<return-type type="gint"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="self" type="EekSection*"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</vfunc>
 | 
			
		||||
			<vfunc name="get_row">
 | 
			
		||||
				<return-type type="void"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="self" type="EekSection*"/>
 | 
			
		||||
					<parameter name="index" type="gint"/>
 | 
			
		||||
					<parameter name="num_columns" type="gint*"/>
 | 
			
		||||
					<parameter name="orientation" type="EekOrientation*"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</vfunc>
 | 
			
		||||
			<vfunc name="set_angle">
 | 
			
		||||
				<return-type type="void"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="self" type="EekSection*"/>
 | 
			
		||||
					<parameter name="angle" type="gint"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</vfunc>
 | 
			
		||||
		</object>
 | 
			
		||||
		<interface name="EekLayout" type-name="EekLayout" get-type="eek_layout_get_type">
 | 
			
		||||
			<method name="apply" symbol="eek_layout_apply">
 | 
			
		||||
				<return-type type="void"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="layout" type="EekLayout*"/>
 | 
			
		||||
					<parameter name="keyboard" type="EekKeyboard*"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</method>
 | 
			
		||||
			<method name="get_group" symbol="eek_layout_get_group">
 | 
			
		||||
				<return-type type="gint"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="layout" type="EekLayout*"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</method>
 | 
			
		||||
			<signal name="changed" when="FIRST">
 | 
			
		||||
				<return-type type="void"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="self" type="EekLayout*"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</signal>
 | 
			
		||||
			<signal name="group-changed" when="FIRST">
 | 
			
		||||
				<return-type type="void"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="self" type="EekLayout*"/>
 | 
			
		||||
					<parameter name="group" type="gint"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</signal>
 | 
			
		||||
			<vfunc name="apply">
 | 
			
		||||
				<return-type type="void"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="self" type="EekLayout*"/>
 | 
			
		||||
					<parameter name="keyboard" type="EekKeyboard*"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</vfunc>
 | 
			
		||||
			<vfunc name="get_group">
 | 
			
		||||
				<return-type type="gint"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="self" type="EekLayout*"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</vfunc>
 | 
			
		||||
		</interface>
 | 
			
		||||
		<constant name="EEK_CONTAINER_H" type="int" value="1"/>
 | 
			
		||||
		<constant name="EEK_ELEMENT_H" type="int" value="1"/>
 | 
			
		||||
		<constant name="EEK_KEYBOARD_H" type="int" value="1"/>
 | 
			
		||||
		<constant name="EEK_KEYSYM_H" type="int" value="1"/>
 | 
			
		||||
		<constant name="EEK_KEY_H" type="int" value="1"/>
 | 
			
		||||
		<constant name="EEK_LAYOUT_H" type="int" value="1"/>
 | 
			
		||||
		<constant name="EEK_SECTION_H" type="int" value="1"/>
 | 
			
		||||
		<constant name="EEK_TYPES_H" type="int" value="1"/>
 | 
			
		||||
	</namespace>
 | 
			
		||||
</api>
 | 
			
		||||
							
								
								
									
										1
									
								
								bindings/vala/eek-0.90/eek-0.90.metadata
									
									
									
									
									
										Normal file
									
								
							
							
						
						@ -0,0 +1 @@
 | 
			
		||||
Eek cheader_filename="eek/eek.h"
 | 
			
		||||
							
								
								
									
										1
									
								
								bindings/vala/eek-0.90/eek-0.90.namespace
									
									
									
									
									
										Normal file
									
								
							
							
						
						@ -0,0 +1 @@
 | 
			
		||||
Eek
 | 
			
		||||
							
								
								
									
										6
									
								
								bindings/vala/eek-clutter-0.90/eek-clutter-0.90.files
									
									
									
									
									
										Normal file
									
								
							
							
						
						@ -0,0 +1,6 @@
 | 
			
		||||
include/eek-0.1/eek/eek-clutter-keyboard.h
 | 
			
		||||
include/eek-0.1/eek/eek-clutter-section.h
 | 
			
		||||
include/eek-0.1/eek/eek-clutter-key.h
 | 
			
		||||
include/eek-0.1/eek/eek-clutter-drawing-context.h
 | 
			
		||||
lib/libeek-clutter.so
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										85
									
								
								bindings/vala/eek-clutter-0.90/eek-clutter-0.90.gi
									
									
									
									
									
										Normal file
									
								
							
							
						
						@ -0,0 +1,85 @@
 | 
			
		||||
<?xml version="1.0"?>
 | 
			
		||||
<api version="1.0">
 | 
			
		||||
	<namespace name="EekClutter">
 | 
			
		||||
		<object name="EekClutterDrawingContext" parent="GInitiallyUnowned" type-name="EekClutterDrawingContext" get-type="eek_clutter_drawing_context_get_type">
 | 
			
		||||
			<method name="get_category_font" symbol="eek_clutter_drawing_context_get_category_font">
 | 
			
		||||
				<return-type type="PangoFontDescription*"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="context" type="EekClutterDrawingContext*"/>
 | 
			
		||||
					<parameter name="category" type="EekKeysymCategory"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</method>
 | 
			
		||||
			<method name="get_outline_texture" symbol="eek_clutter_drawing_context_get_outline_texture">
 | 
			
		||||
				<return-type type="ClutterActor*"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="context" type="EekClutterDrawingContext*"/>
 | 
			
		||||
					<parameter name="outline" type="EekOutline*"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</method>
 | 
			
		||||
			<constructor name="new" symbol="eek_clutter_drawing_context_new">
 | 
			
		||||
				<return-type type="EekClutterDrawingContext*"/>
 | 
			
		||||
			</constructor>
 | 
			
		||||
			<method name="set_category_font" symbol="eek_clutter_drawing_context_set_category_font">
 | 
			
		||||
				<return-type type="void"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="context" type="EekClutterDrawingContext*"/>
 | 
			
		||||
					<parameter name="category" type="EekKeysymCategory"/>
 | 
			
		||||
					<parameter name="fonts" type="PangoFontDescription*"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</method>
 | 
			
		||||
			<method name="set_outline_texture" symbol="eek_clutter_drawing_context_set_outline_texture">
 | 
			
		||||
				<return-type type="void"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="context" type="EekClutterDrawingContext*"/>
 | 
			
		||||
					<parameter name="outline" type="EekOutline*"/>
 | 
			
		||||
					<parameter name="texture" type="ClutterActor*"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</method>
 | 
			
		||||
		</object>
 | 
			
		||||
		<object name="EekClutterKey" parent="EekKey" type-name="EekClutterKey" get-type="eek_clutter_key_get_type">
 | 
			
		||||
			<method name="get_actor" symbol="eek_clutter_key_get_actor">
 | 
			
		||||
				<return-type type="ClutterActor*"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="key" type="EekClutterKey*"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</method>
 | 
			
		||||
			<constructor name="new" symbol="eek_clutter_key_new">
 | 
			
		||||
				<return-type type="EekKey*"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="context" type="EekClutterDrawingContext*"/>
 | 
			
		||||
					<parameter name="column" type="gint"/>
 | 
			
		||||
					<parameter name="row" type="gint"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</constructor>
 | 
			
		||||
		</object>
 | 
			
		||||
		<object name="EekClutterKeyboard" parent="EekKeyboard" type-name="EekClutterKeyboard" get-type="eek_clutter_keyboard_get_type">
 | 
			
		||||
			<method name="get_actor" symbol="eek_clutter_keyboard_get_actor">
 | 
			
		||||
				<return-type type="ClutterActor*"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="keyboard" type="EekClutterKeyboard*"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</method>
 | 
			
		||||
			<constructor name="new" symbol="eek_clutter_keyboard_new">
 | 
			
		||||
				<return-type type="EekKeyboard*"/>
 | 
			
		||||
			</constructor>
 | 
			
		||||
		</object>
 | 
			
		||||
		<object name="EekClutterSection" parent="EekSection" type-name="EekClutterSection" get-type="eek_clutter_section_get_type">
 | 
			
		||||
			<method name="get_actor" symbol="eek_clutter_section_get_actor">
 | 
			
		||||
				<return-type type="ClutterActor*"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="section" type="EekClutterSection*"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</method>
 | 
			
		||||
			<constructor name="new" symbol="eek_clutter_section_new">
 | 
			
		||||
				<return-type type="EekSection*"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="context" type="EekClutterDrawingContext*"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</constructor>
 | 
			
		||||
		</object>
 | 
			
		||||
		<constant name="EEK_CLUTTER_DRAWING_CONTEXT_H" type="int" value="1"/>
 | 
			
		||||
		<constant name="EEK_CLUTTER_KEYBOARD_H" type="int" value="1"/>
 | 
			
		||||
		<constant name="EEK_CLUTTER_KEY_H" type="int" value="1"/>
 | 
			
		||||
		<constant name="EEK_CLUTTER_SECTION_H" type="int" value="1"/>
 | 
			
		||||
	</namespace>
 | 
			
		||||
</api>
 | 
			
		||||
							
								
								
									
										1
									
								
								bindings/vala/eek-clutter-0.90/eek-clutter-0.90.metadata
									
									
									
									
									
										Normal file
									
								
							
							
						
						@ -0,0 +1 @@
 | 
			
		||||
EekClutter cheader_filename="eek/eek-clutter.h"
 | 
			
		||||
@ -0,0 +1 @@
 | 
			
		||||
EekClutter
 | 
			
		||||
							
								
								
									
										3
									
								
								bindings/vala/eek-gtk-0.90/eek-gtk-0.90.files
									
									
									
									
									
										Normal file
									
								
							
							
						
						@ -0,0 +1,3 @@
 | 
			
		||||
include/eek-0.1/eek/eek-gtk-keyboard.h
 | 
			
		||||
include/eek-0.1/eek/eek-gtk.h
 | 
			
		||||
lib/libeek-gtk.so
 | 
			
		||||
							
								
								
									
										18
									
								
								bindings/vala/eek-gtk-0.90/eek-gtk-0.90.gi
									
									
									
									
									
										Normal file
									
								
							
							
						
						@ -0,0 +1,18 @@
 | 
			
		||||
<?xml version="1.0"?>
 | 
			
		||||
<api version="1.0">
 | 
			
		||||
	<namespace name="EekGtk">
 | 
			
		||||
		<object name="EekGtkKeyboard" parent="EekKeyboard" type-name="EekGtkKeyboard" get-type="eek_gtk_keyboard_get_type">
 | 
			
		||||
			<method name="get_widget" symbol="eek_gtk_keyboard_get_widget">
 | 
			
		||||
				<return-type type="GtkWidget*"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="keyboard" type="EekGtkKeyboard*"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</method>
 | 
			
		||||
			<constructor name="new" symbol="eek_gtk_keyboard_new">
 | 
			
		||||
				<return-type type="EekKeyboard*"/>
 | 
			
		||||
			</constructor>
 | 
			
		||||
		</object>
 | 
			
		||||
		<constant name="EEK_GTK_H" type="int" value="1"/>
 | 
			
		||||
		<constant name="EEK_GTK_KEYBOARD_H" type="int" value="1"/>
 | 
			
		||||
	</namespace>
 | 
			
		||||
</api>
 | 
			
		||||
							
								
								
									
										1
									
								
								bindings/vala/eek-gtk-0.90/eek-gtk-0.90.metadata
									
									
									
									
									
										Normal file
									
								
							
							
						
						@ -0,0 +1 @@
 | 
			
		||||
EekGtk cheader_filename="eek/eek-gtk.h"
 | 
			
		||||
							
								
								
									
										1
									
								
								bindings/vala/eek-gtk-0.90/eek-gtk-0.90.namespace
									
									
									
									
									
										Normal file
									
								
							
							
						
						@ -0,0 +1 @@
 | 
			
		||||
EekGtk
 | 
			
		||||
							
								
								
									
										2
									
								
								bindings/vala/eek-xkb-0.90/eek-xkb-0.90.files
									
									
									
									
									
										Normal file
									
								
							
							
						
						@ -0,0 +1,2 @@
 | 
			
		||||
include/eek-0.1/eek/eek-xkb-layout.h
 | 
			
		||||
lib/libeek-xkb.so
 | 
			
		||||
							
								
								
									
										65
									
								
								bindings/vala/eek-xkb-0.90/eek-xkb-0.90.gi
									
									
									
									
									
										Normal file
									
								
							
							
						
						@ -0,0 +1,65 @@
 | 
			
		||||
<?xml version="1.0"?>
 | 
			
		||||
<api version="1.0">
 | 
			
		||||
	<namespace name="EekXkb">
 | 
			
		||||
		<object name="EekXkbLayout" parent="GInitiallyUnowned" type-name="EekXkbLayout" get-type="eek_xkb_layout_get_type">
 | 
			
		||||
			<implements>
 | 
			
		||||
				<interface name="EekLayout"/>
 | 
			
		||||
			</implements>
 | 
			
		||||
			<method name="get_geometry" symbol="eek_xkb_layout_get_geometry">
 | 
			
		||||
				<return-type type="gchar*"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="layout" type="EekXkbLayout*"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</method>
 | 
			
		||||
			<method name="get_keycodes" symbol="eek_xkb_layout_get_keycodes">
 | 
			
		||||
				<return-type type="gchar*"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="layout" type="EekXkbLayout*"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</method>
 | 
			
		||||
			<method name="get_symbols" symbol="eek_xkb_layout_get_symbols">
 | 
			
		||||
				<return-type type="gchar*"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="layout" type="EekXkbLayout*"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</method>
 | 
			
		||||
			<constructor name="new" symbol="eek_xkb_layout_new">
 | 
			
		||||
				<return-type type="EekLayout*"/>
 | 
			
		||||
			</constructor>
 | 
			
		||||
			<method name="set_geometry" symbol="eek_xkb_layout_set_geometry">
 | 
			
		||||
				<return-type type="gboolean"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="layout" type="EekXkbLayout*"/>
 | 
			
		||||
					<parameter name="geometry" type="gchar*"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</method>
 | 
			
		||||
			<method name="set_keycodes" symbol="eek_xkb_layout_set_keycodes">
 | 
			
		||||
				<return-type type="gboolean"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="layout" type="EekXkbLayout*"/>
 | 
			
		||||
					<parameter name="keycodes" type="gchar*"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</method>
 | 
			
		||||
<!--
 | 
			
		||||
			<method name="set_names" symbol="eek_xkb_layout_set_names">
 | 
			
		||||
				<return-type type="gboolean"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="layout" type="EekXkbLayout*"/>
 | 
			
		||||
					<parameter name="names" type="XkbComponentNamesRec*"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</method>
 | 
			
		||||
-->
 | 
			
		||||
			<method name="set_symbols" symbol="eek_xkb_layout_set_symbols">
 | 
			
		||||
				<return-type type="gboolean"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="layout" type="EekXkbLayout*"/>
 | 
			
		||||
					<parameter name="symbols" type="gchar*"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</method>
 | 
			
		||||
			<property name="geometry" type="char*" readable="1" writable="1" construct="0" construct-only="0"/>
 | 
			
		||||
			<property name="keycodes" type="char*" readable="1" writable="1" construct="0" construct-only="0"/>
 | 
			
		||||
			<property name="symbols" type="char*" readable="1" writable="1" construct="0" construct-only="0"/>
 | 
			
		||||
		</object>
 | 
			
		||||
		<constant name="EEK_XKB_LAYOUT_H" type="int" value="1"/>
 | 
			
		||||
	</namespace>
 | 
			
		||||
</api>
 | 
			
		||||
							
								
								
									
										1
									
								
								bindings/vala/eek-xkb-0.90/eek-xkb-0.90.metadata
									
									
									
									
									
										Normal file
									
								
							
							
						
						@ -0,0 +1 @@
 | 
			
		||||
EekXkb cheader_filename="eek/eek-xkb.h"
 | 
			
		||||
							
								
								
									
										1
									
								
								bindings/vala/eek-xkb-0.90/eek-xkb-0.90.namespace
									
									
									
									
									
										Normal file
									
								
							
							
						
						@ -0,0 +1 @@
 | 
			
		||||
EekXkb
 | 
			
		||||
							
								
								
									
										3
									
								
								bindings/vala/eek-xkl-0.90/eek-xkl-0.90.files
									
									
									
									
									
										Normal file
									
								
							
							
						
						@ -0,0 +1,3 @@
 | 
			
		||||
include/eek-0.1/eek/eek-xkl-layout.h
 | 
			
		||||
lib/libeek-xkl.so
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										91
									
								
								bindings/vala/eek-xkl-0.90/eek-xkl-0.90.gi
									
									
									
									
									
										Normal file
									
								
							
							
						
						@ -0,0 +1,91 @@
 | 
			
		||||
<?xml version="1.0"?>
 | 
			
		||||
<api version="1.0">
 | 
			
		||||
	<namespace name="EekXkl">
 | 
			
		||||
		<object name="EekXklLayout" parent="EekXkbLayout" type-name="EekXklLayout" get-type="eek_xkl_layout_get_type">
 | 
			
		||||
			<implements>
 | 
			
		||||
				<interface name="EekLayout"/>
 | 
			
		||||
			</implements>
 | 
			
		||||
			<method name="disable_option" symbol="eek_xkl_layout_disable_option">
 | 
			
		||||
				<return-type type="gboolean"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="layout" type="EekXklLayout*"/>
 | 
			
		||||
					<parameter name="option" type="gchar*"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</method>
 | 
			
		||||
			<method name="enable_option" symbol="eek_xkl_layout_enable_option">
 | 
			
		||||
				<return-type type="gboolean"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="layout" type="EekXklLayout*"/>
 | 
			
		||||
					<parameter name="option" type="gchar*"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</method>
 | 
			
		||||
			<method name="get_layouts" symbol="eek_xkl_layout_get_layouts">
 | 
			
		||||
				<return-type type="gchar**"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="layout" type="EekXklLayout*"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</method>
 | 
			
		||||
			<method name="get_model" symbol="eek_xkl_layout_get_model">
 | 
			
		||||
				<return-type type="gchar*"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="layout" type="EekXklLayout*"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</method>
 | 
			
		||||
			<method name="get_option" symbol="eek_xkl_layout_get_option">
 | 
			
		||||
				<return-type type="gboolean"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="layout" type="EekXklLayout*"/>
 | 
			
		||||
					<parameter name="option" type="gchar*"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</method>
 | 
			
		||||
			<method name="get_options" symbol="eek_xkl_layout_get_options">
 | 
			
		||||
				<return-type type="gchar**"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="layout" type="EekXklLayout*"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</method>
 | 
			
		||||
			<method name="get_variants" symbol="eek_xkl_layout_get_variants">
 | 
			
		||||
				<return-type type="gchar**"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="layout" type="EekXklLayout*"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</method>
 | 
			
		||||
			<constructor name="new" symbol="eek_xkl_layout_new">
 | 
			
		||||
				<return-type type="EekLayout*"/>
 | 
			
		||||
			</constructor>
 | 
			
		||||
			<method name="set_layouts" symbol="eek_xkl_layout_set_layouts">
 | 
			
		||||
				<return-type type="gboolean"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="layout" type="EekXklLayout*"/>
 | 
			
		||||
					<parameter name="layouts" type="gchar**"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</method>
 | 
			
		||||
			<method name="set_model" symbol="eek_xkl_layout_set_model">
 | 
			
		||||
				<return-type type="gboolean"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="layout" type="EekXklLayout*"/>
 | 
			
		||||
					<parameter name="model" type="gchar*"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</method>
 | 
			
		||||
			<method name="set_options" symbol="eek_xkl_layout_set_options">
 | 
			
		||||
				<return-type type="gboolean"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="layout" type="EekXklLayout*"/>
 | 
			
		||||
					<parameter name="options" type="gchar**"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</method>
 | 
			
		||||
			<method name="set_variants" symbol="eek_xkl_layout_set_variants">
 | 
			
		||||
				<return-type type="gboolean"/>
 | 
			
		||||
				<parameters>
 | 
			
		||||
					<parameter name="layout" type="EekXklLayout*"/>
 | 
			
		||||
					<parameter name="variants" type="gchar**"/>
 | 
			
		||||
				</parameters>
 | 
			
		||||
			</method>
 | 
			
		||||
			<property name="layouts" type="GStrv*" readable="1" writable="1" construct="0" construct-only="0"/>
 | 
			
		||||
			<property name="model" type="char*" readable="1" writable="1" construct="0" construct-only="0"/>
 | 
			
		||||
			<property name="options" type="GStrv*" readable="1" writable="1" construct="0" construct-only="0"/>
 | 
			
		||||
			<property name="variants" type="GStrv*" readable="1" writable="1" construct="0" construct-only="0"/>
 | 
			
		||||
		</object>
 | 
			
		||||
		<constant name="EEK_XKL_LAYOUT_H" type="int" value="1"/>
 | 
			
		||||
	</namespace>
 | 
			
		||||
</api>
 | 
			
		||||
							
								
								
									
										1
									
								
								bindings/vala/eek-xkl-0.90/eek-xkl-0.90.metadata
									
									
									
									
									
										Normal file
									
								
							
							
						
						@ -0,0 +1 @@
 | 
			
		||||
EekXkl cheader_filename="eek/eek-xkl.h"
 | 
			
		||||
							
								
								
									
										1
									
								
								bindings/vala/eek-xkl-0.90/eek-xkl-0.90.namespace
									
									
									
									
									
										Normal file
									
								
							
							
						
						@ -0,0 +1 @@
 | 
			
		||||
EekXkl
 | 
			
		||||
							
								
								
									
										22
									
								
								cargo.sh
									
									
									
									
									
								
							
							
						
						@ -1,22 +0,0 @@
 | 
			
		||||
#!/bin/sh
 | 
			
		||||
 | 
			
		||||
# This script manages Cargo operations
 | 
			
		||||
# while keeping the artifact directory within the build tree
 | 
			
		||||
# instead of the source tree
 | 
			
		||||
 | 
			
		||||
set -e
 | 
			
		||||
 | 
			
		||||
SCRIPT_PATH="$(realpath "$0")"
 | 
			
		||||
SOURCE_DIR="$(dirname "$SCRIPT_PATH")"
 | 
			
		||||
 | 
			
		||||
CARGO_TARGET_DIR="$(pwd)"
 | 
			
		||||
export CARGO_TARGET_DIR
 | 
			
		||||
 | 
			
		||||
cd "$SOURCE_DIR"
 | 
			
		||||
 | 
			
		||||
# the 'run" command takes arguments at the end,
 | 
			
		||||
# so --manifest-path must not be last
 | 
			
		||||
CMD="$1"
 | 
			
		||||
shift
 | 
			
		||||
cargo "$CMD" --manifest-path "$CARGO_TARGET_DIR"/Cargo.toml "$@"
 | 
			
		||||
 | 
			
		||||
@ -1,49 +0,0 @@
 | 
			
		||||
#!/usr/bin/env python3
 | 
			
		||||
 | 
			
		||||
"""This script manages Cargo builds
 | 
			
		||||
while keeping the artifact directory within the build tree
 | 
			
		||||
instead of the source tree.
 | 
			
		||||
"""
 | 
			
		||||
 | 
			
		||||
from pathlib import Path
 | 
			
		||||
import shlex
 | 
			
		||||
import subprocess
 | 
			
		||||
import sys
 | 
			
		||||
 | 
			
		||||
source_dir = Path(__file__).absolute().parent
 | 
			
		||||
 | 
			
		||||
args = sys.argv[1:]
 | 
			
		||||
binary_dir = "debug"
 | 
			
		||||
 | 
			
		||||
if '--release' in args:
 | 
			
		||||
    binary_dir = "release"
 | 
			
		||||
 | 
			
		||||
# The file produced by Cargo will have a special name
 | 
			
		||||
try:
 | 
			
		||||
    i = args.index('--rename')
 | 
			
		||||
except ValueError:
 | 
			
		||||
    filename = None
 | 
			
		||||
else:
 | 
			
		||||
    args.pop(i)
 | 
			
		||||
    filename = args.pop(i)
 | 
			
		||||
 | 
			
		||||
# The target destination of the produced file is a positional argument
 | 
			
		||||
out_path = [arg for arg in args if not arg.startswith('--')]
 | 
			
		||||
if out_path:
 | 
			
		||||
    out_path = out_path[0]
 | 
			
		||||
    i = args.index(out_path)
 | 
			
		||||
    args.pop(i)    
 | 
			
		||||
 | 
			
		||||
subprocess.run(['sh', "{}/cargo.sh".format(source_dir.as_posix()), 'build']
 | 
			
		||||
    + args,
 | 
			
		||||
    check=True)
 | 
			
		||||
 | 
			
		||||
if out_path:
 | 
			
		||||
    out_path = Path(out_path).absolute()
 | 
			
		||||
    out_basename = out_path.name
 | 
			
		||||
    filename = filename or out_basename
 | 
			
		||||
    subprocess.run(['cp', '-a',
 | 
			
		||||
        './{}/{}'.format(binary_dir, filename),
 | 
			
		||||
        out_path],
 | 
			
		||||
        check=True)
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										268
									
								
								configure.ac
									
									
									
									
									
										Normal file
									
								
							
							
						
						@ -0,0 +1,268 @@
 | 
			
		||||
# Copyright (C) 2010-2011 Daiki Ueno <ueno@unixuser.org>
 | 
			
		||||
# Copyright (C) 2010-2011 Red Hat, Inc.
 | 
			
		||||
 | 
			
		||||
# This library is free software; you can redistribute it and/or
 | 
			
		||||
# modify it under the terms of the GNU Lesser General Public License
 | 
			
		||||
# as published by the Free Software Foundation; either version 2 of
 | 
			
		||||
# the License, or (at your option) any later version.
 | 
			
		||||
 | 
			
		||||
# This library is distributed in the hope that it will be useful, but
 | 
			
		||||
# WITHOUT ANY WARRANTY; without even the implied warranty of
 | 
			
		||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 | 
			
		||||
# Lesser General Public License for more details.
 | 
			
		||||
 | 
			
		||||
# You should have received a copy of the GNU Lesser General Public
 | 
			
		||||
# License along with this library; if not, write to the Free Software
 | 
			
		||||
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
 | 
			
		||||
# 02110-1301 USA
 | 
			
		||||
 | 
			
		||||
AC_PREREQ(2.63)
 | 
			
		||||
dnl AC_CONFIG_SRCDIR([configure.ac])
 | 
			
		||||
AC_CONFIG_MACRO_DIR([m4])
 | 
			
		||||
 | 
			
		||||
AC_INIT([eekboard], [0.90.5], [ueno@unixuser.org])
 | 
			
		||||
 | 
			
		||||
dnl Init automake
 | 
			
		||||
AM_INIT_AUTOMAKE
 | 
			
		||||
AM_MAINTAINER_MODE([enable])
 | 
			
		||||
AC_GNU_SOURCE
 | 
			
		||||
 | 
			
		||||
dnl Support silent build
 | 
			
		||||
m4_ifdef([AM_SILENT_RULES],[AM_SILENT_RULES([yes])])
 | 
			
		||||
 | 
			
		||||
dnl Check for programs
 | 
			
		||||
AC_PROG_CC
 | 
			
		||||
AM_PROG_CC_C_O
 | 
			
		||||
AC_PROG_CC_STDC
 | 
			
		||||
AC_PROG_INSTALL
 | 
			
		||||
AC_PROG_CXX
 | 
			
		||||
 | 
			
		||||
# define PACKAGE_VERSION_* variables
 | 
			
		||||
AM_DISABLE_STATIC
 | 
			
		||||
AC_ISC_POSIX
 | 
			
		||||
AC_HEADER_STDC
 | 
			
		||||
LT_INIT
 | 
			
		||||
IT_PROG_INTLTOOL([0.35.0])
 | 
			
		||||
 | 
			
		||||
AC_MSG_CHECKING([which gtk+ version to compile against])
 | 
			
		||||
AC_ARG_WITH([gtk],
 | 
			
		||||
  [AS_HELP_STRING([--with-gtk=2.0|3.0],[which gtk+ version to compile against (default: 2.0)])],
 | 
			
		||||
  [case "$with_gtk" in
 | 
			
		||||
     2.0|3.0) ;;
 | 
			
		||||
     *) AC_MSG_ERROR([invalid gtk version specified]) ;;
 | 
			
		||||
   esac],
 | 
			
		||||
  [with_gtk=2.0])
 | 
			
		||||
AC_MSG_RESULT([$with_gtk])
 | 
			
		||||
 | 
			
		||||
case "$with_gtk" in
 | 
			
		||||
  2.0) GTK_API_VERSION=2.0
 | 
			
		||||
       GTK_REQUIRED=2.14.0
 | 
			
		||||
       EEK_API_VERSION=0.90
 | 
			
		||||
       EEK_API_MAJOR_VERSION=0
 | 
			
		||||
       EEK_API_MINOR_VERSION=90
 | 
			
		||||
       EEK_API_PC_VERSION=0.90
 | 
			
		||||
       EEK_LIBRARY_SUFFIX="-$EEK_API_VERSION"
 | 
			
		||||
       ;;
 | 
			
		||||
  3.0) GTK_API_VERSION=3.0
 | 
			
		||||
       GTK_REQUIRED=2.91.0
 | 
			
		||||
       EEK_API_VERSION=0.90
 | 
			
		||||
       EEK_API_MAJOR_VERSION=0
 | 
			
		||||
       EEK_API_MINOR_VERSION=90
 | 
			
		||||
       EEK_API_PC_VERSION=0.90
 | 
			
		||||
       EEK_LIBRARY_SUFFIX="-$EEK_API_VERSION"
 | 
			
		||||
       ;;
 | 
			
		||||
esac
 | 
			
		||||
 | 
			
		||||
AC_SUBST([GTK_API_VERSION])
 | 
			
		||||
AC_SUBST([EEK_API_VERSION])
 | 
			
		||||
AC_SUBST([EEK_API_MAJOR_VERSION])
 | 
			
		||||
AC_SUBST([EEK_API_MINOR_VERSION])
 | 
			
		||||
AC_SUBST([EEK_API_PC_VERSION])
 | 
			
		||||
AC_SUBST([EEK_LIBRARY_SUFFIX])
 | 
			
		||||
AC_SUBST([EEK_LIBRARY_SUFFIX_U],[AS_TR_SH([$EEK_LIBRARY_SUFFIX])])
 | 
			
		||||
 | 
			
		||||
AM_CONDITIONAL([HAVE_GTK_2],[test "$with_gtk" = "2.0"])
 | 
			
		||||
AM_CONDITIONAL([HAVE_GTK_3],[test "$with_gtk" = "3.0"])
 | 
			
		||||
 | 
			
		||||
AM_PATH_GLIB_2_0
 | 
			
		||||
PKG_CHECK_MODULES([GLIB2], [glib-2.0 >= 2.25.4], ,
 | 
			
		||||
  [AC_MSG_ERROR([GLib2 not found])])
 | 
			
		||||
PKG_CHECK_MODULES([GIO2], [gio-2.0], ,
 | 
			
		||||
  [AC_MSG_ERROR([Gio2 not found])])
 | 
			
		||||
PKG_CHECK_MODULES([PANGOCAIRO], [pangocairo], ,
 | 
			
		||||
  [AC_MSG_ERROR([PangoCairo not found])])
 | 
			
		||||
PKG_CHECK_MODULES([GTK], [
 | 
			
		||||
  gtk+-$GTK_API_VERSION >= $GTK_REQUIRED
 | 
			
		||||
  gdk-$GTK_API_VERSION >= $GTK_REQUIRED], ,
 | 
			
		||||
  [AC_MSG_ERROR([GTK not found])])
 | 
			
		||||
PKG_CHECK_MODULES([GCONF2], [gconf-2.0], ,
 | 
			
		||||
  [AC_MSG_ERROR([GConf not found])])
 | 
			
		||||
PKG_CHECK_MODULES([XKB], [x11], ,
 | 
			
		||||
  [AC_MSG_ERROR([XKB support not found])])
 | 
			
		||||
PKG_CHECK_MODULES([LIBXKLAVIER], [libxklavier x11], ,
 | 
			
		||||
  [AC_MSG_ERROR([Libxklavier not found])])
 | 
			
		||||
PKG_CHECK_MODULES([LIBCROCO], [libcroco-0.6], ,
 | 
			
		||||
  [AC_MSG_ERROR([libcroco not found])])
 | 
			
		||||
 | 
			
		||||
dnl use libfakekey to generate key events
 | 
			
		||||
AC_MSG_CHECKING([whether you enable fakekey])
 | 
			
		||||
AC_ARG_ENABLE(fakekey,
 | 
			
		||||
              AS_HELP_STRING([--enable-fakekey=no/yes],
 | 
			
		||||
                             [Enable fakekey default=yes]),,
 | 
			
		||||
              enable_fakekey=yes)
 | 
			
		||||
 | 
			
		||||
if test x$enable_fakekey = xyes; then
 | 
			
		||||
  PKG_CHECK_MODULES([FAKEKEY], [libfakekey], ,
 | 
			
		||||
    [AC_MSG_ERROR([fakekey not found])])
 | 
			
		||||
  AC_DEFINE([HAVE_FAKEKEY], [1], [Define if fakekey is found])
 | 
			
		||||
fi
 | 
			
		||||
AM_CONDITIONAL(ENABLE_FAKEKEY, [test x$enable_fakekey = xyes])
 | 
			
		||||
AC_MSG_RESULT($enable_fakekey)
 | 
			
		||||
 | 
			
		||||
dnl use AT-SPI to capture focus/keystroke events
 | 
			
		||||
AC_MSG_CHECKING([whether you enable AT-SPI event handling])
 | 
			
		||||
AC_ARG_ENABLE(cspi,
 | 
			
		||||
              AS_HELP_STRING([--enable-cspi=no/yes],
 | 
			
		||||
                             [Enable AT-SPI event handling default=yes]),,
 | 
			
		||||
              enable_cspi=yes)
 | 
			
		||||
 | 
			
		||||
if test x$enable_cspi = xyes; then
 | 
			
		||||
  PKG_CHECK_MODULES([CSPI], [cspi-1.0], ,
 | 
			
		||||
    [AC_MSG_ERROR([AT-SPI C not found])])
 | 
			
		||||
  AC_DEFINE([HAVE_CSPI], [1], [Define if CSPI is found])
 | 
			
		||||
fi
 | 
			
		||||
AC_MSG_RESULT($enable_cspi)
 | 
			
		||||
AM_CONDITIONAL(ENABLE_CSPI, [test x$enable_cspi = xyes])
 | 
			
		||||
 | 
			
		||||
dnl Python language binding
 | 
			
		||||
AC_MSG_CHECKING([whether you enable Python language support])
 | 
			
		||||
AC_ARG_ENABLE(python,
 | 
			
		||||
              AS_HELP_STRING([--enable-python=no/yes],
 | 
			
		||||
                             [Enable Python language binding default=yes]),,
 | 
			
		||||
              enable_python=yes)
 | 
			
		||||
AC_MSG_RESULT($enable_python)
 | 
			
		||||
AM_CONDITIONAL(ENABLE_PYTHON, [test x$enable_python = xyes])
 | 
			
		||||
 | 
			
		||||
if test x"$enable_python" = x"yes"; then
 | 
			
		||||
    # check python
 | 
			
		||||
    AM_PATH_PYTHON([2.5])
 | 
			
		||||
    AC_PATH_PROG(PYTHON_CONFIG, python$PYTHON_VERSION-config)
 | 
			
		||||
    if test x"$PYTHON_CONFIG" = x""; then
 | 
			
		||||
        AC_PATH_PROG(PYTHON_CONFIG, python-config)
 | 
			
		||||
    fi
 | 
			
		||||
    if test x"$PYTHON_CONFIG" != x""; then
 | 
			
		||||
        PYTHON_CFLAGS=`$PYTHON_CONFIG --includes`
 | 
			
		||||
        PYTHON_LIBS=`$PYTHON_CONFIG --libs`
 | 
			
		||||
    else
 | 
			
		||||
        PYTHON_CFLAGS=`$PYTHON $srcdir/python-config.py --includes`
 | 
			
		||||
        PYTHON_LIBS=`$PYTHON $srcdir/python-config.py --libs`
 | 
			
		||||
    fi
 | 
			
		||||
    PYTHON_INCLUDES="$PYTHON_CFLAGS"
 | 
			
		||||
    AC_SUBST(PYTHON_CFLAGS)
 | 
			
		||||
    AC_SUBST(PYTHON_INCLUDES)
 | 
			
		||||
    AC_SUBST(PYTHON_LIBS)
 | 
			
		||||
else
 | 
			
		||||
    enable_python="no (disabled, use --enable-python to enable)"
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
dnl Vala langauge binding
 | 
			
		||||
AC_MSG_CHECKING([whether you enable Vala language support])
 | 
			
		||||
AC_ARG_ENABLE(vala,
 | 
			
		||||
              AS_HELP_STRING([--enable-vala=no/yes],
 | 
			
		||||
                             [Enable Vala language binding default=yes]),,
 | 
			
		||||
              enable_vala=yes)
 | 
			
		||||
AC_MSG_RESULT($enable_vala)
 | 
			
		||||
AM_CONDITIONAL(ENABLE_VALA, [test x$enable_vala = xyes])
 | 
			
		||||
 | 
			
		||||
dnl standalone application
 | 
			
		||||
AC_MSG_CHECKING([whether you enable eekboard])
 | 
			
		||||
AC_ARG_ENABLE(eekboard,
 | 
			
		||||
              AS_HELP_STRING([--enable-eekboard=no/yes],
 | 
			
		||||
                             [Build standalone application "ekboard" default=yes]),,
 | 
			
		||||
              enable_eekboard=yes)
 | 
			
		||||
AC_MSG_RESULT($enable_eekboard)
 | 
			
		||||
AM_CONDITIONAL(ENABLE_EEKBOARD, [test x$enable_eekboard = xyes])
 | 
			
		||||
 | 
			
		||||
dnl Clutter
 | 
			
		||||
AC_MSG_CHECKING([whether you enable Clutter])
 | 
			
		||||
AC_ARG_ENABLE(clutter,
 | 
			
		||||
              AS_HELP_STRING([--enable-clutter=no/yes],
 | 
			
		||||
                             [Enable Clutter user interface default=yes]),,
 | 
			
		||||
              enable_clutter=no)
 | 
			
		||||
AC_MSG_RESULT($enable_clutter)
 | 
			
		||||
 | 
			
		||||
if test x$enable_clutter = xyes; then
 | 
			
		||||
  PKG_CHECK_MODULES([CLUTTER], [clutter-1.0], ,
 | 
			
		||||
    [AC_MSG_ERROR([Clutter not found -- install it or add --disable-clutter])])
 | 
			
		||||
  AC_DEFINE([HAVE_CLUTTER], [1], [Define if Clutter is found])
 | 
			
		||||
  have_clutter_gtk=0
 | 
			
		||||
  need_swap_event_workaround=0
 | 
			
		||||
  PKG_CHECK_MODULES([CLUTTER_GTK], [clutter-gtk-1.0], [have_clutter_gtk=1],
 | 
			
		||||
    [PKG_CHECK_MODULES([CLUTTER_GTK], [clutter-gtk-0.10 clutter-x11-1.0],
 | 
			
		||||
      [have_clutter_gtk=1; need_swap_event_workaround=1])])
 | 
			
		||||
  AC_DEFINE_UNQUOTED([HAVE_CLUTTER_GTK], $have_clutter_gtk,
 | 
			
		||||
    [Define if Clutter-Gtk is found])
 | 
			
		||||
  AC_DEFINE_UNQUOTED([NEED_SWAP_EVENT_WORKAROUND], $need_swap_event_workaround,
 | 
			
		||||
    [Define if GLX_INTEL_swap_event work around is needed])
 | 
			
		||||
fi
 | 
			
		||||
AM_CONDITIONAL(ENABLE_CLUTTER, [test x$enable_clutter = xyes])
 | 
			
		||||
 | 
			
		||||
GTK_DOC_CHECK([1.14],[--flavour no-tmpl])
 | 
			
		||||
 | 
			
		||||
dnl to re-generate eek/*-keysym-labels.txt
 | 
			
		||||
AC_CHECK_PROGS([PYTHON], [python])
 | 
			
		||||
 | 
			
		||||
dnl define GETTEXT_* variables
 | 
			
		||||
GETTEXT_PACKAGE=$PACKAGE
 | 
			
		||||
AC_SUBST(GETTEXT_PACKAGE)
 | 
			
		||||
AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE,"$GETTEXT_PACKAGE", [Define to the read-only architecture-independent data directory.])
 | 
			
		||||
AM_GLIB_GNU_GETTEXT
 | 
			
		||||
AM_GLIB_DEFINE_LOCALEDIR(EEKBOARD_LOCALEDIR)
 | 
			
		||||
 | 
			
		||||
GOBJECT_INTROSPECTION_CHECK([0.9.0])
 | 
			
		||||
 | 
			
		||||
AC_CONFIG_HEADERS([config.h])
 | 
			
		||||
AC_CONFIG_FILES([Makefile
 | 
			
		||||
eek/Makefile
 | 
			
		||||
eekboard/Makefile
 | 
			
		||||
src/Makefile
 | 
			
		||||
tests/Makefile
 | 
			
		||||
bindings/Makefile
 | 
			
		||||
bindings/python/Makefile
 | 
			
		||||
bindings/python/eekboard/Makefile
 | 
			
		||||
bindings/vala/Makefile
 | 
			
		||||
docs/Makefile
 | 
			
		||||
docs/reference/Makefile
 | 
			
		||||
docs/reference/eek/Makefile
 | 
			
		||||
docs/reference/eekboard/Makefile
 | 
			
		||||
po/Makefile.in
 | 
			
		||||
data/Makefile
 | 
			
		||||
data/icons/Makefile
 | 
			
		||||
data/icons/16x16/Makefile
 | 
			
		||||
data/icons/22x22/Makefile
 | 
			
		||||
data/icons/24x24/Makefile
 | 
			
		||||
data/icons/32x32/Makefile
 | 
			
		||||
data/icons/48x48/Makefile
 | 
			
		||||
data/icons/scalable/Makefile
 | 
			
		||||
data/themes/Makefile
 | 
			
		||||
data/keyboards/Makefile
 | 
			
		||||
examples/Makefile
 | 
			
		||||
examples/eekboard-inscript/Makefile
 | 
			
		||||
examples/simple-client/Makefile
 | 
			
		||||
eek/eek-${EEK_API_VERSION}.pc
 | 
			
		||||
eek/eek-clutter-${EEK_API_VERSION}.pc
 | 
			
		||||
eek/eek-gtk-${EEK_API_VERSION}.pc
 | 
			
		||||
eek/eek-xkb-${EEK_API_VERSION}.pc
 | 
			
		||||
eek/eek-xkl-${EEK_API_VERSION}.pc
 | 
			
		||||
eekboard/eekboard-${EEK_API_VERSION}.pc])
 | 
			
		||||
AC_OUTPUT
 | 
			
		||||
AC_MSG_RESULT([
 | 
			
		||||
Build options:
 | 
			
		||||
  Version                   $VERSION
 | 
			
		||||
  Install prefix            $prefix
 | 
			
		||||
  Build shared libs         $enable_shared
 | 
			
		||||
  Build static libs         $enable_static
 | 
			
		||||
  CFLAGS                    $CFLAGS
 | 
			
		||||
  Build vala binding        $enable_vala
 | 
			
		||||
  Build document            $enable_gtk_doc
 | 
			
		||||
])
 | 
			
		||||
							
								
								
									
										6
									
								
								data/Makefile.am
									
									
									
									
									
										Normal file
									
								
							
							
						
						@ -0,0 +1,6 @@
 | 
			
		||||
SUBDIRS = icons themes keyboards
 | 
			
		||||
 | 
			
		||||
desktopdir = $(datadir)/applications
 | 
			
		||||
desktop_in_files = eekboard.desktop.in
 | 
			
		||||
dist_desktop_DATA = $(desktop_in_files:.desktop.in=.desktop)
 | 
			
		||||
@INTLTOOL_DESKTOP_RULE@
 | 
			
		||||
@ -1,33 +0,0 @@
 | 
			
		||||
/* Theme independent styles */
 | 
			
		||||
 | 
			
		||||
sq_view {
 | 
			
		||||
    font-family: cantarell, sans-serif;
 | 
			
		||||
    font-size: 1.5em;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
sq_button {
 | 
			
		||||
    border-radius: 4px;
 | 
			
		||||
    margin: 2px;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
sq_view.wide sq_button {
 | 
			
		||||
    margin: 3px;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
sq_button.latched,
 | 
			
		||||
sq_button.locked {
 | 
			
		||||
    font-weight: bold;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
sq_button.action {
 | 
			
		||||
    font-size: 0.75em;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
sq_button.small {
 | 
			
		||||
    font-size: 0.5em;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
sq_view.pin sq_button {
 | 
			
		||||
    border-radius: 0px;
 | 
			
		||||
    margin: 1px 1px 1px 1px;
 | 
			
		||||
}
 | 
			
		||||
@ -1,20 +0,0 @@
 | 
			
		||||
<!DOCTYPE node PUBLIC "-//freedesktop//DTD D-BUS Object Introspection 1.0//EN"
 | 
			
		||||
"http://www.freedesktop.org/standards/dbus/1.0/introspect.dtd">
 | 
			
		||||
<node xmlns:doc="http://www.freedesktop.org/dbus/1.0/doc.dtd">
 | 
			
		||||
  <interface name="sm.puri.OSK0">
 | 
			
		||||
    <method name="SetVisible">
 | 
			
		||||
      <arg name="visible" type="b" direction="in"/>
 | 
			
		||||
      <doc:doc><doc:description>
 | 
			
		||||
        Switch keyboard visibility
 | 
			
		||||
      </doc:description></doc:doc>
 | 
			
		||||
    </method>
 | 
			
		||||
    <method name="GetVisible">
 | 
			
		||||
      <arg name="visible" type="b" direction="out"/>
 | 
			
		||||
      <doc:doc><doc:description>
 | 
			
		||||
        Get keyboard visibility
 | 
			
		||||
      </doc:description></doc:doc>
 | 
			
		||||
    </method>
 | 
			
		||||
    <property name="Visible" type="b" access="read">
 | 
			
		||||
    </property>
 | 
			
		||||
  </interface>
 | 
			
		||||
</node>
 | 
			
		||||
							
								
								
									
										9
									
								
								data/eekboard.desktop.in
									
									
									
									
									
										Normal file
									
								
							
							
						
						@ -0,0 +1,9 @@
 | 
			
		||||
[Desktop Entry]
 | 
			
		||||
Name=Eekboard
 | 
			
		||||
GenericName=Eekboard Virtual Keyboard
 | 
			
		||||
Comment=Virtual Keyboard
 | 
			
		||||
Exec=eekboard-desktop-client
 | 
			
		||||
Icon=eekboard
 | 
			
		||||
Terminal=false
 | 
			
		||||
Type=Application
 | 
			
		||||
Categories=GTK;Utility;
 | 
			
		||||
							
								
								
									
										16
									
								
								data/icons/16x16/Makefile.am
									
									
									
									
									
										Normal file
									
								
							
							
						
						@ -0,0 +1,16 @@
 | 
			
		||||
size = 16x16
 | 
			
		||||
 | 
			
		||||
icondir = $(datadir)/icons/hicolor/$(size)/apps
 | 
			
		||||
dist_icon_DATA = eekboard.png
 | 
			
		||||
 | 
			
		||||
gtk_update_icon_cache = gtk-update-icon-cache -f -t $(datadir)/icons/hicolor
 | 
			
		||||
 | 
			
		||||
install-data-hook:
 | 
			
		||||
	@-if test -z "$(DESTDIR)"; then			\
 | 
			
		||||
		echo "Updating Gtk icon cache.";	\
 | 
			
		||||
		$(gtk_update_icon_cache);		\
 | 
			
		||||
	else						\
 | 
			
		||||
		echo "*** Icon cache not updated.  After install, run this:"; \
 | 
			
		||||
		echo "***   $(gtk_update_icon_cache)";	\
 | 
			
		||||
	fi
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										
											BIN
										
									
								
								data/icons/16x16/eekboard.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| 
		 After Width: | Height: | Size: 606 B  | 
							
								
								
									
										16
									
								
								data/icons/22x22/Makefile.am
									
									
									
									
									
										Normal file
									
								
							
							
						
						@ -0,0 +1,16 @@
 | 
			
		||||
size = 22x22
 | 
			
		||||
 | 
			
		||||
icondir = $(datadir)/icons/hicolor/$(size)/apps
 | 
			
		||||
dist_icon_DATA = eekboard.png
 | 
			
		||||
 | 
			
		||||
gtk_update_icon_cache = gtk-update-icon-cache -f -t $(datadir)/icons/hicolor
 | 
			
		||||
 | 
			
		||||
install-data-hook:
 | 
			
		||||
	@-if test -z "$(DESTDIR)"; then			\
 | 
			
		||||
		echo "Updating Gtk icon cache.";	\
 | 
			
		||||
		$(gtk_update_icon_cache);		\
 | 
			
		||||
	else						\
 | 
			
		||||
		echo "*** Icon cache not updated.  After install, run this:"; \
 | 
			
		||||
		echo "***   $(gtk_update_icon_cache)";	\
 | 
			
		||||
	fi
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										
											BIN
										
									
								
								data/icons/22x22/eekboard.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| 
		 After Width: | Height: | Size: 892 B  | 
							
								
								
									
										16
									
								
								data/icons/24x24/Makefile.am
									
									
									
									
									
										Normal file
									
								
							
							
						
						@ -0,0 +1,16 @@
 | 
			
		||||
size = 24x24
 | 
			
		||||
 | 
			
		||||
icondir = $(datadir)/icons/hicolor/$(size)/apps
 | 
			
		||||
dist_icon_DATA = eekboard.png
 | 
			
		||||
 | 
			
		||||
gtk_update_icon_cache = gtk-update-icon-cache -f -t $(datadir)/icons/hicolor
 | 
			
		||||
 | 
			
		||||
install-data-hook:
 | 
			
		||||
	@-if test -z "$(DESTDIR)"; then			\
 | 
			
		||||
		echo "Updating Gtk icon cache.";	\
 | 
			
		||||
		$(gtk_update_icon_cache);		\
 | 
			
		||||
	else						\
 | 
			
		||||
		echo "*** Icon cache not updated.  After install, run this:"; \
 | 
			
		||||
		echo "***   $(gtk_update_icon_cache)";	\
 | 
			
		||||
	fi
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										
											BIN
										
									
								
								data/icons/24x24/eekboard.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| 
		 After Width: | Height: | Size: 957 B  | 
							
								
								
									
										16
									
								
								data/icons/32x32/Makefile.am
									
									
									
									
									
										Normal file
									
								
							
							
						
						@ -0,0 +1,16 @@
 | 
			
		||||
size = 32x32
 | 
			
		||||
 | 
			
		||||
icondir = $(datadir)/icons/hicolor/$(size)/apps
 | 
			
		||||
dist_icon_DATA = eekboard.png
 | 
			
		||||
 | 
			
		||||
gtk_update_icon_cache = gtk-update-icon-cache -f -t $(datadir)/icons/hicolor
 | 
			
		||||
 | 
			
		||||
install-data-hook:
 | 
			
		||||
	@-if test -z "$(DESTDIR)"; then			\
 | 
			
		||||
		echo "Updating Gtk icon cache.";	\
 | 
			
		||||
		$(gtk_update_icon_cache);		\
 | 
			
		||||
	else						\
 | 
			
		||||
		echo "*** Icon cache not updated.  After install, run this:"; \
 | 
			
		||||
		echo "***   $(gtk_update_icon_cache)";	\
 | 
			
		||||
	fi
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										
											BIN
										
									
								
								data/icons/32x32/eekboard.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| 
		 After Width: | Height: | Size: 1.5 KiB  | 
							
								
								
									
										16
									
								
								data/icons/48x48/Makefile.am
									
									
									
									
									
										Normal file
									
								
							
							
						
						@ -0,0 +1,16 @@
 | 
			
		||||
size = 48x48
 | 
			
		||||
 | 
			
		||||
icondir = $(datadir)/icons/hicolor/$(size)/apps
 | 
			
		||||
dist_icon_DATA = eekboard.png
 | 
			
		||||
 | 
			
		||||
gtk_update_icon_cache = gtk-update-icon-cache -f -t $(datadir)/icons/hicolor
 | 
			
		||||
 | 
			
		||||
install-data-hook:
 | 
			
		||||
	@-if test -z "$(DESTDIR)"; then			\
 | 
			
		||||
		echo "Updating Gtk icon cache.";	\
 | 
			
		||||
		$(gtk_update_icon_cache);		\
 | 
			
		||||
	else						\
 | 
			
		||||
		echo "*** Icon cache not updated.  After install, run this:"; \
 | 
			
		||||
		echo "***   $(gtk_update_icon_cache)";	\
 | 
			
		||||
	fi
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										
											BIN
										
									
								
								data/icons/48x48/eekboard.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| 
		 After Width: | Height: | Size: 2.7 KiB  | 
							
								
								
									
										1
									
								
								data/icons/Makefile.am
									
									
									
									
									
										Normal file
									
								
							
							
						
						@ -0,0 +1 @@
 | 
			
		||||
SUBDIRS = 16x16 22x22 24x24 32x32 48x48 scalable
 | 
			
		||||
@ -1,10 +0,0 @@
 | 
			
		||||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
 | 
			
		||||
 | 
			
		||||
<svg xmlns="http://www.w3.org/2000/svg" height="16" width="16"
 | 
			
		||||
     version="1.1" viewBox="0 0 24 24">
 | 
			
		||||
   
 | 
			
		||||
    <path d="M 24,1 L 24,10 C 24,15 20,17 17,17 L 7,17 L 10,20 L 10,23
 | 
			
		||||
             L 7,23 L 0,15 L 7,7 L 10,7 L 10,10 L 7,13 L 17,13
 | 
			
		||||
             C 19,13 20,12 20,10 L 20,1 Z"
 | 
			
		||||
          stroke="none" fill="black" />
 | 
			
		||||
</svg>
 | 
			
		||||
| 
		 Before Width: | Height: | Size: 388 B  | 
@ -1,8 +0,0 @@
 | 
			
		||||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
 | 
			
		||||
 | 
			
		||||
<svg xmlns="http://www.w3.org/2000/svg" height="16" width="16"
 | 
			
		||||
     version="1.1" viewBox="0 0 24 24">
 | 
			
		||||
   
 | 
			
		||||
    <path d="M 12,2 L 22,14 L 16,14 L 16,22 L 8,22 L 8,14 L 2,14 Z"
 | 
			
		||||
          stroke="none" fill="black" />
 | 
			
		||||
</svg>
 | 
			
		||||
| 
		 Before Width: | Height: | Size: 279 B  | 
@ -1,52 +0,0 @@
 | 
			
		||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
 | 
			
		||||
<svg
 | 
			
		||||
   xmlns:dc="http://purl.org/dc/elements/1.1/"
 | 
			
		||||
   xmlns:cc="http://creativecommons.org/ns#"
 | 
			
		||||
   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
 | 
			
		||||
   xmlns:svg="http://www.w3.org/2000/svg"
 | 
			
		||||
   xmlns="http://www.w3.org/2000/svg"
 | 
			
		||||
   id="svg4043"
 | 
			
		||||
   version="1.1"
 | 
			
		||||
   viewBox="0 0 4.2333331 4.2333093"
 | 
			
		||||
   height="4.2333093mm"
 | 
			
		||||
   width="4.2333331mm">
 | 
			
		||||
  <defs
 | 
			
		||||
     id="defs4037" />
 | 
			
		||||
  <metadata
 | 
			
		||||
     id="metadata4040">
 | 
			
		||||
    <rdf:RDF>
 | 
			
		||||
      <cc:Work
 | 
			
		||||
         rdf:about="">
 | 
			
		||||
        <dc:format>image/svg+xml</dc:format>
 | 
			
		||||
        <dc:type
 | 
			
		||||
           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
 | 
			
		||||
        <dc:title></dc:title>
 | 
			
		||||
      </cc:Work>
 | 
			
		||||
    </rdf:RDF>
 | 
			
		||||
  </metadata>
 | 
			
		||||
  <g
 | 
			
		||||
     transform="translate(-86.329776,-68.097636)"
 | 
			
		||||
     id="layer1">
 | 
			
		||||
    <g
 | 
			
		||||
       style="stroke-width:1.00004983;fill:#2e3436;fill-opacity:1"
 | 
			
		||||
       transform="matrix(0.99990029,0,0,1,-7.1823833,-1.8799927)"
 | 
			
		||||
       id="g842">
 | 
			
		||||
      <g
 | 
			
		||||
         style="stroke-width:1.00004983;fill:#2e3436;fill-opacity:1"
 | 
			
		||||
         id="g836">
 | 
			
		||||
        <path
 | 
			
		||||
           id="path5166"
 | 
			
		||||
           d="m 95.636719,69.978516 c -1.165869,0 -2.115235,0.949365 -2.115235,2.115234 0,1.165869 0.949366,2.117188 2.115235,2.117188 1.165869,0 2.117187,-0.951319 2.117187,-2.117188 0,-1.165869 -0.951318,-2.115234 -2.117187,-2.115234 z m 0,0.529296 c 0.879886,0 1.58789,0.706052 1.58789,1.585938 0,0.879886 -0.708004,1.587891 -1.58789,1.587891 -0.879886,0 -1.585938,-0.708005 -1.585938,-1.587891 0,-0.879886 0.706052,-1.585937 1.585938,-1.585938 z"
 | 
			
		||||
           style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:#2e3436;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.52919304;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate" />
 | 
			
		||||
      </g>
 | 
			
		||||
      <path
 | 
			
		||||
         style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:#2e3436;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.26459652;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
 | 
			
		||||
         d="m 95.636719,70.109375 c -0.144398,0 -0.27248,0.07793 -0.373047,0.189453 -0.100567,0.111521 -0.18209,0.261405 -0.25,0.439453 -0.135821,0.356096 -0.214844,0.830395 -0.214844,1.355469 0,0.525074 0.07902,1.001326 0.214844,1.357422 0.06791,0.178048 0.149433,0.327932 0.25,0.439453 0.100567,0.111521 0.228649,0.1875 0.373047,0.1875 0.144397,0 0.27248,-0.07598 0.373047,-0.1875 0.100566,-0.111521 0.182089,-0.261405 0.25,-0.439453 0.135821,-0.356096 0.216797,-0.832348 0.216796,-1.357422 0,-0.525074 -0.08097,-0.999373 -0.216796,-1.355469 -0.06791,-0.178048 -0.149434,-0.327932 -0.25,-0.439453 -0.100567,-0.111521 -0.22865,-0.189453 -0.373047,-0.189453 z m 0,0.265625 c 0.05067,0 0.109272,0.02564 0.177734,0.101562 0.06846,0.07592 0.139293,0.198356 0.199219,0.355469 0.119851,0.314227 0.197266,0.763915 0.197266,1.261719 0,0.497804 -0.07742,0.949446 -0.197266,1.263672 -0.05993,0.157113 -0.130756,0.279549 -0.199219,0.355469 -0.06846,0.07592 -0.12706,0.101562 -0.177734,0.101562 -0.05067,0 -0.107319,-0.02564 -0.175781,-0.101562 -0.06846,-0.07592 -0.139294,-0.198356 -0.199219,-0.355469 C 95.141867,73.043196 95.0625,72.591554 95.0625,72.09375 c 0,-0.497804 0.07937,-0.947492 0.199219,-1.261719 0.05993,-0.157113 0.130756,-0.279549 0.199219,-0.355469 C 95.5294,70.400643 95.586045,70.375 95.636719,70.375 Z"
 | 
			
		||||
         id="circle5168" />
 | 
			
		||||
      <path
 | 
			
		||||
         style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:#2e3436;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.26459652;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
 | 
			
		||||
         d="m 93.697266,71.962891 v 0.263671 h 3.96875 v -0.263671 z"
 | 
			
		||||
         id="path5170" />
 | 
			
		||||
    </g>
 | 
			
		||||
  </g>
 | 
			
		||||
</svg>
 | 
			
		||||
| 
		 Before Width: | Height: | Size: 6.6 KiB  | 
							
								
								
									
										14
									
								
								data/icons/scalable/Makefile.am
									
									
									
									
									
										Normal file
									
								
							
							
						
						@ -0,0 +1,14 @@
 | 
			
		||||
icondir = $(datadir)/icons/hicolor/scalable/apps
 | 
			
		||||
dist_icon_DATA = eekboard.svg
 | 
			
		||||
 | 
			
		||||
gtk_update_icon_cache = gtk-update-icon-cache -f -t $(datadir)/icons/hicolor
 | 
			
		||||
 | 
			
		||||
install-data-hook:
 | 
			
		||||
	@-if test -z "$(DESTDIR)"; then			\
 | 
			
		||||
		echo "Updating Gtk icon cache.";	\
 | 
			
		||||
		$(gtk_update_icon_cache);		\
 | 
			
		||||
	else						\
 | 
			
		||||
		echo "*** Icon cache not updated.  After install, run this:"; \
 | 
			
		||||
		echo "***   $(gtk_update_icon_cache)";	\
 | 
			
		||||
	fi
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										3486
									
								
								data/icons/scalable/eekboard.svg
									
									
									
									
									
										Normal file
									
								
							
							
						
						| 
		 After Width: | Height: | Size: 472 KiB  | 
							
								
								
									
										2
									
								
								data/keyboards/Makefile.am
									
									
									
									
									
										Normal file
									
								
							
							
						
						@ -0,0 +1,2 @@
 | 
			
		||||
keyboarddir = $(pkgdatadir)/keyboards
 | 
			
		||||
dist_keyboard_DATA = us-qwerty.xml
 | 
			
		||||
@ -1,84 +0,0 @@
 | 
			
		||||
# Armenian layout created by Norayr Chilingarian
 | 
			
		||||
# Yerevan
 | 
			
		||||
# Oct 2021
 | 
			
		||||
---
 | 
			
		||||
outlines:
 | 
			
		||||
    default: { width: 35.33, height: 52 }
 | 
			
		||||
    altline: { width: 52.67, height: 52 }
 | 
			
		||||
    wide: { width: 32, height: 32 }
 | 
			
		||||
    spaceline: { width: 142, height: 52 }
 | 
			
		||||
    special: { width: 44, height: 52 }
 | 
			
		||||
 | 
			
		||||
views:
 | 
			
		||||
    base:
 | 
			
		||||
        - "՝ է թ փ ձ ջ ւ և ռ չ ճ ֊ ժ"
 | 
			
		||||
        - "ք ո ե ր տ ը ւ ի օ պ խ ծ շ"
 | 
			
		||||
        - "ա ս դ ֆ գ հ յ կ լ ․"
 | 
			
		||||
        - "Shift_L զ ղ ց վ բ ն մ ՛ BackSpace"
 | 
			
		||||
        - "show_numbers preferences         space        period Return"
 | 
			
		||||
    upper:
 | 
			
		||||
        - "՝ Է Թ Փ Ձ Ջ Ւ և Ռ Չ Ճ — Ժ"
 | 
			
		||||
        - "Ք Ո Ե Ր Տ Ը Ւ Ի Օ Պ Խ Ծ Շ"
 | 
			
		||||
        - "Ա Ս Դ Ֆ Գ Հ Յ Կ Լ ։"
 | 
			
		||||
        - "Shift_L Զ Ղ Ց Վ Բ Ն Մ ՞ BackSpace"
 | 
			
		||||
        - "show_numbers preferences         space        period Return"
 | 
			
		||||
    numbers:
 | 
			
		||||
        - "show_symbols   , \" ' colon ; ! ?  BackSpace"
 | 
			
		||||
        - "ﬓ  ﬔ  ﬕ  ﬖ  ﬗ   ՟ և"
 | 
			
		||||
        - "1 2 3 4 5 6 7 8 9 0"
 | 
			
		||||
        - "show_letters preferences         space        period Return"
 | 
			
		||||
    symbols:
 | 
			
		||||
        - "show_numbers_from_symbols   \\ % < > = [ ]  BackSpace"
 | 
			
		||||
        - "* # $ / & - _ + ( )"
 | 
			
		||||
        - "© ® £ € ¥ ^ ° @ { }"
 | 
			
		||||
        - "~ ` | · √ π τ ÷ × ¶"
 | 
			
		||||
        - "show_letters preferences         space        period Return"
 | 
			
		||||
 | 
			
		||||
buttons:
 | 
			
		||||
    Shift_L:
 | 
			
		||||
        action:
 | 
			
		||||
            locking:
 | 
			
		||||
                lock_view: "upper"
 | 
			
		||||
                unlock_view: "base"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        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: "wide"
 | 
			
		||||
        label: "123"
 | 
			
		||||
    show_numbers_from_symbols:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "numbers"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "123"
 | 
			
		||||
    show_letters:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "base"
 | 
			
		||||
        outline: "wide"
 | 
			
		||||
        label: "ԱԲԳ"
 | 
			
		||||
    show_symbols:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "symbols"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "*/="
 | 
			
		||||
    period:
 | 
			
		||||
        outline: "special"
 | 
			
		||||
        text: "."
 | 
			
		||||
    space:
 | 
			
		||||
        outline: "spaceline"
 | 
			
		||||
        text: " "
 | 
			
		||||
    Return:
 | 
			
		||||
        outline: "wide"
 | 
			
		||||
        icon: "key-enter"
 | 
			
		||||
        keysym: "Return"
 | 
			
		||||
    colon:
 | 
			
		||||
        text: ":"
 | 
			
		||||
@ -1,84 +0,0 @@
 | 
			
		||||
# Armenian layout created by Norayr Chilingarian
 | 
			
		||||
# Yerevan
 | 
			
		||||
# Oct 2021
 | 
			
		||||
---
 | 
			
		||||
outlines:
 | 
			
		||||
    default: { width: 35.33, height: 52 }
 | 
			
		||||
    altline: { width: 52.67, height: 52 }
 | 
			
		||||
    wide: { width: 32, height: 32 }
 | 
			
		||||
    spaceline: { width: 142, height: 52 }
 | 
			
		||||
    special: { width: 44, height: 52 }
 | 
			
		||||
 | 
			
		||||
views:
 | 
			
		||||
    base:
 | 
			
		||||
        - "՝ ֆ ձ ֊ , ։ ՞ ․ ՛ ) օ է ղ"
 | 
			
		||||
        - "ճ փ բ ս մ ո ւ կ ը թ ծ ց »"
 | 
			
		||||
        - "ջ վ գ ե ա ն ի տ հ պ ր"
 | 
			
		||||
        - "Shift_L ժ դ չ յ զ լ ք խ շ ռ BackSpace"
 | 
			
		||||
        - "show_numbers preferences         space        period Return"
 | 
			
		||||
    upper:
 | 
			
		||||
        - "՜ Ֆ Ձ — $ … ՟ և ՚ ( Օ Է Ղ"
 | 
			
		||||
        - "Ճ Փ Բ Ս Մ Ո Ւ Կ Ը Թ Ծ Ց «"
 | 
			
		||||
        - "Ջ Վ Գ Ե Ա Ն Ի Տ Հ Պ Պ Ր"
 | 
			
		||||
        - "Shift_L Ժ Դ Չ Յ Զ Լ Ք Խ Շ Ռ BackSpace"
 | 
			
		||||
        - "show_numbers preferences         space        period Return"
 | 
			
		||||
    numbers:
 | 
			
		||||
        - "show_symbols   , \" ' colon ; ! ?  BackSpace"
 | 
			
		||||
        - "ﬓ  ﬔ  ﬕ  ﬖ  ﬗ   ՟ և"
 | 
			
		||||
        - "1 2 3 4 5 6 7 8 9 0"
 | 
			
		||||
        - "show_letters preferences         space        period Return"
 | 
			
		||||
    symbols:
 | 
			
		||||
        - "show_numbers_from_symbols   \\ % < > = [ ]  BackSpace"
 | 
			
		||||
        - "* # $ / & - _ + ( )"
 | 
			
		||||
        - "© ® £ € ¥ ^ ° @ { }"
 | 
			
		||||
        - "~ ` | · √ π τ ÷ × ¶"
 | 
			
		||||
        - "show_letters preferences         space        period Return"
 | 
			
		||||
 | 
			
		||||
buttons:
 | 
			
		||||
    Shift_L:
 | 
			
		||||
        action:
 | 
			
		||||
            locking:
 | 
			
		||||
                lock_view: "upper"
 | 
			
		||||
                unlock_view: "base"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        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: "wide"
 | 
			
		||||
        label: "123"
 | 
			
		||||
    show_numbers_from_symbols:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "numbers"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "123"
 | 
			
		||||
    show_letters:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "base"
 | 
			
		||||
        outline: "wide"
 | 
			
		||||
        label: "ԱԲԳ"
 | 
			
		||||
    show_symbols:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "symbols"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "*/="
 | 
			
		||||
    period:
 | 
			
		||||
        outline: "special"
 | 
			
		||||
        text: "."
 | 
			
		||||
    space:
 | 
			
		||||
        outline: "spaceline"
 | 
			
		||||
        text: " "
 | 
			
		||||
    Return:
 | 
			
		||||
        outline: "wide"
 | 
			
		||||
        icon: "key-enter"
 | 
			
		||||
        keysym: "Return"
 | 
			
		||||
    colon:
 | 
			
		||||
        text: ":"
 | 
			
		||||
@ -1,70 +0,0 @@
 | 
			
		||||
# Maintained by: Khaled Eldoheiri <khalid@kdehairy.com>
 | 
			
		||||
---
 | 
			
		||||
outlines:
 | 
			
		||||
    default: { width: 32.66, height: 52 }
 | 
			
		||||
    altline: { width: 48.99, height: 52 }
 | 
			
		||||
    wide: { width: 62, height: 52 }
 | 
			
		||||
    spaceline: { width: 195.96, height: 52 }
 | 
			
		||||
    special: { width: 35.66, height: 52 }
 | 
			
		||||
 | 
			
		||||
views:
 | 
			
		||||
    base:
 | 
			
		||||
        - "ذ ض ص ث ق ف غ ع خ ح ج"
 | 
			
		||||
        - "ش س ي ب ل ا ت ن م ك ط"
 | 
			
		||||
        - "Shift_L ء ؤ ر ة و ز ظ د BackSpace"
 | 
			
		||||
        - "show_numbers preferences         space        . Return"
 | 
			
		||||
    extra:
 | 
			
		||||
        - "ذ ض ص ث ق لإ إ ع خ ح ج"
 | 
			
		||||
        - "ش س ى ب لأ أ ت ن م ك ط"
 | 
			
		||||
        - "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: "extra"
 | 
			
		||||
                unlock_view: "base"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        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: "altline"
 | 
			
		||||
        label: "123"
 | 
			
		||||
    show_letters:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "base"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "ض"
 | 
			
		||||
    show_symbols:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "symbols"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "*/="
 | 
			
		||||
    space:
 | 
			
		||||
        outline: "spaceline"
 | 
			
		||||
        label: " "
 | 
			
		||||
        text: " "
 | 
			
		||||
    Return:
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        icon: "key-enter"
 | 
			
		||||
        keysym: "Return"
 | 
			
		||||
@ -1,70 +0,0 @@
 | 
			
		||||
# Maintained by: Khaled Eldoheiri <khalid@kdehairy.com>
 | 
			
		||||
---
 | 
			
		||||
outlines:
 | 
			
		||||
    default: { width: 49, height: 42 }
 | 
			
		||||
    altline: { width: 73.5, height: 42 }
 | 
			
		||||
    wide: { width: 108, height: 42 }
 | 
			
		||||
    spaceline: { width: 324, height: 42 }
 | 
			
		||||
    special: { width: 49, height: 42 }
 | 
			
		||||
 | 
			
		||||
views:
 | 
			
		||||
    base:
 | 
			
		||||
        - "ذ ض ص ث ق ف غ ع خ ح ج"
 | 
			
		||||
        - "ش س ي ب ل ا ت ن م ك ط"
 | 
			
		||||
        - "Shift_L ء ؤ ر ة و ز ظ د BackSpace"
 | 
			
		||||
        - "show_numbers preferences         space        . Return"
 | 
			
		||||
    extra:
 | 
			
		||||
        - "ذ ض ص ث ق لإ إ ع خ ح ج"
 | 
			
		||||
        - "ش س ى ب لأ أ ت ن م ك ط"
 | 
			
		||||
        - "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: "extra"
 | 
			
		||||
                unlock_view: "base"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        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: "altline"
 | 
			
		||||
        label: "123"
 | 
			
		||||
    show_letters:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "base"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "ض"
 | 
			
		||||
    show_symbols:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "symbols"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "*/="
 | 
			
		||||
    space:
 | 
			
		||||
        outline: "spaceline"
 | 
			
		||||
        label: " "
 | 
			
		||||
        text: " "
 | 
			
		||||
    Return:
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        icon: "key-enter"
 | 
			
		||||
        keysym: "Return"
 | 
			
		||||
@ -1,89 +0,0 @@
 | 
			
		||||
---
 | 
			
		||||
outlines:
 | 
			
		||||
    default:   { width: 35.33, height: 52 }
 | 
			
		||||
    altline:   { width: 52.67, height: 52 }
 | 
			
		||||
    wide:      { width: 59,    height: 52 }
 | 
			
		||||
    spaceline: { width: 140,   height: 52 }
 | 
			
		||||
    special:   { width: 44,    height: 52 }
 | 
			
		||||
 | 
			
		||||
views:
 | 
			
		||||
    base:
 | 
			
		||||
        - "a z e r t y u i o p"
 | 
			
		||||
        - "q s d f g h j k l m"
 | 
			
		||||
        - "Shift_L   w x c v b n .   BackSpace"
 | 
			
		||||
        - "show_numbers preferences         space        show_eschars Return"
 | 
			
		||||
    upper:
 | 
			
		||||
        - "A Z E R T Y U I O P"
 | 
			
		||||
        - "Q S D F G H J K L M"
 | 
			
		||||
        - "Shift_L   W X C V B N ,  BackSpace"
 | 
			
		||||
        - "show_numbers preferences         space        show_eschars Return"
 | 
			
		||||
    numbers:
 | 
			
		||||
        - "1 2 3 4 5 6 7 8 9 0"
 | 
			
		||||
        - "@ # € % & - _ + ( )"
 | 
			
		||||
        - "show_symbols   , \" ' colon ; ! ?  BackSpace"
 | 
			
		||||
        - "show_letters preferences         space        show_eschars Return"
 | 
			
		||||
    symbols:
 | 
			
		||||
        - "~ ` | · √ π τ ÷ × ¶"
 | 
			
		||||
        - "© ® £ $ ¥ ^ ° * { }"
 | 
			
		||||
        - "show_numbers_from_symbols   \\ / < > = [ ]  BackSpace"
 | 
			
		||||
        - "show_letters preferences         space        show_eschars Return"
 | 
			
		||||
    eschars:
 | 
			
		||||
        - "à â ç é è ê î ô ù û"
 | 
			
		||||
        - "À Â Ç É È Ê Î Ô Ù Û"
 | 
			
		||||
        - "show_numbers_from_symbols  æ œ ä ë ï ö ü  BackSpace"
 | 
			
		||||
        - "show_letters preferences         space        show_eschars Return"
 | 
			
		||||
 | 
			
		||||
buttons:
 | 
			
		||||
    Shift_L:
 | 
			
		||||
        action:
 | 
			
		||||
            locking:
 | 
			
		||||
                lock_view: "upper"
 | 
			
		||||
                unlock_view: "base"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        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: "wide"
 | 
			
		||||
        label: "123"
 | 
			
		||||
    show_numbers_from_symbols:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "numbers"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "123"
 | 
			
		||||
    show_letters:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "base"
 | 
			
		||||
        outline: "wide"
 | 
			
		||||
        label: "abc"
 | 
			
		||||
    show_symbols:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "symbols"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "*/="
 | 
			
		||||
    show_eschars:
 | 
			
		||||
        action:
 | 
			
		||||
            locking:
 | 
			
		||||
                lock_view: "eschars"
 | 
			
		||||
                unlock_view: "base"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "âÂ"
 | 
			
		||||
    space:
 | 
			
		||||
        outline: "spaceline"
 | 
			
		||||
        text: " "
 | 
			
		||||
    Return:
 | 
			
		||||
        outline: "wide"
 | 
			
		||||
        icon: "key-enter"
 | 
			
		||||
        keysym: "Return"
 | 
			
		||||
    colon:
 | 
			
		||||
        text: ":"
 | 
			
		||||
    "\"":
 | 
			
		||||
        keysym: "quotedbl"
 | 
			
		||||
@ -1,89 +0,0 @@
 | 
			
		||||
---
 | 
			
		||||
outlines:
 | 
			
		||||
    default:   { width: 54,  height: 42 }
 | 
			
		||||
    altline:   { width: 81,  height: 42 }
 | 
			
		||||
    wide:      { width: 100, height: 42 }
 | 
			
		||||
    spaceline: { width: 205, height: 42 }
 | 
			
		||||
    special:   { width: 54,  height: 42 }
 | 
			
		||||
 | 
			
		||||
views:
 | 
			
		||||
    base:
 | 
			
		||||
        - "a z e r t y u i o p"
 | 
			
		||||
        - "q s d f g h j k l m"
 | 
			
		||||
        - "Shift_L   w x c v b n .   BackSpace"
 | 
			
		||||
        - "show_numbers preferences         space        show_eschars Return"
 | 
			
		||||
    upper:
 | 
			
		||||
        - "A Z E R T Y U I O P"
 | 
			
		||||
        - "Q S D F G H J K L M"
 | 
			
		||||
        - "Shift_L   W X C V B N ,  BackSpace"
 | 
			
		||||
        - "show_numbers preferences         space        show_eschars Return"
 | 
			
		||||
    numbers:
 | 
			
		||||
        - "1 2 3 4 5 6 7 8 9 0"
 | 
			
		||||
        - "@ # € % & - _ + ( )"
 | 
			
		||||
        - "show_symbols   , \" ' colon ; ! ?  BackSpace"
 | 
			
		||||
        - "show_letters preferences         space        show_eschars Return"
 | 
			
		||||
    symbols:
 | 
			
		||||
        - "~ ` | · √ π τ ÷ × ¶"
 | 
			
		||||
        - "© ® £ $ ¥ ^ ° * { }"
 | 
			
		||||
        - "show_numbers_from_symbols   \\ / < > = [ ]  BackSpace"
 | 
			
		||||
        - "show_letters preferences         space        show_eschars Return"
 | 
			
		||||
    eschars:
 | 
			
		||||
        - "à â ç é è ê î ô ù û"
 | 
			
		||||
        - "À Â Ç É È Ê Î Ô Ù Û"
 | 
			
		||||
        - "show_numbers_from_symbols  æ œ ä ë ï ö ü  BackSpace"
 | 
			
		||||
        - "show_letters preferences         space        show_eschars Return"
 | 
			
		||||
 | 
			
		||||
buttons:
 | 
			
		||||
    Shift_L:
 | 
			
		||||
        action:
 | 
			
		||||
            locking:
 | 
			
		||||
                lock_view: "upper"
 | 
			
		||||
                unlock_view: "base"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        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: "wide"
 | 
			
		||||
        label: "123"
 | 
			
		||||
    show_numbers_from_symbols:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "numbers"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "123"
 | 
			
		||||
    show_letters:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "base"
 | 
			
		||||
        outline: "wide"
 | 
			
		||||
        label: "abc"
 | 
			
		||||
    show_symbols:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "symbols"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "*/="
 | 
			
		||||
    show_eschars:
 | 
			
		||||
        action:
 | 
			
		||||
            locking:
 | 
			
		||||
                lock_view: "eschars"
 | 
			
		||||
                unlock_view: "base"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "âÂ"
 | 
			
		||||
    space:
 | 
			
		||||
        outline: "spaceline"
 | 
			
		||||
        text: " "
 | 
			
		||||
    Return:
 | 
			
		||||
        outline: "wide"
 | 
			
		||||
        icon: "key-enter"
 | 
			
		||||
        keysym: "Return"
 | 
			
		||||
    colon:
 | 
			
		||||
        text: ":"
 | 
			
		||||
    "\"":
 | 
			
		||||
        keysym: "quotedbl"
 | 
			
		||||
@ -1,78 +0,0 @@
 | 
			
		||||
---
 | 
			
		||||
outlines:
 | 
			
		||||
    default: { width: 32.72, height: 52 }
 | 
			
		||||
    altline: { width: 47, height: 52 }
 | 
			
		||||
    wide: { width: 49.09, height: 52 }
 | 
			
		||||
    spaceline: { width: 185, height: 52 }
 | 
			
		||||
    special: { width: 44, 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   , \" ' colon ; ! ?  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: "altline"
 | 
			
		||||
        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: "wide"
 | 
			
		||||
        label: "123"
 | 
			
		||||
    show_numbers_from_symbols:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "numbers"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "123"
 | 
			
		||||
    show_letters:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "base"
 | 
			
		||||
        outline: "wide"
 | 
			
		||||
        label: "abc"
 | 
			
		||||
    show_symbols:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "symbols"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "*/="
 | 
			
		||||
    space:
 | 
			
		||||
        outline: "spaceline"
 | 
			
		||||
        text: " "
 | 
			
		||||
    Return:
 | 
			
		||||
        outline: "wide"
 | 
			
		||||
        icon: "key-enter"
 | 
			
		||||
        keysym: "Return"
 | 
			
		||||
    colon:
 | 
			
		||||
        text: ":"
 | 
			
		||||
    "\"":
 | 
			
		||||
        keysym: "quotedbl"
 | 
			
		||||
@ -1,78 +0,0 @@
 | 
			
		||||
---
 | 
			
		||||
outlines:
 | 
			
		||||
    default: { width: 32.72, height: 52 }
 | 
			
		||||
    altline: { width: 47, height: 52 }
 | 
			
		||||
    wide: { width: 49.09, height: 52 }
 | 
			
		||||
    spaceline: { width: 185, height: 52 }
 | 
			
		||||
    special: { width: 44, 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 , \" ' colon ; ! ? ѝ 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: "altline"
 | 
			
		||||
        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: "wide"
 | 
			
		||||
        label: "123"
 | 
			
		||||
    show_numbers_from_symbols:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "numbers"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "123"
 | 
			
		||||
    show_letters:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "base"
 | 
			
		||||
        outline: "wide"
 | 
			
		||||
        label: "abc"
 | 
			
		||||
    show_symbols:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "symbols"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "*/="
 | 
			
		||||
    space:
 | 
			
		||||
        outline: "spaceline"
 | 
			
		||||
        text: " "
 | 
			
		||||
    Return:
 | 
			
		||||
        outline: "wide"
 | 
			
		||||
        icon: "key-enter"
 | 
			
		||||
        keysym: "Return"
 | 
			
		||||
    colon:
 | 
			
		||||
        text: ":"
 | 
			
		||||
    "\"":
 | 
			
		||||
        keysym: "quotedbl"
 | 
			
		||||
@ -1,78 +0,0 @@
 | 
			
		||||
---
 | 
			
		||||
outlines:
 | 
			
		||||
    default: { width: 35.33, height: 52 }
 | 
			
		||||
    altline: { width: 52.67, height: 52 }
 | 
			
		||||
    wide: { width: 62, height: 52 }
 | 
			
		||||
    spaceline: { width: 142, height: 52 }
 | 
			
		||||
    special: { width: 44, height: 52 }
 | 
			
		||||
 | 
			
		||||
views:
 | 
			
		||||
    base:
 | 
			
		||||
        - "q w e r t y u i o p"
 | 
			
		||||
        - "a s d f g h j k l ç"
 | 
			
		||||
        - "Shift_L   z x c v b n m  BackSpace"
 | 
			
		||||
        - "show_numbers preferences         space     , Return"
 | 
			
		||||
    upper:
 | 
			
		||||
        - "Q W E R T Y U I O P"
 | 
			
		||||
        - "A S D F G H J K L Ç"
 | 
			
		||||
        - "Shift_L   Z X C V B N M  BackSpace"
 | 
			
		||||
        - "show_numbers preferences         space     period Return"
 | 
			
		||||
    numbers:
 | 
			
		||||
        - "1 2 3 4 5 6 7 8 9 0"
 | 
			
		||||
        - "à À á Á ã Ã â Â é É"
 | 
			
		||||
        - "show_symbols   ê Ê í Í ó Ó ô Ô"
 | 
			
		||||
        - "show_letters        õ Õ ú Ú ü Ü period BackSpace"
 | 
			
		||||
    symbols:
 | 
			
		||||
        - "@ # $ % - + ÷ × = ≠"
 | 
			
		||||
        - "( ) § & < > / * { }"
 | 
			
		||||
        - "show_numbers_from_symbols     º \" ' colon ; ! ?  BackSpace"
 | 
			
		||||
        - "show_letters preferences         space        period Return"
 | 
			
		||||
 | 
			
		||||
buttons:
 | 
			
		||||
    Shift_L:
 | 
			
		||||
        action:
 | 
			
		||||
            locking:
 | 
			
		||||
                lock_view: "upper"
 | 
			
		||||
                unlock_view: "base"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        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: "wide"
 | 
			
		||||
        label: "1ã"
 | 
			
		||||
    show_numbers_from_symbols:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "numbers"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "1ã"
 | 
			
		||||
    show_letters:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "base"
 | 
			
		||||
        outline: "wide"
 | 
			
		||||
        label: "ABC"
 | 
			
		||||
    show_symbols:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "symbols"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "*/="
 | 
			
		||||
    period:
 | 
			
		||||
        outline: "special"
 | 
			
		||||
        text: "."
 | 
			
		||||
    space:
 | 
			
		||||
        outline: "spaceline"
 | 
			
		||||
        text: " "
 | 
			
		||||
    Return:
 | 
			
		||||
        outline: "wide"
 | 
			
		||||
        icon: "key-enter"
 | 
			
		||||
        keysym: "Return"
 | 
			
		||||
    colon:
 | 
			
		||||
        text: ":"
 | 
			
		||||
@ -1,73 +0,0 @@
 | 
			
		||||
# Maintained by Patrick Jörg <patrickjoerg@gmx.ch>. No Copyright, enjoy!
 | 
			
		||||
 | 
			
		||||
---
 | 
			
		||||
outlines:
 | 
			
		||||
    default:   { width: 35.33, height: 52 }
 | 
			
		||||
    altline:   { width: 48,    height: 52 }
 | 
			
		||||
    wide:      { width: 59,    height: 52 }
 | 
			
		||||
    spaceline: { width: 70,    height: 52 }
 | 
			
		||||
    special:   { width: 28,    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"
 | 
			
		||||
        - "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: "altline"
 | 
			
		||||
        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: "altline"
 | 
			
		||||
        label: "123"
 | 
			
		||||
    show_letters:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "base"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "abc"
 | 
			
		||||
    show_symbols:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "symbols"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "*/="
 | 
			
		||||
    space:
 | 
			
		||||
        outline: "spaceline"
 | 
			
		||||
        label: " "
 | 
			
		||||
        text: " "
 | 
			
		||||
    Return:
 | 
			
		||||
        outline: "wide"
 | 
			
		||||
        icon: "key-enter"
 | 
			
		||||
        keysym: "Return"
 | 
			
		||||
    "\"":
 | 
			
		||||
        keysym: "quotedbl"
 | 
			
		||||
@ -1,91 +0,0 @@
 | 
			
		||||
# Maintained by: Jordi Bossy <jordi@bossy.space>. No Copyright, enjoy!
 | 
			
		||||
---
 | 
			
		||||
outlines:
 | 
			
		||||
    default:   { width: 35.33, height: 52 }
 | 
			
		||||
    altline:   { width: 48,    height: 52 }
 | 
			
		||||
    wide:      { width: 59,    height: 52 }
 | 
			
		||||
    spaceline: { width: 70,    height: 52 }
 | 
			
		||||
    special:   { width: 28,    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 show_eschars 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 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:
 | 
			
		||||
        - "à â ç é è ê î ô ù û"
 | 
			
		||||
        - "À Â Ç É È Ê Î Ô Ù Û"
 | 
			
		||||
        - "show_numbers  æ œ ä ë ï ö ü  BackSpace"
 | 
			
		||||
        - "show_letters_from_accents preferences  ñ Ñ   space        ° ß Return"
 | 
			
		||||
 | 
			
		||||
buttons:
 | 
			
		||||
    Shift_L:
 | 
			
		||||
        action:
 | 
			
		||||
            locking:
 | 
			
		||||
                lock_view: "upper"
 | 
			
		||||
                unlock_view: "base"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        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: "altline"
 | 
			
		||||
        label: "123"
 | 
			
		||||
    show_letters:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "base"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "abc"
 | 
			
		||||
    show_symbols:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "symbols"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "*/="
 | 
			
		||||
    show_eschars:
 | 
			
		||||
        action:
 | 
			
		||||
            locking:
 | 
			
		||||
                lock_view: "eschars"
 | 
			
		||||
                unlock_view: "base"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "âÂ"
 | 
			
		||||
    show_letters_from_accents:
 | 
			
		||||
        action:
 | 
			
		||||
            locking:
 | 
			
		||||
                lock_view: "eschars"
 | 
			
		||||
                unlock_view: "base"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "âÂ"
 | 
			
		||||
    space:
 | 
			
		||||
        outline: "spaceline"
 | 
			
		||||
        label: " "
 | 
			
		||||
        text: " "
 | 
			
		||||
    Return:
 | 
			
		||||
        outline: "wide"
 | 
			
		||||
        icon: "key-enter"
 | 
			
		||||
        keysym: "Return"
 | 
			
		||||
    "\"":
 | 
			
		||||
        keysym: "quotedbl"
 | 
			
		||||
@ -1,93 +0,0 @@
 | 
			
		||||
# Maintained by: Jordy Bossy <jordi@bossy.space>
 | 
			
		||||
# and Patrick Jörg <patrickjoerg@gmx.ch>. No Copyright, enjoy!
 | 
			
		||||
 | 
			
		||||
---
 | 
			
		||||
outlines:
 | 
			
		||||
    default:   { width: 35.33, height: 52 }
 | 
			
		||||
    altline:   { width: 48,    height: 52 }
 | 
			
		||||
    wide:      { width: 59,    height: 52 }
 | 
			
		||||
    spaceline: { width: 70,    height: 52 }
 | 
			
		||||
    special:   { width: 28,    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 show_eschars 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 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:
 | 
			
		||||
        - "à â ç é è ê î ô ù û"
 | 
			
		||||
        - "À Â Ç É È Ê Î Ô Ù Û"
 | 
			
		||||
        - "show_numbers  æ œ ä ë ï ö ü  BackSpace"
 | 
			
		||||
        - "show_letters_from_accents preferences  ñ Ñ   space        ° ß Return"
 | 
			
		||||
 | 
			
		||||
buttons:
 | 
			
		||||
    Shift_L:
 | 
			
		||||
        action:
 | 
			
		||||
            locking:
 | 
			
		||||
                lock_view: "upper"
 | 
			
		||||
                unlock_view: "base"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        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: "altline"
 | 
			
		||||
        label: "123"
 | 
			
		||||
    show_letters:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "base"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "abc"
 | 
			
		||||
    show_symbols:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "symbols"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "*/="
 | 
			
		||||
    show_eschars:
 | 
			
		||||
        action:
 | 
			
		||||
            locking:
 | 
			
		||||
                lock_view: "eschars"
 | 
			
		||||
                unlock_view: "base"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "âÂ"
 | 
			
		||||
    show_letters_from_accents:
 | 
			
		||||
        action:
 | 
			
		||||
            locking:
 | 
			
		||||
                lock_view: "eschars"
 | 
			
		||||
                unlock_view: "base"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "âÂ"
 | 
			
		||||
    space:
 | 
			
		||||
        outline: "spaceline"
 | 
			
		||||
        label: " "
 | 
			
		||||
        text: " "
 | 
			
		||||
    Return:
 | 
			
		||||
        outline: "wide"
 | 
			
		||||
        icon: "key-enter"
 | 
			
		||||
        keysym: "Return"
 | 
			
		||||
    "\"":
 | 
			
		||||
        keysym: "quotedbl"
 | 
			
		||||
@ -1,93 +0,0 @@
 | 
			
		||||
# Maintained by: Jordy Bossy <jordy@bossy.space>
 | 
			
		||||
# and Patrick Jörg <patrickjoerg@gmx.ch>. No Copyright, enjoy!
 | 
			
		||||
 | 
			
		||||
---
 | 
			
		||||
outlines:
 | 
			
		||||
    default: { width: 48, height: 42 }
 | 
			
		||||
    altline: { width: 81, height: 42 }
 | 
			
		||||
    wide: { width: 108, height: 42 }
 | 
			
		||||
    spaceline: { width: 216, height: 42 }
 | 
			
		||||
    special: { width: 48, 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 show_eschars 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 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:
 | 
			
		||||
        - "à â ç é è ê î ô ù û"
 | 
			
		||||
        - "À Â Ç É È Ê Î Ô Ù Û"
 | 
			
		||||
        - "show_numbers  æ œ ä ë ï ö ü  BackSpace"
 | 
			
		||||
        - "show_letters_from_accents preferences  ñ Ñ   space        ° ß Return"
 | 
			
		||||
 | 
			
		||||
buttons:
 | 
			
		||||
    Shift_L:
 | 
			
		||||
        action:
 | 
			
		||||
            locking:
 | 
			
		||||
                lock_view: "upper"
 | 
			
		||||
                unlock_view: "base"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        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: "altline"
 | 
			
		||||
        label: "123"
 | 
			
		||||
    show_letters:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "base"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "abc"
 | 
			
		||||
    show_symbols:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "symbols"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "*/="
 | 
			
		||||
    show_eschars:
 | 
			
		||||
        action:
 | 
			
		||||
            locking:
 | 
			
		||||
                lock_view: "eschars"
 | 
			
		||||
                unlock_view: "base"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "äÄ"
 | 
			
		||||
    show_letters_from_accents:
 | 
			
		||||
        action:
 | 
			
		||||
            locking:
 | 
			
		||||
                lock_view: "eschars"
 | 
			
		||||
                unlock_view: "base"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "âÂ"
 | 
			
		||||
    space:
 | 
			
		||||
        outline: "spaceline"
 | 
			
		||||
        label: " "
 | 
			
		||||
        text: " "
 | 
			
		||||
    Return:
 | 
			
		||||
        outline: "wide"
 | 
			
		||||
        icon: "key-enter"
 | 
			
		||||
        keysym: "Return"
 | 
			
		||||
    "\"":
 | 
			
		||||
        keysym: "quotedbl"
 | 
			
		||||
@ -1,106 +0,0 @@
 | 
			
		||||
---
 | 
			
		||||
outlines:
 | 
			
		||||
    default: { width: 35.33, height: 52 }
 | 
			
		||||
    altline: { width: 52.67, height: 52 }
 | 
			
		||||
    wide: { width: 52.67, height: 52 }
 | 
			
		||||
    spaceline: { width: 106, height: 52 }
 | 
			
		||||
    special: { width: 35.33, height: 52 }
 | 
			
		||||
 | 
			
		||||
views:
 | 
			
		||||
    base:
 | 
			
		||||
        - "q w e r t y u i o p"
 | 
			
		||||
        - "a s d f g h j k l"
 | 
			
		||||
        - "Shift_L    z x c v b n m    BackSpace"
 | 
			
		||||
        - "show_numbers preferences show_accents    space    , . Return"
 | 
			
		||||
    upper:
 | 
			
		||||
        - "Q W E R T Y U I O P"
 | 
			
		||||
        - "A S D F G H J K L"
 | 
			
		||||
        - "Shift_L    Z X C V B N M    BackSpace"
 | 
			
		||||
        - "show_numbers preferences show_upper_accents    space    ! ? Return"
 | 
			
		||||
    numbers:
 | 
			
		||||
        - "1 2 3 4 5 6 7 8 9 0"
 | 
			
		||||
        - "@ # $ % & - _ + ( )"
 | 
			
		||||
        - "show_symbols    , \" ' colon ; ! ?    BackSpace"
 | 
			
		||||
        - "show_letters preferences show_accents    space    , . Return"
 | 
			
		||||
    symbols:
 | 
			
		||||
        - "~ ` | · √ π τ ÷ × ¶"
 | 
			
		||||
        - "© ® £ € ¥ ^ ° * { }"
 | 
			
		||||
        - "show_numbers_from_symbols    \\ / < > = [ ]    BackSpace"
 | 
			
		||||
        - "show_letters preferences show_accents    space    , . Return"
 | 
			
		||||
    accents:
 | 
			
		||||
        - "ä ě é ř ť ý ů í ó ö"
 | 
			
		||||
        - "á š ď ë ŕ ú ü ô ľ"
 | 
			
		||||
        - "accents_Shift_L    ž ß č ç ñ ň ĺ    BackSpace"
 | 
			
		||||
        - "show_letters preferences show_accents    space    , . Return"
 | 
			
		||||
    upper_accents:
 | 
			
		||||
        - "Ä Ě É Ř Ť Ý Ů Í Ó Ö"
 | 
			
		||||
        - "Á Š Ď Ë Ŕ Ú Ü Ô Ľ"
 | 
			
		||||
        - "accents_Shift_L    Ž ẞ Č Ç Ñ Ň Ĺ    BackSpace"
 | 
			
		||||
        - "show_letters preferences show_upper_accents    space    , . Return"
 | 
			
		||||
 | 
			
		||||
buttons:
 | 
			
		||||
    Shift_L:
 | 
			
		||||
        action:
 | 
			
		||||
            locking:
 | 
			
		||||
                lock_view: "upper"
 | 
			
		||||
                unlock_view: "base"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        icon: "key-shift"
 | 
			
		||||
    accents_Shift_L:
 | 
			
		||||
        action:
 | 
			
		||||
            locking:
 | 
			
		||||
                lock_view: "upper_accents"
 | 
			
		||||
                unlock_view: "base"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        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: "wide"
 | 
			
		||||
        label: "123"
 | 
			
		||||
    show_numbers_from_symbols:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "numbers"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "123"
 | 
			
		||||
    show_letters:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "base"
 | 
			
		||||
        outline: "wide"
 | 
			
		||||
        label: "abc"
 | 
			
		||||
    show_symbols:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "symbols"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "*/="
 | 
			
		||||
    show_accents:
 | 
			
		||||
        action:
 | 
			
		||||
            locking:
 | 
			
		||||
                lock_view: "accents"
 | 
			
		||||
                unlock_view: "base"
 | 
			
		||||
        outline: "special"
 | 
			
		||||
        label: "á"
 | 
			
		||||
    show_upper_accents:
 | 
			
		||||
        action:
 | 
			
		||||
            locking:
 | 
			
		||||
                lock_view: "upper_accents"
 | 
			
		||||
                unlock_view: "base"
 | 
			
		||||
        outline: "special"
 | 
			
		||||
        label: "Á"
 | 
			
		||||
    space:
 | 
			
		||||
        outline: "spaceline"
 | 
			
		||||
        text: " "
 | 
			
		||||
    Return:
 | 
			
		||||
        outline: "wide"
 | 
			
		||||
        icon: "key-enter"
 | 
			
		||||
        keysym: "Return"
 | 
			
		||||
    colon:
 | 
			
		||||
        text: ":"
 | 
			
		||||
@ -1,106 +0,0 @@
 | 
			
		||||
---
 | 
			
		||||
outlines:
 | 
			
		||||
    default: { width: 54, height: 42 }
 | 
			
		||||
    altline: { width: 81, height: 42 }
 | 
			
		||||
    wide: { width: 81, height: 42 }
 | 
			
		||||
    spaceline: { width: 162, height: 42 }
 | 
			
		||||
    special: { width: 54, height: 42 }
 | 
			
		||||
 | 
			
		||||
views:
 | 
			
		||||
    base:
 | 
			
		||||
        - "q w e r t y u i o p"
 | 
			
		||||
        - "a s d f g h j k l"
 | 
			
		||||
        - "Shift_L    z x c v b n m    BackSpace"
 | 
			
		||||
        - "show_numbers preferences show_accents    space    , . Return"
 | 
			
		||||
    upper:
 | 
			
		||||
        - "Q W E R T Y U I O P"
 | 
			
		||||
        - "A S D F G H J K L"
 | 
			
		||||
        - "Shift_L    Z X C V B N M    BackSpace"
 | 
			
		||||
        - "show_numbers preferences show_upper_accents    space    ! ? Return"
 | 
			
		||||
    numbers:
 | 
			
		||||
        - "1 2 3 4 5 6 7 8 9 0"
 | 
			
		||||
        - "@ # $ % & - _ + ( )"
 | 
			
		||||
        - "show_symbols    , \" ' colon ; ! ?    BackSpace"
 | 
			
		||||
        - "show_letters preferences show_accents    space    , . Return"
 | 
			
		||||
    symbols:
 | 
			
		||||
        - "~ ` | · √ π τ ÷ × ¶"
 | 
			
		||||
        - "© ® £ € ¥ ^ ° * { }"
 | 
			
		||||
        - "show_numbers_from_symbols    \\ / < > = [ ]    BackSpace"
 | 
			
		||||
        - "show_letters preferences show_accents    space    , . Return"
 | 
			
		||||
    accents:
 | 
			
		||||
        - "ä ě é ř ť ý ů í ó ö"
 | 
			
		||||
        - "á š ď ë ŕ ú ü ô ľ"
 | 
			
		||||
        - "accents_Shift_L    ž ß č ç ñ ň ĺ    BackSpace"
 | 
			
		||||
        - "show_letters preferences show_accents    space    , . Return"
 | 
			
		||||
    upper_accents:
 | 
			
		||||
        - "Ä Ě É Ř Ť Ý Ů Í Ó Ö"
 | 
			
		||||
        - "Á Š Ď Ë Ŕ Ú Ü Ô Ľ"
 | 
			
		||||
        - "accents_Shift_L    Ž ẞ Č Ç Ñ Ň Ĺ    BackSpace"
 | 
			
		||||
        - "show_letters preferences show_upper_accents    space    , . Return"
 | 
			
		||||
 | 
			
		||||
buttons:
 | 
			
		||||
    Shift_L:
 | 
			
		||||
        action:
 | 
			
		||||
            locking:
 | 
			
		||||
                lock_view: "upper"
 | 
			
		||||
                unlock_view: "base"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        icon: "key-shift"
 | 
			
		||||
    accents_Shift_L:
 | 
			
		||||
        action:
 | 
			
		||||
            locking:
 | 
			
		||||
                lock_view: "upper_accents"
 | 
			
		||||
                unlock_view: "base"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        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: "wide"
 | 
			
		||||
        label: "123"
 | 
			
		||||
    show_numbers_from_symbols:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "numbers"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "123"
 | 
			
		||||
    show_letters:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "base"
 | 
			
		||||
        outline: "wide"
 | 
			
		||||
        label: "abc"
 | 
			
		||||
    show_symbols:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "symbols"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "*/="
 | 
			
		||||
    show_accents:
 | 
			
		||||
        action:
 | 
			
		||||
            locking:
 | 
			
		||||
                lock_view: "accents"
 | 
			
		||||
                unlock_view: "base"
 | 
			
		||||
        outline: "special"
 | 
			
		||||
        label: "á"
 | 
			
		||||
    show_upper_accents:
 | 
			
		||||
        action:
 | 
			
		||||
            locking:
 | 
			
		||||
                lock_view: "upper_accents"
 | 
			
		||||
                unlock_view: "base"
 | 
			
		||||
        outline: "special"
 | 
			
		||||
        label: "Á"
 | 
			
		||||
    space:
 | 
			
		||||
        outline: "spaceline"
 | 
			
		||||
        text: " "
 | 
			
		||||
    Return:
 | 
			
		||||
        outline: "wide"
 | 
			
		||||
        icon: "key-enter"
 | 
			
		||||
        keysym: "Return"
 | 
			
		||||
    colon:
 | 
			
		||||
        text: ":"
 | 
			
		||||
@ -1,106 +0,0 @@
 | 
			
		||||
---
 | 
			
		||||
outlines:
 | 
			
		||||
    default: { width: 35.33, height: 52 }
 | 
			
		||||
    altline: { width: 52.67, height: 52 }
 | 
			
		||||
    wide: { width: 52.67, height: 52 }
 | 
			
		||||
    spaceline: { width: 106, height: 52 }
 | 
			
		||||
    special: { width: 35.33, 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 show_accents    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 show_upper_accents    space    ! ? Return"
 | 
			
		||||
    numbers:
 | 
			
		||||
        - "1 2 3 4 5 6 7 8 9 0"
 | 
			
		||||
        - "@ # $ % & - _ + ( )"
 | 
			
		||||
        - "show_symbols    , \" ' colon ; ! ?    BackSpace"
 | 
			
		||||
        - "show_letters preferences show_accents    space    , . Return"
 | 
			
		||||
    symbols:
 | 
			
		||||
        - "~ ` | · √ π τ ÷ × ¶"
 | 
			
		||||
        - "© ® £ € ¥ ^ ° * { }"
 | 
			
		||||
        - "show_numbers_from_symbols    \\ / < > = [ ]    BackSpace"
 | 
			
		||||
        - "show_letters preferences show_accents    space    , . Return"
 | 
			
		||||
    accents:
 | 
			
		||||
        - "ä ě é ř ť ž ů í ó ö"
 | 
			
		||||
        - "á š ď ë ŕ ú ü ô ľ"
 | 
			
		||||
        - "accents_Shift_L    ý ß č ç ñ ň ĺ    BackSpace"
 | 
			
		||||
        - "show_letters preferences show_accents    space    , . Return"
 | 
			
		||||
    upper_accents:
 | 
			
		||||
        - "Ä Ě É Ř Ť Ž Ů Í Ó Ö"
 | 
			
		||||
        - "Á Š Ď Ë Ŕ Ú Ü Ô Ľ"
 | 
			
		||||
        - "accents_Shift_L    Ý ẞ Č Ç Ñ Ň Ĺ    BackSpace"
 | 
			
		||||
        - "show_letters preferences show_upper_accents    space    , . Return"
 | 
			
		||||
 | 
			
		||||
buttons:
 | 
			
		||||
    Shift_L:
 | 
			
		||||
        action:
 | 
			
		||||
            locking:
 | 
			
		||||
                lock_view: "upper"
 | 
			
		||||
                unlock_view: "base"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        icon: "key-shift"
 | 
			
		||||
    accents_Shift_L:
 | 
			
		||||
        action:
 | 
			
		||||
            locking:
 | 
			
		||||
                lock_view: "upper_accents"
 | 
			
		||||
                unlock_view: "base"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        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: "wide"
 | 
			
		||||
        label: "123"
 | 
			
		||||
    show_numbers_from_symbols:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "numbers"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "123"
 | 
			
		||||
    show_letters:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "base"
 | 
			
		||||
        outline: "wide"
 | 
			
		||||
        label: "abc"
 | 
			
		||||
    show_symbols:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "symbols"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "*/="
 | 
			
		||||
    show_accents:
 | 
			
		||||
        action:
 | 
			
		||||
            locking:
 | 
			
		||||
                lock_view: "accents"
 | 
			
		||||
                unlock_view: "base"
 | 
			
		||||
        outline: "special"
 | 
			
		||||
        label: "á"
 | 
			
		||||
    show_upper_accents:
 | 
			
		||||
        action:
 | 
			
		||||
            locking:
 | 
			
		||||
                lock_view: "upper_accents"
 | 
			
		||||
                unlock_view: "base"
 | 
			
		||||
        outline: "special"
 | 
			
		||||
        label: "Á"
 | 
			
		||||
    space:
 | 
			
		||||
        outline: "spaceline"
 | 
			
		||||
        text: " "
 | 
			
		||||
    Return:
 | 
			
		||||
        outline: "wide"
 | 
			
		||||
        icon: "key-enter"
 | 
			
		||||
        keysym: "Return"
 | 
			
		||||
    colon:
 | 
			
		||||
        text: ":"
 | 
			
		||||
@ -1,106 +0,0 @@
 | 
			
		||||
---
 | 
			
		||||
outlines:
 | 
			
		||||
    default: { width: 54, height: 42 }
 | 
			
		||||
    altline: { width: 81, height: 42 }
 | 
			
		||||
    wide: { width: 81, height: 42 }
 | 
			
		||||
    spaceline: { width: 162, height: 42 }
 | 
			
		||||
    special: { width: 54, 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 show_accents    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 show_upper_accents    space    ! ? Return"
 | 
			
		||||
    numbers:
 | 
			
		||||
        - "1 2 3 4 5 6 7 8 9 0"
 | 
			
		||||
        - "@ # $ % & - _ + ( )"
 | 
			
		||||
        - "show_symbols    , \" ' colon ; ! ?    BackSpace"
 | 
			
		||||
        - "show_letters preferences show_accents    space    , . Return"
 | 
			
		||||
    symbols:
 | 
			
		||||
        - "~ ` | · √ π τ ÷ × ¶"
 | 
			
		||||
        - "© ® £ € ¥ ^ ° * { }"
 | 
			
		||||
        - "show_numbers_from_symbols    \\ / < > = [ ]    BackSpace"
 | 
			
		||||
        - "show_letters preferences show_accents    space    , . Return"
 | 
			
		||||
    accents:
 | 
			
		||||
        - "ä ě é ř ť ž ů í ó ö"
 | 
			
		||||
        - "á š ď ë ŕ ú ü ô ľ"
 | 
			
		||||
        - "accents_Shift_L    ý ß č ç ñ ň ĺ    BackSpace"
 | 
			
		||||
        - "show_letters preferences show_accents    space    , . Return"
 | 
			
		||||
    upper_accents:
 | 
			
		||||
        - "Ä Ě É Ř Ť Ž Ů Í Ó Ö"
 | 
			
		||||
        - "Á Š Ď Ë Ŕ Ú Ü Ô Ľ"
 | 
			
		||||
        - "accents_Shift_L    Ý ẞ Č Ç Ñ Ň Ĺ    BackSpace"
 | 
			
		||||
        - "show_letters preferences show_upper_accents    space    , . Return"
 | 
			
		||||
 | 
			
		||||
buttons:
 | 
			
		||||
    Shift_L:
 | 
			
		||||
        action:
 | 
			
		||||
            locking:
 | 
			
		||||
                lock_view: "upper"
 | 
			
		||||
                unlock_view: "base"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        icon: "key-shift"
 | 
			
		||||
    accents_Shift_L:
 | 
			
		||||
        action:
 | 
			
		||||
            locking:
 | 
			
		||||
                lock_view: "upper_accents"
 | 
			
		||||
                unlock_view: "base"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        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: "wide"
 | 
			
		||||
        label: "123"
 | 
			
		||||
    show_numbers_from_symbols:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "numbers"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "123"
 | 
			
		||||
    show_letters:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "base"
 | 
			
		||||
        outline: "wide"
 | 
			
		||||
        label: "abc"
 | 
			
		||||
    show_symbols:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "symbols"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "*/="
 | 
			
		||||
    show_accents:
 | 
			
		||||
        action:
 | 
			
		||||
            locking:
 | 
			
		||||
                lock_view: "accents"
 | 
			
		||||
                unlock_view: "base"
 | 
			
		||||
        outline: "special"
 | 
			
		||||
        label: "á"
 | 
			
		||||
    show_upper_accents:
 | 
			
		||||
        action:
 | 
			
		||||
            locking:
 | 
			
		||||
                lock_view: "upper_accents"
 | 
			
		||||
                unlock_view: "base"
 | 
			
		||||
        outline: "special"
 | 
			
		||||
        label: "Á"
 | 
			
		||||
    space:
 | 
			
		||||
        outline: "spaceline"
 | 
			
		||||
        text: " "
 | 
			
		||||
    Return:
 | 
			
		||||
        outline: "wide"
 | 
			
		||||
        icon: "key-enter"
 | 
			
		||||
        keysym: "Return"
 | 
			
		||||
    colon:
 | 
			
		||||
        text: ":"
 | 
			
		||||
@ -1,82 +0,0 @@
 | 
			
		||||
# Maintained by: Mark Müller <markmueller86@gmail.com>
 | 
			
		||||
---
 | 
			
		||||
outlines:
 | 
			
		||||
    default: { width: 35.33, height: 52 }
 | 
			
		||||
    altline: { width: 52.67, height: 52 }
 | 
			
		||||
    wide: { width: 62, height: 52 }
 | 
			
		||||
    spaceline: { width: 99.67, height: 52 }
 | 
			
		||||
    special: { width: 35.33, 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 show_eschars 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 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:
 | 
			
		||||
        - "ä è é ö ü Ä È É Ö Ü"
 | 
			
		||||
        - "à â ê î ô À Â È Î Ô"
 | 
			
		||||
        - "show_numbers  « » ç Ç æ œ ß  BackSpace"
 | 
			
		||||
        - "show_letters show_eschars preferences         space        „ “ Return"
 | 
			
		||||
 | 
			
		||||
buttons:
 | 
			
		||||
    Shift_L:
 | 
			
		||||
        action:
 | 
			
		||||
            locking:
 | 
			
		||||
                lock_view: "upper"
 | 
			
		||||
                unlock_view: "base"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        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: "altline"
 | 
			
		||||
        label: "123"
 | 
			
		||||
    show_letters:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "base"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "abc"
 | 
			
		||||
    show_symbols:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "symbols"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "*/="
 | 
			
		||||
    show_eschars:
 | 
			
		||||
        action:
 | 
			
		||||
            locking:
 | 
			
		||||
                lock_view: "eschars"
 | 
			
		||||
                unlock_view: "base"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "äÄ"
 | 
			
		||||
    space:
 | 
			
		||||
        outline: "spaceline"
 | 
			
		||||
        label: " "
 | 
			
		||||
        text: " "
 | 
			
		||||
    Return:
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        icon: "key-enter"
 | 
			
		||||
        keysym: "Return"
 | 
			
		||||
@ -1,81 +0,0 @@
 | 
			
		||||
# Maintained by: Mark Müller <markmueller86@gmail.com>
 | 
			
		||||
---
 | 
			
		||||
outlines:
 | 
			
		||||
    default: { width: 48, height: 42 }
 | 
			
		||||
    altline: { width: 81, height: 42 }
 | 
			
		||||
    wide: { width: 108, height: 42 }
 | 
			
		||||
    spaceline: { width: 216, height: 42 }
 | 
			
		||||
    special: { width: 48, 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"
 | 
			
		||||
        - "show_letters preferences         space        , . Return"
 | 
			
		||||
    symbols:
 | 
			
		||||
        - "~ ` ´  · © ® ÷ × ¶"
 | 
			
		||||
        - "€ £ $ ¥ ^ ° * { } |"
 | 
			
		||||
        - "show_numbers   \\ / § π τ [ ]  BackSpace"
 | 
			
		||||
        - "show_letters preferences         space        , . Return"
 | 
			
		||||
    eschars:
 | 
			
		||||
        - "ä è é ö ü Ä È É Ö Ü"
 | 
			
		||||
        - "à â ê î ô À Â È Î Ô"
 | 
			
		||||
        - "show_numbers  « » ç Ç æ œ ß  BackSpace"
 | 
			
		||||
        - "show_letters preferences         space        „ “ Return"
 | 
			
		||||
 | 
			
		||||
buttons:
 | 
			
		||||
    Shift_L:
 | 
			
		||||
        action:
 | 
			
		||||
            locking:
 | 
			
		||||
                lock_view: "upper"
 | 
			
		||||
                unlock_view: "base"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        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: "altline"
 | 
			
		||||
        label: "123"
 | 
			
		||||
    show_letters:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "base"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "abc"
 | 
			
		||||
    show_symbols:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "symbols"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "*/="
 | 
			
		||||
    show_eschars:
 | 
			
		||||
        action:
 | 
			
		||||
            locking:
 | 
			
		||||
                lock_view: "eschars"
 | 
			
		||||
                unlock_view: "base"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "äÄ"
 | 
			
		||||
    space:
 | 
			
		||||
        outline: "spaceline"
 | 
			
		||||
        text: " "
 | 
			
		||||
    Return:
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        icon: "key-enter"
 | 
			
		||||
        keysym: "Return"
 | 
			
		||||
@ -1,98 +0,0 @@
 | 
			
		||||
---
 | 
			
		||||
outlines:
 | 
			
		||||
    default: { width: 32, height: 52 }
 | 
			
		||||
    altline: { width: 48.39024, height: 52 }
 | 
			
		||||
    wide: { width: 62, height: 52 }
 | 
			
		||||
    outline7: { width: 88.97561, height: 52 }
 | 
			
		||||
    spaceline: { width: 150.5853, height: 52 }
 | 
			
		||||
 | 
			
		||||
views:
 | 
			
		||||
    base:
 | 
			
		||||
        - "q w e r t y u i o p å"
 | 
			
		||||
        - "a s d f g h j k l ø æ"
 | 
			
		||||
        - "Shift_L   z x c v b n m  BackSpace"
 | 
			
		||||
        - "show_numbers preferences         space        .    Return"
 | 
			
		||||
    upper:
 | 
			
		||||
        - "Q W E R T Y U I O P Å"
 | 
			
		||||
        - "A S D F G H J K L Ø Æ"
 | 
			
		||||
        - "Shift_L   Z 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"
 | 
			
		||||
        - "show_letters preferences         space        .    Return"
 | 
			
		||||
    symbols:
 | 
			
		||||
        - "~ ` | U00B7 squareroot Greek_pi Greek_tau division multiply paragraph"
 | 
			
		||||
        - "copyright U00AE U00A3 EuroSign U00A5 asciicircum degree * { }"
 | 
			
		||||
        - "show_numbers   \\ / < > = [ ]  BackSpace"
 | 
			
		||||
        - "show_letters preferences         space        .    Return"
 | 
			
		||||
 | 
			
		||||
buttons:
 | 
			
		||||
    Shift_L:
 | 
			
		||||
        action:
 | 
			
		||||
            locking:
 | 
			
		||||
                lock_view: "upper"
 | 
			
		||||
                unlock_view: "base"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        icon: "key-shift"
 | 
			
		||||
    BackSpace:
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        icon: "edit-clear-symbolic"
 | 
			
		||||
        action: erase
 | 
			
		||||
    preferences:
 | 
			
		||||
        action: "show_prefs"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        icon: "keyboard-mode-symbolic"
 | 
			
		||||
    show_numbers:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "numbers"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "123"
 | 
			
		||||
    show_letters:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "base"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "ABC"
 | 
			
		||||
    show_symbols:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "symbols"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "*/="
 | 
			
		||||
    ".":
 | 
			
		||||
        outline: altline
 | 
			
		||||
    space:
 | 
			
		||||
        outline: spaceline
 | 
			
		||||
        text: " "
 | 
			
		||||
    Return:
 | 
			
		||||
        outline: "wide"
 | 
			
		||||
        icon: "key-enter"
 | 
			
		||||
        keysym: "Return"
 | 
			
		||||
    U00B7:
 | 
			
		||||
        text: "·"
 | 
			
		||||
    squareroot:
 | 
			
		||||
        text: "√"
 | 
			
		||||
    Greek_pi:
 | 
			
		||||
        text: "π"
 | 
			
		||||
    division:
 | 
			
		||||
        text: "÷"
 | 
			
		||||
    multiply:
 | 
			
		||||
        text: "×"
 | 
			
		||||
    paragraph:
 | 
			
		||||
        text: "¶"
 | 
			
		||||
    Greek_tau:
 | 
			
		||||
        text: "τ"
 | 
			
		||||
    copyright:
 | 
			
		||||
        text: "©"
 | 
			
		||||
    U00AE:
 | 
			
		||||
        text: "®"
 | 
			
		||||
    U00A3:
 | 
			
		||||
        text: "£"
 | 
			
		||||
    EuroSign:
 | 
			
		||||
        text: "€"
 | 
			
		||||
    U00A5:
 | 
			
		||||
        text: "¥"
 | 
			
		||||
    asciicircum:
 | 
			
		||||
        text: "^"
 | 
			
		||||
    degree:
 | 
			
		||||
        text: "°"
 | 
			
		||||
@ -1,81 +0,0 @@
 | 
			
		||||
---
 | 
			
		||||
outlines:
 | 
			
		||||
    default: { width: 35.33, height: 52 }
 | 
			
		||||
    altline: { width: 52.67, height: 52 }
 | 
			
		||||
    wide: { width: 62, height: 52 }
 | 
			
		||||
    spaceline: { width: 106.67, height: 52 }
 | 
			
		||||
    special: { width: 44, height: 52 }
 | 
			
		||||
 | 
			
		||||
views:
 | 
			
		||||
    base:
 | 
			
		||||
        - "q w e r t y u i o p"
 | 
			
		||||
        - "a s d f g h j k l"
 | 
			
		||||
        - "Shift_L   z x c v b n m  BackSpace"
 | 
			
		||||
        - "show_numbers preferences         space        at period Return"
 | 
			
		||||
    upper:
 | 
			
		||||
        - "Q W E R T Y U I O P"
 | 
			
		||||
        - "A S D F G H J K L"
 | 
			
		||||
        - "Shift_L   Z X C V B N M  BackSpace"
 | 
			
		||||
        - "show_numbers preferences         space        at period Return"
 | 
			
		||||
    numbers:
 | 
			
		||||
        - "1 2 3 4 5 6 7 8 9 0"
 | 
			
		||||
        - "@ # $ % & - _ + ( )"
 | 
			
		||||
        - "show_symbols   , \" ' colon ; ! ?  BackSpace"
 | 
			
		||||
        - "show_letters preferences         space        at period Return"
 | 
			
		||||
    symbols:
 | 
			
		||||
        - "~ ` | · √ π τ ÷ × ¶"
 | 
			
		||||
        - "© ® £ € ¥ ^ ° * { }"
 | 
			
		||||
        - "show_numbers_from_symbols   \\ / < > = [ ]  BackSpace"
 | 
			
		||||
        - "show_letters preferences         space        at period Return"
 | 
			
		||||
 | 
			
		||||
buttons:
 | 
			
		||||
    Shift_L:
 | 
			
		||||
        action:
 | 
			
		||||
            locking:
 | 
			
		||||
                lock_view: "upper"
 | 
			
		||||
                unlock_view: "base"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        icon: "key-shift"
 | 
			
		||||
    BackSpace:
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        icon: "edit-clear-symbolic"
 | 
			
		||||
        action: erase
 | 
			
		||||
    at:
 | 
			
		||||
        outline: "special"
 | 
			
		||||
        text: "@"
 | 
			
		||||
    preferences:
 | 
			
		||||
        action: show_prefs
 | 
			
		||||
        outline: "special"
 | 
			
		||||
        icon: "keyboard-mode-symbolic"
 | 
			
		||||
    show_numbers:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "numbers"
 | 
			
		||||
        outline: "wide"
 | 
			
		||||
        label: "123"
 | 
			
		||||
    show_numbers_from_symbols:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "numbers"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "123"
 | 
			
		||||
    show_letters:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "base"
 | 
			
		||||
        outline: "wide"
 | 
			
		||||
        label: "ABC"
 | 
			
		||||
    show_symbols:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "symbols"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "*/="
 | 
			
		||||
    period:
 | 
			
		||||
        outline: "special"
 | 
			
		||||
        text: "."
 | 
			
		||||
    space:
 | 
			
		||||
        outline: "spaceline"
 | 
			
		||||
        text: " "
 | 
			
		||||
    Return:
 | 
			
		||||
        outline: "wide"
 | 
			
		||||
        icon: "key-enter"
 | 
			
		||||
        keysym: "Return"
 | 
			
		||||
    colon:
 | 
			
		||||
        text: ":"
 | 
			
		||||
@ -1,80 +0,0 @@
 | 
			
		||||
---
 | 
			
		||||
outlines:
 | 
			
		||||
    default: { width: 52, height: 52 }
 | 
			
		||||
    altline: { width: 40, height: 52 }
 | 
			
		||||
    narrow: { width: 22, height: 52 }
 | 
			
		||||
 | 
			
		||||
views:
 | 
			
		||||
    base:
 | 
			
		||||
        - "😀 😁 😅 😂 😊 😇 🙃"
 | 
			
		||||
        - "😍 😘 😋 😜 😎 🥳 😔"
 | 
			
		||||
        - "😢 😭 😡 😱 🤔 😬 🙄"
 | 
			
		||||
        - "preferences blank 1 2 3 4 5 6 blank BackSpace"
 | 
			
		||||
    two:
 | 
			
		||||
        - "🤩 🤨 🤓 😴 🤢 🤮 😈"
 | 
			
		||||
        - "💩 🙌 👏 👍 👎 👌 👋"
 | 
			
		||||
        - "💪 🖕 🙏 💋 🤦♀️ 🤷♀️ 💃"
 | 
			
		||||
        - "preferences blank 1 2 3 4 5 6 blank BackSpace"
 | 
			
		||||
    three:
 | 
			
		||||
        - "🐶 🐱 🐯 🙈 🐴 🦄 🌳"
 | 
			
		||||
        - "🍀 🌹 💫 ⭐️ ✨ 💥 🔥"
 | 
			
		||||
        - "🌈 ☀️ 🌤 🌧 ⛄️ ☂️ 🌊"
 | 
			
		||||
        - "preferences blank 1 2 3 4 5 6 blank BackSpace"
 | 
			
		||||
    four:
 | 
			
		||||
        - "🍎 🍓 🍑 🍍 🍆 🥑 🥦"
 | 
			
		||||
        - "🍕 🎂 🍫 🍿 🍻 🍾 🍽"
 | 
			
		||||
        - "⚽️ 🏀 🏓 🏆 🎹 🎸 🎯"
 | 
			
		||||
        - "preferences blank 1 2 3 4 5 6 blank BackSpace"
 | 
			
		||||
    five:
 | 
			
		||||
        - "🚗 🚌 🚲 🚄 🚂 ✈️ 🛰"
 | 
			
		||||
        - "🚀 🛸 🚁 🚦 🏝 🏔 ⛺️"
 | 
			
		||||
        - "🏠 🏢 🏥 🏛 🛤 🌅 🎇"
 | 
			
		||||
        - "preferences blank 1 2 3 4 5 6 blank BackSpace"
 | 
			
		||||
    six:
 | 
			
		||||
        - "⌚️ 📱 💻 🖥 🖨 🕹 ✉️"
 | 
			
		||||
        - "📞 ☎️ ⏰ ⏳ 📈 📉 📌"
 | 
			
		||||
        - "🎁 ❤️ 💕 💯 ✅ ❎ 📢"
 | 
			
		||||
        - "preferences blank 1 2 3 4 5 6 blank BackSpace"
 | 
			
		||||
 | 
			
		||||
buttons:
 | 
			
		||||
    1:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "base"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "1"
 | 
			
		||||
    2:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "two"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "2"
 | 
			
		||||
    3:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "three"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "3"
 | 
			
		||||
    4:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "four"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "4"
 | 
			
		||||
    5:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "five"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "5"
 | 
			
		||||
    6:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "six"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "6"
 | 
			
		||||
    preferences:
 | 
			
		||||
        action: "show_prefs"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        icon: "keyboard-mode-symbolic"
 | 
			
		||||
    BackSpace:
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        icon: "edit-clear-symbolic"
 | 
			
		||||
        keysym: BackSpace
 | 
			
		||||
    blank:
 | 
			
		||||
        outline: "narrow"
 | 
			
		||||
        text: ""
 | 
			
		||||
@ -1,81 +0,0 @@
 | 
			
		||||
---
 | 
			
		||||
outlines:
 | 
			
		||||
    default: { width: 35.33, height: 52 }
 | 
			
		||||
    altline: { width: 52.67, height: 52 }
 | 
			
		||||
    wide: { width: 62, height: 52 }
 | 
			
		||||
    spaceline: { width: 99.67, height: 52 }
 | 
			
		||||
    special: { width: 35.33, height: 52 }
 | 
			
		||||
 | 
			
		||||
views:
 | 
			
		||||
    base:
 | 
			
		||||
        - "q w e r t y u i o p"
 | 
			
		||||
        - "a s d f g h j k l"
 | 
			
		||||
        - "Shift_L   z x c v b n m  BackSpace"
 | 
			
		||||
        - "show_numbers show_eschars preferences         space        , . Return"
 | 
			
		||||
    upper:
 | 
			
		||||
        - "Q W E R T Y U I O P"
 | 
			
		||||
        - "A S D F G H J K L"
 | 
			
		||||
        - "Shift_L   Z X C V B N M  BackSpace"
 | 
			
		||||
        - "show_numbers show_eschars 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"
 | 
			
		||||
    eschars:
 | 
			
		||||
        - "ĉ ĝ ĥ ĵ ŝ ŭ ?"
 | 
			
		||||
        - "Ĉ Ĝ Ĥ Ĵ Ŝ Ŭ !"
 | 
			
		||||
        - "show_numbers ' - 🐊 💚 🌐 . BackSpace"
 | 
			
		||||
        - "show_letters show_eschars preferences         space        „ “ Return"
 | 
			
		||||
 | 
			
		||||
buttons:
 | 
			
		||||
    Shift_L:
 | 
			
		||||
        action:
 | 
			
		||||
            locking:
 | 
			
		||||
                lock_view: "upper"
 | 
			
		||||
                unlock_view: "base"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        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: "altline"
 | 
			
		||||
        label: "123"
 | 
			
		||||
    show_letters:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "base"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "abc"
 | 
			
		||||
    show_symbols:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "symbols"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "*/="
 | 
			
		||||
    show_eschars:
 | 
			
		||||
        action:
 | 
			
		||||
            locking:
 | 
			
		||||
                lock_view: "eschars"
 | 
			
		||||
                unlock_view: "base"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "ŭŜ"
 | 
			
		||||
    space:
 | 
			
		||||
        outline: "spaceline"
 | 
			
		||||
        label: " "
 | 
			
		||||
        text: " "
 | 
			
		||||
    Return:
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        icon: "key-enter"
 | 
			
		||||
        keysym: "Return"
 | 
			
		||||
@ -1,87 +0,0 @@
 | 
			
		||||
---
 | 
			
		||||
outlines:
 | 
			
		||||
    default: { width: 35.33, height: 52 }
 | 
			
		||||
    altline: { width: 52.67, height: 52 }
 | 
			
		||||
    wide: { width: 62, height: 52 }
 | 
			
		||||
    spaceline: { width: 99.67, height: 52 }
 | 
			
		||||
    special: { width: 44, height: 52 }
 | 
			
		||||
 | 
			
		||||
views:
 | 
			
		||||
    base:
 | 
			
		||||
        - "q w e r t y u i o p"
 | 
			
		||||
        - "a s d f g h j k l ç"
 | 
			
		||||
        - "Shift_L   z x c v b n m  BackSpace"
 | 
			
		||||
        - "show_numbers show_eschars preferences         space        ? period Return"
 | 
			
		||||
    upper:
 | 
			
		||||
        - "Q W E R T Y U I O P"
 | 
			
		||||
        - "A S D F G H J K L Ç"
 | 
			
		||||
        - "Shift_L   Z X C V B N M  BackSpace"
 | 
			
		||||
        - "show_numbers show_eschars preferences         space        ¿ period Return"
 | 
			
		||||
    numbers:
 | 
			
		||||
        - "1 2 3 4 5 6 7 8 9 0"
 | 
			
		||||
        - "@ # € % & - _ + ( )"
 | 
			
		||||
        - "show_symbols   , \" ' colon ; ! = BackSpace"
 | 
			
		||||
        - "show_letters show_eschars preferences         space        ? period Return"
 | 
			
		||||
    symbols:
 | 
			
		||||
        - "~ ` | · √ π τ ÷ × ¶"
 | 
			
		||||
        - "© ® £ $ ¥ ^ ° * { }"
 | 
			
		||||
        - "show_numbers   \\ / < > = [ ]  BackSpace"
 | 
			
		||||
        - "show_letters show_eschars preferences         space        ? period Return"
 | 
			
		||||
    eschars:
 | 
			
		||||
        - "á é í ó ú Á É Í Ó Ú"
 | 
			
		||||
        - "à è ì ò ù À È Ì Ò Ù"
 | 
			
		||||
        - "show_numbers ü ç ï Ü Ç Ï ¡  BackSpace"
 | 
			
		||||
        - "show_letters show_eschars preferences         space        « » Return"
 | 
			
		||||
 | 
			
		||||
buttons:
 | 
			
		||||
    Shift_L:
 | 
			
		||||
        action:
 | 
			
		||||
            locking:
 | 
			
		||||
                lock_view: "upper"
 | 
			
		||||
                unlock_view: "base"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        icon: "key-shift"
 | 
			
		||||
    BackSpace:
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        icon: "edit-clear-symbolic"
 | 
			
		||||
        action: "erase"
 | 
			
		||||
    preferences:
 | 
			
		||||
        action: "show_prefs"
 | 
			
		||||
        outline: "default"
 | 
			
		||||
        icon: "keyboard-mode-symbolic"
 | 
			
		||||
    show_numbers:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "numbers"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "123"
 | 
			
		||||
    show_letters:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "base"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "abc"
 | 
			
		||||
    show_symbols:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "symbols"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "*/="
 | 
			
		||||
    show_eschars:
 | 
			
		||||
        action:
 | 
			
		||||
            locking:
 | 
			
		||||
                lock_view: "eschars"
 | 
			
		||||
                unlock_view: "base"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "àÀ"
 | 
			
		||||
 | 
			
		||||
    period:
 | 
			
		||||
        outline: "default"
 | 
			
		||||
        text: "."
 | 
			
		||||
    space:
 | 
			
		||||
        outline: "spaceline"
 | 
			
		||||
        text: " "
 | 
			
		||||
    Return:
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        icon: "key-enter"
 | 
			
		||||
        keysym: "Return"
 | 
			
		||||
    colon:
 | 
			
		||||
        text: ":"
 | 
			
		||||
 | 
			
		||||
@ -1,87 +0,0 @@
 | 
			
		||||
---
 | 
			
		||||
outlines:
 | 
			
		||||
    default: { width: 35.33, height: 52 }
 | 
			
		||||
    altline: { width: 52.67, height: 52 }
 | 
			
		||||
    wide: { width: 62, height: 52 }
 | 
			
		||||
    spaceline: { width: 99.67, height: 52 }
 | 
			
		||||
    special: { width: 44, height: 52 }
 | 
			
		||||
 | 
			
		||||
views:
 | 
			
		||||
    base:
 | 
			
		||||
        - "q w e r t y u i o p"
 | 
			
		||||
        - "a s d f g h j k l ñ"
 | 
			
		||||
        - "Shift_L   z x c v b n m  BackSpace"
 | 
			
		||||
        - "show_numbers show_eschars preferences         space        ? period Return"
 | 
			
		||||
    upper:
 | 
			
		||||
        - "Q W E R T Y U I O P"
 | 
			
		||||
        - "A S D F G H J K L Ñ"
 | 
			
		||||
        - "Shift_L   Z X C V B N M  BackSpace"
 | 
			
		||||
        - "show_numbers show_eschars preferences         space        ¿ period Return"
 | 
			
		||||
    numbers:
 | 
			
		||||
        - "1 2 3 4 5 6 7 8 9 0"
 | 
			
		||||
        - "@ # € % & - _ + ( )"
 | 
			
		||||
        - "show_symbols   , \" ' colon ; ! = BackSpace"
 | 
			
		||||
        - "show_letters show_eschars preferences         space        ? period Return"
 | 
			
		||||
    symbols:
 | 
			
		||||
        - "~ ` | · √ π τ ÷ × ¶"
 | 
			
		||||
        - "© ® £ $ ¥ ^ ° * { }"
 | 
			
		||||
        - "show_numbers   \\ / < > = [ ]  BackSpace"
 | 
			
		||||
        - "show_letters show_eschars preferences         space        ? period Return"
 | 
			
		||||
    eschars:
 | 
			
		||||
        - "á é í ó ú Á É Í Ó Ú"
 | 
			
		||||
        - "à è ì ò ù À È Ì Ò Ù"
 | 
			
		||||
        - "show_numbers ü ç ï Ü Ç Ï ¡  BackSpace"
 | 
			
		||||
        - "show_letters show_eschars preferences         space        « » Return"
 | 
			
		||||
 | 
			
		||||
buttons:
 | 
			
		||||
    Shift_L:
 | 
			
		||||
        action:
 | 
			
		||||
            locking:
 | 
			
		||||
                lock_view: "upper"
 | 
			
		||||
                unlock_view: "base"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        icon: "key-shift"
 | 
			
		||||
    BackSpace:
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        icon: "edit-clear-symbolic"
 | 
			
		||||
        action: "erase"
 | 
			
		||||
    preferences:
 | 
			
		||||
        action: "show_prefs"
 | 
			
		||||
        outline: "default"
 | 
			
		||||
        icon: "keyboard-mode-symbolic"
 | 
			
		||||
    show_numbers:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "numbers"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "123"
 | 
			
		||||
    show_letters:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "base"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "abc"
 | 
			
		||||
    show_symbols:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "symbols"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "*/="
 | 
			
		||||
    show_eschars:
 | 
			
		||||
        action:
 | 
			
		||||
            locking:
 | 
			
		||||
                lock_view: "eschars"
 | 
			
		||||
                unlock_view: "base"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "áÁ"
 | 
			
		||||
 | 
			
		||||
    period:
 | 
			
		||||
        outline: "default"
 | 
			
		||||
        text: "."
 | 
			
		||||
    space:
 | 
			
		||||
        outline: "spaceline"
 | 
			
		||||
        text: " "
 | 
			
		||||
    Return:
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        icon: "key-enter"
 | 
			
		||||
        keysym: "Return"
 | 
			
		||||
    colon:
 | 
			
		||||
        text: ":"
 | 
			
		||||
 | 
			
		||||
@ -1,171 +0,0 @@
 | 
			
		||||
---
 | 
			
		||||
outlines:
 | 
			
		||||
    default: { width: 32, height: 52 }
 | 
			
		||||
    altline: { width: 48.39024, height: 52 }
 | 
			
		||||
    wide: { width: 62, height: 52 }
 | 
			
		||||
    outline7: { width: 88.97561, height: 52 }
 | 
			
		||||
    spaceline: { width: 150.5853, height: 52 }
 | 
			
		||||
 | 
			
		||||
views:
 | 
			
		||||
    base:
 | 
			
		||||
        - "q w e r t y u i o p å"
 | 
			
		||||
        - "a s d f g h j k l ö ä"
 | 
			
		||||
        - "Shift_L   z x c v b n m  BackSpace"
 | 
			
		||||
        - "show_numbers preferences         space        .    Return"
 | 
			
		||||
    upper:
 | 
			
		||||
        - "Q W E R T Y U I O P Å"
 | 
			
		||||
        - "A S D F G H J K L Ö Ä"
 | 
			
		||||
        - "Shift_L   Z X C V B N M  BackSpace"
 | 
			
		||||
        - "show_numbers preferences         space        .    Return"
 | 
			
		||||
    numbers:
 | 
			
		||||
        - "1 2 3 4 5 6 7 8 9 0"
 | 
			
		||||
        - "at numbersign dollar percent ampersand minus underscore plus parenleft parenright"
 | 
			
		||||
        - "show_symbols   comma quotedbl quoteright colon semicolon exclam question  BackSpace"
 | 
			
		||||
        - "show_letters preferences         space        .    Return"
 | 
			
		||||
    symbols:
 | 
			
		||||
        - "asciitilde quoteleft bar U00B7 squareroot Greek_pi Greek_tau division multiply paragraph"
 | 
			
		||||
        - "copyright U00AE U00A3 EuroSign U00A5 asciicircum degree asterisk braceleft braceright"
 | 
			
		||||
        - "show_numbers   backslash slash less greater equal bracketleft bracketright  BackSpace"
 | 
			
		||||
        - "show_letters preferences         space        .    Return"
 | 
			
		||||
 | 
			
		||||
buttons:
 | 
			
		||||
    Shift_L:
 | 
			
		||||
        action:
 | 
			
		||||
            locking:
 | 
			
		||||
                lock_view: "upper"
 | 
			
		||||
                unlock_view: "base"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        icon: "key-shift"
 | 
			
		||||
    BackSpace:
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        icon: "edit-clear-symbolic"
 | 
			
		||||
        action: "erase"
 | 
			
		||||
    preferences:
 | 
			
		||||
        action: "show_prefs"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        icon: "keyboard-mode-symbolic"
 | 
			
		||||
    show_numbers:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "numbers"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "123"
 | 
			
		||||
    show_letters:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "base"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "ABC"
 | 
			
		||||
    show_symbols:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "symbols"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "*/="
 | 
			
		||||
    ".":
 | 
			
		||||
        outline: altline
 | 
			
		||||
    space:
 | 
			
		||||
        outline: spaceline
 | 
			
		||||
        text: " "
 | 
			
		||||
    Return:
 | 
			
		||||
        outline: "wide"
 | 
			
		||||
        icon: "key-enter"
 | 
			
		||||
        keysym: "Return"
 | 
			
		||||
    aring:
 | 
			
		||||
        text: "å"
 | 
			
		||||
    Aring:
 | 
			
		||||
        text: "Å"
 | 
			
		||||
    ouml:
 | 
			
		||||
        text: "ö"
 | 
			
		||||
    Ouml:
 | 
			
		||||
        text: "Ö"
 | 
			
		||||
    auml:
 | 
			
		||||
        text: "ä"
 | 
			
		||||
    Auml:
 | 
			
		||||
        text: "Ä"
 | 
			
		||||
    asterisk:
 | 
			
		||||
        text: "*"
 | 
			
		||||
    asciitilde:
 | 
			
		||||
        text: "~"
 | 
			
		||||
    quoteleft:
 | 
			
		||||
        text: "`"
 | 
			
		||||
    bar:
 | 
			
		||||
        text: "|"
 | 
			
		||||
    U00B7:
 | 
			
		||||
        text: "·"
 | 
			
		||||
    squareroot:
 | 
			
		||||
        text: "√"
 | 
			
		||||
    Greek_pi:
 | 
			
		||||
        text: "π"
 | 
			
		||||
    division:
 | 
			
		||||
        text: "÷"
 | 
			
		||||
    multiply:
 | 
			
		||||
        text: "×"
 | 
			
		||||
    paragraph:
 | 
			
		||||
        text: "¶"
 | 
			
		||||
    Greek_tau:
 | 
			
		||||
        text: "τ"
 | 
			
		||||
    copyright:
 | 
			
		||||
        text: "©"
 | 
			
		||||
    numbersign:
 | 
			
		||||
        text: "#"
 | 
			
		||||
    U00AE:
 | 
			
		||||
        text: "®"
 | 
			
		||||
    at:
 | 
			
		||||
        text: "@"
 | 
			
		||||
    dollar:
 | 
			
		||||
        text: "$"
 | 
			
		||||
    U00A3:
 | 
			
		||||
        text: "£"
 | 
			
		||||
    percent:
 | 
			
		||||
        text: "%"
 | 
			
		||||
    EuroSign:
 | 
			
		||||
        text: "€"
 | 
			
		||||
    ampersand:
 | 
			
		||||
        text: "&"
 | 
			
		||||
    U00A5:
 | 
			
		||||
        text: "¥"
 | 
			
		||||
    minus:
 | 
			
		||||
        text: "-"
 | 
			
		||||
    asciicircum:
 | 
			
		||||
        text: "^"
 | 
			
		||||
    underscore:
 | 
			
		||||
        text: "_"
 | 
			
		||||
    degree:
 | 
			
		||||
        text: "°"
 | 
			
		||||
    plus:
 | 
			
		||||
        text: "+"
 | 
			
		||||
    equal:
 | 
			
		||||
        text: "="
 | 
			
		||||
    parenleft:
 | 
			
		||||
        text: "("
 | 
			
		||||
    parenright:
 | 
			
		||||
        text: ")"
 | 
			
		||||
    braceleft:
 | 
			
		||||
        text: "{"
 | 
			
		||||
    braceright:
 | 
			
		||||
        text: "}"
 | 
			
		||||
    comma:
 | 
			
		||||
        text: ","
 | 
			
		||||
    backslash:
 | 
			
		||||
        text: "\\"
 | 
			
		||||
    slash:
 | 
			
		||||
        text: "/"
 | 
			
		||||
    quotedbl:
 | 
			
		||||
        text: "\""
 | 
			
		||||
    quoteright:
 | 
			
		||||
        text: "'"
 | 
			
		||||
    less:
 | 
			
		||||
        text: "<"
 | 
			
		||||
    greater:
 | 
			
		||||
        text: ">"
 | 
			
		||||
    colon:
 | 
			
		||||
        text: ":"
 | 
			
		||||
    semicolon:
 | 
			
		||||
        text: ";"
 | 
			
		||||
    exclam:
 | 
			
		||||
        text: "!"
 | 
			
		||||
    question:
 | 
			
		||||
        text: "?"
 | 
			
		||||
    bracketleft:
 | 
			
		||||
        text: "["
 | 
			
		||||
    bracketright:
 | 
			
		||||
        text: "]"
 | 
			
		||||
 | 
			
		||||
@ -1,206 +0,0 @@
 | 
			
		||||
---
 | 
			
		||||
outlines:
 | 
			
		||||
    small:     { width: 50,    height: 30 }
 | 
			
		||||
    default:   { width: 35.33, height: 52 }
 | 
			
		||||
    altline:   { width: 35.33, height: 52 }
 | 
			
		||||
    wide:      { width: 50,    height: 52 }
 | 
			
		||||
    spaceline: { width: 150,   height: 52 }
 | 
			
		||||
    special:   { width: 35.33,  height: 52 }
 | 
			
		||||
 | 
			
		||||
views:
 | 
			
		||||
    base:
 | 
			
		||||
        - "b é p o w v d l j z"
 | 
			
		||||
        - "a u i e c t s r n m"
 | 
			
		||||
        - "Shift_L y x k q g h f period BackSpace"
 | 
			
		||||
        - "show_numbers preferences         space    show_eschars Return"
 | 
			
		||||
    upper:
 | 
			
		||||
        - "B É P O W V D L J Z"
 | 
			
		||||
        - "A U I E C T S R N M"
 | 
			
		||||
        - "Shift_L   Y X K Q G H F -  BackSpace"
 | 
			
		||||
        - "show_numbers preferences         space  colon   show_eschars Return"
 | 
			
		||||
    numbers:
 | 
			
		||||
        - "1 2 3 4 5 6 7 8 9 0"
 | 
			
		||||
        - "@ # € % & - _ + ( )"
 | 
			
		||||
        - "show_symbols   , \" ' colon ; ! ?  BackSpace"
 | 
			
		||||
        - "show_letters preferences         space        show_eschars  Return"
 | 
			
		||||
    symbols:
 | 
			
		||||
        - "~ ` | · √ π τ ÷ × ¶"
 | 
			
		||||
        - "© ® £ $ ¥ ^ ° * { }"
 | 
			
		||||
        - "show_numbers_from_symbols   \\ / < > = [ ]  BackSpace"
 | 
			
		||||
        - "show_letters preferences         space        show_eschars Return"
 | 
			
		||||
    eschars:
 | 
			
		||||
        - "à â ç é è ê î ô ù û"
 | 
			
		||||
        - "À Â Ç É È Ê Î Ô Ù Û"
 | 
			
		||||
        - "show_numbers_from_symbols  æ œ ä ë ï ö ü  BackSpace"
 | 
			
		||||
        - "show_letters preferences         space        show_eschars  Return"
 | 
			
		||||
 
 | 
			
		||||
buttons:
 | 
			
		||||
    F1:
 | 
			
		||||
        outline: "action"
 | 
			
		||||
        keysym: "F1"
 | 
			
		||||
    F2:
 | 
			
		||||
        outline: "action"
 | 
			
		||||
        keysym: "F2"
 | 
			
		||||
    F3:
 | 
			
		||||
        outline: "action"
 | 
			
		||||
        keysym: "F3"
 | 
			
		||||
    F4:
 | 
			
		||||
        outline: "action"
 | 
			
		||||
        keysym: "F4"
 | 
			
		||||
    F5:
 | 
			
		||||
        outline: "action"
 | 
			
		||||
        keysym: "F5"
 | 
			
		||||
    F6:
 | 
			
		||||
        outline: "action"
 | 
			
		||||
        keysym: "F6"
 | 
			
		||||
    F7:
 | 
			
		||||
        outline: "action"
 | 
			
		||||
        keysym: "F7"
 | 
			
		||||
    F8:
 | 
			
		||||
        outline: "action"
 | 
			
		||||
        keysym: "F8"
 | 
			
		||||
    F9:
 | 
			
		||||
        outline: "action"
 | 
			
		||||
        keysym: "F9"
 | 
			
		||||
    F10:
 | 
			
		||||
        outline: "action"
 | 
			
		||||
        keysym: "F10"
 | 
			
		||||
    F11:
 | 
			
		||||
        outline: "action"
 | 
			
		||||
        keysym: "F11"
 | 
			
		||||
    F12:
 | 
			
		||||
        outline: "action"
 | 
			
		||||
        keysym: "F12"
 | 
			
		||||
    Esc:
 | 
			
		||||
        outline: "action"
 | 
			
		||||
        keysym: "Escape"
 | 
			
		||||
    Tab:
 | 
			
		||||
        outline: "action"
 | 
			
		||||
        keysym: "Tab"
 | 
			
		||||
    Del:
 | 
			
		||||
        outline: "action"
 | 
			
		||||
        keysym: "Delete"
 | 
			
		||||
    Insert:
 | 
			
		||||
        outline: "action"
 | 
			
		||||
        keysym: "Insert"
 | 
			
		||||
    Menu:
 | 
			
		||||
        outline: "action"
 | 
			
		||||
        keysym: "Menu"
 | 
			
		||||
    Pause:
 | 
			
		||||
        outline: "action"
 | 
			
		||||
        keysym: "Pause"
 | 
			
		||||
    Break:
 | 
			
		||||
        outline: "action"
 | 
			
		||||
        keysym: "Break"
 | 
			
		||||
    Home:
 | 
			
		||||
        outline: "small"
 | 
			
		||||
        keysym: "Home"
 | 
			
		||||
    End:
 | 
			
		||||
        outline: "small"
 | 
			
		||||
        keysym: "End"
 | 
			
		||||
    PgUp:
 | 
			
		||||
        outline: "small"
 | 
			
		||||
        keysym: "Page_Up"
 | 
			
		||||
    PgDn:
 | 
			
		||||
        outline: "small"
 | 
			
		||||
        keysym: "Page_Down"
 | 
			
		||||
    "↑":
 | 
			
		||||
        outline: "small"
 | 
			
		||||
        keysym: "Up"
 | 
			
		||||
    "↓":
 | 
			
		||||
        outline: "small"
 | 
			
		||||
        keysym: "Down"
 | 
			
		||||
    "←":
 | 
			
		||||
        outline: "small"
 | 
			
		||||
        keysym: "Left"
 | 
			
		||||
    "→":
 | 
			
		||||
        outline: "small"
 | 
			
		||||
        keysym: "Right"
 | 
			
		||||
    Up:
 | 
			
		||||
        label: "↑"
 | 
			
		||||
        outline: "action"
 | 
			
		||||
        keysym: "Up"
 | 
			
		||||
    Left:
 | 
			
		||||
        label: "←"
 | 
			
		||||
        outline: "action"
 | 
			
		||||
        keysym: "Left"
 | 
			
		||||
    Down:
 | 
			
		||||
        label: "↓"
 | 
			
		||||
        outline: "action"
 | 
			
		||||
        keysym: "Down"
 | 
			
		||||
    Right:
 | 
			
		||||
        label: "→"
 | 
			
		||||
        outline: "action"
 | 
			
		||||
        keysym: "Right"
 | 
			
		||||
    Ctrl:
 | 
			
		||||
        modifier: "Control"
 | 
			
		||||
        outline: "small"
 | 
			
		||||
        label: "Ctrl"
 | 
			
		||||
    Alt:
 | 
			
		||||
        modifier: "Alt"
 | 
			
		||||
        outline: "small"
 | 
			
		||||
        label: "Alt"
 | 
			
		||||
    period:
 | 
			
		||||
        outline: "special"
 | 
			
		||||
        text: "."
 | 
			
		||||
    slash:
 | 
			
		||||
        outline: "special"
 | 
			
		||||
        text: "/"
 | 
			
		||||
    show_actions:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "actions"
 | 
			
		||||
        outline: "special"
 | 
			
		||||
        label: ">_"
 | 
			
		||||
    Shift_L:
 | 
			
		||||
        action:
 | 
			
		||||
            locking:
 | 
			
		||||
                lock_view: "upper"
 | 
			
		||||
                unlock_view: "base"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        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: "wide"
 | 
			
		||||
        label: "123"
 | 
			
		||||
    show_numbers_from_symbols:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "numbers"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "123"
 | 
			
		||||
    show_letters:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "base"
 | 
			
		||||
        outline: "wide"
 | 
			
		||||
        label: "abc"
 | 
			
		||||
    show_symbols:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "symbols"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "*/="
 | 
			
		||||
    show_eschars:
 | 
			
		||||
        action:
 | 
			
		||||
            locking:
 | 
			
		||||
                lock_view: "eschars"
 | 
			
		||||
                unlock_view: "base"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "âÂ"
 | 
			
		||||
    space:
 | 
			
		||||
        outline: "spaceline"
 | 
			
		||||
        text: " "
 | 
			
		||||
    Return:
 | 
			
		||||
        outline: "wide"
 | 
			
		||||
        icon: "key-enter"
 | 
			
		||||
        keysym: "Return"
 | 
			
		||||
    colon:
 | 
			
		||||
        text: ":"
 | 
			
		||||
    "\"":
 | 
			
		||||
        keysym: "quotedbl"
 | 
			
		||||
@ -1,89 +0,0 @@
 | 
			
		||||
---
 | 
			
		||||
outlines:
 | 
			
		||||
    default:   { width: 54,  height: 42 }
 | 
			
		||||
    altline:   { width: 81,  height: 42 }
 | 
			
		||||
    wide:      { width: 100, height: 42 }
 | 
			
		||||
    spaceline: { width: 205, height: 42 }
 | 
			
		||||
    special:   { width: 54,  height: 42 }
 | 
			
		||||
 | 
			
		||||
views:
 | 
			
		||||
    base:
 | 
			
		||||
        - "b é p o w v d l j z"
 | 
			
		||||
        - "a u i e c t s r n m"
 | 
			
		||||
        - "Shift_L y x k q g h f . BackSpace"
 | 
			
		||||
        - "show_numbers preferences         space    show_eschars Return"
 | 
			
		||||
    upper:
 | 
			
		||||
        - "B É P O W V D L J Z"
 | 
			
		||||
        - "A U I E C T S R N M"
 | 
			
		||||
        - "Shift_L   Y X K Q G H F -  BackSpace"
 | 
			
		||||
        - "show_numbers preferences         space  colon   show_eschars Return"
 | 
			
		||||
    numbers:
 | 
			
		||||
        - "1 2 3 4 5 6 7 8 9 0"
 | 
			
		||||
        - "@ # € % & - _ + ( )"
 | 
			
		||||
        - "show_symbols   , \" ' colon ; ! ?  BackSpace"
 | 
			
		||||
        - "show_letters preferences         space        show_eschars Return"
 | 
			
		||||
    symbols:
 | 
			
		||||
        - "~ ` | · √ π τ ÷ × ¶"
 | 
			
		||||
        - "© ® £ $ ¥ ^ ° * { }"
 | 
			
		||||
        - "show_numbers_from_symbols   \\ / < > = [ ]  BackSpace"
 | 
			
		||||
        - "show_letters preferences         space        show_eschars Return"
 | 
			
		||||
    eschars:
 | 
			
		||||
        - "à â ç é è ê î ô ù û"
 | 
			
		||||
        - "À Â Ç É È Ê Î Ô Ù Û"
 | 
			
		||||
        - "show_numbers_from_symbols  æ œ ä ë ï ö ü  BackSpace"
 | 
			
		||||
        - "show_letters preferences         space        show_eschars Return"
 | 
			
		||||
 | 
			
		||||
buttons:
 | 
			
		||||
    Shift_L:
 | 
			
		||||
        action:
 | 
			
		||||
            locking:
 | 
			
		||||
                lock_view: "upper"
 | 
			
		||||
                unlock_view: "base"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        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: "wide"
 | 
			
		||||
        label: "123"
 | 
			
		||||
    show_numbers_from_symbols:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "numbers"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "123"
 | 
			
		||||
    show_letters:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "base"
 | 
			
		||||
        outline: "wide"
 | 
			
		||||
        label: "abc"
 | 
			
		||||
    show_symbols:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "symbols"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "*/="
 | 
			
		||||
    show_eschars:
 | 
			
		||||
        action:
 | 
			
		||||
            locking:
 | 
			
		||||
                lock_view: "eschars"
 | 
			
		||||
                unlock_view: "base"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "âÂ"
 | 
			
		||||
    space:
 | 
			
		||||
        outline: "spaceline"
 | 
			
		||||
        text: " "
 | 
			
		||||
    Return:
 | 
			
		||||
        outline: "wide"
 | 
			
		||||
        icon: "key-enter"
 | 
			
		||||
        keysym: "Return"
 | 
			
		||||
    colon:
 | 
			
		||||
        text: ":"
 | 
			
		||||
    "\"":
 | 
			
		||||
        keysym: "quotedbl"
 | 
			
		||||
@ -1,89 +0,0 @@
 | 
			
		||||
---
 | 
			
		||||
outlines:
 | 
			
		||||
    default:   { width: 35.33, height: 52 }
 | 
			
		||||
    altline:   { width: 52.67, height: 52 }
 | 
			
		||||
    wide:      { width: 59,    height: 52 }
 | 
			
		||||
    spaceline: { width: 140,   height: 52 }
 | 
			
		||||
    special:   { width: 44,    height: 52 }
 | 
			
		||||
 | 
			
		||||
views:
 | 
			
		||||
    base:
 | 
			
		||||
        - "a z e r t y u i o p"
 | 
			
		||||
        - "q s d f g h j k l m"
 | 
			
		||||
        - "Shift_L   w x c v b n .   BackSpace"
 | 
			
		||||
        - "show_numbers preferences         space        show_eschars Return"
 | 
			
		||||
    upper:
 | 
			
		||||
        - "A Z E R T Y U I O P"
 | 
			
		||||
        - "Q S D F G H J K L M"
 | 
			
		||||
        - "Shift_L   W X C V B N ,  BackSpace"
 | 
			
		||||
        - "show_numbers preferences         space        show_eschars Return"
 | 
			
		||||
    numbers:
 | 
			
		||||
        - "1 2 3 4 5 6 7 8 9 0"
 | 
			
		||||
        - "@ # € % & - _ + ( )"
 | 
			
		||||
        - "show_symbols   , \" ' colon ; ! ?  BackSpace"
 | 
			
		||||
        - "show_letters preferences         space        show_eschars Return"
 | 
			
		||||
    symbols:
 | 
			
		||||
        - "~ ` | · √ π τ ÷ × ¶"
 | 
			
		||||
        - "© ® £ $ ¥ ^ ° * { }"
 | 
			
		||||
        - "show_numbers_from_symbols   \\ / < > = [ ]  BackSpace"
 | 
			
		||||
        - "show_letters preferences         space        show_eschars Return"
 | 
			
		||||
    eschars:
 | 
			
		||||
        - "à â ç é è ê î ô ù û"
 | 
			
		||||
        - "À Â Ç É È Ê Î Ô Ù Û"
 | 
			
		||||
        - "show_numbers_from_symbols  æ œ ä ë ï ö ü  BackSpace"
 | 
			
		||||
        - "show_letters preferences         space        show_eschars Return"
 | 
			
		||||
 | 
			
		||||
buttons:
 | 
			
		||||
    Shift_L:
 | 
			
		||||
        action:
 | 
			
		||||
            locking:
 | 
			
		||||
                lock_view: "upper"
 | 
			
		||||
                unlock_view: "base"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        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: "wide"
 | 
			
		||||
        label: "123"
 | 
			
		||||
    show_numbers_from_symbols:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "numbers"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "123"
 | 
			
		||||
    show_letters:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "base"
 | 
			
		||||
        outline: "wide"
 | 
			
		||||
        label: "abc"
 | 
			
		||||
    show_symbols:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "symbols"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "*/="
 | 
			
		||||
    show_eschars:
 | 
			
		||||
        action:
 | 
			
		||||
            locking:
 | 
			
		||||
                lock_view: "eschars"
 | 
			
		||||
                unlock_view: "base"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "âÂ"
 | 
			
		||||
    space:
 | 
			
		||||
        outline: "spaceline"
 | 
			
		||||
        text: " "
 | 
			
		||||
    Return:
 | 
			
		||||
        outline: "wide"
 | 
			
		||||
        icon: "key-enter"
 | 
			
		||||
        keysym: "Return"
 | 
			
		||||
    colon:
 | 
			
		||||
        text: ":"
 | 
			
		||||
    "\"":
 | 
			
		||||
        keysym: "quotedbl"
 | 
			
		||||
@ -1,89 +0,0 @@
 | 
			
		||||
---
 | 
			
		||||
outlines:
 | 
			
		||||
    default:   { width: 54,  height: 42 }
 | 
			
		||||
    altline:   { width: 81,  height: 42 }
 | 
			
		||||
    wide:      { width: 100, height: 42 }
 | 
			
		||||
    spaceline: { width: 205, height: 42 }
 | 
			
		||||
    special:   { width: 54,  height: 42 }
 | 
			
		||||
 | 
			
		||||
views:
 | 
			
		||||
    base:
 | 
			
		||||
        - "a z e r t y u i o p"
 | 
			
		||||
        - "q s d f g h j k l m"
 | 
			
		||||
        - "Shift_L   w x c v b n .   BackSpace"
 | 
			
		||||
        - "show_numbers preferences         space        show_eschars Return"
 | 
			
		||||
    upper:
 | 
			
		||||
        - "A Z E R T Y U I O P"
 | 
			
		||||
        - "Q S D F G H J K L M"
 | 
			
		||||
        - "Shift_L   W X C V B N ,  BackSpace"
 | 
			
		||||
        - "show_numbers preferences         space        show_eschars Return"
 | 
			
		||||
    numbers:
 | 
			
		||||
        - "1 2 3 4 5 6 7 8 9 0"
 | 
			
		||||
        - "@ # € % & - _ + ( )"
 | 
			
		||||
        - "show_symbols   , \" ' colon ; ! ?  BackSpace"
 | 
			
		||||
        - "show_letters preferences         space        show_eschars Return"
 | 
			
		||||
    symbols:
 | 
			
		||||
        - "~ ` | · √ π τ ÷ × ¶"
 | 
			
		||||
        - "© ® £ $ ¥ ^ ° * { }"
 | 
			
		||||
        - "show_numbers_from_symbols   \\ / < > = [ ]  BackSpace"
 | 
			
		||||
        - "show_letters preferences         space        show_eschars Return"
 | 
			
		||||
    eschars:
 | 
			
		||||
        - "à â ç é è ê î ô ù û"
 | 
			
		||||
        - "À Â Ç É È Ê Î Ô Ù Û"
 | 
			
		||||
        - "show_numbers_from_symbols  æ œ ä ë ï ö ü  BackSpace"
 | 
			
		||||
        - "show_letters preferences         space        show_eschars Return"
 | 
			
		||||
 | 
			
		||||
buttons:
 | 
			
		||||
    Shift_L:
 | 
			
		||||
        action:
 | 
			
		||||
            locking:
 | 
			
		||||
                lock_view: "upper"
 | 
			
		||||
                unlock_view: "base"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        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: "wide"
 | 
			
		||||
        label: "123"
 | 
			
		||||
    show_numbers_from_symbols:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "numbers"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "123"
 | 
			
		||||
    show_letters:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "base"
 | 
			
		||||
        outline: "wide"
 | 
			
		||||
        label: "abc"
 | 
			
		||||
    show_symbols:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "symbols"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "*/="
 | 
			
		||||
    show_eschars:
 | 
			
		||||
        action:
 | 
			
		||||
            locking:
 | 
			
		||||
                lock_view: "eschars"
 | 
			
		||||
                unlock_view: "base"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "âÂ"
 | 
			
		||||
    space:
 | 
			
		||||
        outline: "spaceline"
 | 
			
		||||
        text: " "
 | 
			
		||||
    Return:
 | 
			
		||||
        outline: "wide"
 | 
			
		||||
        icon: "key-enter"
 | 
			
		||||
        keysym: "Return"
 | 
			
		||||
    colon:
 | 
			
		||||
        text: ":"
 | 
			
		||||
    "\"":
 | 
			
		||||
        keysym: "quotedbl"
 | 
			
		||||
@ -1,78 +0,0 @@
 | 
			
		||||
---
 | 
			
		||||
outlines:
 | 
			
		||||
    default: { width: 35.33, height: 52 }
 | 
			
		||||
    altline: { width: 52.67, height: 52 }
 | 
			
		||||
    wide: { width: 62, height: 52 }
 | 
			
		||||
    spaceline: { width: 142, height: 52 }
 | 
			
		||||
    special: { width: 44, height: 52 }
 | 
			
		||||
 | 
			
		||||
views:
 | 
			
		||||
    base:
 | 
			
		||||
        - "ქ წ ე რ ტ ყ უ ი ო პ"
 | 
			
		||||
        - "ა ს დ ფ გ ჰ ჯ კ ლ"
 | 
			
		||||
        - "Shift_L ზ ხ ც ვ ბ ნ მ BackSpace"
 | 
			
		||||
        - "show_numbers preferences         space        period Return"
 | 
			
		||||
    upper:
 | 
			
		||||
        - "ქ ჭ ე ღ თ ყ უ ი ო პ"
 | 
			
		||||
        - "ა შ დ ფ გ ჰ ჟ კ ლ"
 | 
			
		||||
        - "Shift_L ძ ხ ჩ ვ ბ ნ მ BackSpace"
 | 
			
		||||
        - "show_numbers preferences         space        period Return"
 | 
			
		||||
    numbers:
 | 
			
		||||
        - "1 2 3 4 5 6 7 8 9 0"
 | 
			
		||||
        - "! @ # $ % ^ & * ( )"
 | 
			
		||||
        - "show_symbols   - ' \" colon ; , ?   BackSpace"
 | 
			
		||||
        - "show_letters preferences         space        period Return"
 | 
			
		||||
    symbols:
 | 
			
		||||
        - "+ ⨯ ÷ = / _ € £ ¥ ₾"
 | 
			
		||||
        - "~ ` | · √ π τ ° { }"
 | 
			
		||||
        - "show_numbers_from_symbols   \\ / < > = [ ]  BackSpace"
 | 
			
		||||
        - "show_letters preferences         space        period Return"
 | 
			
		||||
 | 
			
		||||
buttons:
 | 
			
		||||
    Shift_L:
 | 
			
		||||
        action:
 | 
			
		||||
            locking:
 | 
			
		||||
                lock_view: "upper"
 | 
			
		||||
                unlock_view: "base"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        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: "wide"
 | 
			
		||||
        label: "123"
 | 
			
		||||
    show_numbers_from_symbols:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "numbers"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "123"
 | 
			
		||||
    show_letters:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "base"
 | 
			
		||||
        outline: "wide"
 | 
			
		||||
        label: "ABC"
 | 
			
		||||
    show_symbols:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "symbols"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "*/="
 | 
			
		||||
    period:
 | 
			
		||||
        outline: "special"
 | 
			
		||||
        text: "."
 | 
			
		||||
    space:
 | 
			
		||||
        outline: "spaceline"
 | 
			
		||||
        text: " "
 | 
			
		||||
    Return:
 | 
			
		||||
        outline: "wide"
 | 
			
		||||
        icon: "key-enter"
 | 
			
		||||
        keysym: "Return"
 | 
			
		||||
    colon:
 | 
			
		||||
        text: ":"
 | 
			
		||||
@ -1,326 +0,0 @@
 | 
			
		||||
# Greek polytonic layout by Antonis Tsolomitis
 | 
			
		||||
# University of the Aegean, Department of Mathematics, atsol@aegean.gr
 | 
			
		||||
# March 2022
 | 
			
		||||
# 
 | 
			
		||||
---
 | 
			
		||||
outlines:
 | 
			
		||||
    default:    { width: 40, height: 60 }
 | 
			
		||||
    altline:    { width: 52.67,    height: 60 }
 | 
			
		||||
    wide:       { width: 62,    height: 60 }
 | 
			
		||||
    extrawide:  { width: 66, height: 60 }
 | 
			
		||||
    spaceline:  { width: 140,   height: 60 }
 | 
			
		||||
    special:    { width: 44,    height: 60 }
 | 
			
		||||
 | 
			
		||||
views:
 | 
			
		||||
    base:
 | 
			
		||||
        - "semicolon ς ε ρ τ υ θ ι ο π"
 | 
			
		||||
        - "α σ δ φ γ η ξ κ λ show_accents"
 | 
			
		||||
        - "Shift_L ζ χ ψ ω β ν μ BackSpace"
 | 
			
		||||
        - "show_numbers preferences space period comma Return"
 | 
			
		||||
    upper:
 | 
			
		||||
        - "colon EuroSign Ε Ρ Τ Υ Θ Ι Ο Π"
 | 
			
		||||
        - "Α Σ Δ Φ Γ Η Ξ Κ Λ show_accents"
 | 
			
		||||
        - "Shift_L Ζ Χ Ψ Ω Β Ν Μ BackSpace"
 | 
			
		||||
        - "show_numbers preferences space exclam period_upper Return"
 | 
			
		||||
    accents:
 | 
			
		||||
        - "show_psiliordasiaandvaria show_psiliordasiaandoxia show_psiliordasia show_bariaorperispomeni show_oxia"
 | 
			
		||||
        - "show_PsiliOrDasiaAndVaria show_PsiliOrDasiaAndOxia show_PsiliOrDasia show_BariaOrPerispomeni show_Oxia show_base"
 | 
			
		||||
        - "show_PsiliOrDasiaAndPerispomeni show_psiliordasiaandperispomeni ᾿ BackSpace"
 | 
			
		||||
        - "show_numbers preferences space Return"
 | 
			
		||||
    oxia:
 | 
			
		||||
        - "ά έ ή ί ϊ ΐ ό ύ ϋ ώ"
 | 
			
		||||
        - "show_Oxia ᾳ ᾴ ῃ ῄ ῳ ῴ show_base"
 | 
			
		||||
        - "Ϗ ϐ ϑ ϗ ϖ ΰ ϕ – — BackSpace"
 | 
			
		||||
        - "show_numbers preferences space eis_l eis_r Return"
 | 
			
		||||
    Oxia:
 | 
			
		||||
        - "Ά Έ Ή Ί Ϊ Ό Ύ Ϋ Ώ"
 | 
			
		||||
        - "show_oxia ᾼ ῌ ῼ show_base"
 | 
			
		||||
        - "Ϗ ϐ ϑ ϗ ϖ ϕ – — BackSpace"
 | 
			
		||||
        - "show_numbers preferences space eis_l eis_r Return"
 | 
			
		||||
    bariaorperispomeni:
 | 
			
		||||
        - "ὰ ὲ ὴ ὶ ῒ ὸ ὺ ὼ ῐ ῑ"
 | 
			
		||||
        - "show_BariaOrPerispomeni ᾳ ᾲ ῃ ῂ ῳ ῲ ῠ show_base"
 | 
			
		||||
        - "ᾶ ᾷ ῆ ῖ ῗ ῦ ῧ ῶ ῡ BackSpace"
 | 
			
		||||
        - "show_numbers preferences space ῇ ῷ Return"
 | 
			
		||||
    BariaOrPerispomeni:
 | 
			
		||||
        - "Ὰ Ὲ Ὴ Ὶ Ὸ Ὺ Ὼ"
 | 
			
		||||
        - "show_bariaorperispomeni ᾼ ῌ ῼ show_base"
 | 
			
		||||
        - "show_numbers preferences space BackSpace Return"
 | 
			
		||||
    psiliordasia:
 | 
			
		||||
        - "ἀ ἐ ἠ ἰ ὀ ὐ ὠ ᾀ ᾐ ᾠ"
 | 
			
		||||
        - "show_PsiliOrDasia ἁ ἑ ἡ ἱ ὁ ὑ ὡ show_base"
 | 
			
		||||
        - "ᾁ ᾑ ᾡ ῤ ῥ BackSpace"
 | 
			
		||||
        - "show_numbers preferences space Return"
 | 
			
		||||
    PsiliOrDasia:
 | 
			
		||||
        - "Ἀ Ἐ Ἠ Ἰ Ὀ Ὠ ᾈ ᾘ ᾨ"
 | 
			
		||||
        - "show_psiliordasia Ἁ Ἑ Ἡ Ἱ Ὁ Ὑ Ὡ show_base"
 | 
			
		||||
        - "ᾉ ᾙ ᾩ Ῥ BackSpace"
 | 
			
		||||
        - "show_numbers preferences space Return"
 | 
			
		||||
    psiliordasiaandoxia:
 | 
			
		||||
        - "ἄ ἔ ἤ ἴ ὄ ὔ ὤ ᾄ ᾔ ᾤ"
 | 
			
		||||
        - "show_PsiliOrDasiaAndOxia ἅ ἕ ἥ ἵ ὅ ὕ ὥ show_base"
 | 
			
		||||
        - "ᾅ ᾕ ᾥ BackSpace"
 | 
			
		||||
        - "show_numbers preferences space Return"
 | 
			
		||||
    PsiliOrDasiaAndOxia:
 | 
			
		||||
        - "Ἄ Ἔ Ἤ Ἴ Ὄ Ὤ ᾌ ᾜ ᾬ"
 | 
			
		||||
        - "show_psiliordasiaandoxia Ἅ Ἕ Ἥ Ἵ Ὅ Ὕ Ὥ show_base"
 | 
			
		||||
        - "ᾍ ᾝ ᾭ BackSpace"
 | 
			
		||||
        - "show_numbers preferences space Return"
 | 
			
		||||
    psiliordasiaandvaria:
 | 
			
		||||
        - "ἂ ἒ ἢ ἲ ὂ ὒ ὢ ᾂ ᾒ ᾢ"
 | 
			
		||||
        - "show_PsiliOrDasiaAndVaria ἃ ἓ ἣ ἳ ὃ ὓ ὣ show_base"
 | 
			
		||||
        - "ᾃ ᾓ ᾣ BackSpace"
 | 
			
		||||
        - "show_numbers preferences space Return"
 | 
			
		||||
    PsiliOrDasiaAndVaria:
 | 
			
		||||
        - "Ἂ Ἒ Ἢ Ἲ Ὂ Ὢ ᾊ ᾚ ᾪ"
 | 
			
		||||
        - "show_psiliordasiaandvaria Ἃ Ἓ Ἣ Ἳ Ὃ Ὓ Ὣ show_base"
 | 
			
		||||
        - "ᾋ ᾛ ᾫ BackSpace"
 | 
			
		||||
        - "show_numbers preferences space Return"
 | 
			
		||||
    psiliordasiaandperispomeni:
 | 
			
		||||
        - "ἆ ἦ ἶ ὖ ὦ ᾆ ᾖ ᾦ"
 | 
			
		||||
        - "show_PsiliOrDasiaAndPerispomeni ἇ ἧ ἷ ὗ ὧ show_base"
 | 
			
		||||
        - "ᾇ ᾗ ᾧ BackSpace"
 | 
			
		||||
        - "show_numbers preferences space Return"
 | 
			
		||||
    PsiliOrDasiaAndPerispomeni:
 | 
			
		||||
        - "Ἆ Ἦ Ἶ Ὦ ᾎ ᾞ ᾮ"
 | 
			
		||||
        - "show_psiliordasiaandperispomeni Ἇ Ἧ Ἷ Ὗ Ὧ show_base"
 | 
			
		||||
        - "ᾏ ᾟ ᾯ BackSpace"
 | 
			
		||||
        - "show_numbers preferences space Return"
 | 
			
		||||
    numbers:
 | 
			
		||||
        - "1 2 3 4 5 6 7 8 9 0"
 | 
			
		||||
        - "at numbersign dollar percent ampersand minus underscore plus parenleft parenright"
 | 
			
		||||
        - "show_symbols comma quotedbl quoteright colon semicolon exclam question BackSpace"
 | 
			
		||||
        - "show_letters preferences space period comma Return"
 | 
			
		||||
    symbols:
 | 
			
		||||
        - "asciitilde quoteleft bar U00B7 squareroot Greek_pi Greek_tau division multiply paragraph"
 | 
			
		||||
        - "copyright U00AE U00A3 EuroSign U00A5 asciicircum degree asterisk braceleft braceright"
 | 
			
		||||
        - "show_numbers backslash slash less greater equal bracketleft bracketright  BackSpace"
 | 
			
		||||
        - "show_letters preferences space period comma Return"
 | 
			
		||||
buttons:
 | 
			
		||||
    Shift_L:
 | 
			
		||||
        action:
 | 
			
		||||
            locking:
 | 
			
		||||
                lock_view: "upper"
 | 
			
		||||
                unlock_view: "base"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        icon: "key-shift"
 | 
			
		||||
    BackSpace:
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        icon: "edit-clear-symbolic"
 | 
			
		||||
        action: "erase"
 | 
			
		||||
    preferences:
 | 
			
		||||
        action: "show_prefs"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        icon: "keyboard-mode-symbolic"
 | 
			
		||||
    show_oxia:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "oxia"
 | 
			
		||||
        outline: "extrawide"
 | 
			
		||||
        label: "´ ΅"
 | 
			
		||||
    show_Oxia:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "Oxia"
 | 
			
		||||
        outline: "extrawide"
 | 
			
		||||
        label: "´¨↑"
 | 
			
		||||
    show_bariaorperispomeni:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "bariaorperispomeni"
 | 
			
		||||
        outline: "extrawide"
 | 
			
		||||
        label: "` ῀"
 | 
			
		||||
    show_BariaOrPerispomeni:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "BariaOrPerispomeni"
 | 
			
		||||
        outline: "extrawide"
 | 
			
		||||
        label: "`῀↑"
 | 
			
		||||
    show_psiliordasia:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "psiliordasia"
 | 
			
		||||
        outline: "extrawide"
 | 
			
		||||
        label: "᾿ ῾"
 | 
			
		||||
    show_PsiliOrDasia:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "PsiliOrDasia"
 | 
			
		||||
        outline: "extrawide"
 | 
			
		||||
        label: "᾿῾↑"
 | 
			
		||||
    show_psiliordasiaandoxia:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "psiliordasiaandoxia"
 | 
			
		||||
        outline: "extrawide"
 | 
			
		||||
        label: "῎ ῞"
 | 
			
		||||
    show_PsiliOrDasiaAndOxia:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "PsiliOrDasiaAndOxia"
 | 
			
		||||
        outline: "extrawide"
 | 
			
		||||
        label: "῎῞↑"
 | 
			
		||||
    show_psiliordasiaandvaria:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "psiliordasiaandvaria"
 | 
			
		||||
        outline: "extrawide"
 | 
			
		||||
        label: "῍ ῝"
 | 
			
		||||
    show_PsiliOrDasiaAndVaria:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "PsiliOrDasiaAndVaria"
 | 
			
		||||
        outline: "extrawide"
 | 
			
		||||
        label: "῍῝↑"
 | 
			
		||||
    show_psiliordasiaandperispomeni:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "psiliordasiaandperispomeni"
 | 
			
		||||
        outline: "extrawide"
 | 
			
		||||
        label: "῏ ῟"
 | 
			
		||||
    show_PsiliOrDasiaAndPerispomeni:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "PsiliOrDasiaAndPerispomeni"
 | 
			
		||||
        outline: "extrawide"
 | 
			
		||||
        label: "῏῟↑"
 | 
			
		||||
    show_numbers:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "numbers"
 | 
			
		||||
        outline: "wide"
 | 
			
		||||
        label: "123"
 | 
			
		||||
    show_letters:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "base"
 | 
			
		||||
        outline: "wide"
 | 
			
		||||
        label: "ΑΒΓ"
 | 
			
		||||
    show_symbols:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "symbols"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "*/="
 | 
			
		||||
    show_accents:
 | 
			
		||||
        action:
 | 
			
		||||
            locking:
 | 
			
		||||
                lock_view: "accents"
 | 
			
		||||
                unlock_view: "base"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "ᾦ"
 | 
			
		||||
    show_base:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "base"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "αι"
 | 
			
		||||
    space:
 | 
			
		||||
        outline: "spaceline"
 | 
			
		||||
        text: " "
 | 
			
		||||
    Return:
 | 
			
		||||
        outline: "wide"
 | 
			
		||||
        icon: "key-enter"
 | 
			
		||||
        keysym: "Return"
 | 
			
		||||
    period:
 | 
			
		||||
        outline: "special"
 | 
			
		||||
        text: "."
 | 
			
		||||
    period_upper:
 | 
			
		||||
        outline: "special"
 | 
			
		||||
        text: "·"
 | 
			
		||||
    comma:
 | 
			
		||||
        outline: "special"
 | 
			
		||||
        text: ","
 | 
			
		||||
    colon:
 | 
			
		||||
        outline: "special"
 | 
			
		||||
        text: ":"
 | 
			
		||||
    semicolon:
 | 
			
		||||
        outline: "special"
 | 
			
		||||
        text: ";"
 | 
			
		||||
    exclam:
 | 
			
		||||
        outline: "special"
 | 
			
		||||
        text: "!"
 | 
			
		||||
    eis_l:
 | 
			
		||||
        outline: "special"
 | 
			
		||||
        text: "«"
 | 
			
		||||
    eis_r:
 | 
			
		||||
        outline: "special"
 | 
			
		||||
        text: "»"
 | 
			
		||||
    aring:
 | 
			
		||||
        text: "å"
 | 
			
		||||
    Aring:
 | 
			
		||||
        text: "Å"
 | 
			
		||||
    oslash:
 | 
			
		||||
        text: "ø"
 | 
			
		||||
    Oslash:
 | 
			
		||||
        text: "Ø"
 | 
			
		||||
    ae:
 | 
			
		||||
        text: "æ"
 | 
			
		||||
    AE:
 | 
			
		||||
        text: "Æ"
 | 
			
		||||
    asterisk:
 | 
			
		||||
        text: "*"
 | 
			
		||||
    asciitilde:
 | 
			
		||||
        text: "~"
 | 
			
		||||
    quoteleft:
 | 
			
		||||
        text: "`"
 | 
			
		||||
    bar:
 | 
			
		||||
        text: "|"
 | 
			
		||||
    U00B7:
 | 
			
		||||
        text: "·"
 | 
			
		||||
    squareroot:
 | 
			
		||||
        text: "√"
 | 
			
		||||
    Greek_pi:
 | 
			
		||||
        text: "π"
 | 
			
		||||
    division:
 | 
			
		||||
        text: "÷"
 | 
			
		||||
    multiply:
 | 
			
		||||
        text: "×"
 | 
			
		||||
    paragraph:
 | 
			
		||||
        text: "¶"
 | 
			
		||||
    Greek_tau:
 | 
			
		||||
        text: "τ"
 | 
			
		||||
    copyright:
 | 
			
		||||
        text: "©"
 | 
			
		||||
    numbersign:
 | 
			
		||||
        text: "#"
 | 
			
		||||
    U00AE:
 | 
			
		||||
        text: "®"
 | 
			
		||||
    at:
 | 
			
		||||
        text: "@"
 | 
			
		||||
    dollar:
 | 
			
		||||
        text: "$"
 | 
			
		||||
    U00A3:
 | 
			
		||||
        text: "£"
 | 
			
		||||
    percent:
 | 
			
		||||
        text: "%"
 | 
			
		||||
    EuroSign:
 | 
			
		||||
        outline: "special"
 | 
			
		||||
        text: "€"
 | 
			
		||||
    ampersand:
 | 
			
		||||
        text: "&"
 | 
			
		||||
    U00A5:
 | 
			
		||||
        text: "¥"
 | 
			
		||||
    minus:
 | 
			
		||||
        text: "-"
 | 
			
		||||
    asciicircum:
 | 
			
		||||
        text: "^"
 | 
			
		||||
    underscore:
 | 
			
		||||
        text: "_"
 | 
			
		||||
    degree:
 | 
			
		||||
        text: "°"
 | 
			
		||||
    plus:
 | 
			
		||||
        text: "+"
 | 
			
		||||
    equal:
 | 
			
		||||
        text: "="
 | 
			
		||||
    parenleft:
 | 
			
		||||
        text: "("
 | 
			
		||||
    parenright:
 | 
			
		||||
        text: ")"
 | 
			
		||||
    braceleft:
 | 
			
		||||
        text: "{"
 | 
			
		||||
    braceright:
 | 
			
		||||
        text: "}"
 | 
			
		||||
    backslash:
 | 
			
		||||
        text: "\\"
 | 
			
		||||
    slash:
 | 
			
		||||
        text: "/"
 | 
			
		||||
    quotedbl:
 | 
			
		||||
        text: "\""
 | 
			
		||||
    quoteright:
 | 
			
		||||
        text: "'"
 | 
			
		||||
    less:
 | 
			
		||||
        text: "<"
 | 
			
		||||
    greater:
 | 
			
		||||
        text: ">"
 | 
			
		||||
    question:
 | 
			
		||||
        text: "?"
 | 
			
		||||
    bracketleft:
 | 
			
		||||
        text: "["
 | 
			
		||||
    bracketright:
 | 
			
		||||
        text: "]"
 | 
			
		||||
 | 
			
		||||
@ -1,208 +0,0 @@
 | 
			
		||||
# Greek layout originally created by Antonis Tsolomitis
 | 
			
		||||
# University of the Aegean, Department of Mathematics, atsol@aegean.gr
 | 
			
		||||
# Sep 2019
 | 
			
		||||
# Edited by Sotiris Papadopoulos, sotirios.papadopoulos@inserm.fr
 | 
			
		||||
---
 | 
			
		||||
outlines:
 | 
			
		||||
    default:    { width: 40,    height: 60 }
 | 
			
		||||
    altline:    { width: 52.67, height: 60 }
 | 
			
		||||
    wide:       { width: 62,    height: 60 }
 | 
			
		||||
    spaceline:  { width: 140,   height: 60 }
 | 
			
		||||
    special:    { width: 44,    height: 60 }
 | 
			
		||||
 | 
			
		||||
views:
 | 
			
		||||
    base:
 | 
			
		||||
        - "semicolon ς ε ρ τ υ θ ι ο π"
 | 
			
		||||
        - "α σ δ φ γ η ξ κ λ show_accented"
 | 
			
		||||
        - "Shift_L ζ χ ψ ω β ν μ BackSpace"
 | 
			
		||||
        - "show_numbers preferences space period comma Return"
 | 
			
		||||
    upper:
 | 
			
		||||
        - "colon exclam Ε Ρ Τ Υ Θ Ι Ο Π"
 | 
			
		||||
        - "Α Σ Δ Φ Γ Η Ξ Κ Λ show_accented"
 | 
			
		||||
        - "Shift_L Ζ Χ Ψ Ω Β Ν Μ BackSpace"
 | 
			
		||||
        - "show_numbers preferences space period_upper apostrophe Return"
 | 
			
		||||
    accented:
 | 
			
		||||
        - "ά έ ή ί ϊ ΐ ό ύ ϋ ώ "
 | 
			
		||||
        - "Ά Έ Ή Ί Ϊ Ό Ύ Ϋ Ώ show_base"
 | 
			
		||||
        - "Ϗ ϐ ϑ ϗ ϖ ΰ ϕ – — BackSpace"
 | 
			
		||||
        - "show_numbers preferences space eis_l eis_r Return"
 | 
			
		||||
    numbers:
 | 
			
		||||
        - "1 2 3 4 5 6 7 8 9 0"
 | 
			
		||||
        - "at numbersign dollar percent ampersand minus underscore plus parenleft parenright"
 | 
			
		||||
        - "show_symbols comma quotedbl quoteright colon semicolon exclam question BackSpace"
 | 
			
		||||
        - "show_letters preferences space period comma Return"
 | 
			
		||||
    symbols:
 | 
			
		||||
        - "asciitilde quoteleft bar U00B7 squareroot Greek_pi Greek_tau division multiply paragraph"
 | 
			
		||||
        - "copyright U00AE U00A3 EuroSign U00A5 asciicircum degree asterisk braceleft braceright"
 | 
			
		||||
        - "show_numbers backslash slash less greater equal bracketleft bracketright  BackSpace"
 | 
			
		||||
        - "show_letters preferences space period comma Return"
 | 
			
		||||
buttons:
 | 
			
		||||
    Shift_L:
 | 
			
		||||
        action:
 | 
			
		||||
            locking:
 | 
			
		||||
                lock_view: "upper"
 | 
			
		||||
                unlock_view: "base"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        icon: "key-shift"
 | 
			
		||||
    BackSpace:
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        icon: "edit-clear-symbolic"
 | 
			
		||||
        action: "erase"
 | 
			
		||||
    preferences:
 | 
			
		||||
        action: "show_prefs"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        icon: "keyboard-mode-symbolic"
 | 
			
		||||
    show_numbers:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "numbers"
 | 
			
		||||
        outline: "wide"
 | 
			
		||||
        label: "123"
 | 
			
		||||
    show_letters:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "base"
 | 
			
		||||
        outline: "wide"
 | 
			
		||||
        label: "ΑΒΓ"
 | 
			
		||||
    show_symbols:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "symbols"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "*/="
 | 
			
		||||
    show_accented:
 | 
			
		||||
        action:
 | 
			
		||||
            locking:
 | 
			
		||||
                lock_view: "accented"
 | 
			
		||||
                unlock_view: "base"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "άΐ"
 | 
			
		||||
    show_base:
 | 
			
		||||
        action:
 | 
			
		||||
            set_view: "base"
 | 
			
		||||
        outline: "altline"
 | 
			
		||||
        label: "αι"
 | 
			
		||||
    space:
 | 
			
		||||
        outline: "spaceline"
 | 
			
		||||
        text: " "
 | 
			
		||||
    Return:
 | 
			
		||||
        outline: "wide"
 | 
			
		||||
        icon: "key-enter"
 | 
			
		||||
        keysym: "Return"
 | 
			
		||||
    period:
 | 
			
		||||
        outline: "special"
 | 
			
		||||
        text: "."
 | 
			
		||||
    period_upper:
 | 
			
		||||
        outline: "special"
 | 
			
		||||
        text: "·"
 | 
			
		||||
    comma:
 | 
			
		||||
        outline: "special"
 | 
			
		||||
        text: ","
 | 
			
		||||
    colon:
 | 
			
		||||
        outline: "special"
 | 
			
		||||
        text: ":"
 | 
			
		||||
    semicolon:
 | 
			
		||||
        outline: "special"
 | 
			
		||||
        text: ";"
 | 
			
		||||
    apostrophe:
 | 
			
		||||
        outline: "special"
 | 
			
		||||
        text: "᾿"
 | 
			
		||||
    exclam:
 | 
			
		||||
        outline: "special"
 | 
			
		||||
        text: "!"
 | 
			
		||||
    eis_l:
 | 
			
		||||
        outline: "special"
 | 
			
		||||
        text: "«"
 | 
			
		||||
    eis_r:
 | 
			
		||||
        outline: "special"
 | 
			
		||||
        text: "»"
 | 
			
		||||
    aring:
 | 
			
		||||
        text: "å"
 | 
			
		||||
    Aring:
 | 
			
		||||
        text: "Å"
 | 
			
		||||
    oslash:
 | 
			
		||||
        text: "ø"
 | 
			
		||||
    Oslash:
 | 
			
		||||
        text: "Ø"
 | 
			
		||||
    ae:
 | 
			
		||||
        text: "æ"
 | 
			
		||||
    AE:
 | 
			
		||||
        text: "Æ"
 | 
			
		||||
    asterisk:
 | 
			
		||||
        text: "*"
 | 
			
		||||
    asciitilde:
 | 
			
		||||
        text: "~"
 | 
			
		||||
    quoteleft:
 | 
			
		||||
        text: "`"
 | 
			
		||||
    bar:
 | 
			
		||||
        text: "|"
 | 
			
		||||
    U00B7:
 | 
			
		||||
        text: "·"
 | 
			
		||||
    squareroot:
 | 
			
		||||
        text: "√"
 | 
			
		||||
    Greek_pi:
 | 
			
		||||
        text: "π"
 | 
			
		||||
    division:
 | 
			
		||||
        text: "÷"
 | 
			
		||||
    multiply:
 | 
			
		||||
        text: "×"
 | 
			
		||||
    paragraph:
 | 
			
		||||
        text: "¶"
 | 
			
		||||
    Greek_tau:
 | 
			
		||||
        text: "τ"
 | 
			
		||||
    copyright:
 | 
			
		||||
        text: "©"
 | 
			
		||||
    numbersign:
 | 
			
		||||
        text: "#"
 | 
			
		||||
    U00AE:
 | 
			
		||||
        text: "®"
 | 
			
		||||
    at:
 | 
			
		||||
        text: "@"
 | 
			
		||||
    dollar:
 | 
			
		||||
        text: "$"
 | 
			
		||||
    U00A3:
 | 
			
		||||
        text: "£"
 | 
			
		||||
    percent:
 | 
			
		||||
        text: "%"
 | 
			
		||||
    EuroSign:
 | 
			
		||||
        text: "€"
 | 
			
		||||
    ampersand:
 | 
			
		||||
        text: "&"
 | 
			
		||||
    U00A5:
 | 
			
		||||
        text: "¥"
 | 
			
		||||
    minus:
 | 
			
		||||
        text: "-"
 | 
			
		||||
    asciicircum:
 | 
			
		||||
        text: "^"
 | 
			
		||||
    underscore:
 | 
			
		||||
        text: "_"
 | 
			
		||||
    degree:
 | 
			
		||||
        text: "°"
 | 
			
		||||
    plus:
 | 
			
		||||
        text: "+"
 | 
			
		||||
    equal:
 | 
			
		||||
        text: "="
 | 
			
		||||
    parenleft:
 | 
			
		||||
        text: "("
 | 
			
		||||
    parenright:
 | 
			
		||||
        text: ")"
 | 
			
		||||
    braceleft:
 | 
			
		||||
        text: "{"
 | 
			
		||||
    braceright:
 | 
			
		||||
        text: "}"
 | 
			
		||||
    backslash:
 | 
			
		||||
        text: "\\"
 | 
			
		||||
    slash:
 | 
			
		||||
        text: "/"
 | 
			
		||||
    quotedbl:
 | 
			
		||||
        text: "\""
 | 
			
		||||
    quoteright:
 | 
			
		||||
        text: "'"
 | 
			
		||||
    less:
 | 
			
		||||
        text: "<"
 | 
			
		||||
    greater:
 | 
			
		||||
        text: ">"
 | 
			
		||||
    question:
 | 
			
		||||
        text: "?"
 | 
			
		||||
    bracketleft:
 | 
			
		||||
        text: "["
 | 
			
		||||
    bracketright:
 | 
			
		||||
        text: "]"
 | 
			
		||||
 | 
			
		||||