1
0
Fork 0
qmk_firmware/keyboards/lets_split/keymaps/vim-mode
Riley Weber d63f954b25 [Keymap] Add vim-style keymap for lets split (#5399)
* initial commit

* initial commit

* fixed indents

* spelling, capitalization, and order.

* added dota mode keymap, removed old comments

* fixed default keymap always having tilde, instead of grave accent and tilde. Improved dota keymap.

* lower does not change backspace to delete anymore

* corrected pgup/pgdown

* changed period on lower from numpad dot to regular dot

* added colemak and dvorak

* made colemak/dvorak border keys consistent with querty

* updated to match current practices, added custom metakeys for dvorak and colemak

* added disclaimer about audio

* renamed to lowercase

* replaced include guards with #pragma once

Co-Authored-By: rileyweber13 <rileyw13@protonmail.com>

* removed unncessary include

Co-Authored-By: rileyweber13 <rileyw13@protonmail.com>

* removed defines included in core

Co-Authored-By: rileyweber13 <rileyw13@protonmail.com>

* replace defines with an enum, switched from custom function to set_single_persistent_default_layer

* removed ifndef/include/endif left over from previous build system

* removed unnecessary ifdef block

* updated soungs to work with set_single_persistent_default_layer
2019-03-18 11:51:24 -07:00
..
config.h [Keymap] Add vim-style keymap for lets split (#5399) 2019-03-18 11:51:24 -07:00
keymap.c [Keymap] Add vim-style keymap for lets split (#5399) 2019-03-18 11:51:24 -07:00
readme.md [Keymap] Add vim-style keymap for lets split (#5399) 2019-03-18 11:51:24 -07:00
rules.mk [Keymap] Add vim-style keymap for lets split (#5399) 2019-03-18 11:51:24 -07:00

Vim-mode Keymap

This layout is designed with the vim philosophy in mind: You should be able to do your work without lifting your hands off the keyboard. Some movement keys (like the arrow keys) have been directly borrowed from vim, and other keys (like the numpad) have been placed in easy-to-reach areas, following the vim philosophy.

Based on the default keymap.

Features:

  • Vim-like hjkl arrow keys in raise layer.
  • Right-hand numpad in lower layer.
  • All brackets and the most frequently used operators are intuitively handled in the lower layer for easy access.
  • Ctrl is just to the left of the left-hand pinky.
  • The raise layer provides the symbol bar on the first row that you're used to.
  • Media keys available in adjust layer (complete) and in the bottom-right corner of the default layer (frequently used).
  • The two keys that are traditionally the keys for space behave differently. The right-hand key inserts a space. The left-hand key inserts a tab. This is intuitive: Both keys that would normally make up the spacebar are increasing the space, but in different manners.

Some things to look out for:

  • Page up, page down, home, and end have been placed directly under the hjkl arrow keys, and each key moves the same direction as the key above it. (for instance, h moves left. Home has therefore been placed on n). You may ask why this was done instead of placing page down on f and page up on b. Here's why:
    • In short, f and b are in prime locations for other types of keys, and using those keys for page down and page up would interrupt the space available for other keys. Using vim-style f and b would require either divide up the list of function keys with unrelated keys, which is unintuitive, or move all the function keys to another later, requiring restructuring that does not lend itself to an intuitive layout.
  • Audio is not tested. If it doesn't work, please open an issue.