* [Core] Rework PS/2 driver selection
Enabling and selecting PS/2 driver was using old approach,
so it was reworked to current approach, inspired by Serial
and WS2812 driver selections.
* [Keyboard] Update keyboards using PS/2 to use new PS/2 driver selection
* [Docs] Update PS/2 documentation to use new PS/2 driver selection
* Fix indentation
* [Core] Add PS2 to data driver
* Fix oversight in property name
Co-authored-by: Drashna Jaelre <drashna@live.com>
* Add PS/2 pins to data driven mappings
Co-authored-by: Drashna Jaelre <drashna@live.com>
* Add ARRAY_SIZE and CEILING utility macros
* Apply a coccinelle patch to use ARRAY_SIZE
* fix up some straggling items
* Fix 'make test:secure'
* Enhance ARRAY_SIZE macro to reject acting on pointers
The previous definition would not produce a diagnostic for
```
int *p;
size_t num_elem = ARRAY_SIZE(p)
```
but the new one will.
* explicitly get definition of ARRAY_SIZE
* Convert to ARRAY_SIZE when const is involved
The following spatch finds additional instances where the array is
const and the division is by the size of the type, not the size of
the first element:
```
@ rule5a using "empty.iso" @
type T;
const T[] E;
@@
- (sizeof(E)/sizeof(T))
+ ARRAY_SIZE(E)
@ rule6a using "empty.iso" @
type T;
const T[] E;
@@
- sizeof(E)/sizeof(T)
+ ARRAY_SIZE(E)
```
* New instances of ARRAY_SIZE added since initial spatch run
* Use `ARRAY_SIZE` in docs (found by grep)
* Manually use ARRAY_SIZE
hs_set is expected to be the same size as uint16_t, though it's made
of two 8-bit integers
* Just like char, sizeof(uint8_t) is guaranteed to be 1
This is at least true on any plausible system where qmk is actually used.
Per my understanding it's universally true, assuming that uint8_t exists:
https://stackoverflow.com/questions/48655310/can-i-assume-that-sizeofuint8-t-1
* Run qmk-format on core C files touched in this branch
Co-authored-by: Stefan Kerkmann <karlk90@pm.me>
* Working on new dactyl
* Preliminary build and keymap in place for 4x5_5 dactyl manuform
* Removing first attempt to use 4x5
* Updating to match c style guide
* Fixing issues after merge, deletion of dactyl_manuform.h
* Spliting out custom keymap
* Adding license headers
* Fixing EE_HANDS detection on Pro-Micro
The pro-micro was not working when I plugged into the elite-c on the
right hand side of my keyboard. Adding the SPLIT_USB_DIRECT definition
fixed the issue.
* Apply suggestions from code review
Adding Drashna's delete comments
Co-authored-by: Drashna Jaelre <drashna@live.com>
* Removed config.h for keymaps and tweaked keymap
Per Drashna's pr review, I have removed the config.h files for the
keymaps.
Also tweaked my keymap to switch backspace and enter. Added tapping
toggle for RAISE.
* Further tweaking ssedrick keymap for dactyl_manuform 4x5_5
As with most new keyboards, they take some getting used to.
I've rearranged my thumb cluster to hopfully a more long
term solution.
* Adding missing KC_BSLS to ssedrick keymap for 4x5_5
Co-authored-by: Drashna Jaelre <drashna@live.com>
* 46: Copy from 52 and file rename
* 46: File internals refer to 46, not 52
* 46: Board remove row
* 46: Keymap: Lshift becomes ctrl, Rshift a symbol
- ESC and CAPs on upper thumbs
- AltGr and App on upper thumbs
- Page up/down on upper thumbs
- F11, F12 and mods for them on adjust
* 46: Readme update for json script, tweaks
* 46: Board fix LED count
* 46: Keymap: Arrows right, symmetric layer keys
* 46: Readme: Image link with and w/o outer pinkie
* 46: Keymap: link fixed image of nav layer
* 46: Keymap: fix reaching adj layer
Co-authored-by: mmccoyd <mmccoyd@cs.berkley.edu>
* 52 Keymap.json: Set for Hillside 52
- Change script rows
* 52 Keymap.c: mirror .json
CAPSWORD, QK_BOOT, readme cleanup, EE_RST
* 52 Keymap.json: Initial files copy from 56
* 52 Keymap.json nav/edit lay, thumb shift, syms
- Del in backspace spot on sym layer
- Thumb shift OSM instead of extra space
- Nav/edit on num/fn: arrows cut copy paste undo redo, page up/down
- Fn keys bottom row to allow nav edit keys
- App and AltGr on lower row, on their layer
- Braces on index, so more common -= on middle ring.
- Adjust has Ctrl/GUI swap
- EE_RST, CAPSWORD, QK_BOOT, SPLIT_DETECT
* 52 Family: readme image and folder link
* 52 Board: initial copy from 56
* 52 Keymap via
* 52 Board: remove keys, cant columns, better ids
- .json: vid: MM, pid: H52
* 52 Keymap.c: initial.c copy from 48
* QK_BOOT EE_CLR, not ANY(), as config.qmk supports
- CAPSWRD instead of ANY, though config.qmk still converts to ANY()
* Cleanup readme
* 52 Keymap: Remove redundant key, cleanup script
* 52 Keymap: Fix template
* 52 Readme: Link lower res image better for readme
Co-authored-by: Drashna Jaelre <drashna@live.com>
* 52 Keymap: Move pretty-print script to GitHub wiki
* 52 Keymap: Link to 1024 res image thumbnails
* 52 Keymap: fix whitespace before image link
* Family: Fix image link to 1024 thumb
Co-authored-by: Drashna Jaelre <drashna@live.com>
* 52: Keymap: Caps word on a layer home row
* 52: Keymap: Arrows on right. Symmetric layer keys.
- Nav:
- Arrows on right so up/down more intuitive. Page up/down on ends
- Cut on home row, as more common
- Sym:
- Layer mods on activate hand, extras symbols on left
- Common digits on lower row
- Base:
- Layer keys symmetric, on most extended, not resting, thumb
- Mute on util key for easy use
- Swap layers 3 and 4 to match swapped thumbs
Co-authored-by: mmccoyd <mmccoyd@cs.berkley.edu>
Co-authored-by: Drashna Jaelre <drashna@live.com>