123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132 |
- // ───────────────────< Basic QMK options for Arsenik >───────────────────
- #undef PERMISSIVE_HOLD
- /* QMK’s `PERMISSIVE_HOLD` can be some extra comfort for experienced users, but
- * can also be an absolute pain for beginners, especially if you are trying to
- * learn home-row-mods, which is why we chose to deactivate this option by
- * default.
- */
- #define HOLD_ON_OTHER_KEY_PRESS_PER_KEY
- /* QMK considers tap-hold actions as "tap by default" when another key is
- * pressed during the "quantum period", but some tap-holds should ideally be
- * "hold by default" to avoid this delay or accidentally pressing keys like
- * Enter or Escape.
- *
- * This option allows us to have a fine-grain controll over this behaviour.
- *
- * Arsenik provides a good default implementation of the required function
- * `get_hold_on_other_key_press` in the `keymap.c` file.
- */
- #define TAPPING_TERM_PER_KEY
- /* Tap-hold actions (especially home-row-mods) may be hard to use as a
- * beginner, as it is common to hold those keys for too long and accidentally
- * use the `hold-action`.
- *
- * This option allows us to have a fine-grain controll over the `TAPPING_TERM`
- * for each tap-hold key, allowing for a longer delay on those sensitive keys
- * without slowing down the safer ones.
- *
- * Arsenik provides a good default implementation of the required function
- * `get_tapping_term` in the `keymap.c` file.
- */
- #define ARSENIK_PLACEHOLDER_LAYOUT
- /* NOTE: This line gets automatically filled in by the install script, but the
- * underlying layout may not yet exist, and keyboard specific layout may have
- * other variants you might want to check out.
- */
- #define ARSENIK_HRM_TAPPING_TERM 300
- /* This is the delay used by Arsenik for sensitive tap-holds, which include
- * home-row-mods and mod-taps using the spacebar
- */
- // ────────────────────< Main Arsenik configuration >─────────────────
- // Below are a bunch of options to quickly customize the Arsenik keymap. You
- // can pick and choose them by (un)commenting the different `#define`
- // declarations.
- #define ARSENIK_ENABLE_LAFAYETTE_LAYER
- /* When active, gives access to the programming symbols layer used by layouts
- * like Ergo‑L and all of the "Lafayette" familly of layouts (it’s their AltGr
- * layer). The definition of this layer depends on the keyboard layout you are
- * using, so make sure to select the correct one in the list bellow.
- *
- * When inactive, this layer is discarded and replaced by AltGr.
- */
- // #define ARSENIK_ENABLE_HRM
- /* When active, adds a Meta, Ctrl and Alt home-row-mod on respectively s/l,
- * d/k or f/j on a Qwerty keyboard. Those home-row-mods stay on those exact
- * keys regardless of the layout being used, meaning they would be on r/i, s/e
- * and t/n on a Colemak keyboard.
- */
- // #define ARSENIK_MAC_MODIFIERS
- /* Swaps around home-row-mods from Meta, Ctrl, Alt to Alt, Meta, Ctrl, as it
- * may make more sense on a Mac, like to keep common shortcuts accessible with
- * the Ergo‑L layout, for instance
- *
- * (Requires `ARSENIK_ENABLE_HRM`)
- */
- // #define ARSENIK_DISABLE_THUMB_TAP_HOLDS
- /* When active, uses an extra simple config without any tap-holds on the thumb
- * keys. It may be a *lot* simpler to use, but requieres a keyboard with at
- * least 6 thumb keys (so 3 per thumb) instead of 3 thumb keys total and is
- * overall a lot less efficient (especially when combining modifiers).
- *
- * Base thumb config: LSFT_T(KC_ËSC) LT(_num_nav, KC_SPC) RALT_T(KC_ENT)
- * When it’s active: KC_ALT KC_CTL KC_GUI MO(_num_nav) KC_SPC KC_RALT
- * (KC_RALT becomes the `_lafayette` layer if `ARSENIK_ENABLE_LAFAYETTE_LAYER`
- * is active)
- *
- * (Prevents using `ARSENIK_ENABLE_SELENIUM_VARIANT`)
- */
- // #define ARSENIK_ENABLE_SELENIUM_VARIANT
- /* Most ergonomic keyboards have at least 4 comfortable thumb keys keys (so 2
- * per thumb). Selenium is a variant of Arsenik made to fit on 34 keys keyboard
- * to take advantage of the extra thumb key. It does it by splitting the numbers
- * and navigation layers to 2 distict layers, and adds an escape key.
- *
- * Base thumb config: LSFT_T(KC_ËSC) LT(_num_nav, KC_SPC) RALT_T(KC_ENT)
- * Selenium: LSFT_T(KC_ESC) LT(_num_row, KC_BSPC) LT(_vim_nav, KC_SPC) RALT_T(KC_ENT)
- */
- // #define SELENIUM_LEFT_HAND_SPACE
- /* Swaps around the backspace and space keycodes, for people who prefer using
- * their left thunb for the space bar.
- *
- * (Requires `ARSENIK_ENABLE_SELENIUM_VARIANT`)
- */
- #define SELENIUM_RESTORE_SPACE
- /* Having Space accessible to only one thumb may create some problems, especially
- * when trying to type Shift + Space or Lafayette / AltGr + Space (depending if
- * your space key is on your left or right hand). When active, backspace gets
- * temporarily replaced by space when the original space key is held.
- *
- * (Requires `ARSENIK_ENABLE_SELENIUM_VARIANT`)
- */
- // Lists of layouts supported by Arsenik. Some parts of the config are dependent
- // on keyboard layout used on your computer. If they don’t match up some
- // characters may not be correctly placed or missing entirely. If multiple
- // options are toggled at the same time, the first one is chosen.
- #define ARSENIK_HOST_LAYOUT_QWERTY
- // #define ARSENIK_HOST_LAYOUT_AZERTY
- // #define ARSENIK_HOST_LAYOUT_ERGOL
- // #define ARSENIK_HOST_LAYOUT_BEPO
- // #define ARSENIK_HOST_LAYOUT_DVORAK
- // #define ARSENIK_HOST_LAYOUT_COLEMAK
- // #define ARSENIK_HOST_LAYOUT_WORKMAN
|