Dvorak Programmer Layout
========================
This is a dvorak-only layout. The overall philosophy is that the left hand contains a number of layer-switching shortcuts, and the right hand key codes vary based on the layer selected.
Layers
------
* BASE: this is where you type.
* SHELL_NAV: hold down the Tab key to access shell/terminal navigation shorcuts such as forward/backward word, history, Ctrl+C, screen tab movement.
* KEY_NAV: arrow key movement with backward/forward word support, and copy/paste.
* KEY_SEL: same as above, but every movement shift-selects.
* NUMBER: keypad layer.
* SYMBOL: all the symbols.
* BRACKET: special brackets-only layer for programming. Activated by pressing left capslock (OSL)
* SHORTCUTS: sends Hyper keys for Autohotkey to interpret. I use this to switch between specific apps.
* MOUSE: use mouse keys
Updates
-------
2017/02/10:
* Made left shift an MO for SHELL_NAV, and symbol+right shift CAPSLOCK. Made all modifiers OSM.
2017/01/28:
* Made the capslock key a dual momentary layer activation for BRACKETS and SHELL_NAV. One keypress held down for BRACKETS, one keypress, released and then held down for SHELL_NAV
2017/01/22:
* Made brackets toggle an OSL on the left capslock
* Added SHELL_LAYER
2016/12/10:
* toggle for brackets layer is now on left thumb cluster.
2016/11/05:
* removed brackets anywhere but in brackets layer
* added mouse layer back in
* put semicolon-newline and end-newline on symbol layer
* replaced all HYPR with MEH, added more shortcut keysption>
// SPDX-License-Identifier: GPL-2.0-or-later OR MIT#include"qca955x.dtsi"#include<dt-bindings/gpio/gpio.h>#include<dt-bindings/input/input.h>/{compatible="openmesh,om5p-ac-v1","qca,qca9558";model="OpenMesh OM5P-AC v1";chosen{/delete-property/bootargs;};aliases{serial0=&uart;led-boot=&led_power_blue;led-failsafe=&led_power_blue;led-running=&led_power_blue;led-upgrade=&led_power_blue;label-mac-device=ð0;};leds{compatible="gpio-leds";led_power_blue:power_blue{label="blue:power";gpios=<&gpio18GPIO_ACTIVE_LOW>;default-state="on";};wan_blue{label="blue:wan";gpios=<&gpio19GPIO_ACTIVE_LOW>;};lan_blue{label="blue:lan";gpios=<&gpio20GPIO_ACTIVE_LOW>;};wifi_green{label="green:wifi";gpios=<&gpio21GPIO_ACTIVE_LOW>;linux,default-trigger="phy0tpt";};wifi_yellow{label="yellow:wifi";gpios=<&gpio22GPIO_ACTIVE_LOW>;};wifi_red{label="red:wifi";gpios=<&gpio23GPIO_ACTIVE_LOW>;};};i2c{compatible="i2c-gpio";gpios=<&gpio11GPIO_ACTIVE_HIGH/* sda */&gpio12GPIO_ACTIVE_HIGH/* scl */>;#address-cells=<1>;#size-cells=<0>;i2c-gpio,scl-open-drain;i2c-gpio,sda-open-drain;tmp423a@4c{compatible="ti,tmp423";reg=<0x4c>;};};watchdog{compatible="linux,wdt-gpio";gpios=<&gpio17GPIO_ACTIVE_LOW>;hw_algo="toggle";/* hw_margin_ms is actually 300s but driver limits it to 60s */hw_margin_ms=<60000>;always-running;};};&spi{status="okay";flash@0{compatible="jedec,spi-nor";reg=<0>;spi-max-frequency=<40000000>;/* partitions are passed via bootloader */partitions{compatible="fixed-partitions";#address-cells=<1>;#size-cells=<1>;partition@0{label="u-boot";reg=<0x0000000x040000>;read-only;};partition@40000{label="u-boot-env";reg=<0x0400000x010000>;};partition@50000{label="custom";reg=<0x0500000x060000>;read-only;};partition@b0000{label="inactive";reg=<0x0b00000x7a0000>;};partition@850000{label="inactive2";reg=<0x8500000x7a0000>;};art:partition@ff0000{label="ART";reg=<0xff00000x010000>;read-only;};};};};&mdio0{status="okay";phy-mask=<0x6>;phy1:ethernet-phy@1{reg=<1>;eee-broken-100tx;eee-broken-1000t;};phy2:ethernet-phy@2{reg=<2>;eee-broken-100tx;eee-broken-1000t;at803x-override-sgmii-link-check;};};ð0{status="okay";pll-data=<0x820001010x800001010x80001313>;nvmem-cells=<&macaddr_art_0>;nvmem-cell-names="mac-address";phy-mode="rgmii-id";phy-handle=<&phy1>;gmac-config{device=<&gmac>;rgmii-enabled=<1>;rxd-delay=<3>;rxdv-delay=<3>;txd-delay=<0>;txen-delay=<0>;};};ð1{status="okay";pll-data=<0x030001010x800001010x80001313>;nvmem-cells=<&macaddr_art_6>;nvmem-cell-names="mac-address";qca955x-sgmii-fixup;phy-handle=<&phy2>;};&wmac{status="okay";mtd-cal-data=<&art0x1000>;nvmem-cells=<&macaddr_art_0>;nvmem-cell-names="mac-address";mac-address-increment=<2>;};&pcie1{status="okay";};&art{compatible="nvmem-cells";#address-cells=<1>;#size-cells=<1>;macaddr_art_0:macaddr@0{reg=<0x00x6>;};macaddr_art_6:macaddr@6{reg=<0x60x6>;};};