qmk-firmware/keyboards/ergodox_ez/keymaps/hacker_dvorak
James Young a03aa301de
Remove Full Bootmagic (#13846)
* disambiguate Bootmagic rules in keymaps

The files edited by this commit were added at a point in time where `BOOTMAGIC_ENABLE = yes` enabled full Bootmagic.

This commit edits the files to specify that full Bootmagic is intended.

* remove BOOTMAGIC_ENABLE=full setting

* unify commented BOOTMAGIC_ENABLE rules in keyboards

Explicitly sets `BOOTMAGIC_ENABLE = no` in keyboards where the rule was commented out.

Command:

```
find keyboards/ -type f -name 'rules.mk' -and -not -path '*/keymaps/*' -exec sed -i -e 's;#[ \t]*\(BOOTMAGIC_ENABLE\)[ \t=]\+\([a-zA-Z]\+\).*;\1 = no       # Virtual DIP switch configuration;g' {} +
```

* remove commented Bootmagic rules from keymap/user level

Command:

```
find keyboards/ layouts/ users/ -type f -name 'rules.mk' -exec sed -i -e '/#.*\(BOOTMAGIC_ENABLE\)[ \t=]\+\([a-z]\+\).*/d' {} +
```

* update keyboard BOOTMAGIC_ENABLE rule formatting

Sets the formatting of BOOTMAGIC_ENABLE rules to `BOOTMAGIC_ENABLE = [value]`, without the inline comments (which will be replaced later).

Command:

```
find keyboards/ -type f -name 'rules.mk' -and -not -path '*/keymaps/*' -exec sed -i -e 's;\(BOOTMAGIC_ENABLE\)[ \t=]\+\([a-z]\+\).*;\1 = \2;g' '{}' +
```

* update keyboards' BOOTMAGIC_ENABLE settings

Updates keyboard `rules.mk` files to use `BOOTMAGIC_ENABLE = lite` where `BOOTMAGIC_ENABLE = full` was being used.

Command:

```
find keyboards/ -type f -name 'rules.mk' -and -not -path '*/keymaps/*' -exec sed -i -e 's;\(BOOTMAGIC_ENABLE = \)full;\1lite;g' '{}' +
```

* update keymap/user BOOTMAGIC_ENABLE settings

Updates keymap/user `rules.mk` files to use `BOOTMAGIC_ENABLE = lite` where `BOOTMAGIC_ENABLE = full` was being used.

Commands:

```
find keyboards/ -type f -name 'rules.mk' -and -path '*/keymaps/*' -exec sed -i -e 's;\(BOOTMAGIC_ENABLE[ \t=]\+\)full;\1lite;g' '{}' +
find layouts/community/ users/ -type f -name 'rules.mk' -exec sed -i -e 's;\(BOOTMAGIC_ENABLE[ \t=]\+\)full;\1lite;g' '{}' +
```

* remove and replace inline comments in keyboards and keymap/user files

Removes and replaces the inline comments, which have been updated to read `Enable Bootmagic Lite`.

Commands:

```
find keyboards/ -type f -name 'rules.mk' -and -path '*/keymaps/*' -exec sed -i -e 's;\(BOOTMAGIC_ENABLE\)[ \t=]\+\([a-z]\+\).*;\1 = \2;g' '{}' +
find layouts/community/ users/ -type f -name 'rules.mk' -exec sed -i -e 's;\(BOOTMAGIC_ENABLE\)[ \t=]\+\([a-z]\+\).*;\1 = \2;g' '{}' +
find keyboards/ layouts/community/ users/ -type f -name 'rules.mk' -exec sed -i -e 's;\(BOOTMAGIC_ENABLE = lite\);\1     # Enable Bootmagic Lite;g' '{}' +
find keyboards/ layouts/community/ users/ -type f -name 'rules.mk' -exec sed -i -e 's;\(BOOTMAGIC_ENABLE = yes\);\1      # Enable Bootmagic Lite;g' '{}' +
find keyboards/ layouts/community/ users/ -type f -name 'rules.mk' -exec sed -i -e 's;\(BOOTMAGIC_ENABLE = no\);\1       # Enable Bootmagic Lite;g' '{}' +
```

* rename improperly named makefiles

Some files intended to be used as makefiles had improper names causing them to not be used as intended when building.

This commit corrects the filenames of the affected files.

* update renamed file with new rule formatting

* update QMK's template files

Updates QMK's `rules.mk` templates to use the new inline comment.

* update QMK Docs

- remove documentation of full Bootmagic
- update links to Bootmagic Lite doc
- add doc for Magic Keycodes

* rules.mk patch for coarse/ixora and coarse/vinta
2021-08-06 23:59:56 -07:00
..
keycodes [Keymap] Add new mod tap dances to Hacker Dvorak (#6155) 2019-06-18 22:43:06 -07:00
layers [Keymap] Add new mod tap dances to Hacker Dvorak (#6155) 2019-06-18 22:43:06 -07:00
leader [Keymap] Add new mod tap dances to Hacker Dvorak (#6155) 2019-06-18 22:43:06 -07:00
plover
tap_dance [Keymap] Add new mod tap dances to Hacker Dvorak (#6155) 2019-06-18 22:43:06 -07:00
user [Bug] Develop - Change uint32_t to layer_state_t (#13596) 2021-07-19 09:50:55 -07:00
.gitignore
config.h Fix RGB/LED Suspend defines (#13146) 2021-06-09 22:59:19 -07:00
gulpfile.js [Keymap] Add new mod tap dances to Hacker Dvorak (#6155) 2019-06-18 22:43:06 -07:00
hacker_dvorak.c [Keymap] Add new mod tap dances to Hacker Dvorak (#6155) 2019-06-18 22:43:06 -07:00
keymap.c [Keymap] Add new mod tap dances to Hacker Dvorak (#6155) 2019-06-18 22:43:06 -07:00
package.json [Keymap] Add new mod tap dances to Hacker Dvorak (#6155) 2019-06-18 22:43:06 -07:00
readme.md
rules.mk Remove Full Bootmagic (#13846) 2021-08-06 23:59:56 -07:00

Ergodox EZ Hacker Dvorak Layout

Inspired by the Programmer Dvorak keyboard layout, cherry picked ideas from other layouts in the EZ Repository, a character distribution heatmap vizualizer, my own subjective use cases and lots of trial and error.

Setup

Configure your OS keyboard layout to US, or the keymap will be incorrect.

Limitations

I plan to use QMK in the future, in order to overcome some limitations of the Ergodox EZ graphical configurator), however I will defer that, until more progress is made to the new configurator.

Layers

  1. Dvorak
  • US Dvorak layout.
  • All symbols (including shifted symbols).
  • All modifier are dual keys positioned near the home row.
  1. Querty
  • Used to overcome the limitation pointed above, when your OS layout is set to Dvorak instead of US, this way you can use Standard Dvorak (available by default on all the main operating systems) on other normal keybdoards and Hacker Dvorak on the Ergodox EZ Shine at the same time, without changing back and forth tho OS layout.
  1. Gaming
  • Still in development.
  • Left side is mainly "normal" Qwerty.
  • Right side is mainly for movement, either using the mouse, the arrow keys, the number pad or the H, J, K, L as direction keys.
  1. Arrows
  • Arrow keys navigation.
  • All modifier keys.
  • Common text edititng shortcuts (doesn't work for MacOS).
  1. Mouse
  • Mouse navigation.
  • All modifier keys.
  • Common text edititng shortcuts (doesn't work for MacOS).
  1. Numpad
  • ATM style numpad.
  • All modifier keys.
  • Letters from A to F for hexadecimal numbers (B is also used for binary numeric literals in most programming languages, ie. 0b11001).
  • X for hexadecimal numeric literals in most programming languages, ie. 0xbeef.
  • O for octal numeric literals in most programming languages, ie 0o123.
  • J for complex numeric literals in Python, ie. 3j.
  • I and M for complex Julia numeric literals, ie. 3im.
  • Common symbols for mathematical operations.
  1. Hyper Fn
  • Useful for custom global shortcuts.
  1. Media Fn
  • Media keys.
  • Function keys.
  • EZ Shine keys.
  1. Meh Fn
  • Useful for custom application shortcuts.
  1. Meh Fn +
  • Useful for custom standard shortcuts.

To Do

Add images.


Please comment below if you have any ideas or suggestions. If you have used this layout or used it as a base, I'd love to hear about your experience!