mirror of
https://github.com/Ajetski/corne-zmk-config.git
synced 2025-11-27 13:22:44 -10:00
Merge pull request #2 from lesshonor/refactor
refactor: corne to eyelash_corne
This commit is contained in:
commit
1f77eff4bd
20
.github/workflows/build.yml
vendored
20
.github/workflows/build.yml
vendored
@ -2,25 +2,9 @@ name: Build ZMK firmware
|
||||
on:
|
||||
workflow_dispatch:
|
||||
push:
|
||||
paths:
|
||||
- "config/**"
|
||||
paths-ignore:
|
||||
- "keymap-drawer/**"
|
||||
|
||||
jobs:
|
||||
build:
|
||||
uses: zmkfirmware/zmk/.github/workflows/build-user-config.yml@main
|
||||
draw:
|
||||
uses: caksoylar/keymap-drawer/.github/workflows/draw-zmk.yml@main
|
||||
permissions:
|
||||
contents: write
|
||||
with:
|
||||
commit_message: "[Draw] ${{ github.event.head_commit.message }}"
|
||||
amend_commit: false
|
||||
install_branch: "main"
|
||||
keymap_patterns: "config/*.keymap"
|
||||
json_path: "config"
|
||||
config_path: "keymap_drawer.config.yaml" # config file, ignored if not exists
|
||||
output_folder: "keymap-drawer"
|
||||
destination: "both"
|
||||
parse_args: "" # map of extra args to pass to `keymap parse`, e.g. "corne:'-l Def Lwr Rse' cradio:''"
|
||||
draw_args: "" # map of extra args to pass to `keymap draw`, e.g. "corne:'-k corne_rotated' cradio:'-k paroxysm'"
|
||||
|
||||
|
||||
18
.github/workflows/draw.yml
vendored
Normal file
18
.github/workflows/draw.yml
vendored
Normal file
@ -0,0 +1,18 @@
|
||||
name: Draw Keymap
|
||||
on:
|
||||
workflow_dispatch:
|
||||
push:
|
||||
paths:
|
||||
- "config/**"
|
||||
- .github/workflows/draw.yml
|
||||
- keymap_drawer.config.yaml
|
||||
|
||||
jobs:
|
||||
draw:
|
||||
uses: caksoylar/keymap-drawer/.github/workflows/draw-zmk.yml@main
|
||||
permissions:
|
||||
contents: write
|
||||
with:
|
||||
commit_message: "[Draw] ${{ github.event.head_commit.message }}"
|
||||
destination: "commit"
|
||||
fail_on_error: ${{ fromJSON(true) }}
|
||||
3
.gitignore
vendored
3
.gitignore
vendored
@ -1,6 +1,5 @@
|
||||
build/
|
||||
zmk/
|
||||
zephyr/
|
||||
modules/
|
||||
tools/
|
||||
.west/
|
||||
.west/
|
||||
|
||||
44
README.md
44
README.md
@ -1,6 +1,44 @@
|
||||
if you need the 3D modle of this keyboard,you can connect me by Email。380465425@qq.com
|
||||
# zmk-config-corne
|
||||
# 睫毛外设 (Eyelash Peripherals) Corne ZMK Repository
|
||||
|
||||
**This keyboard is not the same as [foostan's Corne](https://github.com/foostan/crkbd). It will not work with standard `corne` firmware.**
|
||||
|
||||
<img src="keymap-drawer/corne.svg" >
|
||||

|
||||
|
||||
If you need a 3D model of this keyboard, email `380465425@qq.com`.
|
||||
|
||||
## Instructions
|
||||
|
||||
1. [Fork this repository](https://docs.github.com/en/get-started/quickstart/fork-a-repo#forking-a-repository).
|
||||
2. [Click the **Actions** tab and make sure the workflow is enabled](https://docs.github.com/en/actions/managing-workflow-runs-and-deployments/managing-workflow-runs/disabling-and-enabling-a-workflow#enabling-a-workflow).
|
||||
3. Make sure the `eyelash_corne` project in [`config/west.yml`](config/west.yml) still works. The `boards/arm/eyelash_corne` folder will be downloaded from this URL.
|
||||
4. If there is still a `boards/arm/eyelash_corne` folder in your fork, delete it.
|
||||
|
||||
**If you already have a ZMK config repository, [you can add this one as a module instead of forking](https://zmk.dev/docs/features/modules#building-with-modules).**
|
||||
|
||||
## Keymap Diagram
|
||||
|
||||

|
||||
|
||||
## Mouse Support
|
||||
|
||||
:warning: This repository defaults to an EXPERIMENTAL mouse movement branch which is slated for eventual merge into ZMK, but is not guaranteed to be stable. For more information, see [beta testing](https://zmk.dev/docs/features/modules#beta-testing) and [PR #2477](https://github.com/zmkfirmware/zmk/pull/2477).
|
||||
|
||||
If desired, edit your `config/west.yml` to switch back to `zmkfirmware`'s `main` branch:
|
||||
|
||||
```diff
|
||||
diff --git a/config/west.yml b/config/west.yml
|
||||
index ac30a68..70ad540 100644
|
||||
--- a/config/west.yml
|
||||
+++ b/config/west.yml
|
||||
@@ -13,8 +13,8 @@ manifest:
|
||||
url: https://github.com/a741725193/zmk-new_corne
|
||||
revision: main
|
||||
- name: zmk
|
||||
- remote: petejohanson
|
||||
- revision: feat/pointers-with-input-processors
|
||||
+ remote: zmkfirmware
|
||||
+ revision: main
|
||||
import: app/west.yml
|
||||
self:
|
||||
path: config
|
||||
```
|
||||
|
||||
12
boards/arm/eyelash_corne/Kconfig.board
Normal file
12
boards/arm/eyelash_corne/Kconfig.board
Normal file
@ -0,0 +1,12 @@
|
||||
#
|
||||
# Copyright (c) 2024 The ZMK Contributors
|
||||
# SPDX-License-Identifier: MIT
|
||||
#
|
||||
|
||||
config BOARD_EYELASH_CORNE_LEFT
|
||||
bool "eyelash_corne left"
|
||||
depends on SOC_NRF52840_QIAA
|
||||
|
||||
config BOARD_EYELASH_CORNE_RIGHT
|
||||
bool "eyelash_corne right"
|
||||
depends on SOC_NRF52840_QIAA
|
||||
61
boards/arm/eyelash_corne/Kconfig.defconfig
Normal file
61
boards/arm/eyelash_corne/Kconfig.defconfig
Normal file
@ -0,0 +1,61 @@
|
||||
#
|
||||
# Copyright (c) 2024 The ZMK Contributors
|
||||
# SPDX-License-Identifier: MIT
|
||||
#
|
||||
|
||||
if BOARD_EYELASH_CORNE_LEFT
|
||||
|
||||
config ZMK_KEYBOARD_NAME
|
||||
default "Eyelash Corne"
|
||||
|
||||
config ZMK_SPLIT_ROLE_CENTRAL
|
||||
default y
|
||||
|
||||
endif # BOARD_EYELASH_CORNE_LEFT
|
||||
|
||||
if BOARD_EYELASH_CORNE_LEFT || BOARD_EYELASH_CORNE_RIGHT
|
||||
|
||||
config BOARD
|
||||
default "eyelash_corne"
|
||||
|
||||
config BOARD_ENABLE_DCDC
|
||||
bool "Enable DCDC mode"
|
||||
select SOC_DCDC_NRF52X
|
||||
default y
|
||||
|
||||
config BOARD_ENABLE_DCDC_HV
|
||||
bool "Enable High Voltage DCDC converter"
|
||||
default y
|
||||
select SOC_DCDC_NRF52X_HV
|
||||
depends on (BOARD_EYELASH_CORNE_LEFT || BOARD_EYELASH_CORNE_RIGHT)
|
||||
|
||||
config ZMK_SLEEP
|
||||
default y
|
||||
|
||||
config ZMK_SPLIT
|
||||
default y
|
||||
|
||||
config BT_CTLR
|
||||
default BT
|
||||
|
||||
if USB
|
||||
|
||||
config USB_NRFX
|
||||
default y
|
||||
|
||||
config USB_DEVICE_STACK
|
||||
default y
|
||||
|
||||
endif # USB
|
||||
|
||||
if ZMK_BACKLIGHT
|
||||
|
||||
config PWM
|
||||
default y
|
||||
|
||||
config LED_PWM
|
||||
default y
|
||||
|
||||
endif # ZMK_BACKLIGHT
|
||||
|
||||
endif # BOARD_EYELASH_CORNE_LEFT || BOARD_EYELASH_CORNE_RIGHT
|
||||
@ -1,6 +1,8 @@
|
||||
# Copyright (c) 2021 @MangoIV
|
||||
# Copyright (c) 2024 The ZMK Contributors
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
board_runner_args(nrfjprog "--nrf-family=NRF52" "--softreset")
|
||||
|
||||
include(${ZEPHYR_BASE}/boards/common/uf2.board.cmake)
|
||||
include(${ZEPHYR_BASE}/boards/common/blackmagicprobe.board.cmake)
|
||||
include(${ZEPHYR_BASE}/boards/common/nrfjprog.board.cmake)
|
||||
68
boards/arm/eyelash_corne/eyelash_corne-layouts.dtsi
Normal file
68
boards/arm/eyelash_corne/eyelash_corne-layouts.dtsi
Normal file
@ -0,0 +1,68 @@
|
||||
/*
|
||||
*
|
||||
* Copyright (c) 2024 The ZMK Contributors
|
||||
* SPDX-License-Identifier: MIT
|
||||
*
|
||||
*/
|
||||
|
||||
#include <physical_layouts.dtsi>
|
||||
|
||||
/ {
|
||||
default_layout: default_layout {
|
||||
compatible = "zmk,physical-layout";
|
||||
display-name = "Layout";
|
||||
|
||||
transform = <&default_transform>;
|
||||
|
||||
keys // w h x y rot rx r
|
||||
= <&key_physical_attrs 100 100 0 37 0 0 0>
|
||||
, <&key_physical_attrs 100 100 100 37 0 0 0>
|
||||
, <&key_physical_attrs 100 100 200 12 0 0 0>
|
||||
, <&key_physical_attrs 100 100 300 0 0 0 0>
|
||||
, <&key_physical_attrs 100 100 400 12 0 0 0>
|
||||
, <&key_physical_attrs 100 100 500 24 0 0 0>
|
||||
, <&key_physical_attrs 100 100 925 24 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1150 24 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1250 12 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1350 0 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1450 12 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1550 37 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1650 37 0 0 0>
|
||||
, <&key_physical_attrs 100 100 0 137 0 0 0>
|
||||
, <&key_physical_attrs 100 100 100 137 0 0 0>
|
||||
, <&key_physical_attrs 100 100 200 112 0 0 0>
|
||||
, <&key_physical_attrs 100 100 300 100 0 0 0>
|
||||
, <&key_physical_attrs 100 100 400 112 0 0 0>
|
||||
, <&key_physical_attrs 100 100 500 124 0 0 0>
|
||||
, <&key_physical_attrs 100 100 825 124 0 0 0>
|
||||
, <&key_physical_attrs 100 100 925 124 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1025 124 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1150 124 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1250 112 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1350 100 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1450 112 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1550 137 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1650 137 0 0 0>
|
||||
, <&key_physical_attrs 100 100 0 237 0 0 0>
|
||||
, <&key_physical_attrs 100 100 100 237 0 0 0>
|
||||
, <&key_physical_attrs 100 100 200 212 0 0 0>
|
||||
, <&key_physical_attrs 100 100 300 200 0 0 0>
|
||||
, <&key_physical_attrs 100 100 400 212 0 0 0>
|
||||
, <&key_physical_attrs 100 100 500 224 0 0 0>
|
||||
, <&key_physical_attrs 100 100 625 224 0 0 0>
|
||||
, <&key_physical_attrs 100 100 925 224 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1150 224 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1250 212 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1350 200 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1450 212 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1550 237 0 0 0>
|
||||
, <&key_physical_attrs 100 100 1650 237 0 0 0>
|
||||
, <&key_physical_attrs 100 100 350 312 0 0 0>
|
||||
, <&key_physical_attrs 100 100 450 312 1200 450 412>
|
||||
, <&key_physical_attrs 100 100 550 312 2400 515 433>
|
||||
, <&key_physical_attrs 100 100 1100 312 (-2400) 1230 433>
|
||||
, <&key_physical_attrs 100 100 1200 312 (-1200) 1300 412>
|
||||
, <&key_physical_attrs 100 100 1300 312 0 0 0>
|
||||
;
|
||||
};
|
||||
};
|
||||
232
boards/arm/eyelash_corne/eyelash_corne.dtsi
Normal file
232
boards/arm/eyelash_corne/eyelash_corne.dtsi
Normal file
@ -0,0 +1,232 @@
|
||||
/*
|
||||
*
|
||||
* Copyright (c) 2024 The ZMK Contributors
|
||||
* SPDX-License-Identifier: MIT
|
||||
*
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
#include <nordic/nrf52840_qiaa.dtsi>
|
||||
#include <dt-bindings/led/led.h>
|
||||
#include <dt-bindings/zmk/matrix_transform.h>
|
||||
|
||||
#include "eyelash_corne-layouts.dtsi"
|
||||
|
||||
/ {
|
||||
model = "eyelash_corne";
|
||||
compatible = "eyelashperipherals,eyelash_corne";
|
||||
|
||||
chosen {
|
||||
zephyr,code-partition = &code_partition;
|
||||
zephyr,sram = &sram0;
|
||||
zephyr,flash = &flash0;
|
||||
zmk,kscan = &kscan0;
|
||||
zmk,battery = &vbatt;
|
||||
zmk,underglow = &led_strip;
|
||||
zmk,physical-layout = &default_layout;
|
||||
zmk,backlight = &backlight;
|
||||
};
|
||||
|
||||
vbatt: vbatt {
|
||||
compatible = "zmk,battery-nrf-vddh";
|
||||
};
|
||||
|
||||
EXT_POWER {
|
||||
compatible = "zmk,ext-power-generic";
|
||||
control-gpios = <&gpio0 13 GPIO_ACTIVE_HIGH>;
|
||||
init-delay-ms = <50>;
|
||||
};
|
||||
|
||||
left_encoder: encoder_left {
|
||||
compatible = "alps,ec11";
|
||||
a-gpios = <&gpio1 10 (GPIO_ACTIVE_HIGH | GPIO_PULL_UP)>;
|
||||
b-gpios = <&gpio1 14 (GPIO_ACTIVE_HIGH | GPIO_PULL_UP)>;
|
||||
steps = <40>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
sensors {
|
||||
compatible = "zmk,keymap-sensors";
|
||||
triggers-per-rotation = <20>;
|
||||
sensors = <&left_encoder>;
|
||||
};
|
||||
|
||||
kscan0: kscan {
|
||||
compatible = "zmk,kscan-gpio-matrix";
|
||||
wakeup-source;
|
||||
diode-direction = "col2row";
|
||||
row-gpios
|
||||
= <&gpio0 19 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>
|
||||
, <&gpio0 8 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>
|
||||
, <&gpio0 12 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>
|
||||
, <&gpio0 11 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>
|
||||
, <&gpio1 9 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>
|
||||
;
|
||||
col-gpios
|
||||
= <&gpio0 3 GPIO_ACTIVE_HIGH>
|
||||
, <&gpio0 28 GPIO_ACTIVE_HIGH>
|
||||
, <&gpio0 30 GPIO_ACTIVE_HIGH>
|
||||
, <&gpio0 21 GPIO_ACTIVE_HIGH>
|
||||
, <&gpio0 23 GPIO_ACTIVE_HIGH>
|
||||
, <&gpio0 22 GPIO_ACTIVE_HIGH>
|
||||
, <&gpio0 29 GPIO_ACTIVE_HIGH>
|
||||
;
|
||||
};
|
||||
|
||||
default_transform: keymap_transform_0 {
|
||||
compatible = "zmk,matrix-transform";
|
||||
columns = <14>;
|
||||
rows = <5>;
|
||||
map = <
|
||||
RC(0,0) RC(0,1) RC(0,2) RC(0,3) RC(0,4) RC(0,5) RC(0,12) RC(0,13) RC(0,7) RC(0,8) RC(0,9) RC(0,10) RC(0,11)
|
||||
RC(1,0) RC(1,1) RC(1,2) RC(1,3) RC(1,4) RC(1,5) RC(2,12) RC(4,12) RC(3,12) RC(1,13) RC(1,7) RC(1,8) RC(1,9) RC(1,10) RC(1,11)
|
||||
RC(2,0) RC(2,1) RC(2,2) RC(2,3) RC(2,4) RC(2,5) RC(3,2) RC(1,12) RC(2,13) RC(2,7) RC(2,8) RC(2,9) RC(2,10) RC(2,11)
|
||||
RC(3,3) RC(3,4) RC(3,5) RC(3,13) RC(3,7) RC(3,8)
|
||||
>;
|
||||
};
|
||||
|
||||
backlight: pwmleds {
|
||||
compatible = "pwm-leds";
|
||||
pwm_led_0 {
|
||||
pwms = <&pwm0 0 PWM_MSEC(1) PWM_POLARITY_NORMAL>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&adc {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&gpiote {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&gpio0 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&gpio1 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
zephyr_udc0: &usbd {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&flash0 {
|
||||
/*
|
||||
* For more information, see:
|
||||
* http://docs.zephyrproject.org/latest/devices/dts/flash_partitions.html
|
||||
*/
|
||||
partitions {
|
||||
compatible = "fixed-partitions";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
|
||||
sd_partition: partition@0 {
|
||||
reg = <0x00000000 0x00026000>;
|
||||
};
|
||||
|
||||
code_partition: partition@26000 {
|
||||
reg = <0x00026000 0x000c6000>;
|
||||
};
|
||||
|
||||
/*
|
||||
* The flash starting at 0x000ec000 and ending at
|
||||
* 0x000f3fff is reserved for use by the application.
|
||||
*
|
||||
* Storage partition will be used by FCB/LittleFS/NVS
|
||||
* if enabled.
|
||||
*/
|
||||
storage_partition: partition@ec000 {
|
||||
reg = <0x000ec000 0x00008000>;
|
||||
};
|
||||
|
||||
boot_partition: partition@f4000 {
|
||||
reg = <0x000f4000 0x0000c000>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&pinctrl {
|
||||
spi0_default: spi0_default {
|
||||
group1 {
|
||||
psels = <NRF_PSEL(SPIM_SCK, 0, 20)>,
|
||||
<NRF_PSEL(SPIM_MOSI, 0, 17)>,
|
||||
<NRF_PSEL(SPIM_MISO, 0, 25)>;
|
||||
};
|
||||
};
|
||||
|
||||
spi0_sleep: spi0_sleep {
|
||||
group1 {
|
||||
psels = <NRF_PSEL(SPIM_SCK, 0, 20)>,
|
||||
<NRF_PSEL(SPIM_MOSI, 0, 17)>,
|
||||
<NRF_PSEL(SPIM_MISO, 0, 25)>;
|
||||
low-power-enable;
|
||||
};
|
||||
};
|
||||
|
||||
pwm0_default: pwm0_default {
|
||||
group1 {
|
||||
psels = <NRF_PSEL(PWM_OUT0, 1, 13)>;
|
||||
};
|
||||
};
|
||||
pwm0_sleep: pwm0_sleep {
|
||||
group1 {
|
||||
psels = <NRF_PSEL(PWM_OUT0, 1, 13)>;
|
||||
low-power-enable;
|
||||
};
|
||||
};
|
||||
|
||||
spi3_default: spi3_default {
|
||||
group1 {
|
||||
psels = <NRF_PSEL(SPIM_MOSI, 1, 12)>; // WS2812_VEXT_DATA
|
||||
};
|
||||
};
|
||||
|
||||
spi3_sleep: spi3_sleep {
|
||||
group1 {
|
||||
psels = <NRF_PSEL(SPIM_MOSI, 1, 12)>;
|
||||
low-power-enable;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
nice_view_spi: &spi0 {
|
||||
compatible = "nordic,nrf-spim";
|
||||
pinctrl-0 = <&spi0_default>;
|
||||
pinctrl-1 = <&spi0_sleep>;
|
||||
pinctrl-names = "default", "sleep";
|
||||
cs-gpios = <&gpio0 6 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
|
||||
&pwm0 {
|
||||
status = "okay";
|
||||
pinctrl-0 = <&pwm0_default>;
|
||||
pinctrl-1 = <&pwm0_sleep>;
|
||||
pinctrl-names = "default", "sleep";
|
||||
};
|
||||
|
||||
&spi3 {
|
||||
status = "okay";
|
||||
|
||||
compatible = "nordic,nrf-spim";
|
||||
pinctrl-0 = <&spi3_default>;
|
||||
pinctrl-1 = <&spi3_sleep>;
|
||||
pinctrl-names = "default", "sleep";
|
||||
|
||||
led_strip: ws2812@0 {
|
||||
compatible = "worldsemi,ws2812-spi";
|
||||
|
||||
/* SPI */
|
||||
reg = <0>; /* ignored, but necessary for SPI bindings */
|
||||
spi-max-frequency = <4000000>;
|
||||
|
||||
/* WS2812 */
|
||||
chain-length = <21>;
|
||||
spi-one-frame = <0x70>;
|
||||
spi-zero-frame = <0x40>;
|
||||
|
||||
color-mapping = <LED_COLOR_ID_GREEN LED_COLOR_ID_RED LED_COLOR_ID_BLUE>;
|
||||
};
|
||||
};
|
||||
75
boards/arm/eyelash_corne/eyelash_corne.keymap
Normal file
75
boards/arm/eyelash_corne/eyelash_corne.keymap
Normal file
@ -0,0 +1,75 @@
|
||||
#include <behaviors.dtsi>
|
||||
#include <dt-bindings/zmk/bt.h>
|
||||
#include <dt-bindings/zmk/keys.h>
|
||||
#include <dt-bindings/zmk/mouse.h>
|
||||
#include <dt-bindings/zmk/outputs.h>
|
||||
#include <dt-bindings/zmk/rgb.h>
|
||||
|
||||
/ {
|
||||
behaviors {
|
||||
td0: td0 {
|
||||
compatible = "zmk,behavior-tap-dance";
|
||||
#binding-cells = <0>;
|
||||
bindings = <&kp LEFT_SHIFT>, <&kp CAPS>;
|
||||
};
|
||||
};
|
||||
|
||||
rgb_encoder: rgb_encoder {
|
||||
compatible = "zmk,behavior-sensor-rotate";
|
||||
#sensor-binding-cells = <0>;
|
||||
bindings = <&rgb_ug RGB_BRI>, <&rgb_ug RGB_BRD>;
|
||||
};
|
||||
|
||||
keymap {
|
||||
compatible = "zmk,keymap";
|
||||
|
||||
default_layer {
|
||||
display-name = "QWERTY";
|
||||
|
||||
bindings = <
|
||||
&kp TAB &kp Q &kp W &kp E &kp R &kp T &kp UP &kp Y &kp U &kp I &kp O &kp P &kp BSPC
|
||||
&td0 &kp A &kp S &kp D &kp F &kp G &kp LEFT &kp ENTER &kp RIGHT &kp H &kp J &kp K &kp L &kp SEMI &kp SQT
|
||||
&kp LCTRL &kp Z &kp X &kp C &kp V &kp B &kp SPACE &kp DOWN &kp N &kp M &kp COMMA &kp DOT &kp FSLH &kp ESC
|
||||
&kp LGUI &mo 1 < 3 SPACE < 3 ENTER &mo 2 &kp RALT
|
||||
>;
|
||||
|
||||
sensor-bindings = <&inc_dec_kp C_VOLUME_UP C_VOLUME_DOWN>;
|
||||
};
|
||||
|
||||
lower_layer {
|
||||
display-name = "NUMBER";
|
||||
bindings = <
|
||||
&trans &kp N1 &kp N2 &kp N3 &kp N4 &kp N5 &trans &kp N6 &kp N7 &kp N8 &kp N9 &kp N0 &kp BSPC
|
||||
&trans &bt BT_CLR_ALL &bt BT_SEL 0 &bt BT_SEL 1 &bt BT_SEL 2 &bt BT_SEL 3 &trans &mkp LCLK &trans &kp LEFT &kp DOWN &kp UP &kp RIGHT &kp HOME &kp PG_UP
|
||||
&trans &rgb_ug RGB_OFF &rgb_ug RGB_ON &trans &trans &rgb_ug RGB_EFF &kp C_MUTE &trans &rgb_ug RGB_EFR &rgb_ug RGB_SPI &rgb_ug RGB_BRI &rgb_ug RGB_BRD &kp END &kp PG_DN
|
||||
&trans &trans &trans &kp INS &kp DEL &trans
|
||||
>;
|
||||
|
||||
sensor-bindings = <&inc_dec_kp PG_UP PG_DN>;
|
||||
};
|
||||
|
||||
raise_layer {
|
||||
display-name = "SYMBOL";
|
||||
bindings = <
|
||||
&trans &kp EXCL &kp AT &kp HASH &kp DLLR &kp PRCNT &trans &kp CARET &kp AMPS &kp ASTRK &kp LPAR &kp RPAR &kp BSPC
|
||||
&trans &bt BT_CLR &mkp LCLK &mkp MCLK &mkp RCLK &mkp MB4 &trans &mkp LCLK &trans &kp MINUS &kp EQUAL &kp LBKT &kp RBKT &kp BSLH &kp GRAVE
|
||||
&trans &out OUT_USB &out OUT_BLE &none &none &mkp MB5 &kp C_MUTE &trans &kp UNDER &kp PLUS &kp LBRC &kp RBRC &kp PIPE &kp TILDE
|
||||
&trans &trans &kp SPACE &kp RET &trans &trans
|
||||
>;
|
||||
|
||||
sensor-bindings = <&inc_dec_kp PG_UP PG_DN>;
|
||||
};
|
||||
|
||||
layer_3 {
|
||||
display-name = "Fn";
|
||||
bindings = <
|
||||
&trans &kp F1 &kp F2 &kp F3 &kp F4 &kp F5 &trans &kp F6 &kp F7 &kp F8 &kp F9 &kp F10 &kp F11
|
||||
&trans &trans &mkp LCLK &mkp MCLK &mkp RCLK &mkp MB4 &trans &mkp LCLK &trans &bootloader &mkp LCLK &mkp MCLK &mkp RCLK &kp PRINTSCREEN &kp F12
|
||||
&trans &sys_reset &trans &bootloader &trans &mkp MB5 &kp C_MUTE &trans &trans &trans &bootloader &sys_reset &kp SCROLLLOCK &kp PAUSE_BREAK
|
||||
&trans &trans &trans &trans &trans &trans
|
||||
>;
|
||||
|
||||
sensor-bindings = <&rgb_encoder>;
|
||||
};
|
||||
};
|
||||
};
|
||||
@ -1,13 +1,12 @@
|
||||
identifier: corne
|
||||
name: Solfe
|
||||
url: https://github.com/tokyo2006/zmk-config-corne
|
||||
identifier: eyelash_corne
|
||||
name: Eyelash Corne
|
||||
url: https://github.com/a741725193/zmk-new_corne
|
||||
type: mcu
|
||||
arch: arm
|
||||
toolchain:
|
||||
- zephyr
|
||||
- gnuarmemb
|
||||
- xtools
|
||||
ram: 40
|
||||
supported:
|
||||
- adc
|
||||
- usb_device
|
||||
@ -16,5 +15,4 @@ supported:
|
||||
- pwm
|
||||
- watchdog
|
||||
- gpio
|
||||
- i2c
|
||||
- spi
|
||||
- spi
|
||||
17
boards/arm/eyelash_corne/eyelash_corne.zmk.yml
Normal file
17
boards/arm/eyelash_corne/eyelash_corne.zmk.yml
Normal file
@ -0,0 +1,17 @@
|
||||
file_format: "1"
|
||||
id: eyelash_corne
|
||||
name: Eyelash Corne
|
||||
url: https://github.com/a741725193/zmk-new_corne
|
||||
type: board
|
||||
arch: arm
|
||||
features:
|
||||
- keys
|
||||
- display
|
||||
- underglow
|
||||
- encoder
|
||||
outputs:
|
||||
- usb
|
||||
- ble
|
||||
siblings:
|
||||
- eyelash_corne_left
|
||||
- eyelash_corne_right
|
||||
12
boards/arm/eyelash_corne/eyelash_corne_left.dts
Normal file
12
boards/arm/eyelash_corne/eyelash_corne_left.dts
Normal file
@ -0,0 +1,12 @@
|
||||
/*
|
||||
*
|
||||
* Copyright (c) 2024 The ZMK Contributors
|
||||
* SPDX-License-Identifier: MIT
|
||||
*
|
||||
*/
|
||||
|
||||
#include "eyelash_corne.dtsi"
|
||||
|
||||
&left_encoder {
|
||||
status = "okay";
|
||||
};
|
||||
44
boards/arm/eyelash_corne/eyelash_corne_left_defconfig
Normal file
44
boards/arm/eyelash_corne/eyelash_corne_left_defconfig
Normal file
@ -0,0 +1,44 @@
|
||||
#
|
||||
# Copyright (c) 2024 The ZMK Contributors
|
||||
# SPDX-License-Identifier: MIT
|
||||
#
|
||||
|
||||
CONFIG_SOC_SERIES_NRF52X=y
|
||||
CONFIG_SOC_NRF52840_QIAA=y
|
||||
CONFIG_BOARD_EYELASH_CORNE_LEFT=y
|
||||
|
||||
# Enable 32kHz crystal
|
||||
CONFIG_CLOCK_CONTROL_NRF_K32SRC_XTAL=y
|
||||
CONFIG_CLOCK_CONTROL_NRF_K32SRC_30PPM=y
|
||||
|
||||
# Enable MPU
|
||||
CONFIG_ARM_MPU=y
|
||||
|
||||
# enable pinctrl
|
||||
CONFIG_PINCTRL=y
|
||||
|
||||
# enable GPIO
|
||||
CONFIG_GPIO=y
|
||||
|
||||
# Enable SPI
|
||||
CONFIG_SPI=y
|
||||
|
||||
# Enable writing to flash
|
||||
CONFIG_USE_DT_CODE_PARTITION=y
|
||||
CONFIG_BUILD_OUTPUT_UF2=y
|
||||
CONFIG_MPU_ALLOW_FLASH_WRITE=y
|
||||
CONFIG_NVS=y
|
||||
CONFIG_SETTINGS_NVS=y
|
||||
CONFIG_FLASH=y
|
||||
CONFIG_FLASH_PAGE_LAYOUT=y
|
||||
CONFIG_FLASH_MAP=y
|
||||
|
||||
CONFIG_ZMK_USB=y
|
||||
CONFIG_ZMK_BLE=y
|
||||
|
||||
#EXT POWER
|
||||
CONFIG_ZMK_EXT_POWER=y
|
||||
|
||||
#EC11 enable
|
||||
CONFIG_EC11=y
|
||||
CONFIG_EC11_TRIGGER_GLOBAL_THREAD=y
|
||||
12
boards/arm/eyelash_corne/eyelash_corne_right.dts
Normal file
12
boards/arm/eyelash_corne/eyelash_corne_right.dts
Normal file
@ -0,0 +1,12 @@
|
||||
/*
|
||||
*
|
||||
* Copyright (c) 2024 The ZMK Contributors
|
||||
* SPDX-License-Identifier: MIT
|
||||
*
|
||||
*/
|
||||
|
||||
#include "eyelash_corne.dtsi"
|
||||
|
||||
&default_transform {
|
||||
col-offset = <7>;
|
||||
};
|
||||
40
boards/arm/eyelash_corne/eyelash_corne_right_defconfig
Normal file
40
boards/arm/eyelash_corne/eyelash_corne_right_defconfig
Normal file
@ -0,0 +1,40 @@
|
||||
#
|
||||
# Copyright (c) 2024 The ZMK Contributors
|
||||
# SPDX-License-Identifier: MIT
|
||||
#
|
||||
|
||||
CONFIG_SOC_SERIES_NRF52X=y
|
||||
CONFIG_SOC_NRF52840_QIAA=y
|
||||
CONFIG_BOARD_EYELASH_CORNE_RIGHT=y
|
||||
|
||||
# Enable 32kHz crystal
|
||||
CONFIG_CLOCK_CONTROL_NRF_K32SRC_XTAL=y
|
||||
CONFIG_CLOCK_CONTROL_NRF_K32SRC_30PPM=y
|
||||
|
||||
# Enable MPU
|
||||
CONFIG_ARM_MPU=y
|
||||
|
||||
# enable pinctrl
|
||||
CONFIG_PINCTRL=y
|
||||
|
||||
# enable GPIO
|
||||
CONFIG_GPIO=y
|
||||
|
||||
# Enable SPI
|
||||
CONFIG_SPI=y
|
||||
|
||||
# Enable writing to flash
|
||||
CONFIG_USE_DT_CODE_PARTITION=y
|
||||
CONFIG_BUILD_OUTPUT_UF2=y
|
||||
CONFIG_MPU_ALLOW_FLASH_WRITE=y
|
||||
CONFIG_NVS=y
|
||||
CONFIG_SETTINGS_NVS=y
|
||||
CONFIG_FLASH=y
|
||||
CONFIG_FLASH_PAGE_LAYOUT=y
|
||||
CONFIG_FLASH_MAP=y
|
||||
|
||||
CONFIG_ZMK_USB=n
|
||||
CONFIG_ZMK_BLE=y
|
||||
|
||||
#EXT POWER
|
||||
CONFIG_ZMK_EXT_POWER=y
|
||||
22
build.yaml
22
build.yaml
@ -1,10 +1,16 @@
|
||||
---
|
||||
include:
|
||||
|
||||
- board: nice_nano_v2
|
||||
- board: eyelash_corne_left
|
||||
shield: nice_view
|
||||
#snippet: zmk-usb-logging # Uncomment to log over USB.
|
||||
- board: eyelash_corne_right
|
||||
shield: nice_view
|
||||
#snippet: zmk-usb-logging
|
||||
- board: eyelash_corne_left
|
||||
shield: nice_view
|
||||
snippet: studio-rpc-usb-uart
|
||||
cmake-args: -DCONFIG_ZMK_STUDIO=y
|
||||
artifact-name: eyelash_corne_studio_left
|
||||
- board: eyelash_corne_left
|
||||
shield: settings_reset
|
||||
- board: corne_left
|
||||
shield: nice_view_adapter nice_view
|
||||
artifact-name: corne_left_nice_view
|
||||
- board: corne_right
|
||||
shield: nice_view_adapter nice_view
|
||||
artifact-name: corne_right_nice_view
|
||||
#snippet: zmk-usb-logging
|
||||
|
||||
@ -1,10 +0,0 @@
|
||||
#
|
||||
# Copyright (c) 2022 The ZMK Contributors
|
||||
# SPDX-License-Identifier: MIT
|
||||
#
|
||||
|
||||
config BOARD_CORNE_LEFT
|
||||
bool
|
||||
|
||||
config BOARD_CORNE_RIGHT
|
||||
bool
|
||||
@ -1,15 +0,0 @@
|
||||
#
|
||||
# Copyright (c) 2022 Darryl deHaan
|
||||
# SPDX-License-Identifier: MIT
|
||||
#
|
||||
|
||||
config BOARD_CORNE_LEFT
|
||||
bool "corne left"
|
||||
depends on SOC_NRF52840_QIAA
|
||||
|
||||
|
||||
config BOARD_CORNE_RIGHT
|
||||
bool "corne right"
|
||||
depends on SOC_NRF52840_QIAA
|
||||
|
||||
|
||||
@ -1,91 +0,0 @@
|
||||
#
|
||||
# Copyright (c) 2022 Darryl deHaan
|
||||
# SPDX-License-Identifier: MIT
|
||||
#
|
||||
|
||||
if BOARD_CORNE_LEFT
|
||||
|
||||
config ZMK_KEYBOARD_NAME
|
||||
default "Corne"
|
||||
|
||||
config ZMK_SPLIT_ROLE_CENTRAL
|
||||
default y
|
||||
|
||||
endif # BOARD_CORNE_LEFT
|
||||
|
||||
|
||||
if BOARD_CORNE_LEFT || BOARD_CORNE_RIGHT
|
||||
|
||||
config BOARD
|
||||
default "corne"
|
||||
|
||||
config BOARD_ENABLE_DCDC
|
||||
bool "Enable DCDC mode"
|
||||
select SOC_DCDC_NRF52X
|
||||
default y
|
||||
|
||||
config BOARD_ENABLE_DCDC_HV
|
||||
bool "Enable High Voltage DCDC converter"
|
||||
default y
|
||||
select SOC_DCDC_NRF52X_HV
|
||||
depends on (BOARD_CORNE_LEFT || BOARD_CORNE_RIGHT)
|
||||
|
||||
|
||||
config ZMK_SPLIT
|
||||
default y
|
||||
|
||||
config BT_CTLR
|
||||
default BT
|
||||
|
||||
if USB
|
||||
|
||||
config USB_NRFX
|
||||
default y
|
||||
|
||||
config USB_DEVICE_STACK
|
||||
default y
|
||||
|
||||
endif # USB
|
||||
|
||||
if ZMK_DISPLAY
|
||||
|
||||
config I2C
|
||||
default y
|
||||
|
||||
config SSD1306
|
||||
default y
|
||||
|
||||
choice ZMK_DISPLAY_WORK_QUEUE
|
||||
default ZMK_DISPLAY_WORK_QUEUE_DEDICATED
|
||||
endchoice
|
||||
|
||||
endif
|
||||
|
||||
if SSD1306
|
||||
|
||||
config LV_Z_VDB_SIZE
|
||||
default 64
|
||||
|
||||
config LV_DPI_DEF
|
||||
default 148
|
||||
|
||||
config LV_Z_BITS_PER_PIXEL
|
||||
default 1
|
||||
|
||||
choice LV_COLOR_DEPTH
|
||||
default LV_COLOR_DEPTH_1
|
||||
endchoice
|
||||
|
||||
endif
|
||||
|
||||
endif # BOARD_CORNE_LEFT || BOARD_CORNE_RIGHT
|
||||
if ZMK_BACKLIGHT
|
||||
|
||||
config PWM
|
||||
default y
|
||||
|
||||
config LED_PWM
|
||||
default y
|
||||
|
||||
endif # ZMK_BACKLIGHT
|
||||
|
||||
@ -1,32 +0,0 @@
|
||||
# go to sleep after one hour (1*60*60*1000ms)
|
||||
# CONFIG_ZMK_IDLE_SLEEP_TIMEOUT=3600000
|
||||
|
||||
# Turn on logging, and set ZMK logging to debug output
|
||||
# CONFIG_ZMK_USB_LOGGING=n
|
||||
#
|
||||
# Copyright (c) 2022 Darryl deHaan
|
||||
# SPDX-License-Identifier: MIT
|
||||
#
|
||||
|
||||
CONFIG_ZMK_SLEEP=y
|
||||
CONFIG_WS2812_STRIP=y
|
||||
CONFIG_ZMK_RGB_UNDERGLOW=y
|
||||
CONFIG_ZMK_RGB_UNDERGLOW_EXT_POWER=y
|
||||
CONFIG_ZMK_RGB_UNDERGLOW_ON_START=n
|
||||
CONFIG_ZMK_RGB_UNDERGLOW_BRT_MAX=90
|
||||
|
||||
CONFIG_ZMK_RGB_UNDERGLOW_AUTO_OFF_IDLE=y
|
||||
CONFIG_ZMK_RGB_UNDERGLOW_AUTO_OFF_USB=y
|
||||
CONFIG_ZMK_RGB_UNDERGLOW_HUE_START=160
|
||||
CONFIG_ZMK_RGB_UNDERGLOW_EFF_START=3
|
||||
|
||||
#CONFIG_ZMK_HID_CONSUMER_REPORT_USAGES_BASIC=y
|
||||
CONFIG_ZMK_BACKLIGHT=y
|
||||
CONFIG_ZMK_BACKLIGHT_BRT_START=100
|
||||
CONFIG_ZMK_BACKLIGHT_ON_START=y
|
||||
CONFIG_ZMK_BACKLIGHT_AUTO_OFF_IDLE=n
|
||||
|
||||
# Uncomment the following line to increase the keyboard's wireless range
|
||||
CONFIG_BT_CTLR_TX_PWR_PLUS_8=y
|
||||
|
||||
|
||||
@ -1,205 +0,0 @@
|
||||
/*
|
||||
*
|
||||
* Copyright (c) 2021 Darryl deHaan
|
||||
* SPDX-License-Identifier: MIT
|
||||
*
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
#include <nordic/nrf52840_qiaa.dtsi>
|
||||
#include <dt-bindings/led/led.h>
|
||||
#include <dt-bindings/zmk/matrix_transform.h>
|
||||
|
||||
/ {
|
||||
model = "corne";
|
||||
compatible = "corne";
|
||||
|
||||
chosen {
|
||||
zephyr,code-partition = &code_partition;
|
||||
zephyr,sram = &sram0;
|
||||
zephyr,flash = &flash0;
|
||||
zmk,kscan = &kscan0;
|
||||
zephyr,display = &oled;
|
||||
zephyr,console = &cdc_acm_uart;
|
||||
zmk,underglow = &led_strip;
|
||||
zmk,matrix-transform = &default_transform;
|
||||
zmk,backlight = &backlight;
|
||||
};
|
||||
|
||||
left_encoder: encoder_left {
|
||||
compatible = "alps,ec11";
|
||||
label = "LEFT_ENCODER";
|
||||
resolution = <4>;
|
||||
steps = <40>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
sensors {
|
||||
compatible = "zmk,keymap-sensors";
|
||||
sensors = <&left_encoder>;
|
||||
};
|
||||
|
||||
default_transform: keymap_transform_0 {
|
||||
compatible = "zmk,matrix-transform";
|
||||
columns = <14>;
|
||||
rows = <5>;
|
||||
map = <
|
||||
RC(0,0) RC(0,1) RC(0,2) RC(0,3) RC(0,4) RC(0,5) RC(0,7) RC(0,8) RC(0,9) RC(0,10) RC(0,11) RC(0,12) RC(0,13)
|
||||
RC(1,0) RC(1,1) RC(1,2) RC(1,3) RC(1,4) RC(1,5) RC(1,7) RC(1,8) RC(1,9) RC(1,10) RC(1,11) RC(1,12) RC(1,13)
|
||||
RC(2,0) RC(2,1) RC(2,2) RC(2,3) RC(2,4) RC(2,5) RC(2,7) RC(2,8) RC(2,9) RC(2,10) RC(2,11) RC(2,12) RC(2,13)
|
||||
RC(3,2) RC(3,3) RC(3,4) RC(3,5) RC(3,7) RC(3,8) RC(3,9) RC(3,10)
|
||||
RC(4,7)
|
||||
>;
|
||||
};
|
||||
};
|
||||
|
||||
&adc {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&gpiote {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&gpio0 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&gpio1 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usbd {
|
||||
status = "okay";
|
||||
cdc_acm_uart: cdc_acm_uart {
|
||||
compatible = "zephyr,cdc-acm-uart";
|
||||
};
|
||||
};
|
||||
|
||||
&flash0 {
|
||||
/*
|
||||
* For more information, see:
|
||||
* http://docs.zephyrproject.org/latest/devices/dts/flash_partitions.html
|
||||
*/
|
||||
partitions {
|
||||
compatible = "fixed-partitions";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
|
||||
sd_partition: partition@0 {
|
||||
reg = <0x00000000 0x00026000>;
|
||||
};
|
||||
code_partition: partition@26000 {
|
||||
reg = <0x00026000 0x000c6000>;
|
||||
};
|
||||
|
||||
/*
|
||||
* The flash starting at 0x000ec000 and ending at
|
||||
* 0x000f3fff is reserved for use by the application.
|
||||
*/
|
||||
|
||||
/*
|
||||
* Storage partition will be used by FCB/LittleFS/NVS
|
||||
* if enabled.
|
||||
*/
|
||||
storage_partition: partition@ec000 {
|
||||
reg = <0x000ec000 0x00008000>;
|
||||
};
|
||||
|
||||
boot_partition: partition@f4000 {
|
||||
reg = <0x000f4000 0x0000c000>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&pinctrl {
|
||||
i2c0_default: i2c0_default {
|
||||
group1 {
|
||||
psels = <NRF_PSEL(TWIM_SDA, 0, 17)>,
|
||||
<NRF_PSEL(TWIM_SCL, 0, 20)>;
|
||||
};
|
||||
};
|
||||
|
||||
i2c0_sleep: i2c0_sleep {
|
||||
group1 {
|
||||
psels = <NRF_PSEL(TWIM_SDA, 0, 17)>,
|
||||
<NRF_PSEL(TWIM_SCL, 0, 20)>;
|
||||
low-power-enable;
|
||||
};
|
||||
};
|
||||
|
||||
spi3_default: spi3_default {
|
||||
group1 {
|
||||
psels = <NRF_PSEL(SPIM_MOSI, 1, 12)>; // WS2812_VEXT_DATA
|
||||
};
|
||||
};
|
||||
|
||||
spi3_sleep: spi3_sleep {
|
||||
group1 {
|
||||
psels = <NRF_PSEL(SPIM_MOSI, 1, 12)>;
|
||||
low-power-enable;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&i2c0 {
|
||||
status = "okay";
|
||||
|
||||
compatible = "nordic,nrf-twi";
|
||||
pinctrl-0 = <&i2c0_default>;
|
||||
pinctrl-1 = <&i2c0_sleep>;
|
||||
pinctrl-names = "default", "sleep";
|
||||
oled: ssd1306@3c {
|
||||
compatible = "solomon,ssd1306fb";
|
||||
reg = <0x3c>;
|
||||
label = "DISPLAY";
|
||||
width = <128>;
|
||||
height = <32>;
|
||||
segment-offset = <0>;
|
||||
page-offset = <0>;
|
||||
display-offset = <0>;
|
||||
multiplex-ratio = <31>;
|
||||
segment-remap;
|
||||
com-invdir;
|
||||
com-sequential;
|
||||
prechargep = <0x22>;
|
||||
};
|
||||
};
|
||||
|
||||
&spi3 {
|
||||
compatible = "nordic,nrf-spim";
|
||||
status = "okay";
|
||||
|
||||
pinctrl-0 = <&spi3_default>;
|
||||
pinctrl-1 = <&spi3_sleep>;
|
||||
pinctrl-names = "default", "sleep";
|
||||
|
||||
led_strip: ws2812@0 {
|
||||
compatible = "worldsemi,ws2812-spi";
|
||||
|
||||
/* SPI */
|
||||
reg = <0>; /* ignored, but necessary for SPI bindings */
|
||||
spi-max-frequency = <4000000>;
|
||||
|
||||
/* WS2812 */
|
||||
chain-length = <6>;
|
||||
spi-one-frame = <0x70>;
|
||||
spi-zero-frame = <0x40>;
|
||||
|
||||
color-mapping = <LED_COLOR_ID_GREEN LED_COLOR_ID_RED LED_COLOR_ID_BLUE>;
|
||||
};
|
||||
};
|
||||
/ {
|
||||
backlight: pwmleds {
|
||||
compatible = "pwm-leds";
|
||||
pwm_led_0 {
|
||||
pwms = <&pwm0 0 PWM_MSEC(1) PWM_POLARITY_NORMAL>;
|
||||
};
|
||||
};
|
||||
};
|
||||
&pwm0 {
|
||||
status = "okay";
|
||||
pinctrl-0 = <&pwm0_default>;
|
||||
pinctrl-1 = <&pwm0_sleep>;
|
||||
pinctrl-names = "default", "sleep";
|
||||
};
|
||||
@ -1,15 +0,0 @@
|
||||
file_format: "1"
|
||||
id: corne
|
||||
name: Sofle
|
||||
url: https://github.com/tokyo2006/zmk-config-corne
|
||||
type: board
|
||||
arch: arm
|
||||
features:
|
||||
- keys
|
||||
- display
|
||||
outputs:
|
||||
- usb
|
||||
- ble
|
||||
siblings:
|
||||
- corne_left
|
||||
- corne_right
|
||||
@ -1,75 +0,0 @@
|
||||
/*
|
||||
*
|
||||
* Copyright (c) 2021 Darryl deHaan
|
||||
* SPDX-License-Identifier: MIT
|
||||
*
|
||||
*/
|
||||
|
||||
#include "corne.dtsi"
|
||||
|
||||
/{
|
||||
chosen {
|
||||
zmk,battery = &vbatt;
|
||||
zmk,backlight = &backlight;
|
||||
};
|
||||
|
||||
kscan0: kscan {
|
||||
compatible = "zmk,kscan-gpio-matrix";
|
||||
wakeup-source;
|
||||
diode-direction = "col2row";
|
||||
row-gpios
|
||||
= <&gpio0 19 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>
|
||||
, <&gpio0 8 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>
|
||||
, <&gpio0 12 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>
|
||||
, <&gpio0 11 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>
|
||||
, <&gpio1 9 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>
|
||||
;
|
||||
|
||||
col-gpios
|
||||
= <&gpio0 3 GPIO_ACTIVE_HIGH>
|
||||
, <&gpio0 28 GPIO_ACTIVE_HIGH>
|
||||
, <&gpio0 30 GPIO_ACTIVE_HIGH>
|
||||
, <&gpio0 21 GPIO_ACTIVE_HIGH>
|
||||
, <&gpio0 23 GPIO_ACTIVE_HIGH>
|
||||
, <&gpio0 22 GPIO_ACTIVE_HIGH>
|
||||
;
|
||||
};
|
||||
|
||||
ext-power {
|
||||
compatible = "zmk,ext-power-generic";
|
||||
label = "EXT_POWER";
|
||||
control-gpios = <&gpio0 13 GPIO_ACTIVE_HIGH>;
|
||||
init-delay-ms = <50>;
|
||||
};
|
||||
|
||||
vbatt: vbatt {
|
||||
compatible = "zmk,battery-nrf-vddh";
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
&left_encoder {
|
||||
a-gpios = <&gpio1 10 (GPIO_ACTIVE_HIGH | GPIO_PULL_UP)>;
|
||||
b-gpios = <&gpio1 14 (GPIO_ACTIVE_HIGH | GPIO_PULL_UP)>;
|
||||
status = "okay";
|
||||
};
|
||||
&pinctrl {
|
||||
// Other pinctrl definitions for other hardware
|
||||
pwm0_default: pwm0_default {
|
||||
group1 {
|
||||
psels = <NRF_PSEL(PWM_OUT0, 1, 13)>;
|
||||
};
|
||||
};
|
||||
pwm0_sleep: pwm0_sleep {
|
||||
group1 {
|
||||
psels = <NRF_PSEL(PWM_OUT0, 1, 13)>;
|
||||
low-power-enable;
|
||||
};
|
||||
};
|
||||
};
|
||||
&pwm0 {
|
||||
status = "okay";
|
||||
pinctrl-0 = <&pwm0_default>;
|
||||
pinctrl-1 = <&pwm0_sleep>;
|
||||
pinctrl-names = "default", "sleep";
|
||||
};
|
||||
@ -1,82 +0,0 @@
|
||||
#
|
||||
# Copyright (c) 2022 Darryl deHaan
|
||||
# SPDX-License-Identifier: MIT
|
||||
#
|
||||
|
||||
CONFIG_SOC_SERIES_NRF52X=y
|
||||
CONFIG_SOC_NRF52840_QIAA=y
|
||||
CONFIG_BOARD_CORNE_LEFT=y
|
||||
CONFIG_ZMK_SLEEP=y
|
||||
|
||||
# Enable 32kHz crystal
|
||||
CONFIG_CLOCK_CONTROL_NRF_K32SRC_XTAL=y
|
||||
CONFIG_CLOCK_CONTROL_NRF_K32SRC_30PPM=y
|
||||
|
||||
|
||||
|
||||
# Enable MPU
|
||||
CONFIG_ARM_MPU=y
|
||||
|
||||
# enable pinctrl
|
||||
CONFIG_PINCTRL=y
|
||||
|
||||
# enable GPIO
|
||||
CONFIG_GPIO=y
|
||||
|
||||
# Enable SPI
|
||||
CONFIG_SPI=y
|
||||
|
||||
# Enable writing to flash
|
||||
CONFIG_USE_DT_CODE_PARTITION=y
|
||||
CONFIG_BUILD_OUTPUT_UF2=y
|
||||
CONFIG_MPU_ALLOW_FLASH_WRITE=y
|
||||
CONFIG_NVS=y
|
||||
CONFIG_SETTINGS_NVS=y
|
||||
CONFIG_FLASH=y
|
||||
CONFIG_FLASH_PAGE_LAYOUT=y
|
||||
CONFIG_FLASH_MAP=y
|
||||
|
||||
# Enable 32kHz crystal
|
||||
CONFIG_CLOCK_CONTROL_NRF_K32SRC_XTAL=y
|
||||
CONFIG_CLOCK_CONTROL_NRF_K32SRC_30PPM=y
|
||||
|
||||
CONFIG_ZMK_USB=y
|
||||
CONFIG_ZMK_BLE=y
|
||||
|
||||
# enable display drivers
|
||||
CONFIG_ZMK_DISPLAY=y
|
||||
|
||||
|
||||
|
||||
#CONFIG_ZMK_DISPLAY_WORK_QUEUE_DEDICATED=y
|
||||
#CONFIG_ZMK_DISPLAY_DEDICATED_THREAD_STACK_SIZE=2048
|
||||
#CONFIG_LV_Z_BITS_PER_PIXEL=1
|
||||
#CONFIG_LV_COLOR_DEPTH_1=y
|
||||
#CONFIG_LV_DPI_DEF=145
|
||||
#CONFIG_LV_Z_VDB_SIZE=100
|
||||
#CONFIG_LV_USE_THEME_MONO=y
|
||||
#CONFIG_LV_COLOR_CHROMA_KEY_HEX=0x00FF00
|
||||
#CONFIG_ZMK_LV_FONT_DEFAULT_SMALL_MONTSERRAT_16=y
|
||||
#CONFIG_LV_FONT_MONTSERRAT_26=y
|
||||
#CONFIG_LV_FONT_DEFAULT_MONTSERRAT_26=y
|
||||
|
||||
|
||||
#EXT POWER
|
||||
CONFIG_ZMK_EXT_POWER=y
|
||||
|
||||
#BLE-passkey
|
||||
CONFIG_ZMK_BLE_PASSKEY_ENTRY=n
|
||||
|
||||
#BLE-clean
|
||||
CONFIG_ZMK_BLE_CLEAR_BONDS_ON_START=n
|
||||
|
||||
#usb-name
|
||||
CONFIG_USB_DEVICE_MANUFACTURER="corne"
|
||||
|
||||
CONFIG_BT_CTLR_TX_PWR_PLUS_8=y
|
||||
CONFIG_ZMK_HID_REPORT_TYPE_NKRO=n
|
||||
#CONFIG_ZMK_HID_CONSUMER_REPORT_USAGES_BASIC=y
|
||||
|
||||
#EC11 enable
|
||||
CONFIG_EC11=y
|
||||
CONFIG_EC11_TRIGGER_GLOBAL_THREAD=y
|
||||
@ -1,96 +0,0 @@
|
||||
/*
|
||||
*
|
||||
* Copyright (c) 2021 Darryl deHaan
|
||||
* SPDX-License-Identifier: MIT
|
||||
*
|
||||
*/
|
||||
#include "corne.dtsi"
|
||||
|
||||
/{
|
||||
chosen {
|
||||
zmk,battery = &vbatt;
|
||||
};
|
||||
|
||||
kscan0: kscan {
|
||||
compatible = "zmk,kscan-gpio-matrix";
|
||||
wakeup-source;
|
||||
diode-direction = "col2row";
|
||||
row-gpios
|
||||
= <&gpio0 19 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>
|
||||
, <&gpio0 8 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>
|
||||
, <&gpio0 12 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>
|
||||
, <&gpio0 11 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>
|
||||
, <&gpio1 9 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)>
|
||||
;
|
||||
|
||||
col-gpios
|
||||
= <&gpio0 22 GPIO_ACTIVE_HIGH>
|
||||
, <&gpio0 29 GPIO_ACTIVE_HIGH>
|
||||
, <&gpio0 3 GPIO_ACTIVE_HIGH>
|
||||
, <&gpio0 28 GPIO_ACTIVE_HIGH>
|
||||
, <&gpio0 30 GPIO_ACTIVE_HIGH>
|
||||
, <&gpio0 21 GPIO_ACTIVE_HIGH>
|
||||
, <&gpio0 23 GPIO_ACTIVE_HIGH>
|
||||
;
|
||||
};
|
||||
|
||||
ext-power {
|
||||
compatible = "zmk,ext-power-generic";
|
||||
label = "EXT_POWER";
|
||||
control-gpios = <&gpio0 13 GPIO_ACTIVE_HIGH>;
|
||||
init-delay-ms = <50>;
|
||||
};
|
||||
|
||||
vbatt: vbatt {
|
||||
compatible = "zmk,battery-nrf-vddh";
|
||||
init-delay-ms = <50>;
|
||||
};
|
||||
|
||||
};
|
||||
&default_transform {
|
||||
col-offset = <7>;
|
||||
};
|
||||
|
||||
&spi3 {
|
||||
compatible = "nordic,nrf-spim";
|
||||
status = "okay";
|
||||
|
||||
pinctrl-0 = <&spi3_default>;
|
||||
pinctrl-1 = <&spi3_sleep>;
|
||||
pinctrl-names = "default", "sleep";
|
||||
|
||||
led_strip: ws2812@0 {
|
||||
compatible = "worldsemi,ws2812-spi";
|
||||
|
||||
/* SPI */
|
||||
reg = <0>; /* ignored, but necessary for SPI bindings */
|
||||
spi-max-frequency = <4000000>;
|
||||
|
||||
/* WS2812 */
|
||||
chain-length = <7>; /* 6 keys have underglow at the moment */
|
||||
spi-one-frame = <0x70>;
|
||||
spi-zero-frame = <0x40>;
|
||||
|
||||
color-mapping = <LED_COLOR_ID_GREEN LED_COLOR_ID_RED LED_COLOR_ID_BLUE>;
|
||||
};
|
||||
};
|
||||
&pinctrl {
|
||||
// Other pinctrl definitions for other hardware
|
||||
pwm0_default: pwm0_default {
|
||||
group1 {
|
||||
psels = <NRF_PSEL(PWM_OUT0, 1, 13)>;
|
||||
};
|
||||
};
|
||||
pwm0_sleep: pwm0_sleep {
|
||||
group1 {
|
||||
psels = <NRF_PSEL(PWM_OUT0, 1, 13)>;
|
||||
low-power-enable;
|
||||
};
|
||||
};
|
||||
};
|
||||
&pwm0 {
|
||||
status = "okay";
|
||||
pinctrl-0 = <&pwm0_default>;
|
||||
pinctrl-1 = <&pwm0_sleep>;
|
||||
pinctrl-names = "default", "sleep";
|
||||
};
|
||||
@ -1,78 +0,0 @@
|
||||
#
|
||||
# Copyright (c) 2022 Darryl deHaan
|
||||
# SPDX-License-Identifier: MIT
|
||||
#
|
||||
|
||||
CONFIG_SOC_SERIES_NRF52X=y
|
||||
CONFIG_SOC_NRF52840_QIAA=y
|
||||
CONFIG_BOARD_CORNE_RIGHT=y
|
||||
CONFIG_ZMK_SLEEP=y
|
||||
# Enable 32kHz crystal
|
||||
CONFIG_CLOCK_CONTROL_NRF_K32SRC_XTAL=y
|
||||
CONFIG_CLOCK_CONTROL_NRF_K32SRC_30PPM=y
|
||||
|
||||
|
||||
|
||||
# Enable MPU
|
||||
CONFIG_ARM_MPU=y
|
||||
|
||||
# enable pinctrl
|
||||
CONFIG_PINCTRL=y
|
||||
|
||||
# enable GPIO
|
||||
CONFIG_GPIO=y
|
||||
|
||||
# Enable SPI
|
||||
CONFIG_SPI=y
|
||||
|
||||
# Enable writing to flash
|
||||
CONFIG_USE_DT_CODE_PARTITION=y
|
||||
CONFIG_BUILD_OUTPUT_UF2=y
|
||||
CONFIG_MPU_ALLOW_FLASH_WRITE=y
|
||||
CONFIG_NVS=y
|
||||
CONFIG_SETTINGS_NVS=y
|
||||
CONFIG_FLASH=y
|
||||
CONFIG_FLASH_PAGE_LAYOUT=y
|
||||
CONFIG_FLASH_MAP=y
|
||||
|
||||
# Enable 32kHz crystal
|
||||
CONFIG_CLOCK_CONTROL_NRF_K32SRC_XTAL=y
|
||||
CONFIG_CLOCK_CONTROL_NRF_K32SRC_30PPM=y
|
||||
|
||||
CONFIG_ZMK_USB=n
|
||||
CONFIG_ZMK_BLE=y
|
||||
|
||||
# enable display drivers
|
||||
CONFIG_ZMK_DISPLAY=y
|
||||
|
||||
|
||||
|
||||
|
||||
#CONFIG_ZMK_DISPLAY_WORK_QUEUE_DEDICATED=y
|
||||
#CONFIG_ZMK_DISPLAY_DEDICATED_THREAD_STACK_SIZE=2048
|
||||
#CONFIG_LV_Z_BITS_PER_PIXEL=1
|
||||
#CONFIG_LV_COLOR_DEPTH_1=y
|
||||
#CONFIG_LV_DPI_DEF=145
|
||||
#CONFIG_LV_Z_VDB_SIZE=100
|
||||
#CONFIG_LV_USE_THEME_MONO=y
|
||||
#CONFIG_LV_COLOR_CHROMA_KEY_HEX=0x00FF00
|
||||
#CONFIG_ZMK_LV_FONT_DEFAULT_SMALL_MONTSERRAT_16=y
|
||||
#CONFIG_LV_FONT_MONTSERRAT_26=y
|
||||
#CONFIG_LV_FONT_DEFAULT_MONTSERRAT_26=y
|
||||
|
||||
#EXT POWER
|
||||
CONFIG_ZMK_EXT_POWER=y
|
||||
|
||||
#BLE-passkey
|
||||
CONFIG_ZMK_BLE_PASSKEY_ENTRY=n
|
||||
|
||||
#BLE-clean
|
||||
CONFIG_ZMK_BLE_CLEAR_BONDS_ON_START=n
|
||||
|
||||
#usb-name
|
||||
CONFIG_USB_DEVICE_MANUFACTURER="corne"
|
||||
|
||||
CONFIG_BT_CTLR_TX_PWR_PLUS_8=y
|
||||
CONFIG_ZMK_HID_REPORT_TYPE_NKRO=n
|
||||
|
||||
|
||||
@ -1,2 +0,0 @@
|
||||
config SHIELD_NICE_VIEW_ADAPTER
|
||||
def_bool $(shields_list_contains,nice_view_adapter)
|
||||
@ -1,29 +0,0 @@
|
||||
&pinctrl {
|
||||
spi0_default: spi0_default {
|
||||
group1 {
|
||||
psels = <NRF_PSEL(SPIM_SCK, 0, 20)>,
|
||||
<NRF_PSEL(SPIM_MOSI, 0, 17)>,
|
||||
<NRF_PSEL(SPIM_MISO, 0, 25)>;
|
||||
};
|
||||
};
|
||||
spi0_sleep: spi0_sleep {
|
||||
group1 {
|
||||
psels = <NRF_PSEL(SPIM_SCK, 0, 20)>,
|
||||
<NRF_PSEL(SPIM_MOSI, 0, 17)>,
|
||||
<NRF_PSEL(SPIM_MISO, 0, 25)>;
|
||||
low-power-enable;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
nice_view_spi: &spi0 {
|
||||
compatible = "nordic,nrf-spim";
|
||||
pinctrl-0 = <&spi0_default>;
|
||||
pinctrl-1 = <&spi0_sleep>;
|
||||
pinctrl-names = "default", "sleep";
|
||||
cs-gpios = <&gpio0 6 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
|
||||
&i2c0 {
|
||||
status = "disabled";
|
||||
};
|
||||
@ -1,29 +0,0 @@
|
||||
&pinctrl {
|
||||
spi0_default: spi0_default {
|
||||
group1 {
|
||||
psels = <NRF_PSEL(SPIM_SCK, 0, 20)>,
|
||||
<NRF_PSEL(SPIM_MOSI, 0, 17)>,
|
||||
<NRF_PSEL(SPIM_MISO, 0, 25)>;
|
||||
};
|
||||
};
|
||||
spi0_sleep: spi0_sleep {
|
||||
group1 {
|
||||
psels = <NRF_PSEL(SPIM_SCK, 0, 20)>,
|
||||
<NRF_PSEL(SPIM_MOSI, 0, 17)>,
|
||||
<NRF_PSEL(SPIM_MISO, 0, 25)>;
|
||||
low-power-enable;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
nice_view_spi: &spi0 {
|
||||
compatible = "nordic,nrf-spim";
|
||||
pinctrl-0 = <&spi0_default>;
|
||||
pinctrl-1 = <&spi0_sleep>;
|
||||
pinctrl-names = "default", "sleep";
|
||||
cs-gpios = <&gpio0 6 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
|
||||
&i2c0 {
|
||||
status = "disabled";
|
||||
};
|
||||
@ -1,6 +0,0 @@
|
||||
CONFIG_SSD1306=n
|
||||
# Enable Nice View
|
||||
#CONFIG_ZMK_DISPLAY_STATUS_SCREEN_BUILT_IN=y
|
||||
#CONFIG_ZMK_LV_FONT_DEFAULT_SMALL_MONTSERRAT_26=y
|
||||
#CONFIG_LV_FONT_DEFAULT_MONTSERRAT_26=y
|
||||
CONFIG_ZMK_DISPLAY_STATUS_SCREEN_CUSTOM=y
|
||||
@ -1,7 +0,0 @@
|
||||
file_format: "1"
|
||||
id: nice_view_adapter
|
||||
name: nice!view adapter
|
||||
type: shield
|
||||
url: https://nicekeyboards.com/nice-view
|
||||
requires: [i2c_oled]
|
||||
exposes: [nice_view_header]
|
||||
@ -1,72 +0,0 @@
|
||||
{
|
||||
"id": "corne",
|
||||
"name": "Corne",
|
||||
"layouts": {
|
||||
"default_layout": {
|
||||
"name": "default_layout",
|
||||
"layout": [
|
||||
{ "row": 0, "col": 0, "x": 1.5, "y": 1.13, "label": "0\n0" },
|
||||
{ "row": 0, "col": 1, "x": 2.5, "y": 1.13, "label": "0\n1" },
|
||||
{ "row": 0, "col": 2, "x": 3.5, "y": 0.75, "label": "0\n2" },
|
||||
{ "row": 0, "col": 3, "x": 4.5, "y": 0.63, "label": "0\n3" },
|
||||
{ "row": 0, "col": 4, "x": 5.5, "y": 0.75, "label": "0\n4" },
|
||||
{ "row": 0, "col": 5, "x": 6.5, "y": 1, "label": "0\n5" },
|
||||
{ "row": 0, "col": 7, "x": 9.25, "y": 0.25, "label": "0\n7" },
|
||||
{ "row": 0, "col": 8, "x": 12, "y": 1, "label": "0\n8" },
|
||||
{ "row": 0, "col": 9, "x": 13, "y": 0.75, "label": "0\n9" },
|
||||
{ "row": 0, "col": 10, "x": 14, "y": 0.63, "label": "0\n10" },
|
||||
{ "row": 0, "col": 11, "x": 15, "y": 0.75, "label": "0\n11" },
|
||||
{ "row": 0, "col": 12, "x": 16, "y": 1.13, "label": "0\n12" },
|
||||
{ "row": 0, "col": 13, "x": 17, "y": 1.13, "label": "0\n13" },
|
||||
|
||||
{ "row": 1, "col": 0, "x": 1.5, "y": 2.13, "label": "1\n0" },
|
||||
{ "row": 1, "col": 1, "x": 2.5, "y": 2.13, "label": "1\n1" },
|
||||
{ "row": 1, "col": 2, "x": 3.5, "y": 1.75, "label": "1\n2" },
|
||||
{ "row": 1, "col": 3, "x": 4.5, "y": 1.63, "label": "1\n3" },
|
||||
{ "row": 1, "col": 4, "x": 5.5, "y": 1.75, "label": "1\n4" },
|
||||
{ "row": 1, "col": 5, "x": 6.5, "y": 2, "label": "1\n5" },
|
||||
{ "row": 1, "col": 7, "x": 9.25, "y": 2.25, "label": "1\n7" },
|
||||
{ "row": 1, "col": 8, "x": 12, "y": 2, "label": "1\n8" },
|
||||
{ "row": 1, "col": 9, "x": 13, "y": 1.75, "label": "1\n9" },
|
||||
{ "row": 1, "col": 10, "x": 14, "y": 1.63, "label": "1\n10" },
|
||||
{ "row": 1, "col": 11, "x": 15, "y": 1.75, "label": "1\n11" },
|
||||
{ "row": 1, "col": 12, "x": 16, "y": 2.13, "label": "1\n12" },
|
||||
{ "row": 1, "col": 13, "x": 17, "y": 2.13, "label": "1\n13" },
|
||||
|
||||
{ "row": 2, "col": 0, "x": 1.5, "y": 3.13, "label": "2\n0" },
|
||||
{ "row": 2, "col": 1, "x": 2.5, "y": 3.13, "label": "2\n1" },
|
||||
{ "row": 2, "col": 2, "x": 3.5, "y": 2.75, "label": "2\n2" },
|
||||
{ "row": 2, "col": 3, "x": 4.5, "y": 2.63, "label": "2\n3" },
|
||||
{ "row": 2, "col": 4, "x": 5.5, "y": 2.75, "label": "2\n4" },
|
||||
{ "row": 2, "col": 5, "x": 6.5, "y": 3, "label": "2\n5" },
|
||||
{ "row": 2, "col": 7, "x": 8.25, "y": 1.25, "label": "2\n7" },
|
||||
{ "row": 2, "col": 8, "x": 12, "y": 3, "label": "2\n8" },
|
||||
{ "row": 2, "col": 9, "x": 13, "y": 2.75, "label": "2\n9" },
|
||||
{ "row": 2, "col": 10, "x": 14, "y": 2.63, "label": "2\n10" },
|
||||
{ "row": 2, "col": 11, "x": 15, "y": 2.75, "label": "2\n11" },
|
||||
{ "row": 2, "col": 12, "x": 16, "y": 3.13, "label": "2\n12" },
|
||||
{ "row": 2, "col": 13, "x": 17, "y": 3.13, "label": "2\n13" },
|
||||
{ "row": 3, "col": 2, "x": 8, "y": 3.5, "label": "4\n2" },
|
||||
{ "row": 3, "col": 3, "x": 5.5, "y": 4.25, "label": "3\n3" },
|
||||
{ "row": 3, "col": 4, "x": 7, "y": 4.25, "label": "3\n4", "r": 30, "rx": 6.5, "ry": 4.25 },
|
||||
{ "row": 3, "col": 5, "x": 8.25, "y": 3.75, "label": "3\n5", "r": 30, "rx": 6.5, "ry": 4.25, "h": 1.5 },
|
||||
{ "row": 3, "col": 7, "x": 10.25, "y": 1.25, "label": "3\n7" },
|
||||
{ "row": 3, "col": 8, "x": 10.25, "y": 3.75, "label": "3\n8", "r": -30, "rx": 13, "ry": 4.25, "h": 1.5 },
|
||||
{ "row": 3, "col": 9, "x": 11.5, "y": 4.25, "label": "3\n9", "r": -30, "rx": 13, "ry": 4.25 },
|
||||
{ "row": 3, "col": 10, "x": 13, "y": 4.25, "label": "3\n10" },
|
||||
|
||||
{ "row": 4, "col": 7, "x": 9.25, "y": 1.25, "label": "4\n7" }
|
||||
]
|
||||
}
|
||||
},
|
||||
"sensors": [
|
||||
{
|
||||
"ref": "left_encoder",
|
||||
"name": "encoder_left",
|
||||
"identifier": "encoder_left",
|
||||
"compatible": "alps,ec11",
|
||||
"label": "LEFT_ENCODER",
|
||||
"enabled": true
|
||||
}
|
||||
]
|
||||
}
|
||||
@ -1,134 +0,0 @@
|
||||
#include <behaviors/mouse_keys.dtsi>
|
||||
#include <behaviors.dtsi>
|
||||
#include <dt-bindings/zmk/bt.h>
|
||||
#include <dt-bindings/zmk/keys.h>
|
||||
#include <dt-bindings/zmk/mouse.h>
|
||||
#include <dt-bindings/zmk/outputs.h>
|
||||
#include <dt-bindings/zmk/rgb.h>
|
||||
|
||||
#define ZMK_MOUSE_DEFAULT_MOVE_VAL 1200 // 600
|
||||
#define ZMK_MOUSE_DEFAULT_SCRL_VAL 20 // 10
|
||||
#define U_MS_U &mmv MOVE_UP
|
||||
#define U_MS_D &mmv MOVE_DOWN
|
||||
#define U_MS_L &mmv MOVE_LEFT
|
||||
#define U_MS_R &mmv MOVE_RIGHT
|
||||
|
||||
/ {
|
||||
behaviors {
|
||||
td0: td0 {
|
||||
compatible = "zmk,behavior-tap-dance";
|
||||
label = "TD0";
|
||||
#binding-cells = <0>;
|
||||
bindings = <&kp LEFT_SHIFT>, <&kp CAPS>;
|
||||
};
|
||||
|
||||
mmv {
|
||||
acceleration-exponent = <1>; // 1
|
||||
time-to-max-speed-ms = <900>; // 40
|
||||
delay-ms = <0>; // 0
|
||||
};
|
||||
|
||||
msc {
|
||||
acceleration-exponent = <1>; // 0
|
||||
time-to-max-speed-ms = <400>; // 500
|
||||
delay-ms = <0>; // 10
|
||||
};
|
||||
};
|
||||
|
||||
rgb_encoder: rgb_encoder {
|
||||
compatible = "zmk,behavior-sensor-rotate";
|
||||
label = "RGB_ENCODER";
|
||||
#sensor-binding-cells = <0>;
|
||||
bindings = <&rgb_ug RGB_BRI>, <&rgb_ug RGB_BRD>;
|
||||
};
|
||||
|
||||
scroll_encoder: scroll_encoder {
|
||||
compatible = "zmk,behavior-sensor-rotate";
|
||||
#sensor-binding-cells = <0>;
|
||||
bindings = <&msc SCRL_DOWN>, <&msc SCRL_UP>;
|
||||
|
||||
tap-ms = <30>;
|
||||
};
|
||||
|
||||
keymap {
|
||||
compatible = "zmk,keymap";
|
||||
|
||||
default_layer {
|
||||
display-name = "QWERTY";
|
||||
|
||||
// --------------------------------------------------------------------------------
|
||||
// | TAB | Q | W | E | R | T | ↑ | Y | U | I | O | P | BKSP | &kp UP_ARROW
|
||||
// | SHIFT | A | S | D | F | G | ↓ | H | J | K | L | ; | ' |
|
||||
// | CTRL | Z | X | C | V | B | ← | N | M | , | . | / | ESC |
|
||||
// | GUI | LWR | SPC | → | ENT | RSE | ALT |
|
||||
// enter
|
||||
|
||||
bindings = <
|
||||
&kp TAB &kp Q &kp W &kp E &kp R &kp T &kp UP_ARROW &kp Y &kp U &kp I &kp O &kp P &kp BSPC
|
||||
&td0 &kp A &kp S &kp D &kp F &kp G &kp DOWN_ARROW &kp H &kp J &kp K &kp L &kp SEMI &kp SQT
|
||||
&kp LCTRL &kp Z &kp X &kp C &kp V &kp B &kp LEFT_ARROW &kp N &kp M &kp COMMA &kp DOT &kp FSLH &kp ESC
|
||||
&kp SPACE &kp LGUI &mo 1 < 3 SPACE &kp RIGHT_ARROW < 3 ENTER &mo 2 &kp RALT
|
||||
&kp ENTER
|
||||
>;
|
||||
|
||||
label = "QWERTY";
|
||||
sensor-bindings = <&inc_dec_kp C_VOLUME_UP C_VOLUME_DOWN>;
|
||||
};
|
||||
|
||||
lower_layer {
|
||||
display-name = "NUMBER";
|
||||
|
||||
// -----------------------------------------------------------------------------------------
|
||||
// | TAB | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | BKSP |
|
||||
// | BTCLR| BT1 | BT2 | BT3 | BT4 | BT5 | | LFT | DWN | UP | RGT | | |
|
||||
// | SHFT | | | | | | | | | | | | |
|
||||
// | GUI | | SPC | | ENT | | ALT |
|
||||
|
||||
bindings = <
|
||||
&trans &kp N1 &kp N2 &kp N3 &kp N4 &kp N5 &mmv MOVE_UP &kp N6 &kp N7 &kp N8 &kp N9 &kp N0 &kp BSPC
|
||||
&trans &bt BT_CLR_ALL &bt BT_SEL 0 &bt BT_SEL 1 &bt BT_SEL 2 &bt BT_SEL 3 &mmv MOVE_DOWN &kp LEFT &kp DOWN &kp UP &kp RIGHT &kp HOME &kp PG_UP
|
||||
&trans &rgb_ug RGB_OFF &rgb_ug RGB_ON &trans &trans &rgb_ug RGB_EFF &mmv MOVE_LEFT &rgb_ug RGB_EFR &rgb_ug RGB_SPI &rgb_ug RGB_BRI &rgb_ug RGB_BRD &kp END &kp PG_DN
|
||||
&kp C_MUTE &trans &trans &trans &mmv MOVE_RIGHT &kp INS &kp DEL &trans
|
||||
&mkp LCLK
|
||||
>;
|
||||
|
||||
label = "NUMBER";
|
||||
sensor-bindings = <&scroll_encoder>;
|
||||
};
|
||||
|
||||
raise_layer {
|
||||
display-name = "SYMBOL";
|
||||
|
||||
// -----------------------------------------------------------------------------------------
|
||||
// | TAB | ! | @ | # | $ | % | | ^ | & | * | ( | ) | BKSP |
|
||||
// | CTRL | | | | | | | - | = | [ | ] | \ | ` |
|
||||
// | SHFT | | | | | | | _ | + | { | } | "|" | ~ |
|
||||
// | GUI | | SPC | | ENT | | ALT |
|
||||
|
||||
bindings = <
|
||||
&trans &kp EXCL &kp AT &kp HASH &kp DLLR &kp PRCNT &mmv MOVE_UP &kp CARET &kp AMPS &kp ASTRK &kp LPAR &kp RPAR &kp BSPC
|
||||
&trans &bt BT_CLR &mkp LCLK &mkp MCLK &mkp RCLK &mkp MB4 &mmv MOVE_DOWN &kp MINUS &kp EQUAL &kp LBKT &kp RBKT &kp BSLH &kp GRAVE
|
||||
&trans &out OUT_USB &out OUT_BLE &none &none &mkp MB5 &mmv MOVE_LEFT &kp UNDER &kp PLUS &kp LBRC &kp RBRC &kp PIPE &kp TILDE
|
||||
&trans &trans &trans &kp SPACE &mmv MOVE_RIGHT &kp RET &trans &trans
|
||||
&mkp LCLK
|
||||
>;
|
||||
|
||||
label = "SYMBOL";
|
||||
sensor-bindings = <&scroll_encoder>;
|
||||
};
|
||||
|
||||
layer_3 {
|
||||
display-name = "Fn";
|
||||
bindings = <
|
||||
&trans &kp F1 &kp F2 &kp F3 &kp F4 &kp F5 &mmv MOVE_UP &kp F6 &kp F7 &kp F8 &kp F9 &kp F10 &kp F11
|
||||
&trans &trans &mkp LCLK &mkp MCLK &mkp RCLK &mkp MB4 &mmv MOVE_DOWN &bootloader &mkp LCLK &mkp MCLK &mkp RCLK &kp PRINTSCREEN &kp F12
|
||||
&trans &sys_reset &trans &bootloader &trans &mkp MB5 &mmv MOVE_LEFT &trans &trans &bootloader &sys_reset &kp SCROLLLOCK &kp PAUSE_BREAK
|
||||
&kp C_MUTE &trans &trans &trans &mmv MOVE_RIGHT &trans &trans &trans
|
||||
&mkp LCLK
|
||||
>;
|
||||
|
||||
label = "FN";
|
||||
sensor-bindings = <&scroll_encoder>;
|
||||
};
|
||||
};
|
||||
};
|
||||
@ -1,37 +1,32 @@
|
||||
#
|
||||
# Copyright (c) 2022 Darryl deHaan
|
||||
# Copyright (c) 2024 The ZMK Contributors
|
||||
# SPDX-License-Identifier: MIT
|
||||
#
|
||||
|
||||
CONFIG_WS2812_STRIP=y
|
||||
CONFIG_ZMK_RGB_UNDERGLOW=y
|
||||
CONFIG_ZMK_RGB_UNDERGLOW_EXT_POWER=y
|
||||
CONFIG_ZMK_RGB_UNDERGLOW_ON_START=n
|
||||
CONFIG_ZMK_RGB_UNDERGLOW_BRT_MAX=100
|
||||
|
||||
CONFIG_ZMK_RGB_UNDERGLOW_AUTO_OFF_IDLE=y
|
||||
CONFIG_ZMK_RGB_UNDERGLOW_AUTO_OFF_USB=n
|
||||
CONFIG_ZMK_RGB_UNDERGLOW_HUE_START=160
|
||||
CONFIG_ZMK_RGB_UNDERGLOW_EFF_START=3
|
||||
|
||||
# Uncomment the following line to enable NKRO
|
||||
#CONFIG_ZMK_HID_REPORT_TYPE_NKRO=y
|
||||
|
||||
# Some operating systems have problems with full support for consumer keycodes.
|
||||
# Uncomment the following line if keycodes labeled "consumer" like C_AC_SEARCH don't work
|
||||
#CONFIG_ZMK_HID_CONSUMER_REPORT_USAGES_BASIC=y
|
||||
|
||||
#EC11 enable
|
||||
CONFIG_EC11=y
|
||||
CONFIG_EC11_TRIGGER_GLOBAL_THREAD=y
|
||||
|
||||
#EXT POWER
|
||||
CONFIG_ZMK_EXT_POWER=y
|
||||
|
||||
# MOUSE
|
||||
# Mouse enable
|
||||
CONFIG_ZMK_MOUSE=y
|
||||
|
||||
CONFIG_BT_CTLR_TX_PWR_PLUS_8=y
|
||||
CONFIG_ZMK_HID_REPORT_TYPE_NKRO=n
|
||||
CONFIG_ZMK_BACKLIGHT=y
|
||||
CONFIG_ZMK_BACKLIGHT_BRT_START=100
|
||||
CONFIG_ZMK_BACKLIGHT_ON_START=y
|
||||
CONFIG_ZMK_BACKLIGHT_AUTO_OFF_IDLE=n
|
||||
|
||||
CONFIG_ZMK_IDLE_SLEEP_TIMEOUT=3600000
|
||||
# Uncomment the following line to increase the keyboard's wireless range
|
||||
#CONFIG_BT_CTLR_TX_PWR_PLUS_8=y
|
||||
72
config/eyelash_corne.json
Normal file
72
config/eyelash_corne.json
Normal file
@ -0,0 +1,72 @@
|
||||
{
|
||||
"id": "eyelash_corne",
|
||||
"name": "Eyelash Corne",
|
||||
"layouts": {
|
||||
"default_layout": {
|
||||
"name": "default_layout",
|
||||
"layout": [
|
||||
{ "row": 0, "col": 0, "x": 0, "y": 0.37 },
|
||||
{ "row": 0, "col": 1, "x": 1, "y": 0.37 },
|
||||
{ "row": 0, "col": 2, "x": 2, "y": 0.12 },
|
||||
{ "row": 0, "col": 3, "x": 3, "y": 0 },
|
||||
{ "row": 0, "col": 4, "x": 4, "y": 0.12 },
|
||||
{ "row": 0, "col": 5, "x": 5, "y": 0.24 },
|
||||
{ "row": 0, "col": 9, "x": 9.25, "y": 0.24, "label": "5-way up" },
|
||||
{ "row": 0, "col": 11, "x": 11.5, "y": 0.24 },
|
||||
{ "row": 0, "col": 12, "x": 12.5, "y": 0.12 },
|
||||
{ "row": 0, "col": 13, "x": 13.5, "y": 0 },
|
||||
{ "row": 0, "col": 14, "x": 14.5, "y": 0.12 },
|
||||
{ "row": 0, "col": 15, "x": 15.5, "y": 0.37 },
|
||||
{ "row": 0, "col": 16, "x": 16.5, "y": 0.37 },
|
||||
|
||||
{ "row": 1, "col": 0, "x": 0, "y": 1.37 },
|
||||
{ "row": 1, "col": 1, "x": 1, "y": 1.37 },
|
||||
{ "row": 1, "col": 2, "x": 2, "y": 1.12 },
|
||||
{ "row": 1, "col": 3, "x": 3, "y": 1 },
|
||||
{ "row": 1, "col": 4, "x": 4, "y": 1.12 },
|
||||
{ "row": 1, "col": 5, "x": 5, "y": 1.24 },
|
||||
{ "row": 1, "col": 8, "x": 8.25, "y": 1.24, "label": "5-way left" },
|
||||
{ "row": 1, "col": 9, "x": 9.25, "y": 1.24, "label": "5-way press" },
|
||||
{ "row": 1, "col": 10, "x": 10.25, "y": 1.24, "label": "5-way right" },
|
||||
{ "row": 1, "col": 11, "x": 11.5, "y": 1.24 },
|
||||
{ "row": 1, "col": 12, "x": 12.5, "y": 1.12 },
|
||||
{ "row": 1, "col": 13, "x": 13.5, "y": 1 },
|
||||
{ "row": 1, "col": 14, "x": 14.5, "y": 1.12 },
|
||||
{ "row": 1, "col": 15, "x": 15.5, "y": 1.37 },
|
||||
{ "row": 1, "col": 16, "x": 16.5, "y": 1.37 },
|
||||
|
||||
{ "row": 2, "col": 0, "x": 0, "y": 2.37 },
|
||||
{ "row": 2, "col": 1, "x": 1, "y": 2.37 },
|
||||
{ "row": 2, "col": 2, "x": 2, "y": 2.12 },
|
||||
{ "row": 2, "col": 3, "x": 3, "y": 2 },
|
||||
{ "row": 2, "col": 4, "x": 4, "y": 2.12 },
|
||||
{ "row": 2, "col": 5, "x": 5, "y": 2.24 },
|
||||
{ "row": 2, "col": 6, "x": 6.25, "y": 2.24, "label": "4\n2" },
|
||||
{ "row": 2, "col": 9, "x": 9.25, "y": 2.24, "label": "5-way down" },
|
||||
{ "row": 2, "col": 11, "x": 11.5, "y": 2.24 },
|
||||
{ "row": 2, "col": 12, "x": 12.5, "y": 2.12 },
|
||||
{ "row": 2, "col": 13, "x": 13.5, "y": 2 },
|
||||
{ "row": 2, "col": 14, "x": 14.5, "y": 2.12 },
|
||||
{ "row": 2, "col": 15, "x": 15.5, "y": 2.37 },
|
||||
{ "row": 2, "col": 16, "x": 16.5, "y": 2.37 },
|
||||
|
||||
{ "row": 3, "col": 3, "x": 3.5, "y": 3.12 },
|
||||
{ "row": 3, "col": 4, "x": 4.5, "y": 3.12, "r": 12, "rx": 4.5, "ry": 4.12 },
|
||||
{ "row": 3, "col": 5, "x": 5.5, "y": 3.12, "r": 24, "rx": 5.15, "ry": 4.33 },
|
||||
{ "row": 3, "col": 11, "x": 11, "y": 3.12, "r": -24, "rx": 12.3, "ry": 4.33 },
|
||||
{ "row": 3, "col": 12, "x": 12, "y": 3.12, "r": -12, "rx": 13, "ry": 4.12 },
|
||||
{ "row": 3, "col": 13, "x": 13, "y": 3.12 }
|
||||
]
|
||||
}
|
||||
},
|
||||
"sensors": [
|
||||
{
|
||||
"ref": "left_encoder",
|
||||
"name": "encoder_left",
|
||||
"identifier": "encoder_left",
|
||||
"compatible": "alps,ec11",
|
||||
"label": "LEFT_ENCODER",
|
||||
"enabled": true
|
||||
}
|
||||
]
|
||||
}
|
||||
95
config/eyelash_corne.keymap
Normal file
95
config/eyelash_corne.keymap
Normal file
@ -0,0 +1,95 @@
|
||||
#include <behaviors.dtsi>
|
||||
#include <dt-bindings/zmk/bt.h>
|
||||
#include <dt-bindings/zmk/keys.h>
|
||||
#include <dt-bindings/zmk/mouse.h>
|
||||
#include <dt-bindings/zmk/outputs.h>
|
||||
#include <dt-bindings/zmk/rgb.h>
|
||||
|
||||
#include <input/processors.dtsi>
|
||||
|
||||
/*
|
||||
|
||||
&mmv_input_listener {
|
||||
input-processors = <&zip_xy_scaler 2 1>;
|
||||
};
|
||||
|
||||
&msc_input_listener {
|
||||
input-processors = <&zip_xy_scaler 2 1>;
|
||||
};
|
||||
|
||||
*/
|
||||
|
||||
#define ZMK_MOUSE_DEFAULT_MOVE_VAL 1200 // 600
|
||||
#define ZMK_MOUSE_DEFAULT_SCRL_VAL 20 // 10
|
||||
|
||||
/ {
|
||||
behaviors {
|
||||
td0: td0 {
|
||||
compatible = "zmk,behavior-tap-dance";
|
||||
display-name = "Shift/Caps Lock Tap Dance";
|
||||
#binding-cells = <0>;
|
||||
bindings = <&kp LEFT_SHIFT>, <&kp CAPS>;
|
||||
};
|
||||
};
|
||||
|
||||
rgb_encoder: rgb_encoder {
|
||||
compatible = "zmk,behavior-sensor-rotate";
|
||||
#sensor-binding-cells = <0>;
|
||||
bindings = <&rgb_ug RGB_BRI>, <&rgb_ug RGB_BRD>;
|
||||
};
|
||||
|
||||
scroll_encoder: scroll_encoder {
|
||||
compatible = "zmk,behavior-sensor-rotate";
|
||||
#sensor-binding-cells = <0>;
|
||||
bindings = <&msc SCRL_DOWN>, <&msc SCRL_UP>;
|
||||
tap-ms = <30>;
|
||||
};
|
||||
|
||||
keymap {
|
||||
compatible = "zmk,keymap";
|
||||
|
||||
default_layer {
|
||||
display-name = "QWERTY";
|
||||
bindings = <
|
||||
&kp TAB &kp Q &kp W &kp E &kp R &kp T &kp UP &kp Y &kp U &kp I &kp O &kp P &kp BSPC
|
||||
&td0 &kp A &kp S &kp D &kp F &kp G &kp LEFT &kp ENTER &kp RIGHT &kp H &kp J &kp K &kp L &kp SEMI &kp SQT
|
||||
&kp LCTRL &kp Z &kp X &kp C &kp V &kp B &kp SPACE &kp DOWN &kp N &kp M &kp COMMA &kp DOT &kp FSLH &kp ESC
|
||||
&kp LGUI &mo 1 < 3 SPACE < 3 ENTER &mo 2 &kp RALT
|
||||
>;
|
||||
sensor-bindings = <&inc_dec_kp C_VOLUME_UP C_VOLUME_DOWN>;
|
||||
};
|
||||
|
||||
lower_layer {
|
||||
display-name = "NUMBER";
|
||||
bindings = <
|
||||
&trans &kp N1 &kp N2 &kp N3 &kp N4 &kp N5 &mmv MOVE_UP &kp N6 &kp N7 &kp N8 &kp N9 &kp N0 &kp BSPC
|
||||
&trans &bt BT_CLR_ALL &bt BT_SEL 0 &bt BT_SEL 1 &bt BT_SEL 2 &bt BT_SEL 3 &mmv MOVE_LEFT &mkp LCLK &mmv MOVE_RIGHT &kp LEFT &kp DOWN &kp UP &kp RIGHT &kp HOME &kp PG_UP
|
||||
&trans &rgb_ug RGB_OFF &rgb_ug RGB_ON &trans &trans &rgb_ug RGB_EFF &kp C_MUTE &mmv MOVE_DOWN &rgb_ug RGB_EFR &rgb_ug RGB_SPI &rgb_ug RGB_BRI &rgb_ug RGB_BRD &kp END &kp PG_DN
|
||||
&trans &trans &trans &kp INS &kp DEL &trans
|
||||
>;
|
||||
sensor-bindings = <&scroll_encoder>;
|
||||
};
|
||||
|
||||
raise_layer {
|
||||
display-name = "SYMBOL";
|
||||
bindings = <
|
||||
&trans &kp EXCL &kp AT &kp HASH &kp DLLR &kp PRCNT &mmv MOVE_UP &kp CARET &kp AMPS &kp ASTRK &kp LPAR &kp RPAR &kp BSPC
|
||||
&trans &bt BT_CLR &mkp LCLK &mkp MCLK &mkp RCLK &mkp MB4 &mmv MOVE_LEFT &mkp LCLK &mmv MOVE_RIGHT &kp MINUS &kp EQUAL &kp LBKT &kp RBKT &kp BSLH &kp GRAVE
|
||||
&trans &out OUT_USB &out OUT_BLE &none &none &mkp MB5 &trans &mmv MOVE_DOWN &kp UNDER &kp PLUS &kp LBRC &kp RBRC &kp PIPE &kp TILDE
|
||||
&trans &trans &kp SPACE &kp RET &trans &trans
|
||||
>;
|
||||
sensor-bindings = <&scroll_encoder>;
|
||||
};
|
||||
|
||||
layer_3 {
|
||||
display-name = "Fn";
|
||||
bindings = <
|
||||
&trans &kp F1 &kp F2 &kp F3 &kp F4 &kp F5 &mmv MOVE_UP &kp F6 &kp F7 &kp F8 &kp F9 &kp F10 &kp F11
|
||||
&trans &trans &mkp LCLK &mkp MCLK &mkp RCLK &mkp MB4 &mmv MOVE_LEFT &mkp LCLK &mmv MOVE_RIGHT &bootloader &mkp LCLK &mkp MCLK &mkp RCLK &kp PRINTSCREEN &kp F12
|
||||
&trans &sys_reset &trans &bootloader &trans &mkp MB5 &kp C_MUTE &mmv MOVE_DOWN &trans &trans &bootloader &sys_reset &kp SCROLLLOCK &kp PAUSE_BREAK
|
||||
&trans &trans &trans &trans &trans &trans
|
||||
>;
|
||||
sensor-bindings = <&scroll_encoder>;
|
||||
};
|
||||
};
|
||||
};
|
||||
@ -1,12 +1,20 @@
|
||||
manifest:
|
||||
remotes:
|
||||
- name: urob
|
||||
url-base: https://github.com/urob
|
||||
- name: zmkfirmware
|
||||
url-base: https://github.com/zmkfirmware
|
||||
# Additional modules containing boards/shields/custom code can be listed here as well.
|
||||
# See:
|
||||
# - https://zmk.dev/docs/features/modules
|
||||
# - https://docs.zephyrproject.org/3.5.0/develop/west/manifest.html#projects
|
||||
- name: petejohanson
|
||||
url-base: https://github.com/petejohanson
|
||||
projects:
|
||||
- name: zmk
|
||||
remote: urob
|
||||
- name: eyelash_corne
|
||||
url: https://github.com/a741725193/zmk-new_corne
|
||||
revision: main
|
||||
- name: zmk
|
||||
remote: petejohanson
|
||||
revision: feat/pointers-with-input-processors
|
||||
import: app/west.yml
|
||||
self:
|
||||
path: config
|
||||
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
|
Before Width: | Height: | Size: 75 KiB |
@ -1,198 +0,0 @@
|
||||
layout: {qmk_keyboard: corne_rotated, qmk_layout: LAYOUT_split_3x6_3}
|
||||
layers:
|
||||
default:
|
||||
- $$mdi:keyboard-tab$$
|
||||
- Q
|
||||
- W
|
||||
- E
|
||||
- R
|
||||
- T
|
||||
- $$mdi:arrow-up-bold$$
|
||||
- Y
|
||||
- U
|
||||
- I
|
||||
- O
|
||||
- P
|
||||
- {t: '$$mdi:backspace$$', type: backspace}
|
||||
- '&td0'
|
||||
- A
|
||||
- S
|
||||
- D
|
||||
- F
|
||||
- G
|
||||
- $$mdi:arrow-down-bold$$
|
||||
- H
|
||||
- J
|
||||
- K
|
||||
- L
|
||||
- {t: ;, s: ':'}
|
||||
- {t: '''', s: '"'}
|
||||
- $$mdi:apple-keyboard-control$$
|
||||
- Z
|
||||
- X
|
||||
- C
|
||||
- V
|
||||
- B
|
||||
- $$mdi:arrow-left-bold$$
|
||||
- N
|
||||
- M
|
||||
- {t: ',', s: <}
|
||||
- {t: ., s: '>'}
|
||||
- {t: /, s: '?'}
|
||||
- $$mdi:keyboard-esc$$
|
||||
- $$mdi:keyboard-space$$
|
||||
- LGUI
|
||||
- lower
|
||||
- {t: '$$mdi:keyboard-space$$', h: '3'}
|
||||
- $$mdi:arrow-right-bold$$
|
||||
- {t: '$$mdi:keyboard-return$$', h: '3'}
|
||||
- raise
|
||||
- $$mdi:apple-keyboard-option$$
|
||||
- {t: '$$mdi:keyboard-return$$', type: enter}
|
||||
lower:
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- {t: '1', s: '!'}
|
||||
- {t: '2', s: '@'}
|
||||
- {t: '3', s: '#'}
|
||||
- {t: '4', s: $}
|
||||
- {t: '5', s: '%'}
|
||||
- {t: '$$mdi:menu-up$$', s: '$$mdi:mouse$$'}
|
||||
- {t: '6', s: ^}
|
||||
- {t: '7', s: '&'}
|
||||
- {t: '8', s: '*'}
|
||||
- {t: '9', s: (}
|
||||
- {t: '0', s: )}
|
||||
- {t: '$$mdi:backspace$$', type: backspace}
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- BT CLR ALL
|
||||
- {h: '1', s: '$$mdi:bluetooth-connect$$'}
|
||||
- {h: '2', s: '$$mdi:bluetooth-connect$$'}
|
||||
- {h: '3', s: '$$mdi:bluetooth-connect$$'}
|
||||
- {h: '4', s: '$$mdi:bluetooth-connect$$'}
|
||||
- {t: '$$mdi:menu-down$$', s: '$$mdi:mouse$$'}
|
||||
- $$mdi:arrow-left-bold$$
|
||||
- $$mdi:arrow-down-bold$$
|
||||
- $$mdi:arrow-up-bold$$
|
||||
- $$mdi:arrow-right-bold$$
|
||||
- HOME
|
||||
- PG UP
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- RGB OFF
|
||||
- RGB ON
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- RGB EFF
|
||||
- {t: '$$mdi:menu-left$$', s: '$$mdi:mouse$$'}
|
||||
- RGB EFR
|
||||
- RGB SPI
|
||||
- RGB BRI
|
||||
- RGB BRD
|
||||
- END
|
||||
- PG DN
|
||||
- $$mdi:volume-off$$
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- {type: held}
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- {t: '$$mdi:menu-right$$', s: '$$mdi:mouse$$'}
|
||||
- INS
|
||||
- $$mdi:backspace-reverse-outline$$
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- $$mdi:mouse-left-click-outline$$
|
||||
raise:
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- '!'
|
||||
- '@'
|
||||
- '#'
|
||||
- $
|
||||
- '%'
|
||||
- {t: '$$mdi:menu-up$$', s: '$$mdi:mouse$$'}
|
||||
- ^
|
||||
- '&'
|
||||
- '*'
|
||||
- (
|
||||
- )
|
||||
- {t: '$$mdi:backspace$$', type: backspace}
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- $$mdi:bluetooth-off$$
|
||||
- $$mdi:mouse-left-click-outline$$
|
||||
- $$mdi:mouse-scroll-wheel$$
|
||||
- $$mdi:mouse-right-click-outline$$
|
||||
- '&mkp MB4'
|
||||
- {t: '$$mdi:menu-down$$', s: '$$mdi:mouse$$'}
|
||||
- {t: '-', s: _}
|
||||
- {t: '=', s: +}
|
||||
- {t: '[', s: '{'}
|
||||
- {t: ']', s: '}'}
|
||||
- {t: \, s: '|'}
|
||||
- {t: '`', s: '~'}
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- OUT USB
|
||||
- OUT BLE
|
||||
- {t: '$$mdi:minus-circle-outline$$', type: none}
|
||||
- {t: '$$mdi:minus-circle-outline$$', type: none}
|
||||
- '&mkp MB5'
|
||||
- {t: '$$mdi:menu-left$$', s: '$$mdi:mouse$$'}
|
||||
- _
|
||||
- +
|
||||
- '{'
|
||||
- '}'
|
||||
- '|'
|
||||
- '~'
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- $$mdi:keyboard-space$$
|
||||
- {t: '$$mdi:menu-right$$', s: '$$mdi:mouse$$'}
|
||||
- {t: '$$mdi:keyboard-return$$', type: enter}
|
||||
- {type: held}
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- $$mdi:mouse-left-click-outline$$
|
||||
'3':
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- F1
|
||||
- F2
|
||||
- F3
|
||||
- F4
|
||||
- F5
|
||||
- {t: '$$mdi:menu-up$$', s: '$$mdi:mouse$$'}
|
||||
- F6
|
||||
- F7
|
||||
- F8
|
||||
- F9
|
||||
- F10
|
||||
- F11
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- $$mdi:mouse-left-click-outline$$
|
||||
- $$mdi:mouse-scroll-wheel$$
|
||||
- $$mdi:mouse-right-click-outline$$
|
||||
- '&mkp MB4'
|
||||
- {t: '$$mdi:menu-down$$', s: '$$mdi:mouse$$'}
|
||||
- $$mdi:progress-download$$
|
||||
- $$mdi:mouse-left-click-outline$$
|
||||
- $$mdi:mouse-scroll-wheel$$
|
||||
- $$mdi:mouse-right-click-outline$$
|
||||
- PRINTSCREEN
|
||||
- F12
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- {t: '$$mdi:backup-restore$$', type: bootloader}
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- $$mdi:progress-download$$
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- '&mkp MB5'
|
||||
- {t: '$$mdi:menu-left$$', s: '$$mdi:mouse$$'}
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- $$mdi:progress-download$$
|
||||
- {t: '$$mdi:backup-restore$$', type: bootloader}
|
||||
- SCROLLLOCK
|
||||
- PAUSE BREAK
|
||||
- $$mdi:volume-off$$
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- {type: held}
|
||||
- {t: '$$mdi:menu-right$$', s: '$$mdi:mouse$$'}
|
||||
- {type: held alternate}
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- $$mdi:mouse-left-click-outline$$
|
||||
@ -1,917 +0,0 @@
|
||||
<svg width="1004" height="881" viewBox="0 0 1004 881" class="keymap" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
||||
<defs>/* start glyphs */
|
||||
<svg id="mdi:apple-keyboard-caps">
|
||||
<svg xmlns="http://www.w3.org/2000/svg" id="mdi-apple-keyboard-caps" viewBox="0 0 24 24"><path d="M15,14V8H17.17L12,2.83L6.83,8H9V14H15M12,0L22,10H17V16H7V10H2L12,0M7,18H17V24H7V18M15,20H9V22H15V20Z" /></svg>
|
||||
</svg>
|
||||
<svg id="mdi:apple-keyboard-control">
|
||||
<svg xmlns="http://www.w3.org/2000/svg" id="mdi-apple-keyboard-control" viewBox="0 0 24 24"><path d="M19.78,11.78L18.36,13.19L12,6.83L5.64,13.19L4.22,11.78L12,4L19.78,11.78Z" /></svg>
|
||||
</svg>
|
||||
<svg id="mdi:apple-keyboard-option">
|
||||
<svg xmlns="http://www.w3.org/2000/svg" id="mdi-apple-keyboard-option" viewBox="0 0 24 24"><path d="M3,4H9.11L16.15,18H21V20H14.88L7.84,6H3V4M14,4H21V6H14V4Z" /></svg>
|
||||
</svg>
|
||||
<svg id="mdi:apple-keyboard-shift">
|
||||
<svg xmlns="http://www.w3.org/2000/svg" id="mdi-apple-keyboard-shift" viewBox="0 0 24 24"><path d="M15,18V12H17.17L12,6.83L6.83,12H9V18H15M12,4L22,14H17V20H7V14H2L12,4Z" /></svg>
|
||||
</svg>
|
||||
<svg id="mdi:arrow-down-bold">
|
||||
<svg xmlns="http://www.w3.org/2000/svg" id="mdi-arrow-down-bold" viewBox="0 0 24 24"><path d="M9,4H15V12H19.84L12,19.84L4.16,12H9V4Z" /></svg>
|
||||
</svg>
|
||||
<svg id="mdi:arrow-left-bold">
|
||||
<svg xmlns="http://www.w3.org/2000/svg" id="mdi-arrow-left-bold" viewBox="0 0 24 24"><path d="M20,9V15H12V19.84L4.16,12L12,4.16V9H20Z" /></svg>
|
||||
</svg>
|
||||
<svg id="mdi:arrow-right-bold">
|
||||
<svg xmlns="http://www.w3.org/2000/svg" id="mdi-arrow-right-bold" viewBox="0 0 24 24"><path d="M4,15V9H12V4.16L19.84,12L12,19.84V15H4Z" /></svg>
|
||||
</svg>
|
||||
<svg id="mdi:arrow-up-bold">
|
||||
<svg xmlns="http://www.w3.org/2000/svg" id="mdi-arrow-up-bold" viewBox="0 0 24 24"><path d="M15,20H9V12H4.16L12,4.16L19.84,12H15V20Z" /></svg>
|
||||
</svg>
|
||||
<svg id="mdi:backspace">
|
||||
<svg xmlns="http://www.w3.org/2000/svg" id="mdi-backspace" viewBox="0 0 24 24"><path d="M22,3H7C6.31,3 5.77,3.35 5.41,3.88L0,12L5.41,20.11C5.77,20.64 6.31,21 7,21H22A2,2 0 0,0 24,19V5A2,2 0 0,0 22,3M19,15.59L17.59,17L14,13.41L10.41,17L9,15.59L12.59,12L9,8.41L10.41,7L14,10.59L17.59,7L19,8.41L15.41,12" /></svg>
|
||||
</svg>
|
||||
<svg id="mdi:keyboard-esc">
|
||||
<svg xmlns="http://www.w3.org/2000/svg" id="mdi-keyboard-esc" viewBox="0 0 24 24"><path d="M1 7H7V9H3V11H7V13H3V15H7V17H1V7M11 7H15V9H11V11H13C14.11 11 15 11.9 15 13V15C15 16.11 14.11 17 13 17H9V15H13V13H11C9.9 13 9 12.11 9 11V9C9 7.9 9.9 7 11 7M19 7H21C22.11 7 23 7.9 23 9V10H21V9H19V15H21V14H23V15C23 16.11 22.11 17 21 17H19C17.9 17 17 16.11 17 15V9C17 7.9 17.9 7 19 7Z" /></svg>
|
||||
</svg>
|
||||
<svg id="mdi:keyboard-return">
|
||||
<svg xmlns="http://www.w3.org/2000/svg" id="mdi-keyboard-return" viewBox="0 0 24 24"><path d="M19,7V11H5.83L9.41,7.41L8,6L2,12L8,18L9.41,16.58L5.83,13H21V7H19Z" /></svg>
|
||||
</svg>
|
||||
<svg id="mdi:keyboard-space">
|
||||
<svg xmlns="http://www.w3.org/2000/svg" id="mdi-keyboard-space" viewBox="0 0 24 24"><path d="M3 15H5V19H19V15H21V19C21 20.1 20.1 21 19 21H5C3.9 21 3 20.1 3 19V15Z" /></svg>
|
||||
</svg>
|
||||
<svg id="mdi:keyboard-tab">
|
||||
<svg xmlns="http://www.w3.org/2000/svg" id="mdi-keyboard-tab" viewBox="0 0 24 24"><path d="M20,18H22V6H20M11.59,7.41L15.17,11H1V13H15.17L11.59,16.58L13,18L19,12L13,6L11.59,7.41Z" /></svg>
|
||||
</svg>
|
||||
<svg id="mdi:transfer">
|
||||
<svg xmlns="http://www.w3.org/2000/svg" id="mdi-transfer" viewBox="0 0 24 24"><path d="M8 4A2 2 0 0 0 6 6V10H8V6H16V9H13.5L17 12.5L20.5 9H18V6A2 2 0 0 0 16 4H8M3 12V14H11V12H3M3 15V17H11V15H3M13 15V17H21V15H13M3 18V20H11V18H3M13 18V20H21V18H13Z" /></svg>
|
||||
</svg>
|
||||
</defs>/* end glyphs */
|
||||
<style>:root {
|
||||
--fg-color: #24292e;
|
||||
--key-color: #f6f8fa;
|
||||
--outline-color: #c9cccf;
|
||||
--combo-color: #ccddff;
|
||||
--held-color: #ffdddd;
|
||||
--font-size: 14px;
|
||||
--small-font-size: 11px;
|
||||
--tiny-font-size: 8px;
|
||||
--dendron-color: #808080;
|
||||
--trans-fg-color: #7b7e81;
|
||||
}
|
||||
|
||||
/* inherit to force styles through use tags */
|
||||
svg path {
|
||||
fill: inherit;
|
||||
}
|
||||
|
||||
/* font and background color specifications */
|
||||
svg.keymap {
|
||||
font-family: SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;
|
||||
font-size: var(--font-size);
|
||||
font-kerning: normal;
|
||||
text-rendering: optimizeLegibility;
|
||||
fill: var(--fg-color);
|
||||
}
|
||||
|
||||
/* default key styling */
|
||||
rect.key {
|
||||
fill: var(--key-color);
|
||||
}
|
||||
|
||||
rect.key, rect.combo {
|
||||
stroke: var(--outline-color);
|
||||
stroke-width: 1;
|
||||
}
|
||||
|
||||
/* default key side styling, only used is draw_key_sides is set */
|
||||
rect.side {
|
||||
filter: brightness(90%);
|
||||
}
|
||||
|
||||
/* color accent for combo boxes */
|
||||
rect.combo, rect.combo-separate {
|
||||
fill: var(--combo-color);
|
||||
}
|
||||
|
||||
/* color accent for held keys */
|
||||
rect.held, rect.combo.held {
|
||||
fill: var(--held-color);
|
||||
}
|
||||
|
||||
/* styling for ghost (optional) keys */
|
||||
rect.ghost, rect.combo.ghost {
|
||||
stroke-dasharray: 4, 4;
|
||||
stroke-width: 2;
|
||||
}
|
||||
|
||||
text {
|
||||
text-anchor: middle;
|
||||
dominant-baseline: middle;
|
||||
}
|
||||
|
||||
/* styling for layer labels */
|
||||
text.label {
|
||||
font-weight: bold;
|
||||
text-anchor: start;
|
||||
stroke: white;
|
||||
stroke-width: 4;
|
||||
paint-order: stroke;
|
||||
}
|
||||
|
||||
/* styling for optional footer */
|
||||
text.footer {
|
||||
text-anchor: end;
|
||||
dominant-baseline: auto;
|
||||
stroke: white;
|
||||
stroke-width: 4;
|
||||
paint-order: stroke;
|
||||
}
|
||||
|
||||
/* styling for combo tap, and key hold/shifted label text */
|
||||
text.combo, text.hold, text.shifted {
|
||||
font-size: var(--small-font-size);
|
||||
}
|
||||
|
||||
text.hold {
|
||||
text-anchor: middle;
|
||||
dominant-baseline: auto;
|
||||
}
|
||||
|
||||
text.shifted {
|
||||
text-anchor: middle;
|
||||
dominant-baseline: hanging;
|
||||
}
|
||||
|
||||
/* styling for hold/shifted label text in combo box */
|
||||
text.combo.hold, text.combo.shifted {
|
||||
font-size: var(--tiny-font-size);
|
||||
}
|
||||
|
||||
/* lighter symbol for transparent keys */
|
||||
text.trans {
|
||||
fill: var(--trans-fg-color);
|
||||
}
|
||||
|
||||
/* styling for combo dendrons */
|
||||
path.combo {
|
||||
stroke-width: 1;
|
||||
stroke: var(--dendron-color);
|
||||
fill: none;
|
||||
}
|
||||
|
||||
/* Start Tabler Icons Cleanup */
|
||||
/* cannot use height/width with glyphs */
|
||||
.icon-tabler > path {
|
||||
fill: inherit;
|
||||
stroke: inherit;
|
||||
stroke-width: 2;
|
||||
}
|
||||
/* hide tabler's default box */
|
||||
.icon-tabler > path[stroke="none"][fill="none"] {
|
||||
visibility: hidden;
|
||||
}
|
||||
/* End Tabler Icons Cleanup */
|
||||
|
||||
/* For default sytles, see https://github.com/caksoylar/keymap-drawer/blob/main/keymap_drawer/config.py#L85 */
|
||||
|
||||
svg.keymap {
|
||||
font-family: Ubuntu Mono, Inconsolata, Consolas, Liberation Mono, Menlo, monospace;
|
||||
font-size: 12px;
|
||||
font-weight: bold;
|
||||
text-rendering: optimizeLegibility;
|
||||
}
|
||||
|
||||
/* Color accent for held keys */
|
||||
rect.held, rect.combo.held {
|
||||
fill: #ffc;
|
||||
}
|
||||
|
||||
/* Technique borrowed and extended from https://github.com/englmaxi/zmk-config/blob/master/keymap-drawer/config.yaml */
|
||||
.sym_sub_text.tap {
|
||||
translate: -5px 2px;
|
||||
font-size: 20px;
|
||||
}
|
||||
.sym_sub_text.shifted {
|
||||
translate: 10px 13px;
|
||||
font-size: 10px;
|
||||
opacity: 1.0;
|
||||
}
|
||||
.combo.sym_sub_text.tap {
|
||||
translate: -1px 1px;
|
||||
}
|
||||
.combo.sym_sub_text.shifted {
|
||||
translate: 7px 5px;
|
||||
font-size: 10px;
|
||||
opacity: 1.0;
|
||||
}
|
||||
|
||||
/* Toggle */
|
||||
.toggle.shifted {
|
||||
translate: -10px 12px;
|
||||
}
|
||||
|
||||
.toggle.hold {
|
||||
translate: 13px -23px;
|
||||
}
|
||||
|
||||
/* Variant for tap-dances */
|
||||
.tap_dance.tap {
|
||||
translate: -7px 0px;
|
||||
font-size: 12px;
|
||||
}
|
||||
.tap_dance.shifted {
|
||||
translate: 7px 17px;
|
||||
font-size: 12px;
|
||||
opacity: 1.0;
|
||||
}
|
||||
|
||||
/* Variant for symbol next to symbol */
|
||||
.sym_by_sym.tap {
|
||||
translate: -6px 0px;
|
||||
}
|
||||
.sym_by_sym.shifted {
|
||||
translate: 10px 12px;
|
||||
opacity: 1.0;
|
||||
}
|
||||
|
||||
.combo.sym_by_sym.tap {
|
||||
translate: -35px 0px;
|
||||
}
|
||||
.combo.sym_by_sym.shifted {
|
||||
translate: 35px 20px;
|
||||
opacity: 1.0;
|
||||
}
|
||||
|
||||
.combo.sym_by_sym.hold {
|
||||
visibility: hidden;
|
||||
}
|
||||
|
||||
/* hide hold box for combo sym_by_sym */
|
||||
.combo.sym_by_sym.hold > path[stroke="none"][fill="none"] {
|
||||
visibility: hidden;
|
||||
}
|
||||
</style>
|
||||
<g transform="translate(40, 0)" class="layer-Qwery">
|
||||
<text x="0" y="28" class="label">Qwery:</text>
|
||||
<g transform="translate(0, 56)">
|
||||
<g transform="translate(28, 56)" class="key keypos-0">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key"/>
|
||||
<use href="#mdi:keyboard-esc" xlink:href="#mdi:keyboard-esc" x="-9" y="-13" height="18" width="18.0" class="key tap glyph mdi:keyboard-esc"/>
|
||||
</g>
|
||||
<g transform="translate(84, 56)" class="key keypos-1">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key"/>
|
||||
<text x="0" y="-4" class="key tap">1</text>
|
||||
<text x="0" y="-24" class="key shifted">!</text>
|
||||
</g>
|
||||
<g transform="translate(140, 35)" class="key keypos-2">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key"/>
|
||||
<text x="0" y="-4" class="key tap">2</text>
|
||||
<text x="0" y="-24" class="key shifted">@</text>
|
||||
</g>
|
||||
<g transform="translate(196, 28)" class="key keypos-3">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key"/>
|
||||
<text x="0" y="-4" class="key tap">3</text>
|
||||
<text x="0" y="-24" class="key shifted">#</text>
|
||||
</g>
|
||||
<g transform="translate(252, 35)" class="key keypos-4">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key"/>
|
||||
<text x="0" y="-4" class="key tap">4</text>
|
||||
<text x="0" y="-24" class="key shifted">$</text>
|
||||
</g>
|
||||
<g transform="translate(308, 35)" class="key keypos-5">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key"/>
|
||||
<text x="0" y="-4" class="key tap">5</text>
|
||||
<text x="0" y="-24" class="key shifted">%</text>
|
||||
</g>
|
||||
<g transform="translate(462, 35)" class="key keypos-6">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key"/>
|
||||
<use href="#mdi:arrow-up-bold" xlink:href="#mdi:arrow-up-bold" x="-9" y="-13" height="18" width="18.0" class="key tap glyph mdi:arrow-up-bold"/>
|
||||
</g>
|
||||
<g transform="translate(616, 35)" class="key keypos-7">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key"/>
|
||||
<text x="0" y="-4" class="key tap">6</text>
|
||||
<text x="0" y="-24" class="key shifted">^</text>
|
||||
</g>
|
||||
<g transform="translate(672, 35)" class="key keypos-8">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key"/>
|
||||
<text x="0" y="-4" class="key tap">7</text>
|
||||
<text x="0" y="-24" class="key shifted">&</text>
|
||||
</g>
|
||||
<g transform="translate(728, 28)" class="key keypos-9">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key"/>
|
||||
<text x="0" y="-4" class="key tap">8</text>
|
||||
<text x="0" y="-24" class="key shifted">*</text>
|
||||
</g>
|
||||
<g transform="translate(784, 35)" class="key keypos-10">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key"/>
|
||||
<text x="0" y="-4" class="key tap">9</text>
|
||||
<text x="0" y="-24" class="key shifted">(</text>
|
||||
</g>
|
||||
<g transform="translate(840, 56)" class="key keypos-11">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key"/>
|
||||
<text x="0" y="-4" class="key tap">0</text>
|
||||
<text x="0" y="-24" class="key shifted">)</text>
|
||||
</g>
|
||||
<g transform="translate(896, 56)" class="key keypos-12">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key"/>
|
||||
<text x="0" y="-4" class="key tap">-</text>
|
||||
<text x="0" y="-24" class="key shifted">_</text>
|
||||
</g>
|
||||
<g transform="translate(28, 112)" class="key keypos-13">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key"/>
|
||||
<use href="#mdi:keyboard-tab" xlink:href="#mdi:keyboard-tab" x="-9" y="-13" height="18" width="18.0" class="key tap glyph mdi:keyboard-tab"/>
|
||||
</g>
|
||||
<g transform="translate(84, 112)" class="key keypos-14">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key"/>
|
||||
<text x="0" y="-4" class="key tap">Q</text>
|
||||
</g>
|
||||
<g transform="translate(140, 91)" class="key keypos-15">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key"/>
|
||||
<text x="0" y="-4" class="key tap">W</text>
|
||||
</g>
|
||||
<g transform="translate(196, 84)" class="key keypos-16">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key"/>
|
||||
<text x="0" y="-4" class="key tap">E</text>
|
||||
</g>
|
||||
<g transform="translate(252, 91)" class="key keypos-17">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key"/>
|
||||
<text x="0" y="-4" class="key tap">R</text>
|
||||
</g>
|
||||
<g transform="translate(308, 91)" class="key keypos-18">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key"/>
|
||||
<text x="0" y="-4" class="key tap">T</text>
|
||||
</g>
|
||||
<g transform="translate(462, 147)" class="key keypos-19">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key"/>
|
||||
<use href="#mdi:arrow-down-bold" xlink:href="#mdi:arrow-down-bold" x="-9" y="-13" height="18" width="18.0" class="key tap glyph mdi:arrow-down-bold"/>
|
||||
</g>
|
||||
<g transform="translate(616, 91)" class="key keypos-20">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key"/>
|
||||
<text x="0" y="-4" class="key tap">Y</text>
|
||||
</g>
|
||||
<g transform="translate(672, 91)" class="key keypos-21">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key"/>
|
||||
<text x="0" y="-4" class="key tap">U</text>
|
||||
</g>
|
||||
<g transform="translate(728, 84)" class="key keypos-22">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key"/>
|
||||
<text x="0" y="-4" class="key tap">I</text>
|
||||
</g>
|
||||
<g transform="translate(784, 91)" class="key keypos-23">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key"/>
|
||||
<text x="0" y="-4" class="key tap">O</text>
|
||||
</g>
|
||||
<g transform="translate(840, 112)" class="key keypos-24">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key"/>
|
||||
<text x="0" y="-4" class="key tap">P</text>
|
||||
</g>
|
||||
<g transform="translate(896, 112)" class="key keypos-25">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key"/>
|
||||
<text x="0" y="-4" class="key tap">]</text>
|
||||
<text x="0" y="-24" class="key shifted">}</text>
|
||||
</g>
|
||||
<g transform="translate(28, 168)" class="key keypos-26">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key"/>
|
||||
<use href="#mdi:apple-keyboard-caps" xlink:href="#mdi:apple-keyboard-caps" x="-9" y="-13" height="18" width="18.0" class="key tap glyph mdi:apple-keyboard-caps"/>
|
||||
</g>
|
||||
<g transform="translate(84, 168)" class="key keypos-27">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key"/>
|
||||
<text x="0" y="-4" class="key tap">A</text>
|
||||
</g>
|
||||
<g transform="translate(140, 147)" class="key keypos-28">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key"/>
|
||||
<text x="0" y="-4" class="key tap">S</text>
|
||||
</g>
|
||||
<g transform="translate(196, 140)" class="key keypos-29">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key"/>
|
||||
<text x="0" y="-4" class="key tap">D</text>
|
||||
</g>
|
||||
<g transform="translate(252, 147)" class="key keypos-30">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key"/>
|
||||
<text x="0" y="-4" class="key tap">F</text>
|
||||
</g>
|
||||
<g transform="translate(308, 147)" class="key keypos-31">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key"/>
|
||||
<text x="0" y="-4" class="key tap">G</text>
|
||||
</g>
|
||||
<g transform="translate(406, 91)" class="key keypos-32">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key"/>
|
||||
<use href="#mdi:arrow-left-bold" xlink:href="#mdi:arrow-left-bold" x="-9" y="-13" height="18" width="18.0" class="key tap glyph mdi:arrow-left-bold"/>
|
||||
</g>
|
||||
<g transform="translate(616, 147)" class="key keypos-33">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key"/>
|
||||
<text x="0" y="-4" class="key tap">H</text>
|
||||
</g>
|
||||
<g transform="translate(672, 147)" class="key keypos-34">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key"/>
|
||||
<text x="0" y="-4" class="key tap">J</text>
|
||||
</g>
|
||||
<g transform="translate(728, 140)" class="key keypos-35">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key"/>
|
||||
<text x="0" y="-4" class="key tap">K</text>
|
||||
</g>
|
||||
<g transform="translate(784, 147)" class="key keypos-36">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key"/>
|
||||
<text x="0" y="-4" class="key tap">L</text>
|
||||
</g>
|
||||
<g transform="translate(840, 168)" class="key keypos-37">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key"/>
|
||||
<text x="0" y="-4" class="key tap">;</text>
|
||||
<text x="0" y="-24" class="key shifted">:</text>
|
||||
</g>
|
||||
<g transform="translate(896, 168)" class="key keypos-38">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key"/>
|
||||
<text x="0" y="-4" class="key tap">.</text>
|
||||
</g>
|
||||
<g transform="translate(28, 224)" class="key keypos-39">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key"/>
|
||||
<use href="#mdi:apple-keyboard-shift" xlink:href="#mdi:apple-keyboard-shift" x="-9" y="-13" height="18" width="18.0" class="key tap glyph mdi:apple-keyboard-shift"/>
|
||||
</g>
|
||||
<g transform="translate(84, 224)" class="key keypos-40">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key"/>
|
||||
<text x="0" y="-4" class="key tap">Z</text>
|
||||
</g>
|
||||
<g transform="translate(140, 203)" class="key keypos-41">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key"/>
|
||||
<text x="0" y="-4" class="key tap">X</text>
|
||||
</g>
|
||||
<g transform="translate(196, 196)" class="key keypos-42">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key"/>
|
||||
<text x="0" y="-4" class="key tap">C</text>
|
||||
</g>
|
||||
<g transform="translate(252, 203)" class="key keypos-43">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key"/>
|
||||
<text x="0" y="-4" class="key tap">V</text>
|
||||
</g>
|
||||
<g transform="translate(308, 203)" class="key keypos-44">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key"/>
|
||||
<text x="0" y="-4" class="key tap">B</text>
|
||||
</g>
|
||||
<g transform="translate(518, 91)" class="key keypos-45">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key"/>
|
||||
<use href="#mdi:arrow-right-bold" xlink:href="#mdi:arrow-right-bold" x="-9" y="-13" height="18" width="18.0" class="key tap glyph mdi:arrow-right-bold"/>
|
||||
</g>
|
||||
<g transform="translate(616, 203)" class="key keypos-46">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key"/>
|
||||
<text x="0" y="-4" class="key tap">N</text>
|
||||
</g>
|
||||
<g transform="translate(672, 203)" class="key keypos-47">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key"/>
|
||||
<text x="0" y="-4" class="key tap">M</text>
|
||||
</g>
|
||||
<g transform="translate(728, 196)" class="key keypos-48">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key"/>
|
||||
<text x="0" y="-4" class="key tap">,</text>
|
||||
<text x="0" y="-24" class="key shifted"><</text>
|
||||
</g>
|
||||
<g transform="translate(784, 203)" class="key keypos-49">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key"/>
|
||||
<text x="0" y="-4" class="key tap">.</text>
|
||||
<text x="0" y="-24" class="key shifted">></text>
|
||||
</g>
|
||||
<g transform="translate(840, 224)" class="key keypos-50">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key"/>
|
||||
<text x="0" y="-4" class="key tap">/</text>
|
||||
<text x="0" y="-24" class="key shifted">?</text>
|
||||
</g>
|
||||
<g transform="translate(896, 224)" class="key enter keypos-51">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key enter side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key enter"/>
|
||||
<use href="#mdi:keyboard-return" xlink:href="#mdi:keyboard-return" x="-9" y="-13" height="18" width="18.0" class="key enter tap glyph mdi:keyboard-return"/>
|
||||
</g>
|
||||
<g transform="translate(392, 217)" class="key backspace keypos-52">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key backspace side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key backspace"/>
|
||||
<use href="#mdi:backspace" xlink:href="#mdi:backspace" x="-9" y="-13" height="18" width="18.0" class="key backspace tap glyph mdi:backspace"/>
|
||||
</g>
|
||||
<g transform="translate(140, 259)" class="key keypos-53">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key"/>
|
||||
<use href="#mdi:apple-keyboard-control" xlink:href="#mdi:apple-keyboard-control" x="-9" y="-13" height="18" width="18.0" class="key tap glyph mdi:apple-keyboard-control"/>
|
||||
</g>
|
||||
<g transform="translate(196, 252)" class="key keypos-54">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key"/>
|
||||
<use href="#mdi:apple-keyboard-option" xlink:href="#mdi:apple-keyboard-option" x="-9" y="-13" height="18" width="18.0" class="key tap glyph mdi:apple-keyboard-option"/>
|
||||
</g>
|
||||
<g transform="translate(252, 259)" class="key keypos-55">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key"/>
|
||||
<text x="0" y="-4" class="key tap">LGUI</text>
|
||||
</g>
|
||||
<g transform="translate(314, 283) rotate(30.0)" class="key keypos-56">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key"/>
|
||||
<use href="#mdi:keyboard-space" xlink:href="#mdi:keyboard-space" x="-9" y="-13" height="18" width="18.0" class="key tap glyph mdi:keyboard-space"/>
|
||||
</g>
|
||||
<g transform="translate(382, 306) rotate(30.0)" class="key enter keypos-57">
|
||||
<rect rx="6" ry="6" x="-26" y="-40" width="52" height="80" class="key enter side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-38" width="40" height="68" class="key enter"/>
|
||||
<use href="#mdi:keyboard-return" xlink:href="#mdi:keyboard-return" x="-9" y="-13" height="18" width="18.0" class="key enter tap glyph mdi:keyboard-return"/>
|
||||
</g>
|
||||
<g transform="translate(462, 91)" class="key enter keypos-58">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key enter side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key enter"/>
|
||||
<use href="#mdi:keyboard-return" xlink:href="#mdi:keyboard-return" x="-9" y="-13" height="18" width="18.0" class="key enter tap glyph mdi:keyboard-return"/>
|
||||
</g>
|
||||
<g transform="translate(542, 306) rotate(-30.0)" class="key enter keypos-59">
|
||||
<rect rx="6" ry="6" x="-26" y="-40" width="52" height="80" class="key enter side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-38" width="40" height="68" class="key enter"/>
|
||||
<use href="#mdi:keyboard-return" xlink:href="#mdi:keyboard-return" x="-9" y="-13" height="18" width="18.0" class="key enter tap glyph mdi:keyboard-return"/>
|
||||
</g>
|
||||
<g transform="translate(610, 283) rotate(-30.0)" class="key keypos-60">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key"/>
|
||||
<use href="#mdi:keyboard-space" xlink:href="#mdi:keyboard-space" x="-9" y="-13" height="18" width="18.0" class="key tap glyph mdi:keyboard-space"/>
|
||||
</g>
|
||||
<g transform="translate(672, 259)" class="key keypos-61">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key"/>
|
||||
<text x="0" y="-4" class="key tap">RGUI</text>
|
||||
</g>
|
||||
<g transform="translate(728, 252)" class="key keypos-62">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key"/>
|
||||
<use href="#mdi:apple-keyboard-option" xlink:href="#mdi:apple-keyboard-option" x="-9" y="-13" height="18" width="18.0" class="key tap glyph mdi:apple-keyboard-option"/>
|
||||
</g>
|
||||
<g transform="translate(784, 259)" class="key keypos-63">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key"/>
|
||||
<use href="#mdi:apple-keyboard-control" xlink:href="#mdi:apple-keyboard-control" x="-9" y="-13" height="18" width="18.0" class="key tap glyph mdi:apple-keyboard-control"/>
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
<g transform="translate(40, 412)" class="layer-Flash">
|
||||
<text x="0" y="28" class="label">Flash:</text>
|
||||
<g transform="translate(0, 56)">
|
||||
<g transform="translate(28, 56)" class="key keypos-0">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key"/>
|
||||
<text x="0" y="-4" class="key tap"><tspan style="font-size: 60%">&flash_ma…</tspan></text>
|
||||
</g>
|
||||
<g transform="translate(84, 56)" class="key trans keypos-1">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key trans side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key trans"/>
|
||||
<use href="#mdi:transfer" xlink:href="#mdi:transfer" x="-9" y="-13" height="18" width="18.0" class="key trans tap glyph mdi:transfer"/>
|
||||
</g>
|
||||
<g transform="translate(140, 35)" class="key trans keypos-2">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key trans side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key trans"/>
|
||||
<use href="#mdi:transfer" xlink:href="#mdi:transfer" x="-9" y="-13" height="18" width="18.0" class="key trans tap glyph mdi:transfer"/>
|
||||
</g>
|
||||
<g transform="translate(196, 28)" class="key trans keypos-3">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key trans side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key trans"/>
|
||||
<use href="#mdi:transfer" xlink:href="#mdi:transfer" x="-9" y="-13" height="18" width="18.0" class="key trans tap glyph mdi:transfer"/>
|
||||
</g>
|
||||
<g transform="translate(252, 35)" class="key trans keypos-4">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key trans side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key trans"/>
|
||||
<use href="#mdi:transfer" xlink:href="#mdi:transfer" x="-9" y="-13" height="18" width="18.0" class="key trans tap glyph mdi:transfer"/>
|
||||
</g>
|
||||
<g transform="translate(308, 35)" class="key trans keypos-5">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key trans side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key trans"/>
|
||||
<use href="#mdi:transfer" xlink:href="#mdi:transfer" x="-9" y="-13" height="18" width="18.0" class="key trans tap glyph mdi:transfer"/>
|
||||
</g>
|
||||
<g transform="translate(462, 35)" class="key trans keypos-6">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key trans side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key trans"/>
|
||||
<use href="#mdi:transfer" xlink:href="#mdi:transfer" x="-9" y="-13" height="18" width="18.0" class="key trans tap glyph mdi:transfer"/>
|
||||
</g>
|
||||
<g transform="translate(616, 35)" class="key trans keypos-7">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key trans side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key trans"/>
|
||||
<use href="#mdi:transfer" xlink:href="#mdi:transfer" x="-9" y="-13" height="18" width="18.0" class="key trans tap glyph mdi:transfer"/>
|
||||
</g>
|
||||
<g transform="translate(672, 35)" class="key trans keypos-8">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key trans side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key trans"/>
|
||||
<use href="#mdi:transfer" xlink:href="#mdi:transfer" x="-9" y="-13" height="18" width="18.0" class="key trans tap glyph mdi:transfer"/>
|
||||
</g>
|
||||
<g transform="translate(728, 28)" class="key trans keypos-9">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key trans side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key trans"/>
|
||||
<use href="#mdi:transfer" xlink:href="#mdi:transfer" x="-9" y="-13" height="18" width="18.0" class="key trans tap glyph mdi:transfer"/>
|
||||
</g>
|
||||
<g transform="translate(784, 35)" class="key trans keypos-10">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key trans side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key trans"/>
|
||||
<use href="#mdi:transfer" xlink:href="#mdi:transfer" x="-9" y="-13" height="18" width="18.0" class="key trans tap glyph mdi:transfer"/>
|
||||
</g>
|
||||
<g transform="translate(840, 56)" class="key trans keypos-11">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key trans side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key trans"/>
|
||||
<use href="#mdi:transfer" xlink:href="#mdi:transfer" x="-9" y="-13" height="18" width="18.0" class="key trans tap glyph mdi:transfer"/>
|
||||
</g>
|
||||
<g transform="translate(896, 56)" class="key trans keypos-12">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key trans side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key trans"/>
|
||||
<use href="#mdi:transfer" xlink:href="#mdi:transfer" x="-9" y="-13" height="18" width="18.0" class="key trans tap glyph mdi:transfer"/>
|
||||
</g>
|
||||
<g transform="translate(28, 112)" class="key trans keypos-13">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key trans side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key trans"/>
|
||||
<use href="#mdi:transfer" xlink:href="#mdi:transfer" x="-9" y="-13" height="18" width="18.0" class="key trans tap glyph mdi:transfer"/>
|
||||
</g>
|
||||
<g transform="translate(84, 112)" class="key trans keypos-14">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key trans side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key trans"/>
|
||||
<use href="#mdi:transfer" xlink:href="#mdi:transfer" x="-9" y="-13" height="18" width="18.0" class="key trans tap glyph mdi:transfer"/>
|
||||
</g>
|
||||
<g transform="translate(140, 91)" class="key trans keypos-15">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key trans side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key trans"/>
|
||||
<use href="#mdi:transfer" xlink:href="#mdi:transfer" x="-9" y="-13" height="18" width="18.0" class="key trans tap glyph mdi:transfer"/>
|
||||
</g>
|
||||
<g transform="translate(196, 84)" class="key trans keypos-16">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key trans side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key trans"/>
|
||||
<use href="#mdi:transfer" xlink:href="#mdi:transfer" x="-9" y="-13" height="18" width="18.0" class="key trans tap glyph mdi:transfer"/>
|
||||
</g>
|
||||
<g transform="translate(252, 91)" class="key trans keypos-17">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key trans side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key trans"/>
|
||||
<use href="#mdi:transfer" xlink:href="#mdi:transfer" x="-9" y="-13" height="18" width="18.0" class="key trans tap glyph mdi:transfer"/>
|
||||
</g>
|
||||
<g transform="translate(308, 91)" class="key trans keypos-18">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key trans side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key trans"/>
|
||||
<use href="#mdi:transfer" xlink:href="#mdi:transfer" x="-9" y="-13" height="18" width="18.0" class="key trans tap glyph mdi:transfer"/>
|
||||
</g>
|
||||
<g transform="translate(462, 147)" class="key trans keypos-19">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key trans side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key trans"/>
|
||||
<use href="#mdi:transfer" xlink:href="#mdi:transfer" x="-9" y="-13" height="18" width="18.0" class="key trans tap glyph mdi:transfer"/>
|
||||
</g>
|
||||
<g transform="translate(616, 91)" class="key trans keypos-20">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key trans side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key trans"/>
|
||||
<use href="#mdi:transfer" xlink:href="#mdi:transfer" x="-9" y="-13" height="18" width="18.0" class="key trans tap glyph mdi:transfer"/>
|
||||
</g>
|
||||
<g transform="translate(672, 91)" class="key trans keypos-21">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key trans side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key trans"/>
|
||||
<use href="#mdi:transfer" xlink:href="#mdi:transfer" x="-9" y="-13" height="18" width="18.0" class="key trans tap glyph mdi:transfer"/>
|
||||
</g>
|
||||
<g transform="translate(728, 84)" class="key trans keypos-22">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key trans side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key trans"/>
|
||||
<use href="#mdi:transfer" xlink:href="#mdi:transfer" x="-9" y="-13" height="18" width="18.0" class="key trans tap glyph mdi:transfer"/>
|
||||
</g>
|
||||
<g transform="translate(784, 91)" class="key trans keypos-23">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key trans side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key trans"/>
|
||||
<use href="#mdi:transfer" xlink:href="#mdi:transfer" x="-9" y="-13" height="18" width="18.0" class="key trans tap glyph mdi:transfer"/>
|
||||
</g>
|
||||
<g transform="translate(840, 112)" class="key trans keypos-24">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key trans side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key trans"/>
|
||||
<use href="#mdi:transfer" xlink:href="#mdi:transfer" x="-9" y="-13" height="18" width="18.0" class="key trans tap glyph mdi:transfer"/>
|
||||
</g>
|
||||
<g transform="translate(896, 112)" class="key trans keypos-25">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key trans side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key trans"/>
|
||||
<use href="#mdi:transfer" xlink:href="#mdi:transfer" x="-9" y="-13" height="18" width="18.0" class="key trans tap glyph mdi:transfer"/>
|
||||
</g>
|
||||
<g transform="translate(28, 168)" class="key trans keypos-26">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key trans side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key trans"/>
|
||||
<use href="#mdi:transfer" xlink:href="#mdi:transfer" x="-9" y="-13" height="18" width="18.0" class="key trans tap glyph mdi:transfer"/>
|
||||
</g>
|
||||
<g transform="translate(84, 168)" class="key trans keypos-27">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key trans side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key trans"/>
|
||||
<use href="#mdi:transfer" xlink:href="#mdi:transfer" x="-9" y="-13" height="18" width="18.0" class="key trans tap glyph mdi:transfer"/>
|
||||
</g>
|
||||
<g transform="translate(140, 147)" class="key trans keypos-28">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key trans side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key trans"/>
|
||||
<use href="#mdi:transfer" xlink:href="#mdi:transfer" x="-9" y="-13" height="18" width="18.0" class="key trans tap glyph mdi:transfer"/>
|
||||
</g>
|
||||
<g transform="translate(196, 140)" class="key trans keypos-29">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key trans side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key trans"/>
|
||||
<use href="#mdi:transfer" xlink:href="#mdi:transfer" x="-9" y="-13" height="18" width="18.0" class="key trans tap glyph mdi:transfer"/>
|
||||
</g>
|
||||
<g transform="translate(252, 147)" class="key trans keypos-30">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key trans side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key trans"/>
|
||||
<use href="#mdi:transfer" xlink:href="#mdi:transfer" x="-9" y="-13" height="18" width="18.0" class="key trans tap glyph mdi:transfer"/>
|
||||
</g>
|
||||
<g transform="translate(308, 147)" class="key trans keypos-31">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key trans side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key trans"/>
|
||||
<use href="#mdi:transfer" xlink:href="#mdi:transfer" x="-9" y="-13" height="18" width="18.0" class="key trans tap glyph mdi:transfer"/>
|
||||
</g>
|
||||
<g transform="translate(406, 91)" class="key trans keypos-32">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key trans side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key trans"/>
|
||||
<use href="#mdi:transfer" xlink:href="#mdi:transfer" x="-9" y="-13" height="18" width="18.0" class="key trans tap glyph mdi:transfer"/>
|
||||
</g>
|
||||
<g transform="translate(616, 147)" class="key trans keypos-33">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key trans side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key trans"/>
|
||||
<use href="#mdi:transfer" xlink:href="#mdi:transfer" x="-9" y="-13" height="18" width="18.0" class="key trans tap glyph mdi:transfer"/>
|
||||
</g>
|
||||
<g transform="translate(672, 147)" class="key trans keypos-34">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key trans side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key trans"/>
|
||||
<use href="#mdi:transfer" xlink:href="#mdi:transfer" x="-9" y="-13" height="18" width="18.0" class="key trans tap glyph mdi:transfer"/>
|
||||
</g>
|
||||
<g transform="translate(728, 140)" class="key trans keypos-35">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key trans side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key trans"/>
|
||||
<use href="#mdi:transfer" xlink:href="#mdi:transfer" x="-9" y="-13" height="18" width="18.0" class="key trans tap glyph mdi:transfer"/>
|
||||
</g>
|
||||
<g transform="translate(784, 147)" class="key trans keypos-36">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key trans side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key trans"/>
|
||||
<use href="#mdi:transfer" xlink:href="#mdi:transfer" x="-9" y="-13" height="18" width="18.0" class="key trans tap glyph mdi:transfer"/>
|
||||
</g>
|
||||
<g transform="translate(840, 168)" class="key trans keypos-37">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key trans side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key trans"/>
|
||||
<use href="#mdi:transfer" xlink:href="#mdi:transfer" x="-9" y="-13" height="18" width="18.0" class="key trans tap glyph mdi:transfer"/>
|
||||
</g>
|
||||
<g transform="translate(896, 168)" class="key trans keypos-38">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key trans side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key trans"/>
|
||||
<use href="#mdi:transfer" xlink:href="#mdi:transfer" x="-9" y="-13" height="18" width="18.0" class="key trans tap glyph mdi:transfer"/>
|
||||
</g>
|
||||
<g transform="translate(28, 224)" class="key trans keypos-39">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key trans side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key trans"/>
|
||||
<use href="#mdi:transfer" xlink:href="#mdi:transfer" x="-9" y="-13" height="18" width="18.0" class="key trans tap glyph mdi:transfer"/>
|
||||
</g>
|
||||
<g transform="translate(84, 224)" class="key trans keypos-40">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key trans side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key trans"/>
|
||||
<use href="#mdi:transfer" xlink:href="#mdi:transfer" x="-9" y="-13" height="18" width="18.0" class="key trans tap glyph mdi:transfer"/>
|
||||
</g>
|
||||
<g transform="translate(140, 203)" class="key trans keypos-41">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key trans side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key trans"/>
|
||||
<use href="#mdi:transfer" xlink:href="#mdi:transfer" x="-9" y="-13" height="18" width="18.0" class="key trans tap glyph mdi:transfer"/>
|
||||
</g>
|
||||
<g transform="translate(196, 196)" class="key trans keypos-42">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key trans side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key trans"/>
|
||||
<use href="#mdi:transfer" xlink:href="#mdi:transfer" x="-9" y="-13" height="18" width="18.0" class="key trans tap glyph mdi:transfer"/>
|
||||
</g>
|
||||
<g transform="translate(252, 203)" class="key trans keypos-43">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key trans side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key trans"/>
|
||||
<use href="#mdi:transfer" xlink:href="#mdi:transfer" x="-9" y="-13" height="18" width="18.0" class="key trans tap glyph mdi:transfer"/>
|
||||
</g>
|
||||
<g transform="translate(308, 203)" class="key trans keypos-44">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key trans side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key trans"/>
|
||||
<use href="#mdi:transfer" xlink:href="#mdi:transfer" x="-9" y="-13" height="18" width="18.0" class="key trans tap glyph mdi:transfer"/>
|
||||
</g>
|
||||
<g transform="translate(518, 91)" class="key trans keypos-45">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key trans side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key trans"/>
|
||||
<use href="#mdi:transfer" xlink:href="#mdi:transfer" x="-9" y="-13" height="18" width="18.0" class="key trans tap glyph mdi:transfer"/>
|
||||
</g>
|
||||
<g transform="translate(616, 203)" class="key trans keypos-46">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key trans side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key trans"/>
|
||||
<use href="#mdi:transfer" xlink:href="#mdi:transfer" x="-9" y="-13" height="18" width="18.0" class="key trans tap glyph mdi:transfer"/>
|
||||
</g>
|
||||
<g transform="translate(672, 203)" class="key trans keypos-47">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key trans side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key trans"/>
|
||||
<use href="#mdi:transfer" xlink:href="#mdi:transfer" x="-9" y="-13" height="18" width="18.0" class="key trans tap glyph mdi:transfer"/>
|
||||
</g>
|
||||
<g transform="translate(728, 196)" class="key trans keypos-48">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key trans side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key trans"/>
|
||||
<use href="#mdi:transfer" xlink:href="#mdi:transfer" x="-9" y="-13" height="18" width="18.0" class="key trans tap glyph mdi:transfer"/>
|
||||
</g>
|
||||
<g transform="translate(784, 203)" class="key trans keypos-49">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key trans side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key trans"/>
|
||||
<use href="#mdi:transfer" xlink:href="#mdi:transfer" x="-9" y="-13" height="18" width="18.0" class="key trans tap glyph mdi:transfer"/>
|
||||
</g>
|
||||
<g transform="translate(840, 224)" class="key trans keypos-50">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key trans side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key trans"/>
|
||||
<use href="#mdi:transfer" xlink:href="#mdi:transfer" x="-9" y="-13" height="18" width="18.0" class="key trans tap glyph mdi:transfer"/>
|
||||
</g>
|
||||
<g transform="translate(896, 224)" class="key trans keypos-51">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key trans side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key trans"/>
|
||||
<use href="#mdi:transfer" xlink:href="#mdi:transfer" x="-9" y="-13" height="18" width="18.0" class="key trans tap glyph mdi:transfer"/>
|
||||
</g>
|
||||
<g transform="translate(392, 217)" class="key trans keypos-52">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key trans side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key trans"/>
|
||||
<use href="#mdi:transfer" xlink:href="#mdi:transfer" x="-9" y="-13" height="18" width="18.0" class="key trans tap glyph mdi:transfer"/>
|
||||
</g>
|
||||
<g transform="translate(140, 259)" class="key trans keypos-53">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key trans side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key trans"/>
|
||||
<use href="#mdi:transfer" xlink:href="#mdi:transfer" x="-9" y="-13" height="18" width="18.0" class="key trans tap glyph mdi:transfer"/>
|
||||
</g>
|
||||
<g transform="translate(196, 252)" class="key trans keypos-54">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key trans side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key trans"/>
|
||||
<use href="#mdi:transfer" xlink:href="#mdi:transfer" x="-9" y="-13" height="18" width="18.0" class="key trans tap glyph mdi:transfer"/>
|
||||
</g>
|
||||
<g transform="translate(252, 259)" class="key trans keypos-55">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key trans side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key trans"/>
|
||||
<use href="#mdi:transfer" xlink:href="#mdi:transfer" x="-9" y="-13" height="18" width="18.0" class="key trans tap glyph mdi:transfer"/>
|
||||
</g>
|
||||
<g transform="translate(314, 283) rotate(30.0)" class="key trans keypos-56">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key trans side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key trans"/>
|
||||
<use href="#mdi:transfer" xlink:href="#mdi:transfer" x="-9" y="-13" height="18" width="18.0" class="key trans tap glyph mdi:transfer"/>
|
||||
</g>
|
||||
<g transform="translate(382, 306) rotate(30.0)" class="key trans keypos-57">
|
||||
<rect rx="6" ry="6" x="-26" y="-40" width="52" height="80" class="key trans side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-38" width="40" height="68" class="key trans"/>
|
||||
<use href="#mdi:transfer" xlink:href="#mdi:transfer" x="-9" y="-13" height="18" width="18.0" class="key trans tap glyph mdi:transfer"/>
|
||||
</g>
|
||||
<g transform="translate(462, 91)" class="key trans keypos-58">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key trans side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key trans"/>
|
||||
<use href="#mdi:transfer" xlink:href="#mdi:transfer" x="-9" y="-13" height="18" width="18.0" class="key trans tap glyph mdi:transfer"/>
|
||||
</g>
|
||||
<g transform="translate(542, 306) rotate(-30.0)" class="key trans keypos-59">
|
||||
<rect rx="6" ry="6" x="-26" y="-40" width="52" height="80" class="key trans side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-38" width="40" height="68" class="key trans"/>
|
||||
<use href="#mdi:transfer" xlink:href="#mdi:transfer" x="-9" y="-13" height="18" width="18.0" class="key trans tap glyph mdi:transfer"/>
|
||||
</g>
|
||||
<g transform="translate(610, 283) rotate(-30.0)" class="key trans keypos-60">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key trans side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key trans"/>
|
||||
<use href="#mdi:transfer" xlink:href="#mdi:transfer" x="-9" y="-13" height="18" width="18.0" class="key trans tap glyph mdi:transfer"/>
|
||||
</g>
|
||||
<g transform="translate(672, 259)" class="key trans keypos-61">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key trans side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key trans"/>
|
||||
<use href="#mdi:transfer" xlink:href="#mdi:transfer" x="-9" y="-13" height="18" width="18.0" class="key trans tap glyph mdi:transfer"/>
|
||||
</g>
|
||||
<g transform="translate(728, 252)" class="key trans keypos-62">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key trans side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key trans"/>
|
||||
<use href="#mdi:transfer" xlink:href="#mdi:transfer" x="-9" y="-13" height="18" width="18.0" class="key trans tap glyph mdi:transfer"/>
|
||||
</g>
|
||||
<g transform="translate(784, 259)" class="key trans keypos-63">
|
||||
<rect rx="6" ry="6" x="-26" y="-26" width="52" height="52" class="key trans side"/>
|
||||
<rect rx="4" ry="4" x="-20" y="-24" width="40" height="40" class="key trans"/>
|
||||
<use href="#mdi:transfer" xlink:href="#mdi:transfer" x="-9" y="-13" height="18" width="18.0" class="key trans tap glyph mdi:transfer"/>
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
|
Before Width: | Height: | Size: 50 KiB |
@ -1,132 +0,0 @@
|
||||
layout: {qmk_keyboard: corne/rev1}
|
||||
layers:
|
||||
Qwery:
|
||||
- $$mdi:keyboard-esc$$
|
||||
- {t: '1', s: '!'}
|
||||
- {t: '2', s: '@'}
|
||||
- {t: '3', s: '#'}
|
||||
- {t: '4', s: $}
|
||||
- {t: '5', s: '%'}
|
||||
- $$mdi:arrow-up-bold$$
|
||||
- {t: '6', s: ^}
|
||||
- {t: '7', s: '&'}
|
||||
- {t: '8', s: '*'}
|
||||
- {t: '9', s: (}
|
||||
- {t: '0', s: )}
|
||||
- {t: '-', s: _}
|
||||
- $$mdi:keyboard-tab$$
|
||||
- Q
|
||||
- W
|
||||
- E
|
||||
- R
|
||||
- T
|
||||
- $$mdi:arrow-down-bold$$
|
||||
- Y
|
||||
- U
|
||||
- I
|
||||
- O
|
||||
- P
|
||||
- {t: ']', s: '}'}
|
||||
- $$mdi:apple-keyboard-caps$$
|
||||
- A
|
||||
- S
|
||||
- D
|
||||
- F
|
||||
- G
|
||||
- $$mdi:arrow-left-bold$$
|
||||
- H
|
||||
- J
|
||||
- K
|
||||
- L
|
||||
- {t: ;, s: ':'}
|
||||
- .
|
||||
- $$mdi:apple-keyboard-shift$$
|
||||
- Z
|
||||
- X
|
||||
- C
|
||||
- V
|
||||
- B
|
||||
- $$mdi:arrow-right-bold$$
|
||||
- N
|
||||
- M
|
||||
- {t: ',', s: <}
|
||||
- {t: ., s: '>'}
|
||||
- {t: /, s: '?'}
|
||||
- {t: '$$mdi:keyboard-return$$', type: enter}
|
||||
- {t: '$$mdi:backspace$$', type: backspace}
|
||||
- $$mdi:apple-keyboard-control$$
|
||||
- $$mdi:apple-keyboard-option$$
|
||||
- LGUI
|
||||
- $$mdi:keyboard-space$$
|
||||
- {t: '$$mdi:keyboard-return$$', type: enter}
|
||||
- {t: '$$mdi:keyboard-return$$', type: enter}
|
||||
- {t: '$$mdi:keyboard-return$$', type: enter}
|
||||
- $$mdi:keyboard-space$$
|
||||
- RGUI
|
||||
- $$mdi:apple-keyboard-option$$
|
||||
- $$mdi:apple-keyboard-control$$
|
||||
Flash:
|
||||
- '&flash_macro'
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
- {t: '$$mdi:transfer$$', type: trans}
|
||||
3
zephyr/module.yml
Normal file
3
zephyr/module.yml
Normal file
@ -0,0 +1,3 @@
|
||||
build:
|
||||
settings:
|
||||
board_root: .
|
||||
Loading…
x
Reference in New Issue
Block a user