Skip to content

deintech/corne-zmk-config

Repository files navigation

ZMK Configuration

ZMK configuration for swept-crkbd also compatible with crkbd wireless version with nice!nano.

Front

This is a WIP layout based on Colemak DHm for using on Windows (with en-US layout), complemented with AHK scripts with Spanish accents, easy access to development symbols and JS/TS shortcuts.

US International layout is another alternative, but it has a critical downside (at least on Windows) for programming due to dead keys. We are going to lose speed because need to press two keys instead of one: the diacritic or accent followed by an ending character (space, tab or enter) to produce it.


Menu


Keyboard

Conventions

Icons

Icons used to describe some modifiers and actions

Label Description
Win/Cmd
Control
Alt
Shift
🄰 Caps Lock
Esc
Tab
Return
Hold Tap
🔁 Key Repeat

Modifiers Conventions

Conventions

  • Black and Blue works with ZMK
  • Magenta and Purple works with AHK

Shared Modifiers

Label Windows Actions
Backspace
|⌫ ⇪⌫ Delete word backward
+ Delete
⌦| +⇪⌫ Delete word forward
F2 ⇪⏎ Rename (like macOS)
⇪↹ left (terminal autocompletion)
🄰 + Caps lock
⇧⇧ L⇧+R⇧ Caps word
^^ L^+R^ Cancel caps
❖❖ L❖+R❖ Open current layout on screen

Layers

0. BAS

Letters, accents for Spanish language and quick shortcuts for most used symbols to "avoid" changing layers.

BAS Layer

Spanish
Label Windows Android
á +a +e + a
Á ++a +e + +a
é +e +e + e
É ++e +e + +e
í +i +e + i
Í ++i +e + +i
ó +o +e + o
Ó ++o +e + +o
ú +u +e + u
Ú ++u +e + +u
ü ^+u +u + u
Ü +^+u +u + +u
ñ +n +n + n
Ñ ++n +n + +n
Symbols
Label Windows
@ +q

1. DEV

Symbols and dev shortcuts for JS/TS.

DEV Layer

Symbols
Label Windows
° ^+#
ª +^+#
+$
« +^+<
» +^+>
<= +<
>= +>
¡ ++!
¡░! +^+!
¿ ++?
¿░? +^+?
JS/TS
Label Windows
++ ++
+= ++
-- +-
-= +-
** +*
*= +*
/= +/
&& +&
&&= +&
|| +|
||= +|
?? +?
??= +?
=> +=
=== +=
!! +!
!== +!
Auto Brackets
Label Windows Action
<░/> ++< Angular brackets for React
</░> ++> Angular brackets for HTML
Browser DevTools
Label Windows Action
Refresh
+ Hard refresh (clean cache)
Open DevTools

2. AXN

Quick navigation actions and numbers. Function keys works independently as a sub-layer to avoid shortcuts collisions.

AXN Layer

Navigation
Label Windows Action
Up
Down
Left
Right
Home
End
^+ Beginning of document
^+ End of document
Page up
Page down
Prev Tab
Next Tab
+ Prev desktop
+ Next desktop
Actions
Label Windows Action
System Info
+ Windows Security
Print Screen
+ Color Picker
File Explorer
Undo
Redo
Cut
Copy
Paste
+ Paste without format
Find
+ Replace

3. STG

Dedicated to Bluetooth and media controls.

STG Layer

Actions
Label Action
B⏮️ Prev device
B⏭️ Next device
B#️⃣ Jump to #️⃣ device
B❌ Clear current device
🔎+ Zoom in
🔎R Zoom reset
🔎- Zoom out
🔊+ Volume up
🔈M Mute
🔉- Volume down
🔅 Bright down
🔆 Bright up
Media
Label Action
⏹️ Stop
Fast reverse
⏮️ Prev
⏯️ Play/Pause
⏭️ Next
Fast Forward
🔀 Shuffle

Back to menu


Usage

Turn on/off

There's a small slider switch right underneath the USB-C connector which controls power. The keyboard is OFF when the sliders on both halves are on the left positions as shown in the following picture:

Turn off

The keyboard is ON when the switch is slided to the right on both halves as shown in the following picture (a few blue led flashing fast indicate two halves are paring each other).

Please note that for the halves to connect correctly, the both must be turned on as closely to THE SAME TIME as possible; it's okay if there's one or two seconds of difference but try to keep it to a minimum.

Turn on

Charge

To charge your boards you must put the half you want to charge in the ON position and connect it to a power source (it can be your computer) through the USB port.

You know it's charging if you see an orange led like the one in the following picture. The light turns off when charging is done.

Charging

Reset

Pressing it once resets the keyboard (power cycle so essentially equivalent to turning it off and then back on).

Pressing it twice quickly puts into programming mode, if you plug it into your computer it shows up as a USB device instead of a keyboard; you can then drag and drop or copy and paste your firmware file to update your keymap.

Reset

Configure

The wireless version of the Swept use ZMK as their firmware, you can find out more at ZMK docs

These pages will guide you to create your own keymap (follow them after your user-setup) customization and keymaps

Once you make changes to your keymap, you can download the firmware from the github actions tab of your repo. Since the keyboards come pre-flashed, you only need to flash the left half to change your keymaps. You can do it by following these steps:

  1. Turn off both halves

  2. Plug in the left half into your computer (without turning it on)

  3. "Double tap" the reset button (blue led pulsing slowly), play around with the timing between taps since this might not work the first time. If you have trouble with this step, re-plug your board and try again, you might even need to use a different cable or port on your computer. You know this works if you see a blue light fading on and off coming from the nice nano.

  4. After the previous step you should see a new storage device in your computer called nice!nano, as shown in the picture below. Drag and drop (or copy and paste) the firmware file corne_left-nice_nano_v2-zmk.uf2 which you should have generated and downloaded by following the guides linked above.

  5. Wait until the storage device automatically disappears from your computer, this should not take longer than a few seconds.

  6. Unplug the board from your computer

  7. Follow the procedure in How to turn my keyboard on?

Led Indicators

Color Mode Action
Blue Pulsing slowly bootloader mode (enter by double pressing reset button)
Blue Flashing fast halves are paring each other
Orange Charging

Battery Indicators

Battery

Needs ZMK PR Battery BLE and ZMK Split Battery

Back to menu


AHK

Notifications

Prerequisites

Startup

To automatically run the scripts at startup:

  • Create shortcuts to startup.ahk scripts located inside ahk folder
  • Press +r and run this command shell:startup
  • Move the shortcut to this folder

Indicators

Screencast mode notifications:

  • CapsLock (On/Off)
  • CapsWord (On/Off)
  • Layer changing
  • Momentary layer activation and deactivation
  • Tray icons with current layer
  • Current layer image as helper (close with ESC)

Back to menu


About

Fork

Built With

Typing

  • Colemak Club - Learn Colemak Layout
  • Monkeytype - A minimalistic typing test, featuring many test modes, an account system to save your typing speed history and user configurable features like themes, a smooth caret and more.

Versioning

We use SemVer for versioning. For the versions available, see the swept-zmk-config on GitHub.

Authors

See also the list of contributors who participated in this project.

Sponsors

If this project helps you, consider buying me a cup of coffee.

GitHub Sponsors paypal

License

This project is licensed under the MIT License - see the LICENSE file for details.

Back to menu