You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

84 lines
3.0 KiB

  1. # QMK User Configuration for [ninjonas](https://github.com/ninjonas/qmk-yonas)
  2. Tired of copying and pasting the same macros and tap dances for all my keymaps. Utilizing user keymaps functionality.
  3. See: https://docs.qmk.fm/#/feature_userspace
  4. ## [ninjonas.c](ninjonas.c)
  5. - ninjonas [QMK user configuration](https://github.com/qmk/qmk_firmware/blob/master/docs/feature_userspace.md)
  6. - On `keymap.c` include `ninjonas.h`
  7. ```c
  8. #include "ninjonas.h"
  9. ```
  10. ## Features
  11. ### [Keys](ninjonas.h#L44)
  12. |Code | Description |
  13. |---|---|
  14. |K_LOCK | MacOS shortcut to execute lock command  + ctrl + Q |
  15. |K_CSCN | MacOS shortcut to copy a portion of the screen to the clipboard |
  16. ### [Layers](ninjonas.h#L48)
  17. |Code | Description |
  18. |---|---|
  19. |LT_LOW | Tap for ENTER, hold for RAISE |
  20. |LT_FUNC | Tap for ENTER, hold for FUNCTIONS |
  21. |LT_RAI | Tap for SPACE, hold for LOWER |
  22. |LT_NUM | Tap for SPACE, hold for NUMBERS |
  23. |LT_LOW + LT_RAI | Hold for ADJUST |
  24. |L_LOWER | Dedicated key to momentarily toggle to use LOWER layer |
  25. ### [Layout Blocks](ninjonas.h#L57)
  26. Predefined keyboard layout templates to speed up configuring split keyboards
  27. |Code | Description |
  28. |---|---|
  29. |QWERTY | Qwerty Layout |
  30. |DVORAK | Dvorak Layout |
  31. |COLEMAK | Colemak Layout |
  32. |NUM | Number Rows |
  33. |FUNC | Function Rows |
  34. |SYM | Symbol Rows \(When holding shift on numbers\) |
  35. |NAV | Navigation Cluster |
  36. |MOUSE | Mouse Cluster |
  37. |MEDIA | Media Cluster |
  38. |MOD | Modifier Cluster |
  39. ### [Macros](process_records.c)
  40. |Code | Description |
  41. |---|---|
  42. |M_PYNV | macro to activate pyenv with the name `jira` |
  43. |M_MAKE | macro to send QMK make command to compile keyboard |
  44. |M_FLSH | macro to send QMK make command to compile keyboard with the correct bootloader |
  45. |M_VRSN | macro to send QMK version |
  46. |M_SHFT | Sends  + alt + shift to a keycode to activate [ShiftIt](https://github.com/fikovnik/ShiftIt) |
  47. |M_CODE | Opens [Visual Studio Code](https://code.visualstudio.com/) on current directory |
  48. ### [Tap-Dance](tap_dances.h)
  49. |Code | Description |
  50. |---|---|
  51. |T_ESC | Tap once for ESC, double tap for CAPS_LOCK |
  52. |T_LBRC | Tap once for [, double for back browser |
  53. |T_RBRC | Tap once for ], double for forward browser |
  54. |T_TAB | Tap once for TAB, double for CTRL + TAB |
  55. |T_GRV | Tap once for GRV, double for  + GRV |
  56. |T_GUI | Tap once for , double to open spotlight |
  57. |T_W | Tap for W, double tap for  + W |
  58. |T_Q | Tap for Q, double tap for  + Q |
  59. ### Secrets
  60. There's times where you have macros you don't want to share like emails, passwords 😱, & and private strings. Based off [drashna's secret macros](https://github.com/qmk/qmk_firmware/blob/master/users/drashna/readme_secrets.md), it's now possible to do this. All you need to do is create a `secrets.c` file. Below is an example of how this is used.
  61. ```c
  62. // secrets.c
  63. #include "ninjonas.h"
  64. bool process_record_secrets(uint16_t keycode, keyrecord_t *record) {
  65. switch (keycode) {
  66. // Sends zoom URL
  67. case M_ZOOM:
  68. if (record->event.pressed) {
  69. SEND_STRING("SECRET_STRING_HERE" SS_TAP(X_ENTER));
  70. }
  71. break;
  72. }
  73. return true;
  74. }
  75. ```