Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

My Goku / Karabiner configuration

This repository holds my configuration files for Karabiner-Elements.

It contains the fully documented Goku file (karabiner.edn) as well as the generated file (karabiner.json).

In my configuration I remapped some specific "PC" keys for my Qisan Magicforce 68 keyboard.

A cleaned version is also available, I created this version for my colleague with just a Macbook Pro. Almost the same generic functionality but not up to date.

I wrote two blogposts with background information on the choices made and tools explored:

Shortcuts, remappings and automations

The following sections give an overview of the shortcuts, mappings and automations

Qisan Magicforce68 keyboard specific settings

The specific settings for my compact Qisan Magicforce68 keyboard

Shortcut Keystroke Function
left-option left-⌘ swapping option and command
left-command left-⌥ swapping command and option
Escape ` Escape to `
Shift+Escape ~ Shift + Escape to ~
right-Command ⌘ + Tab Toggle current and previous app
right-Option ⌘ + ~ Cycle app windows

This section is removed in the cleaned version.

Apple keyboard specific settings

The specific Apple keyboard setting involve the use of the 'fn' or function key. I was unable to address the function key on my Qisan keyboard.

Shortcut Keystroke Function
fn + l ⌘ + ⌃ + q Lock screen
fn + z ⌘ + ⌥ + Eject Sleep

Keychron K1 keyboard specific settings

The Keychron K1 keyboard setting has a special keys to take a screenshot right next to it is a key with a microphone that sends out fn + spacebar. I use this key to silently take a screenshot.

Shortcut Keystroke Function
microphone fn + spacebar Call silent screencapture

Generic shortcuts

You might wonder why there are so many hyper-keys, yes it is to much but I'm still figuring out which hyperkey location is most convenient. The position of your hands above the keyboard is an important factor in this. Using the capslock as hyper key is also a good option due to the size of the key.

Shortcut Keystroke Function
Capslock Escape hyper-key
Tab Tab / 'hyper' Hammerspoon hyper-key
e e hyper-key
Command (l|r) ⌘ + Tab Toggle current and previous app
Option (l|r) ⌘ + ~ Cycle app windows
Control (l|r) ⌃ + Tab Cycle app tabs
left-Shift ⌥ + left-Arrow Move cursor one word left
right-Shift ⌥ + right-Arrow Move cursor one word right
e + m ⌘ + ⌃ + Space Open Emoji picker
Capslock + l ⌘ + ⌃ + q Lock screen
Capslock + z ⌘ + ⌥ + eject Sleep
Capslock + m ⌘ + ⌃ + Space Open Emoji picker
Capslock + u Toggle System UI Sound Effects*
Capslock + \ Open Finder
Capslock + s Open Safari
Capslock + f Open Firefox
Capslock + k Open Kubernetic
Capslock + g Open Google Chrome
Capslock + t Open iTerm
Capslock + y Open Typora
Capslock + v Open VSCodium
Capslock + 4 Silent screenshot to clipboard
Capslock + 5 Screenshot and recording options
Capslock + arrow Move mouse fast
left-Option + s Safari: Save tabs to markdown**
left-Option + s Chrome: Save tabs to markdown**
Capslock + o Finder: Open in VSCodium***
right-Option + o Finder: Open in VSCodium***
Capslock + b Typora/VSCodium: Toggle sidebar
Capslock + t VSCodium: Open terminal pane
Capslock + h VSCodium: Snippet to clipboard
/ + vowel acccent aigu: á, é, í, ó, ú
; + vowel umlaut: ä, ë, ï, ö, ü
\ + vowel accent grave: à, è, ì, ò, ù
6 + vowel circumflex: â, ê, î, ô, û
/ + (shift + vowel) acccent aigu: Á, É, Í, Ó, Ú
; + (shift + vowel) umlaut: Ä, Ë, Ï, Ö, Ü
\ + (shift + vowel) accent grave: À, È, Ì, Ò, Ù
6 + (shift + vowel) circumflex: Â, Ê, Î, Ô, Û
Capslock + r Reload Hammerspoon config

In my current configuration I disabled the left- and right-shift options to move the cursor one word to the left or right. Too many typing errors.

* See Silence is foo

** See Saving the Yak browser-trail

*** See Open in VCodium

Special characters

Four layers have been added to make it easier to type diacritic characters.

  • Slash ('/') + vowel = vowel + acccent aigu acute accent
  • Semicolon (';') + vowel = vowel + umlaut
  • Backslash ('') + vowel = vowel + accent grave
  • Six ('6') + vowel = vowel + circumflex

Capitalized versions: layerkey + (shift + vowel) = capitalized vowel with accent

For example: '/' + 'a' = á

Example shortcuts

Some shortcuts to test stuff.

Shortcut Keystroke Function
o + s Open Safari (example)
o + t Type some text (example)
o + b Play beep sound (example)
o + p Play Purr sound (example)
o + k Play Tink sound (example)
e + m ⌘ + ⌃ + Space Open Emoji picker (example)
Spacebar + \ Open Finder (example)
Spacebar + p Open Preview (example)

Run Goku -c

When the 'karabiner.edn' file is not located in the directory '~/.config' you can run the shell script '' which uses the config file from the current directory.


# Run goku with the karabiner.edn file from the current directory
goku -c $PWD"/karabiner.edn"


goku$ ./


Goku file to generate the Karabiner-Elements configuration.








No releases published


No packages published