No description
Find a file
jasmine 837808e4c1
Update README with expanded feature descriptions
- Add detailed descriptions for each feature (Autocorrect, Combos, Home Row Mods, Repeat/Magic Keys)
- Resize and center images for better display on wide layouts
- Make keymap image collapsible by default
- Move Magic Sturdy reference to feature section
2025-10-14 20:16:20 +08:00
.devcontainer use containerWorkspaceFolder var and pass it to setup.sh (#12) 2024-05-02 12:20:54 +01:00
.github/workflows Point workflows at qmk/.githubs main branch (#1) 2023-11-28 16:44:02 +11:00
.vscode Add support for devcontainers. (#6) 2024-02-23 22:35:45 +11:00
assets Update README with expanded feature descriptions 2025-10-14 20:16:20 +08:00
features migrate keymaps to external userspace 2025-05-13 18:29:00 +08:00
keyboards Update README with expanded feature descriptions 2025-10-14 20:16:20 +08:00
layouts Initial structure. 2023-11-22 15:22:43 +11:00
users Initial structure. 2023-11-22 15:22:43 +11:00
.clang-format Initial structure. 2023-11-22 15:22:43 +11:00
.clangd Fix for .clangd. 2025-04-22 00:05:04 +10:00
.editorconfig Initial structure. 2023-11-22 15:22:43 +11:00
.gitignore Add clangd-related entries to .gitignore (#31) 2024-09-05 18:51:35 +10:00
LICENSE Initial structure. 2023-11-22 15:22:43 +11:00
Makefile Initial structure. 2023-11-22 15:22:43 +11:00
qmk.json migrate keymaps to external userspace 2025-05-13 18:29:00 +08:00
README.md Update README with expanded feature descriptions 2025-10-14 20:16:20 +08:00

QMK Keymaps

ferris-sweep

Table of Contents

Installation

Prerequisites

Follow the getting started docs to install QMK Firmware

Setup

# Clone the userspace
git clone https://git.sajenim.dev/jasmine/qmk_userspace.git

# Configure QMK to use external userspace
qmk config user.overlay_dir="$(realpath qmk_userspace)"

# Compile for Ferris Sweep
qmk compile -kb ferris/sweep -km sajenim

# Flash to keyboard (enter bootloader mode first)
qmk flash -kb ferris/sweep -km sajenim

About

This is a custom QMK userspace for the Ferris Sweep keyboard, featuring the Canary layout - a collaborative design by the Alternate Keyboard Layout (AKL) community with over 55% rolling trigrams for a flowy typing feel. The keymap includes extensive customizations for improved typing efficiency, emphasizing minimal finger movement through home row mods, combos, and intelligent repeat keys.

Design Philosophy

  • Comfort first: All frequently used keys accessible without leaving home position
  • Smart automation: Let the keyboard handle common patterns (repeat key, magic completions, autocorrect)
  • Minimal layers: 5 carefully designed layers (CANARY, NAV, NUM, SYM, FUN) with logical access patterns

Features

Autocorrect

Automatically fixes common typing mistakes in real-time. Maintains a dictionary of frequently mistyped words and corrects them as you type, reducing the need for manual backspacing and retyping.

Combos

Press multiple keys simultaneously to output different characters or trigger actions. Enables access to numbers, symbols, and commands without leaving the home position, reducing finger travel and improving typing efficiency.

Home Row Mods

Modifier keys (Alt, Shift, GUI, Ctrl) placed on the home row as dual-function keys. Tap for the letter, hold for the modifier. Eliminates the need to reach for traditional modifier positions, reducing hand movement and strain.

Repeat / Magic Keys

Two intelligent repeat mechanisms on the thumb keys:

  • Repeat Key - Repeats the last keystroke with context-aware enhancements for common trigrams and word briefs
  • Magic Key - Context-aware completions based on the previous key. Reduces same-finger bigrams and enables common word completions

See magic sturdy for the inspiration behind the magic key implementation.

My Keymap

ferris-keymap

Usage Examples

Combos for Numbers: Press home row + upper row simultaneously for vertical number access:

  • L + R → 2
  • Y + S → 3
  • P + T → 4

Magic Key Completions: Type a letter, then press the Magic key (right thumb):

  • w + Magic → which
  • b + Magic → efore
  • + + Magic → = (creates +=)

Repeat Key Enhancements: Tap a key twice using the Repeat key (left thumb):

  • a + Repeat → nd (completes "and")
  • i + Repeat → ng (completes "ing")
  • . + Repeat → ./ (first repeat), ../ (second repeat)

For complete documentation of all repeat and magic key behaviors, see the wiki.

References

Precondition
Home row mods timing and configuration guidance

Pascal Getreuer
Advanced QMK features and custom keycodes

Ikcelaks
Magic key implementation and layout analysis

Jonas Hietala
Keyboard layout development journey