Compare commits

...

479 Commits

Author SHA1 Message Date
338edcabd7 Merge pull request #1184 from osamuaoki/master
Update keymap.md to QMK
2017-03-30 08:45:56 -04:00
c782b269b6 Update to match QMK keymap 2017-03-30 01:03:49 +09:00
4d2be0281c Typo fix 2017-03-30 00:19:44 +09:00
942f2ccee4 Merge pull request #1183 from Rovanion/real-master
Added instructions for how to build and flash the firmware with teensy_cli
2017-03-29 09:45:22 -04:00
d6e51d2008 Added link to the teensy linux page. 2017-03-29 09:34:20 +02:00
23839b8c6d Clarify the quantum license (#1042)
* Clarify the license for files we have signoff on

* Update against the currently signed off files

* Remove unused and not clearly licensed headers

* Replace an #endif I accidentally removed while resolving merge conflicts
2017-03-28 15:20:36 -07:00
b83ae5ae5c Merge pull request #1182 from henxing/default_atreus_layout
Default atreus layout
2017-03-28 14:12:41 -04:00
49f547dd8e Merge pull request #1139 from Swoy/master
Satan Board "Admiral Strokers" keymap and config
2017-03-28 14:12:21 -04:00
6de7e5d8dc typo removed {3 ... 2017-03-28 18:45:26 +02:00
85cac39529 fixed capitalization issue (checkTime => checktime) 2017-03-28 18:41:04 +02:00
3fdc45b4e9 Merge branch 'master' into default_atreus_layout 2017-03-28 12:11:49 -04:00
411cd4fae2 moved checktime out of function 2017-03-28 17:30:15 +02:00
f504082f7f declaring checktime before the function it is used in. 2017-03-28 17:17:08 +02:00
256abc64d5 fixed function to not accept any arguments.
As per Pramod's comment on stack overflow:

In C int foo() and int foo(void) are different functions. int foo()
accepts an arbitrary number of arguments, while int foo(void) accepts 0
arguments. In C++ they mean the same thing. I suggest that you use void
consistently when you mean no arguments.
2017-03-28 17:08:01 +02:00
1b821eca66 removed varable trace option from makefile 2017-03-28 16:55:25 +02:00
37b7539af3 slight cleanup as per recommendation 2017-03-28 16:52:56 +02:00
c72ca58528 Moved key_timer out of function. 2017-03-28 16:50:44 +02:00
48dfc77718 removed a carriage return 2017-03-28 15:58:46 +02:00
62faa20ef6 Merge remote-tracking branch 'refs/remotes/qmk/master' 2017-03-28 15:55:33 +02:00
d5ee0194ab fixed #1139 issues
A fix described by jackhumbert has been sorted out now.
2017-03-28 15:43:04 +02:00
5e4daf1c6d Merge pull request #1174 from nooges/atreus50
Add Atreus50 keyboard
2017-03-28 09:34:26 -04:00
7e37daa2ce Merge pull request #1112 from newsboytko/newsboytko/midi-keycodes
Flesh out MIDI support
2017-03-28 09:26:54 -04:00
216f669276 Merge pull request #1098 from lambdalisue/tapping-force-hold
Add TAPPING_FORCE_HOLD to regulate behaviour
2017-03-28 09:24:22 -04:00
cc2fb56ed8 Merge pull request #1167 from smt/smt/satan
Add smt keymap for Satan 'GH60'
2017-03-28 09:18:55 -04:00
fa09189195 Merge pull request #1162 from Khord/master
My customized keymap + some tunes for the song list
2017-03-28 09:17:16 -04:00
71857ebc3f Move Atreus50 to hardwired directory and update README 2017-03-28 09:17:09 -04:00
6e688ad5c2 Merge pull request #1172 from nooges/hexwire-fixes
Let's Split hexwire keymap fixes
2017-03-28 09:16:47 -04:00
99b7b50130 Merge pull request #1157 from jtbarrett/tada68_default
Update readme and default layout for TADA68
2017-03-28 09:15:57 -04:00
c948404739 Merge pull request #1180 from mattdibi/master
Italian layout for ergodox keyboard
2017-03-28 09:14:03 -04:00
8a0cf32cf5 Merge pull request #1171 from ishtob/master
SSD1306 I2C OLED display support for let's split
2017-03-28 09:13:41 -04:00
0f986a1951 Merge pull request #1168 from newsboytko/newsboytko/frosty-flake
Support Frosty Flake Controller (CM Storm QFR)
2017-03-28 09:10:55 -04:00
a7811781c5 Merge pull request #1178 from cheesemacfly/master
XD60 different layout
2017-03-28 09:10:02 -04:00
417202109b Merge pull request #1163 from jprMesh/atreus62_KC_KEYMAP
Added KC_KEYMAP macro for old style keymaps in Atreus62
2017-03-28 09:09:35 -04:00
ee6fbaaad8 Merge pull request #1177 from exiva/bluetooth_refactor
Refactor Bluetooth Handling
2017-03-28 09:08:10 -04:00
2104900030 Removed images from ergodox ez italian layout 2017-03-28 10:19:25 +02:00
221b27c508 Fixed layout title in ergodox ez italian keymap 2017-03-28 10:15:18 +02:00
b9b9a59f22 Fixed italian kymap readme 2017-03-28 10:13:29 +02:00
512eb5e1d5 Updated readme 2017-03-28 10:10:24 +02:00
b6b85ed413 Added italian layout 2017-03-28 09:56:07 +02:00
a32436d5a1 Create README.md 2017-03-26 15:20:44 -04:00
a89ee25db8 Add files via upload 2017-03-26 15:16:55 -04:00
c0a6c5f806 fixing layout 2017-03-26 15:07:19 -04:00
739249ff0d Adding different layer 2017-03-24 20:18:59 -04:00
43eee52cba Add BLE and EZKey module defines.
Also restored serial init back to original location. Was getting junk data.
2017-03-24 17:14:57 -04:00
b4ac0598fa Readd bluetooth output direction on standard key input. 2017-03-24 15:55:02 -04:00
25f2295ba8 Swapped placement of Ctrl and Alt keys to match Technomancy's
default layout
2017-03-24 14:31:02 -04:00
ddc036b69e Refactor Bluetooth Handling
Refactored Bluetooth support to make adding new Bluetooth modules
easier in the future.

* Remove `OUT_BLE` key from QMK's keymap. `OUT_BT` is all we need now
as there's no difference anymore.
* Made BLUETOOTH_ENABLE build option legacy as not to break existing
keymaps (Falls back to existing EZ Key support if on)
* Removed `ADAFRUIT_BLE_ENABLE` build option
* Created new build option `BLUETOOTH` with module option (Currently
`AdafruitEZKey` & `AdafruitBLE`)
* Moved all LUFA bluetooth key/mouse events under `BLUETOOTH_ENABLE`
ifdef with selected modules output.
2017-03-24 12:53:55 -04:00
8775a13658 Add RGB support 2017-03-23 14:46:58 -04:00
63e47a6425 Add RGB support for Let’s Split v1 2017-03-23 12:23:20 -04:00
0520341ce4 Cleanup keymap 2017-03-23 11:31:07 -04:00
edfb50ea56 Initial commit for Atreus50 with working audio 2017-03-23 09:42:32 -04:00
e5c5902e95 Move keymap into config file 2017-03-23 08:51:29 -04:00
f3e3ff29a3 Add Makefile in keymap dir 2017-03-23 08:46:35 -04:00
91776772fd Remove line for hands selection via EEPROM, reduce tap duration from 200ms to 150ms 2017-03-23 08:46:35 -04:00
2573e581a5 Update readme.md 2017-03-22 15:56:45 -04:00
d5f56e91e4 Update i2c.c 2017-03-22 15:50:52 -04:00
bb413383ee Update i2c.c 2017-03-22 15:50:18 -04:00
092416325b Update i2c.c 2017-03-22 15:49:21 -04:00
be0cfbb97e Update i2c.c 2017-03-22 15:48:56 -04:00
732a7f2be9 Update matrix.c 2017-03-22 15:47:53 -04:00
ebb46694e5 Update split_util.c 2017-03-22 15:45:45 -04:00
1f7b8a0343 Update matrix.c 2017-03-22 15:45:15 -04:00
d1865db599 OLED code cleanup 2017-03-22 15:19:01 -04:00
80270a2791 Add files via upload 2017-03-22 15:14:33 -04:00
30f4507492 OLED code cleanup 2017-03-22 15:11:03 -04:00
65317a3a02 Added OLED SSD1306 support to I2C 2017-03-22 15:04:11 -04:00
423c68c210 Merged Fliphalf, now defined in config, added OLED
Can now use the following in the keymap config.h to call the flipped matrix

```
#define FLIPHALF
```
2017-03-22 15:02:49 -04:00
3a7083d810 Delete rules.mk 2017-03-22 15:00:00 -04:00
a4bdd6d084 Delete rev2fliphalf.h 2017-03-22 14:59:54 -04:00
d012b01108 Delete rev2fliphalf.c 2017-03-22 14:59:42 -04:00
6167d7937c Delete config.h 2017-03-22 14:59:32 -04:00
dfb5a0e8f4 Delete Makefile 2017-03-22 14:59:20 -04:00
f0962bce50 Add files via upload 2017-03-22 14:55:13 -04:00
7a9437a2e3 Fix a typo 2017-03-21 22:24:34 -07:00
452949f913 Add #1170 to all the clueboard keymaps 2017-03-21 22:06:47 -07:00
dd967f2c05 Merge pull request #1170 from tengg/master
fixed a bug related to mod + Grave with combined ESC/Grave key
2017-03-21 21:54:24 -07:00
3cba7a43d9 typo fixed 2017-03-22 00:33:44 -04:00
a89998b977 fix typo 2017-03-22 00:28:59 -04:00
9e0ca927f9 fixed a bug related to mod + Grave with combined ESC/Grave key
This only applies to keymaps that has combined esc/grave. Here we call it theKEY.
Think about the motion when we do shift + theKEY (typing ~), or CMD + theKEY (switching window on MAC). Based on the original code, we must do following sequence:  press shift -> press theKEY -> release theKEY -> release shift. However, it is very possible and natural that we do this stroke sequence instead: press shift -> press theKEY -> release shift -> release theKEY.

If we do the 2nd stroke sequence, the code will del_key(ESC) instead of (GRV) when we release theKEY. This caused some inconvenient issues and ghost typing.

By adding a flag, this issue is eliminated and will not affect any other functions.
2017-03-22 00:03:30 -04:00
dce3847ebb Use single _FUNC layer. Move RESET and base layout-changing keys to _FUNC. 2017-03-20 14:12:43 -04:00
0ec07ddc1c Merge branch 'master' of https://github.com/Khord/qmk_firmware 2017-03-20 13:16:19 -04:00
d7f2bd2964 add pgup, pgdn, home, end 2017-03-20 13:14:48 -04:00
34c5f8094e Remove tap-dance. Raise will be accessed via holding shift while lower is active 2017-03-20 07:43:45 -04:00
b10d950708 Use normal backtick in ESC spot - I've mapped ESC to caps lock 2017-03-20 07:43:24 -04:00
3399e39297 Fix shift tap-dance (can't use one-shot layer) 2017-03-20 07:26:28 -04:00
b37f510f32 clean up config 2017-03-19 21:19:05 -07:00
a3a304db9a clean up docs and provide defaults for keymap 2017-03-19 21:11:17 -07:00
db2da37561 update docs 2017-03-19 20:56:45 -07:00
df874a228a fix whitespace 2017-03-19 20:46:56 -07:00
7e9ca9a976 support LEDs 2017-03-19 20:45:10 -07:00
a43ae7c92f Swap rows and columns to match the schematic 2017-03-19 20:34:53 -07:00
4a97ef6c48 start to define keymap; annoying because rows and columns are swapped from schematic 2017-03-19 19:55:55 -07:00
d7fc236540 successfully read data from the matrix 2017-03-19 15:59:21 -07:00
561da65606 Missing comma 2017-03-19 00:14:43 +00:00
ca544ecfb6 Don't feel like tap dancing arrows anymore 2017-03-19 00:07:48 +00:00
19fd20261b sketch out frosty flake matrix using custom matrix.c based on kitten paw 2017-03-18 16:19:10 -07:00
3766f902a0 boilerplate project created with new_project.sh 2017-03-18 15:38:03 -07:00
70d83afff9 Merge branch 'qmk/master' 2017-03-18 14:48:27 -07:00
e123ed8d5f Added KC_KEYMAP macro for old style keymaps in Atreus62 2017-03-17 09:23:55 -04:00
e03ddbe118 tap dance working for esc and arrows 2017-03-16 18:13:53 +00:00
4b1d0c5859 remove const 2017-03-16 17:36:31 +00:00
c7cddfc539 test td changes 2017-03-16 13:27:26 -04:00
6ca1c49d38 test fixes for tap dane 2017-03-16 13:07:01 -04:00
0c8f71e3c7 test tap dance 2017-03-16 12:44:56 -04:00
24d1745951 add config.h for customization 2017-03-16 12:24:31 -04:00
683754bce8 added custom tones 2017-03-16 04:11:47 +00:00
c36a4496eb Update config.h 2017-03-15 23:51:56 -04:00
c043d1cc47 Update config.h 2017-03-15 23:49:38 -04:00
0c0a8ee187 test 2017-03-16 03:46:26 +00:00
73a70a2c1c Add Makefile 2017-03-15 23:09:17 -04:00
cf28f7bfda Add custom keycap 2017-03-15 23:07:29 -04:00
335b398a5d Merge pull request #1152 from UnintendedFeature/bugfix/issue1151
readme keymap.h to quantum_keycodes.h
2017-03-15 11:18:32 -04:00
b794719952 Merge pull request #1090 from qmk/backlight_softpwm
Adds soft PWM backlight for non-timed ports
2017-03-15 11:17:07 -04:00
ce6dcc2b5d Merge pull request #1146 from khogeland/master
Colemak layout for Clueboard
2017-03-15 11:13:16 -04:00
71d6d7b22c Merge pull request #1147 from nooges/numpad20
Add handwired 20-key Numpad
2017-03-15 11:12:52 -04:00
8c184847f7 Merge pull request #1150 from nooges/ortho5x13
Add handwired 5x13 ortholinear keyboard
2017-03-15 11:12:30 -04:00
8685d73893 Merge pull request #1148 from nooges/hexwire-lets-split
Add Hexwire layout for Let's Split
2017-03-15 11:12:01 -04:00
09ee922a63 Merge pull request #1155 from deadcyclo/master
Worked on deadcyclo layout
2017-03-15 11:11:35 -04:00
b4a3e5ebea Merge pull request #1145 from smt/smt/lets_split
Add smt keymap for Let's Split (based on serial)
2017-03-15 11:00:06 -04:00
3554b93cbd Merge pull request #1144 from milestogo/sculpt2
Microsoft sculpt mobile handwire and new shortcuts macro library
2017-03-15 10:59:34 -04:00
2e34d4bd85 update for infinity 2017-03-15 10:57:24 -04:00
52ea58805a Add RGB underglow, move keys to allow Adjust layer to be reached 2017-03-14 09:51:48 -04:00
ec9210959f Update readme.md 2017-03-13 12:12:09 -04:00
987b0f8521 Merge pull request #1154 from dennistruemper/neo2_on_qwerz_hardware
Neo2 on qwertz hardware
2017-03-12 13:50:31 -04:00
96bde794d8 Update readme and default layout for TADA68
Add the default function layer mappings for the keyboard.

Provide flashing instructions in the readme.
2017-03-11 22:09:50 -08:00
0d71e631ed [deadcyclo layout] fix an error in layer illustration 2017-03-11 12:27:46 +01:00
e66b31a648 [deadcyclo layout] Added second unicode layer, more sane layer switches 2017-03-11 12:22:38 +01:00
e3f934ed91 remove typo from folder name 2017-03-11 12:09:30 +01:00
edb8fcc810 update documentation 2017-03-11 11:44:39 +01:00
303f5aed41 change layer 3 on right thumb back to layer 1 2017-03-11 10:31:22 +01:00
f75c7266a3 working but some documentation needed 2017-03-11 00:02:39 +01:00
b19e34c81e Forsake spacefn in favor of left shift tapdance. Move media controls. 2017-03-10 16:10:05 -05:00
5ae0cfeef5 Add smt keymap for Satan 'GH60' 2017-03-09 13:58:33 -05:00
8b09fd8b55 readme keymap.h to quantum_keycodes.h
Changed the quantum/keymap.h to quantum/quantum_keycodes.h because this seems to be the file where they keycodes are defined.
2017-03-09 19:41:14 +01:00
20a48e0198 Add handwired 5x13 ortholinear keyboard 2017-03-09 12:02:05 -05:00
a8f872e728 Initial commit for handwired numpad 2017-03-09 10:11:39 -05:00
3df35f712e Add readme for layout 2017-03-09 09:52:33 -05:00
74c6c3d277 Convert keymap to compact version 2017-03-09 09:33:21 -05:00
718b964806 Add hexwire layout for Let’s Split 2017-03-09 09:31:46 -05:00
06e4b3fe1a Colemak layout for Clueboard 2017-03-09 02:50:23 -08:00
8d4bc714e4 Update smt keymap READMEs 2017-03-08 23:16:58 -05:00
7c7a77d4bf Tweaks keymap to reset on boot 2017-03-08 19:43:10 -05:00
feb858c5a9 Merge branch 'master' into sculpt2 2017-03-08 15:51:30 -08:00
ffb04bad66 Merge branch 'master' of https://github.com/jackhumbert/qmk_firmware 2017-03-08 15:50:46 -08:00
b5bfb5104b docs for babblepaste 2017-03-08 15:48:39 -08:00
bfa7e6ce04 Merge pull request #1137 from Skrymir/patch-1
Fixed minor error in ergodox infinity section.
2017-03-08 18:37:30 -05:00
8d81667fbe Merge pull request #1138 from nooges/magicforce68
Add Handwired Magicforce68
2017-03-08 18:37:09 -05:00
97c4c570e2 Merge pull request #1140 from stites/freebsd
Add FreeBSD support in "util/install_dependencies.sh"
2017-03-08 18:36:34 -05:00
85121ec50e Merge pull request #1142 from guni77/my_keymap
My keymap
2017-03-08 18:35:37 -05:00
f392f245f9 Merge pull request #1143 from UnintendedFeature/feature/keymap-german-lukas
keymap german lukas
2017-03-08 18:30:23 -05:00
88e862e472 Update smt keymaps for consistency 2017-03-08 16:00:23 -05:00
34fa8fd5d3 readme
Added a readme.md file for the keymap german-lukas.
2017-03-08 21:14:16 +01:00
2f5143e219 Corrected the description of the layer
Corrected the description of the Shortcuts layer.
2017-03-08 21:09:51 +01:00
8cc70f4d9d Added german-lukas
Added my keymap called germman-lukas.
2017-03-08 20:58:55 +01:00
2aa079d93e Left control and alt
Use the left control and the left alt key.
2017-03-08 20:41:35 +01:00
cd1eb8d246 added readme file 2017-03-08 11:13:19 +01:00
89aba30c7f fix stupid error w/ mode switch 2017-03-08 01:25:33 -08:00
01980c96e9 added browser babble, removed code from keymap 2017-03-08 01:06:25 -08:00
3d082382b2 Fix function layer actions 2017-03-07 23:08:44 -05:00
7042af7020 Add Makefile 2017-03-07 23:06:41 -05:00
1968ec4c24 changed definitions on keymap.c in admiral strokers
Made a few changes to my own keymaps. (organisation)
2017-03-07 19:40:18 +01:00
25a7c94174 Merge remote-tracking branch 'refs/remotes/qmk/master' 2017-03-07 19:39:00 +01:00
a9959783c0 Add freebsd support in "util/install_dependencies.sh"
A simple addition to the `install_dependencies` script which remaps the debian dependencies to their freebsd package-names. After a recursive clone and using gmake, I can successfully build all firmware from the root directory (minus some warnings generated by gcc-4.9.4 which I can procure on request). however there is a problem running tests.
2017-03-07 13:12:10 -05:00
38a83700c3 Update description 2017-03-07 12:29:48 -05:00
2cd2ac02d1 Add readme file 2017-03-07 12:20:52 -05:00
f3aef727e1 Set pinout and layout 2017-03-07 12:20:52 -05:00
6ee823a821 Add rule for flashing microcontroller using avrdude 2017-03-07 12:20:52 -05:00
1023a47be6 Copy CMD60 as starting point and rename files 2017-03-07 12:20:52 -05:00
08cba6c09b Fixed minor error in ergodox infinity section. 2017-03-07 09:43:08 -06:00
2f677c24a8 working with preprocessor macros for babblepaste 2017-03-06 00:16:44 -08:00
615bfc4eca Merge pull request #1107 from qmk/clueboard_cleanup
Rework the clueboard keymaps
2017-03-04 10:34:01 -08:00
b042428d23 Merge pull request #1126 from folkert4/master
Various QOL changes to Espynn's keymap
2017-03-03 10:29:54 -05:00
4ab88f3a9e Merge pull request #1129 from unxmaal/unxmaal_spacefn
Layout: Spacebar long-press as fn, for GH60 and GH60 Satan boards
2017-03-03 10:29:19 -05:00
2a5d972004 Merge pull request #1130 from hot-leaf-juice/master
moar hotkeys
2017-03-03 10:28:55 -05:00
0734f56940 add debug messages to audio 2017-03-02 12:28:12 -08:00
d11962aeb2 fix 'stop_all_notes' naming to be more consistent 2017-03-02 11:40:06 -08:00
61459ab5ba moar hotkeys 2017-03-02 11:40:25 +00:00
d35809a982 gh60 satan spacefn 2017-03-01 21:40:13 -05:00
a8a4927622 gh60 spacefn 2017-03-01 21:39:19 -05:00
b80c97b712 clean up babblepaste 2017-02-28 23:27:49 -08:00
0834c520c0 missed config.h stuck modifiers change 2017-02-28 21:54:35 -08:00
748401e5c1 keymap and C6 audio testing 2017-02-28 21:53:42 -08:00
71971e818f Various QOL changes:
Removed some unneeded keys from raise and lower layers
moved the + and = signs, backspace is now more intuitive
moved all the Function keys to CUSTOM layer
added ctrl alt del to CUSTOM layer
simplified the layout picture greatly
2017-02-28 17:49:42 -05:00
4c4cf3ca49 Merge pull request #1124 from jmdaly/roadkit_firmware
Add initial version of TheVan Keyboards Roadkit Firmware
2017-02-28 15:48:34 -05:00
72c5dd1c93 Merge pull request #1125 from cwhits/upstream
[Planck] Update default keymap for missing keys
2017-02-28 11:51:33 -05:00
18ba21aa31 Update default maps for missing keys 2017-02-28 11:40:06 -05:00
e12b1a237c Add initial version of TheVan Keyboards Roadkit Firmware 2017-02-28 11:17:18 -05:00
4583955914 Merge pull request #1116 from hot-leaf-juice/master
keymap update
2017-02-27 22:18:55 -05:00
5bfeb229b8 Merge pull request #1119 from phongnh/master
Removes redundant {} which cause build failure when DEBUG_ACTION is set
2017-02-27 22:18:12 -05:00
b851b0b2ae Merge pull request #1121 from Leszek111/master
add layout
2017-02-27 22:17:36 -05:00
38cf08697b small changes in guni.c keymap to work with new qmk_firmware packet 2017-02-27 09:55:24 +01:00
c370c1e1f3 guni keymap 2017-02-27 09:49:06 +01:00
bbbd49a175 Ammend readme.md 2017-02-27 00:27:57 +01:00
138b89e1a1 Add colemak_programmer 2017-02-27 00:16:55 +01:00
976c856966 Update size estimates in the Makefile
MIDI_ENABLE = no

   text    data     bss     dec     hex filename
      0   17080       0   17080    42b8 satan_midi.hex

MIDI_ENABLE = yes
MIDI_BASIC undefined
MIDI_ADVANCED undefined

   text    data     bss     dec     hex filename
      0   19494       0   19494    4c26 satan_midi.hex

      +2414 bytes (vs. MIDI_ENABLE = no)

MIDI_ENABLE = yes
      0   20846       0   20846    516e satan_midi.hex

      +1352 bytes (vs. MIDI_ENABLE = yes, MIDI_BASIC off, MIDI_ADVANCED
off)

MIDI_ENABLE = yes
#define MIDI_BASIC
#define MIDI_ADVANCED

   text    data     bss     dec     hex filename
      0   21292       0   21292    532c satan_midi.hex

      +1798 bytes (vs. MIDI_ENABLE = yes, MIDI_BASIC off, MIDI_ADVANCED
off)

Conclusion:
    +2400 to 4200, depending on config
2017-02-25 21:38:35 -08:00
b911e1966f Fix redundant process_music.c in sources 2017-02-25 21:13:47 -08:00
a64ae10662 Update existing keymaps
Update existing keymaps to enable MIDI_BASIC functionality.  Also added
an option MIDI_ENABLE_STRICT to be strict about keycode use (which also
reduces memory footprint at runtime)
2017-02-25 20:41:13 -08:00
ea14ed122f Add basic layer to sample MIDI keycap 2017-02-25 19:37:33 -08:00
1000799d1e Factor basic note processing into respective processors 2017-02-25 19:25:33 -08:00
525be99ee9 Split MIDI functionality into MIDI_BASIC and MIDI_ADVANCED
MIDI_ENABLE = no

   text	   data	    bss	    dec	    hex	filename
      0	  17080	      0	  17080	   42b8	satan_midi.hex

MIDI_ENABLE = yes
MIDI_BASIC undefined
MIDI_ADVANCED undefined

   text	   data	    bss	    dec	    hex	filename
      0	  19494	      0	  19494	   4c26	satan_midi.hex

MIDI_ENABLE = yes
#define MIDI_BASIC
MIDI_ADVANCED undefined

   text	   data	    bss	    dec	    hex	filename
      0	  19788	      0	  19788	   4d4c	satan_midi.hex

MIDI_ENABLE = yes
MIDI_BASIC undefined
#define MIDI_ADVANCED

   text	   data	    bss	    dec	    hex	filename
      0	  20846	      0	  20846	   516e	satan_midi.hex

MIDI_ENABLE = yes
#define MIDI_BASIC
#define MIDI_ADVANCED

   text	   data	    bss	    dec	    hex	filename
      0	  21140	      0	  21140	   5294	satan_midi.hex
2017-02-25 15:02:43 -08:00
d0b4dcc82c Removes redundant {} which cause build failure when DEBUG_ACTION is set 2017-02-25 19:50:46 +07:00
c62f3bd74d Merge pull request #1118 from priyadi/promethium
Various keymap updates
2017-02-23 10:21:23 -05:00
352c0e7baa Merge pull request #1117 from priyadi/fix_unicode_map
Fix UNICODE_MAP input_mode problem
2017-02-23 10:20:47 -05:00
af29d0d094 Fix UNICODE_MAP input_mode problem 2017-02-23 18:17:12 +07:00
b27a8dea1b Merge branch 'master' into promethium 2017-02-23 18:11:59 +07:00
296b927e77 Fix UNICODE_MAP input_mode problem 2017-02-23 18:10:00 +07:00
b06961c38b updated readme 2017-02-22 12:26:13 +00:00
1d69ccd729 Merge branch 'qmk/master' 2017-02-21 22:01:56 -08:00
84b2f86f24 Merge pull request #1113 from kesslern/master
Add dvorak_emacs_software layout for ergodox
2017-02-21 23:35:09 -05:00
da41cd1adf Merge pull request #1115 from Skrymir/master
Update from upstream
2017-02-21 23:34:23 -05:00
e51001efcc Merge remote-tracking branch 'qmk/master' 2017-02-21 20:31:16 -06:00
1316ca67af added hotkey cluster 2017-02-21 23:07:22 +00:00
3dab8a60fc added pause, prtsc & ins to list of keys to be processed on release 2017-02-21 16:40:38 +07:00
57623805e8 Move caps to FUN layer; add Pause key 2017-02-21 16:36:35 +07:00
b9fce16490 Add dvorak_emacs_software layout for ergodox 2017-02-20 22:55:43 -05:00
b306f83c6b Move del back to fun+backspce 2017-02-21 04:00:05 +07:00
77f9363675 Only process Fnumber on key release, and only when layer is still active 2017-02-21 03:24:32 +07:00
7ff41df32c Merge pull request #1097 from stanleylai/master
Added support for LED backlight, XD60v2's RGB underglow LED
2017-02-20 11:10:20 -05:00
64eecfc530 fix typos in keymap 2017-02-19 22:23:32 -08:00
ed15973a3f Document size added by MIDI_ENABLE (~3800 bytes according to my experiments)
satan/keymaps/midi

MIDI_ENABLE = no

   text	   data	    bss	    dec	    hex	filename
      0	  17080	      0	  17080	   42b8	satan_midi.hex

MIDI_ENABLE = yes
#define MIDI_TONE_KEYCODE_OCTAVES 3 // default

   text	   data	    bss	    dec	    hex	filename
      0	  20846	      0	  20846	   516e	satan_midi.hex

MIDI_ENABLE = yes
#define MIDI_TONE_KEYCODE_OCTAVES 2 // fewer octaves

   text	   data	    bss	    dec	    hex	filename
      0	  20846	      0	  20846	   516e	satan_midi.hex
2017-02-19 17:45:08 -08:00
d1fe24ad9f Allow customization of the number of tone keycodes and add example keymap 2017-02-19 17:18:05 -08:00
ae0752dff5 expose midi_config 2017-02-19 16:43:45 -08:00
5e6097f015 add keycodes for transpose range 2017-02-19 16:43:43 -08:00
dd8f8e6bae implement modulation 2017-02-19 16:43:02 -08:00
7c5e510fe2 add support for pedal cc messages 2017-02-19 16:42:45 -08:00
f67aefc522 remove disabled code 2017-02-19 16:42:04 -08:00
a4163466cb Alternative version with a tone array
tone array:
   text	   data	    bss	    dec	    hex	filename
      0	  25698	      0	  25698	   6462	satan_newsboytko.hex
0x6480 bytes written into 0x7000 bytes memory (89.73%).

note on array:
   text	   data	    bss	    dec	    hex	filename
      0	  25802	      0	  25802	   64ca	satan_newsboytko.hex
0x6500 bytes written into 0x7000 bytes memory (90.18%).
2017-02-19 16:42:04 -08:00
f2b2e05f12 clean up commented code 2017-02-19 16:42:04 -08:00
e405ab4bc6 initial implementation of polyphony using variable length array of notes on 2017-02-19 16:41:59 -08:00
5ae1411fc3 Expand MIDI key codes 2017-02-19 16:41:10 -08:00
40a8a88e72 Merge branch 'qmk/master' 2017-02-19 14:34:58 -08:00
76b1f392ab XD60: Added BL_TOGG back to keymap, with 6 backlight steps 2017-02-18 21:47:11 -08:00
db1e9a469a helps to save before committing 2017-02-19 00:11:55 -05:00
c2239e6b96 merging 2017-02-19 00:04:14 -05:00
d168822477 Updated XD60 readme and photos to reflect v2 PCB 2017-02-18 20:56:17 -08:00
1d87df5262 Add the mouse_keys layout 2017-02-16 14:04:04 -08:00
cbef63d8fa Rework the clueboard keymaps a bit. 2017-02-16 13:40:45 -08:00
33bc4c070c Update smt Planck keymap 2017-02-16 14:32:46 -05:00
334edc3c7d Add smt keymap for Let's Split (based on serial) 2017-02-16 14:32:24 -05:00
49e72632d2 remove more warnings 2017-02-16 13:13:38 -05:00
c18d0a83e6 Merge branch 'master' into promethium 2017-02-17 00:35:32 +07:00
e5bd81f0a6 Fix integer overflow 2017-02-16 23:56:47 +07:00
21f4944426 Merge branch 'master' into promethium 2017-02-16 23:53:47 +07:00
96a8e2d5f5 reposition ins and del key 2017-02-16 23:53:09 +07:00
1ac5dc9e52 fix travis and reduce warnings 2017-02-16 11:37:46 -05:00
15dc540cac ignore PRs in versioning 2017-02-16 10:06:02 -05:00
e34c3936b7 Merge pull request #1105 from nrrkeene/master
The Ordinary Layout v5
2017-02-16 09:49:24 -05:00
0b76f4f508 Merge pull request #1103 from priyadi/promethium
My keymap updates
2017-02-16 09:48:58 -05:00
d99f03a1a6 The Ordinary Layout has all the keys in the right places. 2017-02-15 23:11:04 -06:00
7606f784dd This is the best layout, really, come look 2017-02-15 23:02:30 -06:00
77b6ac831e Merge pull request #1104 from qmk/layer_tap_toggle
Adds layer tap toggle as TT(layer)
2017-02-15 23:46:31 -05:00
af942f2e57 The Ordinary Layout is the best one, the one you are looking for. Really. Check it out. 2017-02-15 22:33:04 -06:00
58823b4e03 fix weirdness with arm and mods 2017-02-15 23:20:35 -05:00
f89499e255 unique variable name 2017-02-15 18:14:07 -05:00
c2a9acffd7 publicise variables 2017-02-15 17:39:51 -05:00
1bb574fe48 add unicode common file, get names right 2017-02-15 17:09:47 -05:00
09add35e7f add unicode common file, get names right 2017-02-15 17:09:35 -05:00
cbabb4d417 split up unicode systems into different files 2017-02-15 16:36:31 -05:00
6788cbd762 give error if both unicode/map are enabled 2017-02-15 12:39:58 -05:00
69ea10f9a9 adds layer tap toggle 2017-02-15 11:25:33 -05:00
ac04fe0301 Added README for my keymap 2017-02-15 19:40:33 +07:00
3882f97d2e Move keyboard specific stuff to keyboard specific files, and vice versa 2017-02-15 19:22:58 +07:00
1eac297a2f Added copyright notice 2017-02-15 16:39:19 +07:00
c2f0207d59 Merge my Planck-like keyboards 2017-02-15 16:36:31 +07:00
b128617ede Merge branch 'master' into promethium 2017-02-15 15:51:42 +07:00
54785c1976 The Ordinary Layout is boring, normal, typical, expected. 2017-02-14 22:47:11 -06:00
e006b4a600 The Ordinary Layout has a feature for one-handed chorded typing 2017-02-14 22:32:31 -06:00
1e09698146 All my friends us The Ordinary Layout because it doesn't force you to change you typing habits 2017-02-14 22:31:54 -06:00
c055098952 The Ordinary Layout now has more symbols on the Symbols layer! So useful! 2017-02-14 22:30:07 -06:00
7bef285553 Merge pull request #1101 from priyadi/layer_state_set_kb
Add weak layer_state_set_kb hook
2017-02-14 21:33:04 -05:00
168c912027 Move Alt-Tab position 2017-02-15 05:38:40 +07:00
d0ee5292b6 Merge branch 'layer_state_set_kb' into promethium 2017-02-15 05:25:45 +07:00
bd8d717f1f Fix bug fix attempt 2017-02-15 05:25:08 +07:00
369b3dc723 Merge branch 'layer_state_set_kb' into promethium 2017-02-15 05:23:25 +07:00
d96175937b Bug fix & added default_layer_state_set_kb 2017-02-15 05:20:15 +07:00
3c8c3ebe3f Bug fix & added default_layer_state_set_kb 2017-02-15 05:19:31 +07:00
5e31074633 Merge branch 'layer_state_set_kb' into promethium 2017-02-15 05:11:24 +07:00
d369bfb83a Add layer_state_set_kb hook 2017-02-15 05:02:15 +07:00
df311c7b40 num, func, punc 3state layer done right 2017-02-15 05:01:03 +07:00
64f9779fe5 Add TAPPING_FORCE_HOLD to regulate behaviour
See #889 for the detail.
2017-02-14 14:12:54 +09:00
3272821d32 Added support for XD60v2 with RGB underglow and LED backlight support 2017-02-13 18:09:02 -08:00
3758cfd95f GUI layer fixes 2017-02-14 04:17:09 +07:00
6c692fca7d Alt-tab handling in GUI layer 2017-02-14 03:58:12 +07:00
a8eba1bdda Merge remote-tracking branch 'refs/remotes/qmk/master' 2017-02-13 12:36:22 -08:00
7ae677dcb7 remove stand alone punc layer switcher for now 2017-02-14 03:18:34 +07:00
02662e3869 Add explicit punctuation key for greek layers 2017-02-14 00:46:06 +07:00
c2531ff43b Func + Num = Punc 2017-02-14 00:44:02 +07:00
fd2925efba Merge pull request #1094 from priyadi/faux_clicky
Implement faux-clicky feature
2017-02-13 10:58:50 -05:00
21ad0c5bcd Merge pull request #1095 from Mauin/gonnerd/reset_documentation
GON NerD: Add reset button to documentation and default keymap
2017-02-13 10:56:47 -05:00
15e2dbb2a9 move GRV to ESC position 2017-02-13 22:18:36 +07:00
903e4d3193 Fix faux clicky toggle key 2017-02-13 20:13:33 +07:00
24a40d63c9 define missing KC_NO macro 2017-02-13 13:44:53 +01:00
75e57b4bcb Merge branch 'faux_clicky' into promethium 2017-02-13 18:01:57 +07:00
200488bb31 Merge branch 'promethium' of github.com:priyadi/qmk_firmware into promethium 2017-02-13 17:58:42 +07:00
40ced77606 Update my Planck layout 2017-02-13 17:58:06 +07:00
97472aabe6 Forgot to add ifdef to optional feature 2017-02-13 17:58:06 +07:00
68e5c85999 Remove assignment warning 2017-02-13 17:58:06 +07:00
455568d197 Workaround to remove warning 2017-02-13 17:58:06 +07:00
5d5f2ff50d Some space optimization and housekeeping 2017-02-13 17:58:06 +07:00
b28fb29898 adds documentation for reset button and adds one to the default keymap 2017-02-13 09:03:43 +01:00
8c93c5d9ab Add keycodes to turn on, turn off and toggle faux clicky 2017-02-13 14:55:35 +07:00
1622d7147b :
Merge branch 'master' of https://github.com/jackhumbert/qmk_firmware
2017-02-12 21:24:55 -08:00
4010360912 adds planck/rev3 makefile so subproject is found 2017-02-12 23:58:44 -05:00
c68e596f32 Implement faux-clicky feature 2017-02-13 08:03:07 +07:00
1e97f77278 update travis badge 2017-02-12 20:01:04 -05:00
68970679e7 Merge pull request #1092 from lucwastiaux/master
updated ergodox/dvorak_programmer keymap
2017-02-12 19:38:59 -05:00
3bf6c43de7 updated readme 2017-02-13 07:46:07 +08:00
352d79e1fb Merge remote-tracking branch 'upstream/master' 2017-02-13 07:44:28 +08:00
4505db5d0e Merge pull request #1091 from smt/smt/tv44
Add smt keymap for tv44 (MiniVan)
2017-02-12 18:42:44 -05:00
5f8535b356 change thumb cluster key to be shift 2017-02-13 07:16:01 +08:00
b6730285b4 Add smt keymap for tv44 (MiniVan) 2017-02-12 12:46:24 -05:00
a773124537 send travis stuff to gitter 2017-02-12 12:23:03 -05:00
8d0fdf1008 adds soft pwm for non-timed ports 2017-02-12 11:29:42 -05:00
97e6bb5a4e Merge branch 'master' into promethium 2017-02-12 17:52:09 +07:00
2d655b1830 Merge branch 'master' of https://github.com/jackhumbert/qmk_firmware 2017-02-11 22:11:06 -08:00
274b1c53fb keymap update 2017-02-11 22:10:44 -08:00
bc1308c112 Update my Planck layout 2017-02-12 05:04:14 +07:00
a0c2305bd1 Merge pull request #1089 from priyadi/fix_ps2_mouse_warning
Suppress warnings from ps2_mouse.h
2017-02-11 13:18:42 -05:00
1b7439bfb1 Forgot to add ifdef to optional feature 2017-02-12 00:20:47 +07:00
aaa58a8d79 Supress warnings from ps2_mouse.h 2017-02-12 00:13:36 +07:00
e52d793c79 Merge branch 'master' into promethium 2017-02-12 00:09:25 +07:00
ce6b68f85b Remove assignment warning 2017-02-12 00:07:33 +07:00
2c1ef84b22 Workaround to remove warning 2017-02-12 00:02:36 +07:00
89d3ff8f18 Some space optimization and housekeeping 2017-02-12 00:00:01 +07:00
6d6b3ee9fb Merge pull request #1065 from milestogo/master
Update to kinesis keymaps
2017-02-11 11:51:06 -05:00
3f0b491fc0 Merge pull request #1082 from priyadi/right-side-dual-function
Implement tap mod dual role for right side mods.
2017-02-11 11:50:32 -05:00
6bb479ea45 Merge pull request #1085 from priyadi/promethium
Promethium keyboard layout update
2017-02-11 11:49:00 -05:00
5bdddb7821 Merge pull request #1087 from mneme/master
Updated keymap for atreus62/mneme
2017-02-11 11:48:39 -05:00
199458378b Merge pull request #1088 from Mauin/gon_nerd
add GON NerD
2017-02-11 11:48:11 -05:00
bfc33a56d7 don't try to build the readme 2017-02-11 11:39:57 -05:00
5daa3a8836 add GON NerD 2017-02-11 17:14:40 +01:00
4163a3819e Add regular space to B+N on GUI layer for repeating space 2017-02-11 22:16:19 +07:00
4c05e39a02 Switch to Emoji layer using Punc + greek 2017-02-11 22:13:35 +07:00
4586b19be3 Turn off capslock when entering num layer 2017-02-11 22:07:04 +07:00
c6123b2e4a Move X in number layer away from space 2017-02-11 22:03:34 +07:00
513286cf98 LSpace + RSpace = switch layer 2017-02-11 21:54:10 +07:00
52e2afe673 correct spelling in readme 2017-02-11 15:09:30 +01:00
79de0cd119 Implement Capslock LED 2017-02-11 19:03:18 +07:00
052f81aaca Merge branch 'master' of https://github.com/jackhumbert/qmk_firmware 2017-02-11 10:50:37 +01:00
aa69337cf5 update readme 2017-02-11 10:49:53 +01:00
9fc3afbef4 simplify battery calculation for now 2017-02-11 14:50:43 +07:00
b31ac35441 Fix emoji layer 2017-02-11 01:30:08 +07:00
b92515f139 Make room for 'loose keycodes' by halving UNICODE_MAP range 2017-02-11 00:36:08 +07:00
fdd06d3fca RShift + LShift = Capslock 2017-02-11 00:21:27 +07:00
bf31f516e3 Add reset keycode 2017-02-11 00:07:44 +07:00
909fd4ae64 Generalize layer indicators 2017-02-11 00:07:10 +07:00
835556da91 Merge pull request #1083 from VoodaGod/bone2planck
fixed readme (i swear)
2017-02-10 11:03:43 -05:00
229e38f097 Add ifdefs for keyboard layouts 2017-02-10 22:15:15 +07:00
5944ab246a Implement battery level indicator 2017-02-10 21:28:46 +07:00
420a032e8d made left shift an MO for SHELL_NAV 2017-02-10 21:44:27 +08:00
07879bf66b Add function to cycle backlight modes 2017-02-10 17:45:12 +07:00
a5b8db52a0 Activate SYS layer by pressing both Ctrls 2017-02-10 17:11:52 +07:00
c0cfacda98 fixed readme (i swear) 2017-02-10 09:51:08 +01:00
4ffbfe8298 Restore GUI layer 2017-02-10 14:43:56 +07:00
0f92d305e2 Add slash/question mark to punc/num layer 2017-02-10 14:32:24 +07:00
b0537f75df Merge branch 'master' into sculpt2 2017-02-09 23:28:39 -08:00
41c93575a8 Merge branch 'master' of https://github.com/jackhumbert/qmk_firmware 2017-02-09 23:28:15 -08:00
5ac0e6e6ae dumber sculpt build 2017-02-09 23:23:39 -08:00
a4a57d47ed Reimplement GUI Layer 2017-02-10 13:13:04 +07:00
6c462e0c01 Merge pull request #1073 from qmk/backlight_changes
Open backlight functionality to all ports
2017-02-09 20:14:35 -05:00
27e7eac279 Reorganize punctuation & numbers layer 2017-02-10 06:51:10 +07:00
dee6a6982c Fix LED indicator 2017-02-10 06:31:29 +07:00
97816df7e7 Implement tap mod dual role for right side mods. 2017-02-10 06:06:59 +07:00
af97d6b58e Add dvorak & norman layout. Add sys layer. 2017-02-10 06:01:59 +07:00
92308ed0e5 Remove audio stuff 2017-02-10 02:08:55 +07:00
d537120eab Merge pull request #1078 from VoodaGod/bone2planck
updated Bone2Planck Keymap, Readme & fixed Makefile
2017-02-09 10:38:46 -05:00
93ee3bea37 Merge pull request #1079 from r2d2rogers/patch-1
[Typo] correct link to default keymap in readme.
2017-02-09 10:38:09 -05:00
2b95f41b91 [Typo] correct link to default keymap in readme. 2017-02-09 09:08:50 -06:00
c330872f47 updated layout & readme 2017-02-09 13:07:59 +01:00
986b065654 more formatting 2017-02-09 12:17:13 +01:00
1becbcb013 readme formatting changes 2017-02-09 11:25:50 +01:00
cb590bb37b updated readme 2017-02-09 11:21:52 +01:00
9a64eb8533 updated bone2planck keymap & readme 2017-02-09 10:01:39 +01:00
4be4ed3397 Add USB-BLE manual output switching and indicator 2017-02-09 01:40:22 +07:00
3f2c0bfa86 Merge branch 'master' into promethium 2017-02-09 01:01:24 +07:00
0a9fda968d Merge pull request #1074 from dungdung/kc60_led
Moved KC60 capslock LED code to standard led_set_kb…
2017-02-07 21:25:00 -05:00
ad1327cd00 accept numbers in travis build 2017-02-07 20:51:50 -05:00
304d84cd08 Moved KC60 capslock LED code to standard led_set_kb so it can be overridden by users 2017-02-07 16:55:40 -08:00
f5c8c5d4c8 Merge pull request #1070 from jimmyhchan/fixSplit
Lets split readme eeprom master hand fixes
2017-02-07 15:46:29 -05:00
56d2198b3d rename I2C_MASTER_RIGHT to MASTER_RIGHT since this works for serial as well 2017-02-07 12:36:52 -08:00
048ef311dc udpate readme to reflect QMK and not having the Makefile from ahtn's repo 2017-02-07 12:33:35 -08:00
9c02e2ab49 correctly put eeprom EE_HANDS at addr 0x0a (decimal 10). default to rev2 project. do not default EE_HANDS for the serial keymap
if you compare split_util.h with the original project by ahtn, the
address we look for isLeftHand config went from addr 7 to addr 10
(decimal). The EEP files were not updated.

EE_HANDS should not be enabled by default since it's more confusing for
most users
2017-02-07 12:30:24 -08:00
b4e30d3929 added functionality for just a port 2017-02-07 15:23:56 -05:00
d639bd2021 Merge pull request #1072 from nicinabox/improve-ls-avrdude-target
Check for Pro Micro serial port automatically
2017-02-07 13:52:03 -05:00
42ea912fde Merge pull request #1062 from luizribeiro/fix-win
Fix V-USB bug on Windows 10
2017-02-07 13:49:10 -05:00
13c394fba4 Merge pull request #1071 from dungdung/rgb_tweaks
RGB tweaks
2017-02-07 13:32:31 -05:00
c0c69a1a7c Merge pull request #1068 from adzenith/master
Minor cleanup
2017-02-07 13:27:41 -05:00
3c7fa0acc1 Merge pull request #1046 from LukeSilva/master
Add Tapping Macros to QMK
2017-02-07 13:18:47 -05:00
0c2b6951a6 Merge pull request #1057 from priyadi/selectable_output
Implement runtime selectable output (USB or BT)
2017-02-07 13:12:29 -05:00
de659486f5 pass through travis errors 2017-02-07 12:36:25 -05:00
c256ad51bd Merge pull request #1056 from upils/master
Add reddot handwired keyboard.
2017-02-07 12:20:29 -05:00
790dab27b6 Merge pull request #1053 from TerryMathews/master
Let's Split: establish rev2fliphalf subproject
2017-02-07 12:19:45 -05:00
616b8604b0 variable scope fix for travis 2017-02-07 11:53:43 -05:00
6a92cc2897 correctly assign bash variable 2017-02-07 02:00:07 -05:00
c8d5376f11 fix typo 2017-02-07 01:54:58 -05:00
f79f38d726 add comma 2017-02-07 01:53:46 -05:00
2179a548f4 Merge pull request #1069 from hot-leaf-juice/master
change cmd-l and cmd-r for actual home and end
2017-02-07 01:42:30 -05:00
19d63ad72c try building only keyboards needed 2017-02-07 01:35:10 -05:00
e5a2306804 Merge pull request #1041 from folkert4/master
Added Espynn's keymap
2017-02-07 00:37:23 -05:00
ab07d71b22 Merge pull request #1047 from lordchair/keymap_yale
yale planck layout
2017-02-07 00:30:56 -05:00
3dbdd15304 Check for a new serial port every second 2017-02-06 19:57:34 -06:00
d4c88626bd Merge pull request #1048 from smt/smt/planck
Add smt's keymap for Planck
2017-02-06 20:21:42 -05:00
198a2929ed Merge pull request #1059 from qmk/hf/algr_t
Introduces ALGR_T for dual-function AltGr
2017-02-06 19:33:33 -05:00
b5159c964a Merge pull request #1036 from nicinabox/lets-split-improvements
Lets Split flashing improvements
2017-02-06 19:33:07 -05:00
4348fb54d6 Merge pull request #960 from ofples/feature/combos
Keyboard combination triggers
2017-02-06 19:31:45 -05:00
2a2be010d9 Reverse rev2 and rev2fliphalf
Flipped definitions on what constitutes "fliphalf" by popular demand.
2017-02-06 19:23:10 -05:00
5d55a44afa Revert "Reverse rev2 and rev2fliphalf"
This reverts commit 0537977ba1412aa2ba753e152eec445e18858244.
2017-02-06 19:21:21 -05:00
0537977ba1 Reverse rev2 and rev2fliphalf
Flipped definitions on what constitutes "fliphalf" by popular demand.
2017-02-06 19:14:57 -05:00
b6ffda4849 Merge pull request #1010 from SjB/oneshot_timeout_fix
oneshot timeout would only timeout after an event.
2017-02-06 18:57:23 -05:00
449ab9109a Merge branch 'master' of github.com:jackhumbert/qmk_firmware 2017-02-06 18:28:50 -05:00
35edb382ee [skip build] testing travis script 2017-02-06 18:28:37 -05:00
a7882b1ffc Added non-animated gradient mode 2017-02-06 14:18:20 -08:00
5a1b68d562 Added mode reverse step function 2017-02-06 14:18:20 -08:00
0e548f8b5d Christmas mode now works with even RGBED_NUM
Added Christmas mode steps to reduce red and green colors blending into each other
Added Christmas mode interval
Increased green hue to 120
2017-02-06 14:18:20 -08:00
21015918b4 change cmd-l and cmd-r for actual home and end 2017-02-06 12:40:32 +00:00
d1fb51976a Added new keymap to the Satan GH60 keyboard.
Added new keymap `Admiral Strokers` to the Satan keyboard. This is an
ISO based layout with tap for brackets/ curly on shft and ctl keys.
Furthermore, there is added arrows and media/volume/special/f-keys layer
on the TAB button when you hold.
2017-02-06 11:53:48 +01:00
06d21009b2 Minor cleanup 2017-02-05 19:55:27 -05:00
8cbf61c919 Add new DIODE_DIRECTION option
The previous two options were COL2ROW, ROW2COL; this adds CUSTOM_MATRIX
to disable the built-in matrix scanning code.

Most notably, this obviates the need to set MATRIX_ROW_PINS or
MATRIX_COL_PINS.
2017-02-05 19:47:33 -05:00
d961c80df2 Remove unused matrix_raw variable in matrix.c 2017-02-05 19:41:08 -05:00
b0dfb037dc Merge branch 'master' of https://github.com/jackhumbert/qmk_firmware 2017-02-04 20:08:07 -08:00
101465b6ed Add missing header to ergodox ordinary keymap 2017-02-03 21:09:50 -05:00
3faf06c880 Fix compile warnings in egodox robot_test_layout
Fixes the warning "right shift count >= width of type" by adding UL to
the end of constants.
2017-02-03 21:07:24 -05:00
e667e9f6da Fix compile warnings in light_ws2812.c
Fixes the warning "function declaration isn't a prototype" by explicitly
making the parameter list void.
2017-02-03 21:00:13 -05:00
a3da586505 Fix V-USB bug on Windows 10 2017-02-01 21:57:44 -05:00
e7c4f621f1 Restrict outputselect to LUFA only for now 2017-02-01 22:30:06 +07:00
98f9a2e6df Fix wrong include 2017-02-01 20:18:52 +07:00
2bef8b5b88 Limit outputselect to AVR only for now 2017-02-01 19:37:52 +07:00
72e95809a1 Move outputselect to parent dir to satisfy non LUFA keyboards 2017-02-01 17:55:13 +07:00
c17070eca5 Add layer switcher keycodes: OUT_AUTO, OUT_USB, OUT_BT, OUT_BLE 2017-02-01 15:35:21 +07:00
467e284178 increase timeout for dual mode caps key 2017-02-01 13:46:00 +08:00
f46c2b3ca0 Introduces ALGR_T for dual-function AltGr 2017-01-31 21:31:05 -05:00
d8a9c63c26 Implement runtime selectable output (USB or BT) 2017-02-01 05:07:05 +07:00
f36fc1d2e5 Add reddot handwired keyboard. 2017-01-31 22:37:03 +01:00
e8ba4838d3 fixing kinesis reboot 2017-01-30 19:39:23 -08:00
ef9e544a7e Let's Split: establish rev2fliphalf subproject
Subproject to accomodate second half pad built in opposite orientation
(places TRRS jacks on opposing edges for shorter cable runs)
2017-01-29 22:22:32 -05:00
SjB
45e0d09414 moved oneshot cancellation code outside of process_record.
The oneshot cancellation code do not depend on the
action_tapping_process and since process_record get called via the
action_tapping_process logic moved the oneshot cancellation code into
the action_exec function just before the action_tapping_process call
2017-01-29 13:01:47 -05:00
3835b4bfcc Merge branch 'promethium' of github.com:priyadi/qmk_firmware into promethium 2017-01-29 18:38:15 +07:00
011811af68 minimize LEDs 2017-01-29 18:37:49 +07:00
306f43e5ee fix greek layers 2017-01-29 18:37:49 +07:00
c5ab0b2b61 Implement greek layers on my Promethium layout 2017-01-29 18:37:49 +07:00
8df30c1c56 added picture of layout 2017-01-28 18:44:14 -08:00
ad0ce40db0 usability tweaks 2017-01-28 18:44:01 -08:00
d549002d22 mouse keys added 2017-01-28 18:43:40 -08:00
4eafa86564 new 'yale' keymap 2017-01-28 18:43:40 -08:00
1d9e0b0120 s/Bkps/Bksp 2017-01-28 20:54:34 -05:00
77e54e34e1 Add luke keymap, as an example of the tapping macros 2017-01-29 11:27:38 +11:00
a3357d078e Add support for various tapping macros
A macro key can now be easily set to act as a modifier on hold, and
press a shifted key when tapped. Or to switch layers when held, and
again press a shifted key when tapped.

Various other helper defines have been created which send macros when
the key is pressed, released and tapped, cleaning up the
action_get_macro function inside keymap definitions.

The layer switching macros require a GCC extension - 'compound
statements enclosed within parentheses'. The use of this extension is
already present within the macro subsystem of this project, so its use
in this commit should not cause any additional issues.

MACRO_NONE had to be cast to a (macro_t*) to suppress compiler
warnings within some tapping macros.
2017-01-28 18:42:35 +11:00
7c24ecf580 Carry over Planck updates to my Preonic keymap 2017-01-28 01:38:58 -05:00
321904b8e3 Improve Planck keymap
- added escape+shift mod-tap key
- replaced BRITE with backtick
2017-01-28 01:37:59 -05:00
fa72689145 Merge branch 'master' into smt/planck
* master:
  Clarify license on abnt2 keymap (#1038)
  replace jackhumbert with qmk
  Add gitter image, start update to qmk org
  Remove COLEMAK from preonic_keycodes enum
  layer defines to enum
  Update readme for smt Preonic keymap
  Add smt keymap for Preonic
  updated all the other keymaps to support the new changes.
  fix: infinity60 keyboard was not using quantum features.
  Compare Makefile with itself instead of using `--help`
2017-01-28 00:51:07 -05:00
f6feee8167 eliminate references to shell_layer 2017-01-28 09:45:13 +08:00
a1c53d0f93 documented dual mode capslock 2017-01-28 09:42:55 +08:00
cb2d4fb80b split kinesis layout into ergodox and planck style symbol layers 2017-01-27 16:45:18 -08:00
8c794d73fa Added Espynn's keymap 2017-01-27 13:51:39 -05:00
93c1bfa646 dual capslock functionality, activating shell nav or brackets 2017-01-27 23:55:33 +08:00
cfc4149712 Add ability to use tap macros without using functions 2017-01-27 10:28:42 +11:00
890ecf6a2a Update readme 2017-01-26 09:31:40 -06:00
3131d65563 Add avrdude target 2017-01-26 09:31:27 -06:00
87bc36253d Fix documentation for TMK actions 2017-01-26 22:44:22 +11:00
63e406eca4 Add smt keymap for Planck 2017-01-26 00:24:51 -05:00
18cc05e2f7 Added instructions for how to build and flash the firmware with teensy_cli. 2017-01-24 10:02:56 +01:00
f35adb4f37 Merge branch 'master' of https://github.com/jackhumbert/qmk_firmware 2017-01-18 22:58:49 +01:00
d910b94a3c Don't change ralt to lalt, it's really not the same thing on windows. 2017-01-17 19:33:09 +01:00
53382d9564 whitespace fixes 2017-01-16 21:31:44 +01:00
a37e924e36 vi style arrow keys. Live unicode switch support 2017-01-16 21:10:25 +01:00
11eb3d5491 Merge branch 'master' into promethium 2017-01-17 01:39:29 +07:00
SjB
6f44ca7a59 oneshot timeout would only timeout after an event.
After setting a ONESHOT_TIMEOUT value, the oneshot layer state would
not expire without an event being triggered (key pressed). The reason
was that in the process_record function we would return priort to
execute the process_action function if it detected a NOEVENT cycle. The
process_action contained the codes to timeout the oneshot layer state.
The codes to clear the oneshot layer state have been move just in
front of where we check for the NOEVENT cycle in the process_record
function.
2017-01-15 23:29:24 -05:00
87b675241a minimize LEDs 2017-01-09 23:19:34 +07:00
8c2cc30b0e fix greek layers 2017-01-09 21:24:26 +07:00
cf0650e3f0 Implement greek layers on my Promethium layout 2017-01-09 19:35:01 +07:00
40abf8bc9c Moved combo processing lower down in process logic 2016-12-16 22:00:29 +02:00
6a462c818c Merge branch 'master' into feature/combos 2016-12-16 21:52:51 +02:00
6e7cfa83b9 Refactored as well as added support for action keys in combos 2016-12-16 21:50:28 +02:00
b6bf4e0dce Added support for timing out combos if a key as been pressed for longer than COMBO_TERM 2016-12-10 16:11:59 +02:00
eac8fa7999 Implemented basic key combination feature 2016-12-10 00:49:11 +02:00
c56693f858 Merge pull request #4 from Skrymir/macroUpdates
Macro updates
2016-07-20 23:50:06 -05:00
aaa180f463 Added reset keys 2016-07-20 23:15:15 -05:00
03840a8c4d Merge pull request #3 from jackhumbert/master
pulling in remote changes
2016-07-20 21:56:44 -05:00
fb46eb2de1 Added open resource macro
tap to type, hold for resource
2016-07-12 23:52:02 -05:00
424 changed files with 20887 additions and 4584 deletions

1
.gitignore vendored
View File

@ -1,5 +1,6 @@
.dep
*.o
*.bin
*.eep
*.elf
*.hex

View File

@ -9,9 +9,6 @@ branches:
env:
global:
- secure: vBTSL34BDPxDilKUuTXqU4CJ26Pv5hogD2nghatkxSQkI1/jbdnLj/DQdPUrMJFDIY6TK3AltsBx72MaMsLQ1JO/Ou24IeHINHXzUC1FlS9yQa48cpxnhX5kzXNyGs3oa0qaFbvnr7RgYRWtmD52n4bIZuSuW+xpBv05x2OCizdT2ZonH33nATaHGFasxROm4qYZ241VfzcUv766V6RVHgL4x9V08warugs+RENVkfzxxwhk3NmkrISabze0gSVJLHBPHxroZC6EUcf/ocobcuDrCwFqtEt90i7pNIAFUE7gZsN2uE75LmpzAWin21G7lLPcPL2k4FJVd8an1HiP2WmscJU6U89fOfMb2viObnKcCzebozBCmKGtHEuXZo9FcReOx49AnQSpmESJGs+q2dL/FApkTjQiyT4J6O5dJpoww0/r57Wx0cmmqjETKBb5rSgXM51Etk3wO09mvcPHsEwrT7qH8r9XWdyCDoEn7FCLX3/LYnf/D4SmZ633YPl5gv3v9XEwxR5+04akjgnvWDSNIaDbWBdxHNb7l4pMc+WR1bwCyMyA7KXj0RrftEGOrm9ZRLe6BkbT4cycA+j77nbPOMcyZChliV9pPQos+4TOJoTzcK2L8yWVoY409aDNVuAjdP6Yum0R2maBGl/etLmIMpJC35C5/lZ+dUNjJAM=
matrix:
- TARGET=all-keyboards AUTOGEN=true
- TARGET=test AUTOGEN=false
before_install:
- wget http://www.atmel.com/images/avr8-gnu-toolchain-3.5.4.1709-linux.any.x86_64.tar.gz
install:
@ -20,7 +17,8 @@ install:
before_script:
- avr-gcc --version
script:
- 'if [[ "$TRAVIS_COMMIT_MESSAGE" != *"[skip build]"* ]] ; then make $TARGET AUTOGEN=$AUTOGEN; fi'
- make test AUTOGEN=false
- bash util/travis_build.sh
addons:
apt:
packages:
@ -31,6 +29,11 @@ addons:
- libnewlib-arm-none-eabi
- diffutils
after_success:
if [ "$AUTOGEN" == "true" ]; then
bash util/travis_compiled_push.sh;
fi
bash util/travis_compiled_push.sh
notifications:
webhooks:
urls:
- https://webhooks.gitter.im/e/cca31de3d44b9adb617b
on_success: change # options: [always|never|change] default: always
on_failure: always # options: [always|never|change] default: always
on_start: never # options: [always|never|change] default: always

View File

@ -23,9 +23,9 @@ ifdef master
MASTER = $(master)
endif
ifeq ($(MASTER),right)
ifeq ($(MASTER),right)
OPT_DEFS += -DMASTER_IS_ON_RIGHT
else
else
ifneq ($(MASTER),left)
$(error MASTER does not have a valid value(left/right))
endif
@ -38,7 +38,7 @@ KEYBOARD_C := $(KEYBOARD_PATH)/$(KEYBOARD).c
ifneq ("$(wildcard $(KEYBOARD_C))","")
include $(KEYBOARD_PATH)/rules.mk
else
else
$(error "$(KEYBOARD_C)" does not exist)
endif
@ -49,7 +49,7 @@ ifneq ($(SUBPROJECT),)
ifneq ("$(wildcard $(SUBPROJECT_C))","")
OPT_DEFS += -DSUBPROJECT_$(SUBPROJECT)
include $(SUBPROJECT_PATH)/rules.mk
else
else
$(error "$(SUBPROJECT_PATH)/$(SUBPROJECT).c" does not exist)
endif
endif
@ -83,7 +83,7 @@ ifneq ($(SUBPROJECT),)
endif
endif
# Save the defines and includes here, so we don't include any keymap specific ones
# Save the defines and includes here, so we don't include any keymap specific ones
PROJECT_DEFS := $(OPT_DEFS)
PROJECT_INC := $(VPATH) $(EXTRAINCDIRS) $(SUBPROJECT_PATH) $(KEYBOARD_PATH)
PROJECT_CONFIG := $(CONFIG_H)
@ -139,35 +139,56 @@ ifeq ($(strip $(API_SYSEX_ENABLE)), yes)
MIDI_ENABLE=yes
endif
MUSIC_ENABLE := 0
ifeq ($(strip $(AUDIO_ENABLE)), yes)
OPT_DEFS += -DAUDIO_ENABLE
MUSIC_ENABLE := 1
SRC += $(QUANTUM_DIR)/process_keycode/process_audio.c
SRC += $(QUANTUM_DIR)/audio/audio.c
SRC += $(QUANTUM_DIR)/audio/voices.c
SRC += $(QUANTUM_DIR)/audio/luts.c
endif
ifeq ($(strip $(MIDI_ENABLE)), yes)
OPT_DEFS += -DMIDI_ENABLE
MUSIC_ENABLE := 1
SRC += $(QUANTUM_DIR)/process_keycode/process_midi.c
endif
ifeq ($(MUSIC_ENABLE), 1)
SRC += $(QUANTUM_DIR)/process_keycode/process_music.c
endif
ifeq ($(strip $(COMBO_ENABLE)), yes)
OPT_DEFS += -DCOMBO_ENABLE
SRC += $(QUANTUM_DIR)/process_keycode/process_combo.c
endif
ifeq ($(strip $(VIRTSER_ENABLE)), yes)
OPT_DEFS += -DVIRTSER_ENABLE
endif
ifeq ($(strip $(AUDIO_ENABLE)), yes)
OPT_DEFS += -DAUDIO_ENABLE
SRC += $(QUANTUM_DIR)/process_keycode/process_music.c
SRC += $(QUANTUM_DIR)/audio/audio.c
SRC += $(QUANTUM_DIR)/audio/voices.c
SRC += $(QUANTUM_DIR)/audio/luts.c
ifeq ($(strip $(FAUXCLICKY_ENABLE)), yes)
OPT_DEFS += -DFAUXCLICKY_ENABLE
SRC += $(QUANTUM_DIR)/fauxclicky.c
endif
ifeq ($(strip $(UCIS_ENABLE)), yes)
OPT_DEFS += -DUCIS_ENABLE
UNICODE_ENABLE = yes
SRC += $(QUANTUM_DIR)/process_keycode/process_unicode_common.c
SRC += $(QUANTUM_DIR)/process_keycode/process_ucis.c
endif
ifeq ($(strip $(UNICODEMAP_ENABLE)), yes)
OPT_DEFS += -DUNICODEMAP_ENABLE
UNICODE_ENABLE = yes
SRC += $(QUANTUM_DIR)/process_keycode/process_unicode_common.c
SRC += $(QUANTUM_DIR)/process_keycode/process_unicodemap.c
endif
ifeq ($(strip $(UNICODE_ENABLE)), yes)
OPT_DEFS += -DUNICODE_ENABLE
SRC += $(QUANTUM_DIR)/process_keycode/process_unicode_common.c
SRC += $(QUANTUM_DIR)/process_keycode/process_unicode.c
endif
@ -237,7 +258,7 @@ endif
OUTPUTS := $(KEYMAP_OUTPUT) $(KEYBOARD_OUTPUT)
$(KEYMAP_OUTPUT)_SRC := $(SRC)
$(KEYMAP_OUTPUT)_DEFS := $(OPT_DEFS) -DQMK_KEYBOARD=\"$(KEYBOARD)\" -DQMK_KEYMAP=\"$(KEYMAP)\"
$(KEYMAP_OUTPUT)_DEFS := $(OPT_DEFS) -DQMK_KEYBOARD=\"$(KEYBOARD)\" -DQMK_KEYMAP=\"$(KEYMAP)\"
$(KEYMAP_OUTPUT)_INC := $(VPATH) $(EXTRAINCDIRS)
$(KEYMAP_OUTPUT)_CONFIG := $(CONFIG_H)
$(KEYBOARD_OUTPUT)_SRC := $(CHIBISRC)

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -15,8 +15,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_QW] = { /* Qwerty */
{KC_Q, KC_W, KC_E, KC_R, KC_T, KC_TRNS, KC_Y, KC_U, KC_I, KC_O, KC_P },
{KC_A, KC_S, KC_D, KC_F, KC_G, KC_TRNS, KC_H, KC_J, KC_K, KC_L, KC_SCLN },
{KC_Z, KC_X, KC_C, KC_V, KC_B, KC_LALT, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH },
{KC_ESC, KC_TAB, KC_LGUI, KC_LSFT, KC_BSPC, KC_LCTL, KC_SPC, MO(_RS), KC_MINS, KC_QUOT, KC_ENT }
{KC_Z, KC_X, KC_C, KC_V, KC_B, KC_LCTL, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH },
{KC_ESC, KC_TAB, KC_LGUI, KC_LSFT, KC_BSPC, KC_LALT, KC_SPC, MO(_RS), KC_MINS, KC_QUOT, KC_ENT }
},
/*
* ! @ up { } || pgup 7 8 9 *
@ -27,8 +27,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_RS] = { /* [> RAISE <] */
{KC_EXLM, KC_AT, KC_UP, KC_LCBR, KC_RCBR, KC_TRNS, KC_PGUP, KC_7, KC_8, KC_9, KC_ASTR},
{KC_HASH, KC_LEFT, KC_DOWN, KC_RGHT, KC_DLR, KC_TRNS, KC_PGDN, KC_4, KC_5, KC_6, KC_PLUS},
{KC_LBRC, KC_RBRC, KC_LPRN, KC_RPRN, KC_AMPR, KC_LALT, KC_GRV, KC_1, KC_2, KC_3, KC_BSLS},
{TG(_LW), KC_INS, KC_LGUI, KC_LSFT, KC_BSPC, KC_LCTL, KC_SPC, KC_TRNS, KC_DOT, KC_0, KC_EQL}
{KC_LBRC, KC_RBRC, KC_LPRN, KC_RPRN, KC_AMPR, KC_LCTL, KC_GRV, KC_1, KC_2, KC_3, KC_BSLS},
{TG(_LW), KC_INS, KC_LGUI, KC_LSFT, KC_BSPC, KC_LALT, KC_SPC, KC_TRNS, KC_DOT, KC_0, KC_EQL}
},
/*
* insert home up end pgup || up F7 F8 F9 F10
@ -39,8 +39,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_LW] = { /* [> LOWER <] */
{KC_INS, KC_HOME, KC_UP, KC_END, KC_PGUP, KC_TRNS, KC_UP, KC_F7, KC_F8, KC_F9, KC_F10},
{KC_DELT, KC_LEFT, KC_DOWN, KC_RGHT, KC_DOWN, KC_TRNS, KC_DOWN, KC_F4, KC_F5, KC_F6, KC_F11},
{KC_TRNS, KC_VOLU, KC_TRNS, KC_TRNS, RESET, KC_LALT, KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F12},
{KC_TRNS, KC_VOLD, KC_LGUI, KC_LSFT, KC_BSPC, KC_LCTL, KC_SPC, DF(_QW), KC_PSCR, KC_SLCK, KC_PAUS}
{KC_TRNS, KC_VOLU, KC_TRNS, KC_TRNS, RESET, KC_LCTL, KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F12},
{KC_TRNS, KC_VOLD, KC_LGUI, KC_LSFT, KC_BSPC, KC_LALT, KC_SPC, DF(_QW), KC_PSCR, KC_SLCK, KC_PAUS}
}};
const uint16_t PROGMEM fn_actions[] = {

View File

@ -9,18 +9,34 @@ void promicro_bootloader_jmp(bool program);
// The first section contains all of the arguements
// The second converts the arguments into a two-dimensional array
#define KEYMAP( \
k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, \
k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, \
k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, \
k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, \
k40, k41, k42, k43, k44, k45, k46, k47, k48, k49, k4a, k4b, k4c, k4d \
k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, \
k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, \
k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, \
k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, \
k40, k41, k42, k43, k44, k45, k46, k47, k48, k49, k4a, k4b, k4c, k4d \
) \
{ \
{ k00, k01, k02, k03, k04, k05, KC_NO, k06, k07, k08, k09, k0a, k0b }, \
{ k10, k11, k12, k13, k14, k15, KC_NO, k16, k17, k18, k19, k1a, k1b }, \
{ k20, k21, k22, k23, k24, k25, KC_NO, k26, k27, k28, k29, k2a, k2b }, \
{ k30, k31, k32, k33, k34, k35, k46, k36, k37, k38, k39, k3a, k3b }, \
{ k40, k41, k42, k43, k44, k45, k47, k48, k49, k4a, k4b, k4c, k4d } \
{ k00, k01, k02, k03, k04, k05, KC_NO, k06, k07, k08, k09, k0a, k0b }, \
{ k10, k11, k12, k13, k14, k15, KC_NO, k16, k17, k18, k19, k1a, k1b }, \
{ k20, k21, k22, k23, k24, k25, KC_NO, k26, k27, k28, k29, k2a, k2b }, \
{ k30, k31, k32, k33, k34, k35, k46, k36, k37, k38, k39, k3a, k3b }, \
{ k40, k41, k42, k43, k44, k45, k47, k48, k49, k4a, k4b, k4c, k4d } \
}
#endif
// Used to create a keymap using only KC_ prefixed keys.
#define KC_KEYMAP( \
k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, \
k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, \
k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, \
k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, \
k40, k41, k42, k43, k44, k45, k46, k47, k48, k49, k4a, k4b, k4c, k4d \
) \
{ \
{ KC_##k00, KC_##k01, KC_##k02, KC_##k03, KC_##k04, KC_##k05, KC_NO, KC_##k06, KC_##k07, KC_##k08, KC_##k09, KC_##k0a, KC_##k0b }, \
{ KC_##k10, KC_##k11, KC_##k12, KC_##k13, KC_##k14, KC_##k15, KC_NO, KC_##k16, KC_##k17, KC_##k18, KC_##k19, KC_##k1a, KC_##k1b }, \
{ KC_##k20, KC_##k21, KC_##k22, KC_##k23, KC_##k24, KC_##k25, KC_NO, KC_##k26, KC_##k27, KC_##k28, KC_##k29, KC_##k2a, KC_##k2b }, \
{ KC_##k30, KC_##k31, KC_##k32, KC_##k33, KC_##k34, KC_##k35, KC_##k46, KC_##k36, KC_##k37, KC_##k38, KC_##k39, KC_##k3a, KC_##k3b }, \
{ KC_##k40, KC_##k41, KC_##k42, KC_##k43, KC_##k44, KC_##k45, KC_##k47, KC_##k48, KC_##k49, KC_##k4a, KC_##k4b, KC_##k4c, KC_##k4d } \
}
#endif

View File

@ -1,6 +1,6 @@
<!-- -*- mode: markdown; fill-column: 8192 -*- -->
Mnemes Swedish Bonaza
Mnemes Swedish Bonanza
=======================
My Layout in process, most of the code is shamelessly stolen from [algernons][algernon] excellent layout
@ -33,6 +33,8 @@ It's for Windows (current work forces me to) and Swedish (matter of birth) so ym
- `LEAD s l` : `λ`.
- `LEAD s s` : `¯\_(ツ)_/¯`
- `LEAD s f` : `凸(ツ)凸`
- `LEAD u l` : Set unicode input mode to linux.
- `LEAD s w` : Set unicode input mode to windows.
- `LEAD a *` : Application switching based on position in start menu. Very specific to my computer.
@ -42,7 +44,7 @@ It's for Windows (current work forces me to) and Swedish (matter of birth) so ym
Basic navigation on the right hand and modifiers close
by for the left. The latter because I tend to use `ctrl+arrows` quite a lot.
## Sym layer
![Sym layer](img/sym.png)

View File

@ -1,7 +1,7 @@
#define ONESHOT_TIMEOUT 3000
#define TAPPING_TERM 200
#define PREVENT_STUCK_MODIFIERS
#define FORCE_NKRO
#define LEADER_TIMEOUT 1000
#include "../../config.h"

Binary file not shown.

Before

Width:  |  Height:  |  Size: 448 KiB

After

Width:  |  Height:  |  Size: 446 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 420 KiB

After

Width:  |  Height:  |  Size: 415 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 423 KiB

After

Width:  |  Height:  |  Size: 423 KiB

View File

@ -7,43 +7,47 @@
/*
*WINDOWS SWEDISH
*/
#define KN_HALF KC_GRV // 1/2
#define KN_PLUS KC_MINS // +
#define KN_ACUT KC_EQL // ´
#define KN_AO KC_LBRC // Å
#define KN_UMLA KC_RBRC // ¨
#define KN_OE KC_SCLN // Ö
#define KN_AE KC_QUOT // Ä
#define KN_QUOT KC_NUHS // '
#define KN_LABK KC_NUBS // <
#define KN_MINS KC_SLSH // -
#define KN_EXLM LSFT(KC_1) // !
#define KN_DQT LSFT(KC_2) // "
#define KN_AT RALT(KC_2) // @
#define KN_HASH LSFT(KC_3) // #
#define KN_DLR RALT(KC_4) // $
#define KN_PERC LSFT(KC_5) // %
#define KN_AMPR LSFT(KC_6) // &
#define KN_SLSH LSFT(KC_7) // /
#define KN_LPRN LSFT(KC_8) // (
#define KN_RPRN LSFT(KC_9) // )
#define KN_EQL LSFT(KC_0) // =
#define KN_UNDS LSFT(KN_MINS) // _
#define KN_QUES LSFT(KN_PLUS) // ?
#define KN_GRAV LSFT(KN_ACUT) // `
#define KN_LCBR RALT(KC_7) // {
#define KN_RCBR RALT(KC_0) // }
#define KN_LBRC RALT(KC_8) // [
#define KN_RBRC RALT(KC_9) // ]
#define KN_RABK LSFT(KN_LABK) // <
#define KN_COLN LSFT(KC_DOT) // :
#define KN_SCLN LSFT(KC_COMM) // :
#define KN_PIPE RALT(KN_LABK) // |
#define KN_QUES LSFT(KN_PLUS) // ?
#define KN_CIRC LSFT(KN_UMLA) // ^
#define KN_ASTR LSFT(KN_QUOT) // *
#define KN_TILD RALT(KN_UMLA) // ~
#define KN_BSLS RALT(KN_PLUS) //
/*
*WINDOWS SWEDISH
*/
#define KN_HALF KC_GRV // 1/2
#define KN_PLUS KC_MINS // +
#define KN_ACUT KC_EQL // ´
#define KN_AO KC_LBRC // Å
#define KN_UMLA KC_RBRC // ¨
#define KN_OE KC_SCLN // Ö
#define KN_AE KC_QUOT // Ä
#define KN_QUOT KC_NUHS // '
#define KN_LABK KC_NUBS // <
#define KN_MINS KC_SLSH // -
#define KN_EXLM LSFT(KC_1) // !
#define KN_DQT LSFT(KC_2) // "
#define KN_AT RALT(KC_2) // @
#define KN_HASH LSFT(KC_3) // #
#define KN_EUR LSFT(KC_4) //
#define KN_DLR RALT(KC_4) // $
#define KN_PERC LSFT(KC_5) // %
#define KN_AMPR LSFT(KC_6) // &
#define KN_SLSH LSFT(KC_7) // /
#define KN_LPRN LSFT(KC_8) // (
#define KN_RPRN LSFT(KC_9) // )
#define KN_EQL LSFT(KC_0) // =
#define KN_UNDS LSFT(KN_MINS) // _
#define KN_QUES LSFT(KN_PLUS) // ?
#define KN_GRAV LSFT(KN_ACUT) // `
#define KN_LCBR RALT(KC_7) // {
#define KN_RCBR RALT(KC_0) // }
#define KN_LBRC RALT(KC_8) // [
#define KN_RBRC RALT(KC_9) // ]
#define KN_RABK LSFT(KN_LABK) // <
#define KN_COLN LSFT(KC_DOT) // :
#define KN_SCLN LSFT(KC_COMM) // :
#define KN_PIPE RALT(KN_LABK) // |
#define KN_QUES LSFT(KN_PLUS) // ?
#define KN_CIRC LSFT(KN_UMLA) // ^
#define KN_ASTR LSFT(KN_QUOT) // *
#define KN_TILD RALT(KN_UMLA) // ~
#define KN_BSLS RALT(KN_PLUS) //
#define OSM_LCTL OSM(MOD_LCTL)
#define OSM_LALT OSM(MOD_LALT)
@ -85,32 +89,26 @@ enum {
TD_EQ
};
//Custom keycodes
enum {
PLACEHOLDER = SAFE_RANGE
};
//State and timers
uint16_t kf_timers[12];
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[BASE] = {
{ M(KF_11) ,M(KF_1) ,M(KF_2) ,M(KF_3) ,M(KF_4) ,M(KF_5) ,KC_NO ,M(KF_6) ,M(KF_7) ,M(KF_8) ,M(KF_9) ,M(KF_10) ,M(KF_12) },
{ KC_TAB ,KC_Q ,KC_W ,KC_E ,KC_R ,KC_T ,KC_NO ,KC_Y ,KC_U ,KC_I ,KC_O ,KC_P ,KN_AO },
{ OSM_LCTL ,KC_A ,KC_S ,KC_D ,KC_F ,KC_G ,KC_NO ,KC_H ,KC_J ,KC_K ,KC_L ,KN_OE ,KN_AE },
{ OSM_LSFT ,KC_Z ,KC_X ,KC_C ,KC_V ,KC_B ,KC_DELT ,KC_N ,KC_M ,KC_COMM ,KC_DOT ,KN_MINS ,OSM_LSFT },
{ MO(NAV) ,OSM_LCTL ,OSM_LALT ,KC_LGUI ,KC_SPC ,LT(SYM,KC_BSPC) ,KC_HYP ,LT(SYM,KC_ENT) ,KC_SPC ,KC_LEAD ,KC_LALT ,KC_LCTRL ,MO(NAV) }
{ M(KF_11) ,M(KF_1) ,M(KF_2) ,M(KF_3) ,M(KF_4) ,M(KF_5) ,KC_NO ,M(KF_6) ,M(KF_7) ,M(KF_8) ,M(KF_9) ,M(KF_10) ,M(KF_12) },
{ KC_TAB ,KC_Q ,KC_W ,KC_E ,KC_R ,KC_T ,KC_NO ,KC_Y ,KC_U ,KC_I ,KC_O ,KC_P ,KN_AO },
{ OSM_LCTL ,KC_A ,KC_S ,KC_D ,KC_F ,KC_G ,KC_NO ,KC_H ,KC_J ,KC_K ,KC_L ,KN_OE ,KN_AE },
{ OSM_LSFT ,KC_Z ,KC_X ,KC_C ,KC_V ,KC_B ,KC_DELT ,KC_N ,KC_M ,KC_COMM ,KC_DOT ,KN_MINS ,OSM_LSFT },
{ MO(NAV) ,OSM_LCTL ,OSM_LALT ,KC_LGUI ,MO(SYM) ,KC_BSPC ,KC_ENT ,KC_SPC ,MO(SYM) ,KC_LEAD ,KC_LALT ,KC_LCTRL ,KC_HYP }
},
[NAV] = {
{ KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS },
{ KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_NO ,KC_PGUP ,KC_HOME ,KC_UP ,KC_END ,KC_TRNS ,KC_TRNS },
{ KC_TRNS ,KC_LSFT ,KC_LCTL ,KC_LALT ,KC_L ,KC_TRNS ,KC_NO ,KC_PGDN ,KC_LEFT ,KC_DOWN ,KC_RIGHT ,KC_TRNS ,KC_TRNS },
{ KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_NO ,KC_HOME ,KC_PGDN ,KC_PGUP ,KC_END ,KC_TRNS ,KC_TRNS },
{ KC_TRNS ,KC_LSFT ,KC_LCTL ,KC_LALT ,KC_L ,KC_TRNS ,KC_NO ,KC_LEFT ,KC_DOWN ,KC_UP ,KC_RIGHT ,KC_TRNS ,KC_TRNS },
{ KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS },
{ KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_VOLD ,KC_VOLU }
@ -119,8 +117,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
{ KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,TD(TD_EQ) ,KC_NO ,TD(TD_FUN) ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS },
{ KC_TRNS ,KN_LABK ,KN_RABK ,KN_LCBR ,KN_RCBR ,KN_PLUS ,KC_NO ,KN_AT ,KN_DQT ,KN_QUOT ,KN_GRAV ,KN_SLSH ,KC_TRNS },
{ KC_TRNS ,KN_EXLM ,KN_EQL ,KN_LPRN ,KN_RPRN ,KN_MINS ,KC_NO ,KN_UNDS ,KN_SCLN ,KN_COLN ,KN_AMPR ,KN_PIPE ,KC_TRNS },
{ KC_TRNS ,KN_DLR ,KN_PERC ,KN_LBRC ,KN_RBRC ,KN_ASTR ,KC_TRNS ,KN_HASH ,KC_COMM ,KC_DOT ,KN_QUES ,KN_BSLS ,KC_TRNS },
{ KC_TRNS ,KN_EXLM ,KN_EQL ,KN_LPRN ,KN_RPRN ,KN_MINS ,KC_NO ,KN_UNDS ,KN_CIRC ,KN_DLR ,KN_AMPR ,KN_PIPE ,KC_TRNS },
{ KC_TRNS ,KN_EUR ,KN_PERC ,KN_LBRC ,KN_RBRC ,KN_ASTR ,KC_TRNS ,KN_HASH ,KN_SCLN ,KN_COLN ,KN_QUES ,KN_BSLS ,KC_TRNS },
{ KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS ,KC_TRNS }
}
@ -302,6 +300,15 @@ void matrix_scan_user(void) {
register_code (KC_LGUI); TAP_ONCE (KC_7); unregister_code (KC_LGUI);
}
SEQ_TWO_KEYS (KC_U, KC_L) {
set_unicode_input_mode(UC_LNX);
}
SEQ_TWO_KEYS (KC_U, KC_W) {
set_unicode_input_mode(UC_WINC);
}
SEQ_TWO_KEYS (KC_S, KC_S) {
// ¯\_(ツ)_/¯

View File

@ -0,0 +1,86 @@
#include "clueboard.h"
// Helpful defines
#define GRAVE_MODS (MOD_BIT(KC_LSHIFT)|MOD_BIT(KC_RSHIFT)|MOD_BIT(KC_LGUI)|MOD_BIT(KC_RGUI)|MOD_BIT(KC_LALT)|MOD_BIT(KC_RALT))
#define _______ KC_TRNS
// Each layer gets a name for readability, which is then used in the keymap matrix below.
// The underscores don't mean anything - you can have a layer called STUFF or any other name.
// Layer names don't all need to be of the same length, obviously, and you can also skip them
// entirely and just use numbers.
#define _BL 0
#define _FL 1
#define _CL 2
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* Keymap _BL: Base Layer (Default Layer)
*/
[_BL] = KEYMAP(
F(0), KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_GRV, KC_BSPC, KC_PGUP, \
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_PGDN, \
KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NUHS, KC_ENT, \
KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RO, KC_RSFT, KC_UP, \
KC_LCTL, KC_LGUI, KC_LALT, KC_MHEN, KC_SPC,KC_SPC, KC_HENK, KC_RALT, KC_RCTL, MO(_FL), KC_LEFT, KC_DOWN, KC_RGHT),
/* Keymap _FL: Function Layer
*/
[_FL] = KEYMAP(
KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, KC_DEL, BL_STEP, \
_______, _______, _______,_______,_______,_______,_______,_______,KC_PSCR,KC_SLCK, KC_PAUS, _______, _______, _______, _______, \
_______, _______, MO(_CL),_______,_______,_______,_______,_______,_______,_______, _______, _______, _______, _______, \
_______, _______, _______,_______,_______,_______,_______,_______,_______,_______, _______, _______, _______, _______, KC_PGUP, \
_______, _______, _______, _______, _______,_______, _______, _______, _______, MO(_FL), KC_HOME, KC_PGDN, KC_END),
/* Keymap _CL: Control layer
*/
[_CL] = KEYMAP(
_______, _______, _______,_______,_______,_______,_______,_______,_______,_______, _______, _______, _______, _______, RGB_TOG, RGB_VAI, \
_______, _______, _______,_______,RESET, _______,_______,_______,_______,_______, _______, _______, _______, _______, RGB_VAD, \
_______, _______, MO(_CL),_______,_______,_______,_______,_______,_______,_______, _______, _______, _______, _______, \
MO(_FL), _______, _______,_______,_______,_______,_______,_______,_______,_______, _______, _______, _______, MO(_FL), RGB_SAI, \
_______, _______, _______,_______, RGB_MOD, RGB_MOD, _______, _______, _______, _______, RGB_HUD, RGB_SAD, RGB_HUI),
};
/* This is a list of user defined functions. F(N) corresponds to item N
of this list.
*/
const uint16_t PROGMEM fn_actions[] = {
[0] = ACTION_FUNCTION(0), // Calls action_function()
};
void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) {
static uint8_t mods_pressed;
static bool mod_flag;
switch (id) {
case 0:
/* Handle the combined Grave/Esc key
*/
mods_pressed = get_mods()&GRAVE_MODS; // Check to see what mods are pressed
if (record->event.pressed) {
/* The key is being pressed.
*/
if (mods_pressed) {
mod_flag = true;
add_key(KC_GRV);
send_keyboard_report();
} else {
add_key(KC_ESC);
send_keyboard_report();
}
} else {
/* The key is being released.
*/
if (mod_flag) {
mod_flag = false;
del_key(KC_GRV);
send_keyboard_report();
} else {
del_key(KC_ESC);
send_keyboard_report();
}
}
break;
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 110 KiB

View File

@ -0,0 +1,15 @@
```
___ _____ _ _ _ __ __ _ __
|__ \ / ____| | | | | | / / / /(_) / /
||) | | | | |_ _ ___| |__ ___ __ _ _ __ __| | / /_ / /_ / /
|/ / | | | | | | |/ _ \ '_ \ / _ \ / _` | '__/ _` | | '_ \| '_ \ / /
|_| | |____| | |_| | __/ |_) | (_) | (_| | | | (_| | | (_) | (_) / / _
(_) \_____|_|\__,_|\___|_.__/ \___/ \__,_|_| \__,_| \___/ \___/_/ (_)
```
![Clueboard Layout Image](layout.png)
# Caps Fn Layout
This is the default layout except that Caps Lock acts like Caps Lock when
tapped but Fn when held.

View File

@ -0,0 +1,86 @@
#include "clueboard.h"
// Helpful defines
#define GRAVE_MODS (MOD_BIT(KC_LSHIFT)|MOD_BIT(KC_RSHIFT)|MOD_BIT(KC_LGUI)|MOD_BIT(KC_RGUI)|MOD_BIT(KC_LALT)|MOD_BIT(KC_RALT))
#define _______ KC_TRNS
// Each layer gets a name for readability, which is then used in the keymap matrix below.
// The underscores don't mean anything - you can have a layer called STUFF or any other name.
// Layer names don't all need to be of the same length, obviously, and you can also skip them
// entirely and just use numbers.
#define _BL 0
#define _FL 1
#define _CL 2
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* Keymap _BL: Base Layer (Default Layer)
*/
[_BL] = KEYMAP(
F(0), KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_GRV, KC_BSPC, KC_PGUP, \
KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_LBRC, KC_RBRC, KC_BSLS, KC_PGDN, \
KC_BSPC, KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT, KC_NUHS, KC_ENT, \
KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RO, KC_RSFT, KC_UP, \
KC_LCTL, MO(_FL), KC_LGUI,KC_MHEN, KC_SPC,KC_SPC, KC_HENK, KC_RALT, KC_RCTL, KC_RGUI, KC_LEFT, KC_DOWN, KC_RGHT),
/* Keymap _FL: Function Layer
*/
[_FL] = KEYMAP(
KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, KC_CAPS, BL_STEP, \
_______, _______, _______,_______,_______,_______,_______,KC_HOME,KC_PGDN,KC_PGUP, KC_END, _______, _______, _______, _______, \
KC_DEL, _______, MO(_CL),_______,_______,_______,_______,KC_LEFT,KC_DOWN,KC_UP, KC_RGHT, _______, _______, _______, \
_______, _______, _______,_______,_______,_______,_______,_______,_______,_______, _______, _______, _______, _______, KC_PGUP, \
_______, _______, _______,_______, _______,_______, _______, _______, _______, MO(_FL), KC_HOME, KC_PGDN, KC_END),
/* Keymap _CL: Control layer
*/
[_CL] = KEYMAP(
_______, _______, _______,_______,_______,_______,_______,_______,_______,_______, _______, _______, _______, _______, RGB_TOG, RGB_VAI, \
_______, _______, _______,_______,RESET, _______,_______,_______,_______,_______, _______, _______, _______, _______, RGB_VAD, \
_______, _______, MO(_CL),_______,_______,_______,_______,_______,_______,_______, _______, _______, _______, _______, \
MO(_FL), _______, _______,_______,_______,_______,_______,_______,_______,_______, _______, _______, _______, MO(_FL), RGB_SAI, \
_______, _______, _______,_______, RGB_MOD, RGB_MOD, _______, _______, _______, _______, RGB_HUD, RGB_SAD, RGB_HUI),
};
/* This is a list of user defined functions. F(N) corresponds to item N
of this list.
*/
const uint16_t PROGMEM fn_actions[] = {
[0] = ACTION_FUNCTION(0), // Calls action_function()
};
void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) {
static uint8_t mods_pressed;
static bool mod_flag;
switch (id) {
case 0:
/* Handle the combined Grave/Esc key
*/
mods_pressed = get_mods()&GRAVE_MODS; // Check to see what mods are pressed
if (record->event.pressed) {
/* The key is being pressed.
*/
if (mods_pressed) {
mod_flag = true;
add_key(KC_GRV);
send_keyboard_report();
} else {
add_key(KC_ESC);
send_keyboard_report();
}
} else {
/* The key is being released.
*/
if (mod_flag) {
mod_flag = false;
del_key(KC_GRV);
send_keyboard_report();
} else {
del_key(KC_ESC);
send_keyboard_report();
}
}
break;
}
}

View File

@ -1,7 +1,8 @@
#include "clueboard.h"
// Used for SHIFT_ESC
#define MODS_CTRL_MASK (MOD_BIT(KC_LSHIFT)|MOD_BIT(KC_RSHIFT))
// Helpful defines
#define GRAVE_MODS (MOD_BIT(KC_LSHIFT)|MOD_BIT(KC_RSHIFT)|MOD_BIT(KC_LGUI)|MOD_BIT(KC_RGUI)|MOD_BIT(KC_LALT)|MOD_BIT(KC_RALT))
#define _______ KC_TRNS
// Each layer gets a name for readability, which is then used in the keymap matrix below.
// The underscores don't mean anything - you can have a layer called STUFF or any other name.
@ -9,21 +10,10 @@
// entirely and just use numbers.
#define _BL 0
#define _FL 1
#define _RS 2
#define _CL 2
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* Keymap _BL: (Base Layer) Default Layer
* ,--------------------------------------------------------------------------. ,----.
* |Esc~| 1| 2| 3| 4| 5| 6| 7| 8| 9| 0| -| =| \| BS| |PGUP|
* |--------------------------------------------------------------------------| |----|
* | Tab| Q| W| E| R| T| Y| U| I| O| P| [| ]| \| |PGDN|
* |--------------------------------------------------------------------------| `----'
* |Capslck| A| S| D| F| G| H| J| K| L| ;| '| # | Ent|
* |-----------------------------------------------------------------------------.
* |Shift| BS| Z| X| C| V| B| N| M| ,| .| /| BS|Shift| UP|
* |------------------------------------------------------------------------|----|----.
* | Ctrl| Gui| Alt| MHen| Space| Space| Hen| Alt| Ctrl| _FL|LEFT|DOWN|RGHT|
* `----------------------------------------------------------------------------------'
/* Keymap _BL: Base Layer (Default Layer)
*/
[_BL] = KEYMAP(
F(0), KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_GRV, KC_BSPC, KC_PGUP, \
@ -33,61 +23,46 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
KC_LCTL, KC_LGUI, KC_LALT, KC_MHEN, KC_SPC,KC_SPC, KC_HENK, KC_RALT, KC_RCTL, MO(_FL), KC_LEFT, KC_DOWN, KC_RGHT),
/* Keymap _FL: Function Layer
* ,--------------------------------------------------------------------------. ,----.
* | `| F1| F2| F3| F4| F5| F6| F7| F8| F9| F10| F11| F12| | Del| |BLIN|
* |--------------------------------------------------------------------------| |----|
* | | | | | | | | |PScr|SLck|Paus| | | | |BLDE|
* |--------------------------------------------------------------------------| `----'
* | | | _RS| | | | | | | | | | | |
* |-----------------------------------------------------------------------------.
* | | | | | | | | | | | | | | |PGUP|
* |------------------------------------------------------------------------|----|----.
* | | | | | | | | | | _FL|HOME|PGDN| END|
* `----------------------------------------------------------------------------------'
*/
[_FL] = KEYMAP(
KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_TRNS, KC_DEL, BL_STEP, \
KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_PSCR,KC_SLCK, KC_PAUS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, \
KC_TRNS, KC_TRNS, MO(_RS),KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, \
KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PGUP, \
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, MO(_FL), KC_HOME, KC_PGDN, KC_END),
KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, KC_DEL, BL_STEP, \
_______, _______, _______,_______,_______,_______,_______,_______,KC_PSCR,KC_SLCK, KC_PAUS, _______, _______, _______, _______, \
_______, _______, MO(_CL),_______,_______,_______,_______,_______,_______,_______, _______, _______, _______, _______, \
_______, _______, _______,_______,_______,_______,_______,_______,_______,_______, _______, _______, _______, _______, KC_PGUP, \
_______, _______, _______, _______, _______,_______, _______, _______, _______, MO(_FL), KC_HOME, KC_PGDN, KC_END),
/* Keymap _RS: Reset layer
* ,--------------------------------------------------------------------------. ,----.
* | | | | | | | | | | | | | | | | | |
* |--------------------------------------------------------------------------| |----|
* | | | | |RESET| | | | | | | | | | | |
* |--------------------------------------------------------------------------| `----'
* | | | _RS| | | | | | | | | | | |
* |-----------------------------------------------------------------------------.
* | | | | | | | | | | | | | | | |
* |------------------------------------------------------------------------|----|----.
* | | | | | | | | | | _FL| | | |
* `----------------------------------------------------------------------------------'
/* Keymap _CL: Control layer
*/
[_RS] = KEYMAP(
KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_TOG, RGB_VAI, \
KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS,RESET, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_VAD, \
KC_TRNS, KC_TRNS, MO(_RS),KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, \
MO(_FL), KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, MO(_FL), RGB_SAI, \
KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS, RGB_MOD, RGB_MOD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_HUD, RGB_SAD, RGB_HUI),
};
enum function_id {
SHIFT_ESC,
[_CL] = KEYMAP(
_______, _______, _______,_______,_______,_______,_______,_______,_______,_______, _______, _______, _______, _______, RGB_TOG, RGB_VAI, \
_______, _______, _______,_______,RESET, _______,_______,_______,_______,_______, _______, _______, _______, _______, RGB_VAD, \
_______, _______, MO(_CL),_______,_______,_______,_______,_______,_______,_______, _______, _______, _______, _______, \
MO(_FL), _______, _______,_______,_______,_______,_______,_______,_______,_______, _______, _______, _______, MO(_FL), RGB_SAI, \
_______, _______, _______,_______, RGB_MOD, RGB_MOD, _______, _______, _______, _______, RGB_HUD, RGB_SAD, RGB_HUI),
};
/* This is a list of user defined functions. F(N) corresponds to item N
of this list.
*/
const uint16_t PROGMEM fn_actions[] = {
[0] = ACTION_FUNCTION(SHIFT_ESC),
[0] = ACTION_FUNCTION(0), // Calls action_function()
};
void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) {
static uint8_t shift_esc_shift_mask;
static uint8_t mods_pressed;
static bool mod_flag;
switch (id) {
case SHIFT_ESC:
shift_esc_shift_mask = get_mods()&MODS_CTRL_MASK;
case 0:
/* Handle the combined Grave/Esc key
*/
mods_pressed = get_mods()&GRAVE_MODS; // Check to see what mods are pressed
if (record->event.pressed) {
if (shift_esc_shift_mask) {
/* The key is being pressed.
*/
if (mods_pressed) {
mod_flag = true;
add_key(KC_GRV);
send_keyboard_report();
} else {
@ -95,7 +70,10 @@ void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) {
send_keyboard_report();
}
} else {
if (shift_esc_shift_mask) {
/* The key is being released.
*/
if (mod_flag) {
mod_flag = false;
del_key(KC_GRV);
send_keyboard_report();
} else {

Binary file not shown.

After

Width:  |  Height:  |  Size: 110 KiB

View File

@ -0,0 +1,17 @@
```
___ _____ _ _ _ __ __ _ __
|__ \ / ____| | | | | | / / / /(_) / /
||) | | | | |_ _ ___| |__ ___ __ _ _ __ __| | / /_ / /_ / /
|/ / | | | | | | |/ _ \ '_ \ / _ \ / _` | '__/ _` | | '_ \| '_ \ / /
|_| | |____| | |_| | __/ |_) | (_) | (_| | | | (_| | | (_) | (_) / / _
(_) \_____|_|\__,_|\___|_.__/ \___/ \__,_|_| \__,_| \___/ \___/_/ (_)
```
![Clueboard Layout Image](layout.png)
# Default Clueboard Layout
This is the default layout that comes flashed on every Clueboard. For the most
part it's a straightforward and easy to follow layout. The only unusual key is
the key in the upper left, which sends Escape normally, but Grave when any of
the Ctrl, Alt, or GUI modifiers are held down.

View File

@ -0,0 +1,86 @@
#include "clueboard.h"
// Helpful defines
#define GRAVE_MODS (MOD_BIT(KC_LSHIFT)|MOD_BIT(KC_RSHIFT)|MOD_BIT(KC_LGUI)|MOD_BIT(KC_RGUI)|MOD_BIT(KC_LALT)|MOD_BIT(KC_RALT))
#define _______ KC_TRNS
// Each layer gets a name for readability, which is then used in the keymap matrix below.
// The underscores don't mean anything - you can have a layer called STUFF or any other name.
// Layer names don't all need to be of the same length, obviously, and you can also skip them
// entirely and just use numbers.
#define _BL 0
#define _FL 1
#define _CL 2
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* Keymap _BL: Base Layer (Default Layer)
*/
[_BL] = KEYMAP(
F(0), KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_GRV, KC_BSPC, KC_PGUP, \
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_PGDN, \
KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NUHS, KC_ENT, \
KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RO, KC_RSFT, KC_UP, \
KC_LCTL, KC_LALT, KC_LGUI,KC_MHEN, KC_SPC, KC_SPC, KC_HENK, KC_RGUI, KC_RCTL, MO(_FL), KC_LEFT, KC_DOWN, KC_RGHT),
/* Keymap _FL: Function Layer
*/
[_FL] = KEYMAP(
KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, KC_DEL, BL_STEP, \
_______, _______, _______,_______,_______,_______,_______,_______,_______,_______, _______, _______, _______, _______, _______, \
_______, _______, MO(_CL),_______,_______,_______,_______,_______,_______,_______, _______, _______, _______, _______, \
_______, _______, _______,_______,_______,_______,_______,_______,_______,_______, _______, _______, _______, _______, KC_PGUP, \
_______, _______, _______, _______, _______,_______, _______, _______, _______, MO(_FL), KC_HOME, KC_PGDN, KC_END),
/* Keymap _CL: Control layer
*/
[_CL] = KEYMAP(
_______, _______, _______,_______,_______,_______,_______,_______,_______,_______, _______, _______, _______, _______, RGB_TOG, RGB_VAI, \
_______, _______, _______,_______,RESET, _______,_______,_______,_______,_______, _______, _______, _______, _______, RGB_VAD, \
_______, _______, MO(_CL),_______,_______,_______,_______,_______,_______,_______, _______, _______, _______, _______, \
MO(_FL), _______, _______,_______,_______,_______,_______,_______,_______,_______, _______, _______, _______, MO(_FL), RGB_SAI, \
_______, _______, _______,_______, RGB_MOD, RGB_MOD, _______, _______, _______, _______, RGB_HUD, RGB_SAD, RGB_HUI),
};
/* This is a list of user defined functions. F(N) corresponds to item N
of this list.
*/
const uint16_t PROGMEM fn_actions[] = {
[0] = ACTION_FUNCTION(0), // Calls action_function()
};
void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) {
static uint8_t mods_pressed;
static bool mod_flag;
switch (id) {
case 0:
/* Handle the combined Grave/Esc key
*/
mods_pressed = get_mods()&GRAVE_MODS; // Check to see what mods are pressed
if (record->event.pressed) {
/* The key is being pressed.
*/
if (mods_pressed) {
mod_flag = true;
add_key(KC_GRV);
send_keyboard_report();
} else {
add_key(KC_ESC);
send_keyboard_report();
}
} else {
/* The key is being released.
*/
if (mod_flag) {
mod_flag = false;
del_key(KC_GRV);
send_keyboard_report();
} else {
del_key(KC_ESC);
send_keyboard_report();
}
}
break;
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 105 KiB

View File

@ -0,0 +1,15 @@
```
___ _____ _ _ _ __ __ _ __
|__ \ / ____| | | | | | / / / /(_) / /
||) | | | | |_ _ ___| |__ ___ __ _ _ __ __| | / /_ / /_ / /
|/ / | | | | | | |/ _ \ '_ \ / _ \ / _` | '__/ _` | | '_ \| '_ \ / /
|_| | |____| | |_| | __/ |_) | (_) | (_| | | | (_| | | (_) | (_) / / _
(_) \_____|_|\__,_|\___|_.__/ \___/ \__,_|_| \__,_| \___/ \___/_/ (_)
```
![Clueboard Layout Image](layout.png)
# Default Clueboard Layout for Mac
This is the default Clueboard layout with Alt and GUI switched to match Mac
conventions.

View File

@ -1,85 +0,0 @@
#include "clueboard.h"
// Used for SHIFT_ESC
#define MODS_CTRL_MASK (MOD_BIT(KC_LSHIFT)|MOD_BIT(KC_RSHIFT))
// Each layer gets a name for readability, which is then used in the keymap matrix below.
// The underscores don't mean anything - you can have a layer called STUFF or any other name.
// Layer names don't all need to be of the same length, obviously, and you can also skip them
// entirely and just use numbers.
#define _BL 0
#define _FL 1
#define _RS 2
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* Keymap _BL: (Base Layer) Default Layer
* ,--------------------------------------------------------------------------. ,----.
* | Esc| 1| 2| 3| 4| 5| 6| 7| 8| 9| 0| -| =| ~| BS| |PgUp|
* |--------------------------------------------------------------------------| |----|
* | Tab| Q| W| E| R| T| Y| U| I| O| P| [| ]| \| |PgDn|
* |--------------------------------------------------------------------------| `----'
* |Capslck| A| S| D| F| G| H| J| K| L| ;| '| # | Ent|
* |-----------------------------------------------------------------------------.
* |Shift| BS| Z| X| C| V| B| N| M| ,| .| /| BS|Shift| Up|
* |------------------------------------------------------------------------|----|----.
* | Ctrl| Alt| Gui| MHen| Space| Space| Hen| Gui| Alt| Ctrl|Left|Down|Rght|
* `----------------------------------------------------------------------------------'
*/
[_BL] = KEYMAP(
KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_GRV, KC_BSPC, KC_PGUP, \
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_PGDN, \
KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NUHS, KC_ENT, \
MO(_FL), KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, MO(_FL), KC_UP, \
KC_LCTL, KC_LALT, KC_LGUI,KC_MHEN, KC_SPC, KC_SPC, KC_HENK, KC_RGUI, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT),
/* Keymap _FL: Function Layer
* ,--------------------------------------------------------------------------. ,----.
* | `| F1| F2| F3| F4| F5| F6| F7| F8| F9| F10| F11| F12| | Del| |BLIN|
* |--------------------------------------------------------------------------| |----|
* | | | | | | | | |PScr|SLck|Paus| | | | |BLDE|
* |--------------------------------------------------------------------------| `----'
* | | | _RS| | | | | | | | | | | |
* |-----------------------------------------------------------------------------.
* | | | | | | | | | | | | | | |PGUP|
* |------------------------------------------------------------------------|----|----.
* | | | | | | | | | | _FL|HOME|PGDN| END|
* `----------------------------------------------------------------------------------'
*/
[_FL] = KEYMAP(
KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_TRNS, KC_DEL, BL_STEP, \
KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_SLCK, KC_PAUS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, \
KC_TRNS, KC_TRNS, MO(_RS),KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, \
MO(_FL), KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, MO(_FL), KC_PGUP, \
KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS, KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_PGDN, KC_END),
/* Keymap _RS: Reset/Underlight layer
* ,--------------------------------------------------------------------------. ,----.
* | | | | | | | | | | | | | | | | | |
* |--------------------------------------------------------------------------| |----|
* | | | | |RESET| | | | | | | | | | | |
* |--------------------------------------------------------------------------| `----'
* | | | _RS| | | | | | | | | | | |
* |-----------------------------------------------------------------------------.
* | | | | | | | | | | | | | | | |
* |------------------------------------------------------------------------|----|----.
* | | | | | | | | | | _FL| | | |
* `----------------------------------------------------------------------------------'
*/
[_RS] = KEYMAP(
KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_TOG, RGB_VAI, \
KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS,RESET, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_VAD, \
KC_TRNS, KC_TRNS, MO(_RS),KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, \
MO(_FL), KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, MO(_FL), RGB_SAI, \
KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS, RGB_MOD, RGB_MOD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_HUD, RGB_SAD, RGB_HUI),
};
/*enum function_id {
};*/
const uint16_t PROGMEM fn_actions[] = {
};
void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) {
switch (id) {
}
}

View File

@ -0,0 +1,47 @@
#include "clueboard.h"
// Helpful defines
#define _______ KC_TRNS
// Each layer gets a name for readability, which is then used in the keymap matrix below.
// The underscores don't mean anything - you can have a layer called STUFF or any other name.
// Layer names don't all need to be of the same length, obviously, and you can also skip them
// entirely and just use numbers.
#define _BL 0
#define _FL 1
#define _CL 2
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* Keymap _BL: Base Layer (Default Layer)
*/
[_BL] = KEYMAP(
KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_GRV, KC_BSPC, KC_PGUP, \
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_PGDN, \
KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NUHS, KC_ENT, \
MO(_FL), KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, MO(_FL), KC_UP, \
KC_LCTL, KC_LALT, KC_LGUI,KC_MHEN, KC_SPC, KC_SPC, KC_HENK, KC_RGUI, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT),
/* Keymap _FL: Function Layer
*/
[_FL] = KEYMAP(
KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, KC_DEL, BL_STEP, \
_______, _______, _______,_______,_______,_______,_______,_______,_______,KC_SLCK, KC_PAUS, _______, _______, _______, _______, \
_______, _______, MO(_CL),_______,_______,_______,_______,_______,_______,_______, _______, _______, _______, _______, \
MO(_FL), _______, _______,_______,_______,_______,_______,_______,_______,_______, _______, _______, _______, MO(_FL), KC_PGUP, \
_______, _______, _______,_______, _______,_______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_END),
/* Keymap _CL: Reset/Underlight layer
*/
[_CL] = KEYMAP(
_______, _______, _______,_______,_______,_______,_______,_______,_______,_______, _______, _______, _______, _______, RGB_TOG, RGB_VAI, \
_______, _______, _______,_______,RESET, _______,_______,_______,_______,_______, _______, _______, _______, _______, RGB_VAD, \
_______, _______, MO(_CL),_______,_______,_______,_______,_______,_______,_______, _______, _______, _______, _______, \
MO(_FL), _______, _______,_______,_______,_______,_______,_______,_______,_______, _______, _______, _______, MO(_FL), RGB_SAI, \
_______, _______, _______,_______, RGB_MOD, RGB_MOD, _______, _______, _______, _______, RGB_HUD, RGB_SAD, RGB_HUI),
};
const uint16_t PROGMEM fn_actions[] = {
};
void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) {
};

Binary file not shown.

After

Width:  |  Height:  |  Size: 109 KiB

View File

@ -0,0 +1,14 @@
```
___ _____ _ _ _ __ __ _ __
|__ \ / ____| | | | | | / / / /(_) / /
||) | | | | |_ _ ___| |__ ___ __ _ _ __ __| | / /_ / /_ / /
|/ / | | | | | | |/ _ \ '_ \ / _ \ / _` | '__/ _` | | '_ \| '_ \ / /
|_| | |____| | |_| | __/ |_) | (_) | (_| | | | (_| | | (_) | (_) / / _
(_) \_____|_|\__,_|\___|_.__/ \___/ \__,_|_| \__,_| \___/ \___/_/ (_)
```
![Clueboard Layout Image](layout.png)
# Maximised Clueboard Layout
This layout is intended for a board with one or both shifts split. The outside key on the split shift is an Fn, while the inside is shift. The bottom row has all the mods on both sides, optimised for a Mac.

View File

@ -0,0 +1 @@
MOUSEKEY_ENABLE = yes

View File

@ -0,0 +1,96 @@
#include "clueboard.h"
// Helpful defines
#define GRAVE_MODS (MOD_BIT(KC_LSHIFT)|MOD_BIT(KC_RSHIFT)|MOD_BIT(KC_LGUI)|MOD_BIT(KC_RGUI)|MOD_BIT(KC_LALT)|MOD_BIT(KC_RALT))
#define _______ KC_TRNS
// Each layer gets a name for readability, which is then used in the keymap matrix below.
// The underscores don't mean anything - you can have a layer called STUFF or any other name.
// Layer names don't all need to be of the same length, obviously, and you can also skip them
// entirely and just use numbers.
#define _BL 0
#define _FL 1
#define _CL 2
#define _ML 3
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* Keymap _BL: Base Layer (Default Layer)
*/
[_BL] = KEYMAP(
F(0), KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_GRV, KC_BSPC, KC_PGUP, \
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_PGDN, \
KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NUHS, KC_ENT, \
KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RO, KC_RSFT, KC_UP, \
KC_LCTL, KC_LGUI, KC_LALT, KC_MHEN, KC_SPC,KC_SPC, KC_HENK, KC_RALT, KC_RCTL, MO(_FL), KC_LEFT, KC_DOWN, KC_RGHT),
/* Keymap _FL: Function Layer
*/
[_FL] = KEYMAP(
KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, KC_DEL, BL_STEP, \
_______, _______, _______,_______,_______,_______,_______,_______,KC_PSCR,KC_SLCK, KC_PAUS, _______, _______, _______, _______, \
_______, _______, MO(_CL),_______,_______,_______,_______,_______,_______,_______, _______, _______, _______, _______, \
_______, _______, _______,_______,_______,_______,_______,_______,_______,_______, _______, _______, _______, _______, KC_PGUP, \
_______, _______, _______, _______, _______,_______, _______, _______, _______, MO(_FL), KC_HOME, KC_PGDN, KC_END),
/* Keymap _CL: Control layer
*/
[_CL] = KEYMAP(
_______, _______, _______,_______,_______,_______,_______,_______,_______,_______, _______, _______, _______, _______, RGB_TOG, RGB_VAI, \
_______, _______, _______,_______,RESET, _______,_______,_______,_______,_______, _______, _______, _______, _______, RGB_VAD, \
_______, _______, MO(_CL),_______,_______,_______,_______,_______,_______,_______, _______, _______, _______, _______, \
MO(_FL), _______, _______,_______,_______,_______,_______,_______,_______,_______, _______, _______, _______, MO(_FL), RGB_SAI, \
_______, _______, _______,_______, RGB_MOD, RGB_MOD, _______, _______, _______, _______, RGB_HUD, RGB_SAD, RGB_HUI),
/* Keymap _ML: Mouse layer
*/
[_ML] = KEYMAP(
_______, _______, _______,_______,_______,_______,_______,_______,_______,_______, _______, _______, _______, _______, _______, _______, \
_______, _______, _______,_______,_______,_______,_______,_______,_______,_______, _______, _______, _______, _______, _______, \
_______, _______, KC_BTN3,KC_BTN2,KC_BTN1,_______,_______,_______,_______,_______, _______, _______, _______, _______, \
_______, _______, _______,_______,_______,_______,_______,_______,_______,_______, _______, _______, _______, _______, KC_MS_U, \
_______, _______, _______,_______, LT(_ML, KC_SPC),LT(_ML, KC_SPC), _______, KC_BTN1, KC_BTN2, KC_BTN3, KC_MS_L, KC_MS_D,KC_MS_R),
};
/* This is a list of user defined functions. F(N) corresponds to item N
of this list.
*/
const uint16_t PROGMEM fn_actions[] = {
[0] = ACTION_FUNCTION(0), // Calls action_function()
};
void action_function(keyrecord_t *record, uint8_t id, uint8_t opt) {
static uint8_t mods_pressed;
static bool mod_flag;
switch (id) {
case 0:
/* Handle the combined Grave/Esc key
*/
mods_pressed = get_mods()&GRAVE_MODS; // Check to see what mods are pressed
if (record->event.pressed) {
/* The key is being pressed.
*/
if (mods_pressed) {
mod_flag = true;
add_key(KC_GRV);
send_keyboard_report();
} else {
add_key(KC_ESC);
send_keyboard_report();
}
} else {
/* The key is being released.
*/
if (mod_flag) {
mod_flag = false;
del_key(KC_GRV);
send_keyboard_report();
} else {
del_key(KC_ESC);
send_keyboard_report();
}
}
break;
}
}

Some files were not shown because too many files have changed in this diff Show More