Compare commits

...

188 Commits

Author SHA1 Message Date
skullY
a380937f1f wip 2020-04-21 13:27:13 -07:00
Sergey Vlasov
e916ce5f3e Add VIA support to ID80 (#8791) 2020-04-20 16:06:48 -07:00
Brandon Schlack
086a7cf800 CFTKB Mysterium & Discipad VIA support (#8794)
* [Keyboard] Add VIA support to Mysterium

* [Keyboard] Add VIA support to Discipad
2020-04-20 16:00:01 -07:00
Ryan
99f7fe6bd4 Clean up ATSAM ifdefs (#8808) 2020-04-20 15:38:34 -07:00
umi
d0c3a4c8d5 [Docs] Japanese translation of docs/feature_encoders.md (#8843)
* add feature_encoders.md translation

* update based on comment
2020-04-20 15:36:04 -07:00
Fred Silberberg
2dca087b04 Add naked60 layout, clean up my userspace files and rules.mk. (#8848) 2020-04-20 11:00:14 +01:00
huajijam
7e4cf9ace2 Fixing DecadePad Numlock LED Bug (#8831)
* Fixing Numlock LED Bugs

* Change LED CODE to new API
2020-04-20 10:54:33 +01:00
umi
0d658e0c95 [Docs] Japanese translation of docs/feature_command.md (#8672)
* add feature_command.md translation

* update based on comment
2020-04-20 14:49:12 +09:00
Jared Hendry
1522d97c2b Add support for YMD75 rev 2 (#8853) 2020-04-20 00:58:58 +01:00
Konstantin Đorđević
2d39a9dcdb Remove no-longer-necessary LTO checks from keyboards' config.h files (#8773)
* Remove no-longer-necessary LTO checks from keyboards' config.h files

* Remove unnecessary LTO check in @danielo515's Ergodox EZ keymap

* Remove unnecessary USE_Link_Time_Optimization checks from keyboards' config.h files

Note: DISABLE_LEADER doesn't seem to be used anywhere
2020-04-19 23:56:48 +01:00
Maarten Dekkers
33bf4863f5 Fix ta-65 tsangan layouts (#8855)
The key next to the spacebar wasn't working, fixed that.

Co-authored-by: Maarten Dekkers <maartenn2001@gmail.com>
2020-04-19 23:29:15 +01:00
Maarten Dekkers
ad547c1fdd Fix Plain60 layout (#8854)
Fixes the LAYOUT_60_ansi_split_bs_rshift where the key next to right shift didn't work.

Co-authored-by: Maarten Dekkers <maartenn2001@gmail.com>
2020-04-19 23:12:19 +01:00
Chris Ko
9b70e53508 [Docs] Fixed minor typos (#8860) 2020-04-19 23:04:26 +01:00
khitsule
33a5dc4fcf [Keymap] Updates to personal keymaps (#8818)
* sync with upstream; initial iris design

* sync with upstream

* update to iris keymap

* merge upstream

* iris keymap refined

* Iris readme update

* messed up upstream merge somehow, hopefully fixed

* removed extra closing bracket

* Apply suggestions from code review

Co-Authored-By: Joel Challis <git@zvecr.com>

* change layers from define to enum per suggestions

Co-authored-by: Mysti Woodard <mystiwoodard@gmail.com>
Co-authored-by: Joel Challis <git@zvecr.com>
2020-04-19 10:15:12 -07:00
Elisiano Petrini
e0fffcde99 Updated personal preonic keymap (#8851) 2020-04-20 03:12:48 +10:00
MechMerlin
06bffbd45b [Keyboard] VIA Support: Singa x TGR Unikorn 60 (#8838)
* add via keymap

* change up VID and PID

* enabling the RGB just so VIA has access to it
2020-04-19 10:11:55 -07:00
MechMerlin
c261076f8e [Keyboard] VIA Support: KBD67mkii SOLDERED (#8837)
* add VIA keymap to soldered kbd67mkii

* clean up config file
2020-04-19 10:11:32 -07:00
Erovia
51ecd37d7b Add VIA support for Minivan (#8849)
Co-Authored-By: Joel Challis <git@zvecr.com>
2020-04-19 18:44:05 +02:00
Toshihiro Suzuki
ed5e69093c Update my keymaps (#8840) 2020-04-20 01:17:47 +10:00
Ryan
43785126a7 Merge pull request #8710 from vomindoraan/keymap_extras_fixup 2020-04-19 19:18:05 +10:00
skullydazed
8c97b4a3a4 Add a syllabus to guide people who are learning QMK (#8816) 2020-04-19 09:08:38 +02:00
Joel Challis
0698b15aa5 Update cli CI checkout to v2 (#8823) 2020-04-19 09:08:12 +02:00
Jonathan Rascher
d600631ad1 [Keymap] Rework my Tsangan layout; turn off mousekeys (#8836)
* Give Tsangan layout a real Fn2 layer

* Disable mouse keys to work around qmk#8323

I don't actually use this feature, so there's no reason for it to be
enabled anyway, and it seems to cause spurious wakeups on Windows.
2020-04-18 18:41:40 -07:00
Josh Hinnebusch
f3595f65b7 [Keyboard] add dual-direction diode capability for hbcp (#8795)
* add dual-direction diode capability

* update per PR requests

Co-authored-by: hineybush <hineybushkeyboards@gmail.com>
2020-04-18 18:06:28 -07:00
mechanicalguy21
23df763a31 [Keyboard] Adding Novem keyboard (macropad) and demo layout (#8781)
* Adding Novem keyboard (macropad) and demo layout

* Making changes suggested during pull request

* Removing keyboards/novem/keymaps/default/config.h as suggested during the pull request

* Moving keyboard to the handwired folder and changing the build line from readme in order to reflect this new location
2020-04-18 17:58:58 -07:00
Konstantin Đorđević
ed910c8e97 Add back deprecated SE_AE keycode 2020-04-19 02:56:52 +02:00
Cody Bender
7e1c0bd4c0 [Keyboard] Add Absinthe keyboard (#8769)
* Initial absinthe setup

* Update Absinthe files

* Add absinthe ANSI layout

* Update absinthe keymaps

* Update Absinthe for rev3

* Flip encoder pins

* Fix rules.mk

* Update absinthe files

* Fix absinthe ansi config

* Add RGB

* Change rules for absinthe for firmware size

* Fix pins for rev4

* Fix pins and GESC

* Remove GESC from ANSI layout

* Rebase upstream/master

* Update formatting and convention from 8769 feedback

* Format rules.mk
2020-04-18 17:40:13 -07:00
Spaceman
d2b8398f75 [Keyboard] Add DGG-56 Handwired (#8740)
* Add ddg_56 keyboard

* Add ddg_56 default keymap

* Fix config.h

* Update config.h

* Update ddg_56.h

* Update keyboards/handwired/ddg_56/readme.md

Co-Authored-By: Ryan <fauxpark@gmail.com>

* Update keyboards/handwired/ddg_56/readme.md

Co-Authored-By: Ryan <fauxpark@gmail.com>

* Update keyboards/handwired/ddg_56/info.json

Co-Authored-By: Joel Challis <git@zvecr.com>

Co-authored-by: Ryan <fauxpark@gmail.com>
Co-authored-by: Joel Challis <git@zvecr.com>
2020-04-18 17:20:42 -07:00
joseandres42
195324cc4c Add dvorak's spanish variant to quantum/keymap_extras (#8732)
* Added dvorak's spanish variant.

* Fixed spacing

* Fixed filename typo

* Applied fixes and suggestions.

* Fixed spacing

* Added sendstring_spanish_dvorak.h

* Fixed sendstring_spanish.h

* Update quantum/keymap_extras/sendstring_spanish_dvorak.h

Co-Authored-By: Ryan <fauxpark@gmail.com>

* Update quantum/keymap_extras/sendstring_spanish.h

Co-Authored-By: Ryan <fauxpark@gmail.com>

* Update quantum/keymap_extras/sendstring_spanish_dvorak.h

Co-Authored-By: Ryan <fauxpark@gmail.com>

Co-authored-by: joseandres42 <joseandres42@Orion-PC.localdomain>
Co-authored-by: Ryan <fauxpark@gmail.com>
2020-04-18 17:12:36 -07:00
Ryan
cd5399942b Merge pull request #8722 from fauxpark/keymap-extras-bepo 2020-04-19 06:58:01 +10:00
Ryan
fd4bbd8d11 Update Italian macOS keymaps and add sendstring LUTs (#8701)
* Update Italian macOS keymaps and add sendstring LUTs

* Wrong letter
2020-04-19 06:57:36 +10:00
Ryan
f43cb31476 Update French and German macOS keymaps and add sendstring LUTs (#8700) 2020-04-19 06:57:05 +10:00
Ryan
89eb3a9e42 Update Swiss French/German keymaps and add sendstring LUTs (#8689) 2020-04-19 06:56:49 +10:00
skullydazed
66d94dc22a Move everything to Python 3.6 (#8835) 2020-04-18 22:00:56 +02:00
MechMerlin
5a8f59503e VIA Support: All QMK Winkeyless.kr boards (#8846) 2020-04-18 21:45:24 +02:00
skullydazed
7918f7d61d Document the Proton C pins for manual Pro Micro conversion (#7043) 2020-04-18 10:58:59 -07:00
worldspawn00
55b43f02f0 fixing Walletburner Neuron layout for configurator (#8839)
* fixing layout for configurator

adding missing bottom row key to resolve formatting
2020-04-18 10:27:47 -07:00
Erovia
46a84ec84a Load keymap-level rules.mk when compiling keymap.json (#8841) 2020-04-18 14:29:48 +01:00
James Young
3b5998085c Add info.json for bat43 (#8824) 2020-04-17 19:26:04 +01:00
Ryan
bc13dcd349 Remove Atmel FLIP from install scripts and documentation (#8822) 2020-04-17 09:50:58 +02:00
moyi4681
55002338b1 add kbd67 rev2 via support, kbd67mkiirgb small change (#8810)
* add kbd67 rev2 via support, kbd67mkiirgb small change

add kbd67 rev2 via support, kbd67mkiirgb small change

* Update keyboards/kbdfans/kbd67/rev2/keymaps/via/keymap.c

* Update keyboards/kbdfans/kbd67/rev2/keymaps/via/keymap.c

* define DYNAMIC_KEYMAP_LAYER_COUNT 2
2020-04-16 17:41:56 -07:00
MechMerlin
4a92dd327c [Keyboard] Botanical Keyboards FM2U (#8819)
* initial commit for fm2u keyboard

* add fm2u keyboard along with VIA keymap

* add meme LAYOUT support

* minor cleanups

* fixup layout macro names
2020-04-16 12:28:49 -07:00
Mikkel Jeppesen
7873b49d40 Keeb.werk nano.slider Improved Default Layout (#8785)
* Improved default layout to match improved layout from configurator PR

* fixed keycode spacing

* Update keyboards/keebwerk/nano_slider/keymaps/default/keymap.c
2020-04-16 12:04:27 -07:00
stanrc85
fcf2b45263 Update stanrc85 rules for alice/rev1 (#8821) 2020-04-16 16:57:32 +01:00
umi
5607af8524 [Docs] Japanese translation of docs/feature_combo.md (#8671)
* add feature_combo.md translation

* change tiny word

* update based on comment

* update based on comment
2020-04-15 22:08:00 -04:00
Ryan
5a45627e17 Remove old setup scripts (#8811) 2020-04-16 00:32:40 +01:00
Andrew Kannan
17d0f6338e [Keyboard] ProjectKB Alice rev2 (#8718)
* Add revision 1 and revision 2 to ProjectKB Alice PCB

* Swap SLEEP LED to no

* Basic root rules.mk

* Apply suggestions from code review

* Update keyboards/projectkb/alice/rules.mk
2020-04-15 15:37:47 -07:00
skullydazed
484c059d86 MILC: Fix setting config values for store_true and store_false (#8813) 2020-04-15 22:49:22 +02:00
James Young
3cc68543ca KC60 Refactor (#8782) 2020-04-15 22:31:09 +02:00
MakotoKurauchi
daf6dedb02 Fix quick7 build command (#8812) 2020-04-16 03:35:42 +10:00
Ryan
e990863296 Miscellaneous stuff: remove clang-complete and autocomplete.sh, fix some rules.mk comments (#8784) 2020-04-15 02:03:49 -07:00
MakotoKurauchi
2ae39ccf38 [Keyboard] add new keyboard quick7 (#8670)
* add new keyboard quick7

* Update keyboards/yushakobo/quick7/keymaps/default/keymap.c

* Update keyboards/yushakobo/quick7/quick7.c

* Update keyboards/yushakobo/quick7/rules.mk

* Update keyboards/yushakobo/quick7/keymaps/default/keymap.c

* Update keyboards/yushakobo/quick7/readme.md

* Update keyboards/yushakobo/quick7/rules.mk

* Update keyboards/yushakobo/quick7/rules.mk

* Deleted unnecessary file.

* Comment added.

* Update keyboards/yushakobo/quick7/config.h

* Update keyboards/yushakobo/quick7/readme.md

* Update keyboards/yushakobo/quick7/keymaps/default/keymap.c

* Update keyboards/yushakobo/quick7/config.h
2020-04-14 18:45:14 -07:00
Jason Scatena
5185c52b4a [Keymap] Added custom layout for KBDFans KBD67 rev2 (#8752)
* added v1 of keyboard layout

* Update keyboards/kbdfans/kbd67/rev2/keymaps/jscatena88/keymap.c

* Update keyboards/kbdfans/kbd67/rev2/keymaps/jscatena88/keymap.c

* Update keyboards/kbdfans/kbd67/rev2/keymaps/jscatena88/keymap.c

* Update keyboards/kbdfans/kbd67/rev2/keymaps/jscatena88/keymap.c

* Update keyboards/kbdfans/kbd67/rev2/keymaps/jscatena88/keymap.c

* Delete config.h
2020-04-14 18:38:48 -07:00
x1
c0b99badcb [keyboard] Add kudox rev3 (#8704)
* Add kudox rev3.

* Add default keymap for Kudox rev3.

* Add JIS keymap for Kudox rev3.

* Modified default revision of kudox rev3.

* Modified unnecessary codes.
2020-04-14 18:24:56 -07:00
Pete Johanson
f9bb9ef0b8 CLI: Fix doctor error when can't run bin/qmk --version. (#8796) 2020-04-14 16:58:00 +02:00
Øyvind Wilhelmsen
3d9ffd3efb deleted unused keymap (#8797) 2020-04-14 12:09:33 +01:00
mimkorn
3cea9fedff Add missing repository name to qmk setup w/ github (#8792)
Using just qmk setup <github_username> would fail w/ "Could not find repo github.com/<username>, whereas the repo is actually after another slash after the user name. Can consider changing code to add the default forked repo name if slash is not detected in the arg.
2020-04-14 21:03:13 +10:00
eucalyn
575d99816e Configure RGBLIGHT_SPLIT for Mint60 (#8788) 2020-04-13 23:40:15 +01:00
Aplyard
4bccde37d4 [Keyboard] Aplx6 (#8727)
* Create test.txt

* aplx6

* Delete test.txt

* fff

* Delete ffff

* test compile

* Create README.md

* edited

* requests

* Update keyboards/aplx6/README.md

* Update keyboards/aplx6/README.md

* Update keyboards/aplx6/README.md

* Update keyboards/aplx6/README.md

* Update keyboards/aplx6/README.md

* Update keyboards/aplx6/README.md

* Update keyboards/aplx6/README.md

* Update keyboards/aplx6/rules.mk

* Update keyboards/aplx6/rules.mk

* Update keyboards/aplx6/README.md

* Update keyboards/aplx6/README.md

* Update keyboards/aplx6/README.md

* pins update

* update

* update pins

* Update keyboards/aplx6/README.md

* Update keyboards/aplx6/README.md
2020-04-13 12:13:41 -07:00
Pavlos Vinieratos
f6b40da7f8 update pvinis keymap (#8746)
* update a bunch of stuff

Better rules, better config, added encoders, lights, audio.

* some fmt

* more fmt
2020-04-13 11:59:04 -07:00
Pete Johanson
6fb048fdaf CLI: Use shutil.which to detect gmake, instead of OS check. 2020-04-13 10:48:27 -07:00
Pete Johanson
06b571aa53 CLI: Invoke gmake on FreeBSD when using qmk compile.
* Current makefiles aren't portable, so invoke gmake on FreeBSD.
2020-04-13 10:48:27 -07:00
umi
355b693e4e [Docs] Japanese translation of docs/feature_dip_switch.md (#8673)
* add git_dip_switch.md translation

* update based on comment

* update based on comment
2020-04-13 10:25:57 -07:00
Casey Leask
f514ad5503 Fix broken KBD8X MKII Hardware link (#8787) 2020-04-13 15:45:51 +01:00
fauxpark
09a1917103 Slight rename of double angle quote keycodes 2020-04-13 21:15:37 +10:00
Nick Brassel
46e4493761 Fix AVR SPI parameter configuration, remove timeouts due to sync protocol. (#8775) 2020-04-13 17:09:50 +10:00
MechMerlin
157d121c71 VIA Support: Jane V2 (#8735)
* add VIA enabled keymap with some layers taken out for space

* get a more sane VID and PID so we don't collide with the other BMC powered boards

* small cleanups

* Update keyboards/tgr/jane/keymaps/via/keymap.c

Co-Authored-By: Ryan <fauxpark@gmail.com>

* add tkl_ansi_tsangan LAYOUT

* add tkl_iso_tsangan LAYOUT

Co-authored-by: Ryan <fauxpark@gmail.com>
2020-04-13 08:21:22 +02:00
Gautham Yerroju
7e6b550ebf Add a simple custom keymap for Gergo. (#8662)
* Add a simple custom keymap for Gergo.

* update readme, keymap cleanup
2020-04-13 07:37:23 +02:00
Joshua Rubin
7f4ce4a8b7 Add via support to keebio/bdn9 (#8620)
Signed-off-by: Joshua Rubin <me@jawa.dev>
2020-04-13 07:32:46 +02:00
MechMerlin
6452973761 DP60 VIA cleanups (#8697)
* some via cleanups for the dp60 firmware

* update matrix size
2020-04-13 07:28:05 +02:00
codecoffeecode
a2309b306a Adding Niu Mini to VIA (#8702)
* porting the niu_mini to via

* Wrong values in mk

* Updating to unique Vendor ID and Product ID

* Addressing zvecr comments

* Addressing fauxpark comments

Co-Authored-By: Ryan <fauxpark@gmail.com>

Co-authored-by: Lauren Harris <lauren.y.harris@outlook.com>
Co-authored-by: Ryan <fauxpark@gmail.com>
2020-04-13 07:22:26 +02:00
Nick Brassel
52ac6c4303 Allow trailing whitespace in markdown docs, for formatting purposes. (#8774) 2020-04-13 11:31:40 +10:00
Nick Brassel
05e9ff6554 Add support for hardware and board initialisation overrides. (#8330)
* Add support for hardware and board initialisation overrides.

* qmk cformat.

* Add some documentation.

* Docs clarity.

* Make early_hardware_init_pre a no-op for now, until migrations occur.

* Doco update

* Make distinction between keyboard and ChibiOS board in docs

* Doc anchors.

* Update tmk_core/protocol/chibios/main.c

Co-Authored-By: Joel Challis <git@zvecr.com>

* Rework bootloader entry to be off by default, allow opting-in.

Co-authored-by: Joel Challis <git@zvecr.com>
2020-04-13 09:39:38 +10:00
Sergey Vlasov
17bda000f3 [Keyboard] Add IDOBAO ID80 (#8728)
* id80: New keyboard (IDOBAO ID80)

Add initial support for the IDOBAO ID80 keyboard.

Most source files were generated by the KBFirmware JSON to QMK Parser
(https://noroadsleft.github.io/kbf_qmk_converter/) based on the
ID80.json file provided by the keyboard vendor.  The only change to
rules.mk was to set `COMMAND_ENABLE = no` to make the compiled firmware
fit into the available flash space.

* id80: Update default keymap to match stock

Update the Fn layer in the default keymap to match the stock firmware
which was actually flashed into the PCB.

* id80: Add Caps Lock indicator support

Although the KBFirmware JSON includes information about the MCU pins
used for keyboard indicator LEDs, the KBF to QMK converter does not
generate the required code automatically.  Implement the LED handling
code, and at the same time switch from the older `led_set_kb` API to the
newer `led_update_kb`.

* id80: Remove placeholder functions

The provided skeletons for `matrix_scan_kb` and `process_record_kb` did
not do anything useful, so remove them.

* id80: Use Esc as the Bootmagic Lite activation key

The Esc key is not at the (0, 0) position in the ID80 matrix, therefore
setting `BOOTMAGIC_LITE_ROW` and `BOOTMAGIC_LITE_COLUMN` is required to
use the Esc key for Bootmagic Lite.

* id80: Update info.json

Replace info.json generated by the KBF to QMK converter with another
version generated using http://www.keyboard-layout-editor.com/ and the
KLE raw to QMK info.json converter (https://qmk.fm/converter/).  The
updated info.json has the correct physical layout (the distance between
the function key row and the main block is actually 0.25U, but the
vendor-provided ID80.json had 0.5U there) and correct key labels (using
the stock layout instead of raw matrix locations and pin names).

* id80: Enable NKRO

The default keymap is updated to have NK_TOGG at Fn+N, like most other
keyboards which have NKRO enabled.

* id80: Use unique USB vendor/product ID

Having an unique USB vendor/product ID is required for VIA support.
The vendor ID value is the same as for the `idobo` (ID75) keyboard.

* id80: Fix right modifiers in the default keymap

For some reason the default keymap converted from the vendor-supplied
JSON had the right Shift, Alt and Ctrl keys mapped to the left side
modifier keycodes.

* id80: Remove empty row 6 (F0) from matrix

The matrix layout which was defined in the vendor-supplied ID80.json
file had 12 rows which corresponded to the left and right parts of the
6 physical rows.  However, the row 6 of the matrix (connected to the F0
pin), which corresponded to the right part of the physical bottom row,
was completely empty (all 9 keys of the bottom row were placed in the
matrix row for the left part).  Keeping this row in the matrix just
wastes resources; in particular, when the VIA support is enabled, having
a 9×12 matrix with 4 layers leaves only 122 bytes available for dynamic
macros, which is less than the recommended minimum of 128 bytes.
Removing the unused row reduces the matrix size to 9×11, which leaves
194 bytes of EEPROM space for dynamic macros.

* id80: Update row numbers in the LAYOUT macro

Update row numbers in the names of the LAYOUT macro parameters after
removing a row in the middle.

* id80: Set RGBLED_NUM to 20 to match the actual PCB

The vendor-supplied ID80.json file specified that the PCB should have
28 RGB LEDs in the chain.  However, the actual PCB that was shipped
from AliExpress had 20 LEDs in the chain (16 underglow LEDs, and then 4
more LEDs on top of the PCB, to the right of the Enter key location).
Update RGBLED_NUM to match the actual PCB.
2020-04-12 23:55:01 +01:00
Danny
46a69d1f3b [Keyboard] Quefrency Rev2 Caps Lock LED, set lighting defaults (#8729)
* Add support for Caps Lock LED

Currently ignores the fact that led_state is not synced between halves, so caps lock LED doesn't do anything if USB is plugged into right half

* Set initial backlight and RGB mode/values on blank EEPROM

* Set default VIA layout options

* Add backlight/RGB ifdefs

* Set bootloaders for each rev
2020-04-12 13:09:09 -07:00
Derek
b56a41800a [Keyboard] Add handwired Fc200rt qmk board (#8726)
* Added handwired Leopold fc200rt

* Update readme.md

* Update readme.md

* Update readme.md

* Update readme.md

* Delete readme.md

* Delete config.h

* Update readme.md

* Update rules.mk

* Update keyboards/handwired/fc200rt_qmk/fc200rt_qmk.c

Co-Authored-By: Ryan <fauxpark@gmail.com>

Co-authored-by: Ryan <fauxpark@gmail.com>
2020-04-12 13:05:46 -07:00
Takeshi ISHII
d3c29c9b3c Bugfix for quantum/dip_switch.c (#8731)
* dipsw test on helix/rev2/sc/back:five_rows

* bug fix quantum/dip_switch.c

* test end. remove test code. Revert "dipsw test on helix/rev2/sc/back:five_rows"

This reverts commit 4b13ebb996e1c4997e6deb1fa3b3227db5fa9661.

* dipsw test on helix/rev2/sc/back:five_rows

* update quantum/dip_switch.c

* test end. remove test code. Revert "dipsw test on helix/rev2/sc/back:five_rows"

This reverts commit bf99ace095528ad65c531229bcf5ece037dda595.
2020-04-12 12:44:24 -07:00
Konstantin Đorđević
370577e4ed Add *OPT aliases for *ALT keycodes and macros (#8714) 2020-04-12 11:37:55 -07:00
George Petri
6e84247ec2 [Keymap] Add keymap for Nyquist rev3 (#8706)
* copy nyquist setup

* enable i2c

* update colors

* update readme

* Update keyboards/keebio/nyquist/keymaps/georgepetri3/keymap.c

Co-Authored-By: Joel Challis <git@zvecr.com>

Co-authored-by: Joel Challis <git@zvecr.com>
2020-04-12 11:33:11 -07:00
QMK Bot
5380c29dd7 format code according to conventions [skip ci] 2020-04-12 18:11:52 +00:00
artjomsR
23f19852b9 Added Workman ZXCVM variation (#8686)
* Added Workman ZXCVM variation

* Update quantum/keymap_extras/keymap_workman_zxcvm.h

Co-Authored-By: Konstantin Đorđević <vomindoraan@gmail.com>

* Update quantum/keymap_extras/sendstring_workman_zxcvm.h

Co-Authored-By: Ryan <fauxpark@gmail.com>

* Update quantum/keymap_extras/keymap_workman_zxcvm.h

Co-Authored-By: Ryan <fauxpark@gmail.com>

* Update quantum/keymap_extras/keymap_workman_zxcvm.h

Co-Authored-By: Ryan <fauxpark@gmail.com>

* Update quantum/keymap_extras/sendstring_workman_zxcvm.h

Co-Authored-By: Ryan <fauxpark@gmail.com>

Co-authored-by: Konstantin Đorđević <vomindoraan@gmail.com>
Co-authored-by: Ryan <fauxpark@gmail.com>
2020-04-12 10:37:17 -07:00
jotix
8a5c1e1859 [Keyboard] jotpad16 status leds (#8643)
* jotpad16 status leds

* jotpad16

* readme.md
2020-04-12 10:25:09 -07:00
Benjamin Smith
6265b78307 [Keyboard] Add handwired BDN9-BLE (#8192)
* Add handwired BDN9-BLE

* Apply suggestions from code review

Co-Authored-By: Ryan <fauxpark@gmail.com>

* Update keyboards/handwired/bdn9_ble/rules.mk

Co-Authored-By: Ryan <fauxpark@gmail.com>

* Update keyboards/handwired/bdn9_ble/rules.mk

Co-Authored-By: Ryan <fauxpark@gmail.com>

* Update keyboards/handwired/bdn9_ble/readme.md

Co-Authored-By: James Young <18669334+noroadsleft@users.noreply.github.com>

Co-authored-by: Ryan <fauxpark@gmail.com>
Co-authored-by: James Young <18669334+noroadsleft@users.noreply.github.com>
2020-04-12 09:15:31 -07:00
Drashna Jaelre
23124b9fd1 Fix bug with layer caching in get_event_keycode (#8693)
* Fix bug with layer caching in get_event_keycode

* Improve naming
2020-04-12 17:27:17 +02:00
Andrew Kannan
eb7fc7f9d9 [Keyboard] Add CannonKeys Atlas keyboard (#8207)
* Atlas keyboard

* Update info and readme

* Update firmware

* Apply suggestions from code review

* Updates

* Add 2x2U layout

* Minor cleanup

* Fix trailing comma

* Remove line

* Apply suggestions from code review
2020-04-12 08:08:15 -07:00
Ryan
c2df714c3b Add VIA keymap for Wasdat (#8762)
* Add VIA keymap for Wasdat

* Enable Bootmagic Lite at keyboard level
2020-04-12 15:02:14 +02:00
Andrew Kannan
799b21f8cd [Keyboard] Add CannonKeys Rekt1800 keyboard (#7760)
* Add Rekt1800 keyboards

* Update keyboards/cannonkeys/rekt1800/config.h

* Update keyboards/cannonkeys/rekt1800/info.json

* Apply suggestions from code review

* Apply suggestions from code review

* Remove line

* Apply suggestions from code review
2020-04-12 03:36:03 -07:00
Joshua Moses Diamond
750179e111 Fix a couple of typos that were causing confusion (#8767) 2020-04-12 16:22:59 +10:00
James Forcier
f538b2273a Upgrade gcc version/tweak package installs in Gentoo installation (#8757)
GCC 4.9.4 is no longer available on Gentoo (or Sabayon), which causes
problems when attempting to install on either of these platforms. Since
QMK is not particularly sensitive to its GCC version, modify the version
restriction to <9 so newer versions of GCC may be installed. Since the
toolchain for arm-none-eabi isn't currently installed as part of setup,
add that as well.

Additionally, drop the Python installation as part of the Gentoo
installation process. Python is a core system package on Gentoo and can
therefore be assumed to be present; in addition, the slot restriction of
3.5 which was present is also no longer available in Gentoo.

Finally, separate the gcc rebuild invocation of `emerge` from the new
packages that may need to be installed, and apply the `--noreplace` flag
to new packages so that they are not rebuilt if already present.
2020-04-12 16:13:45 +10:00
Joel Challis
50e85f91e8 Fix compile issues with devastatingtkl (#8765) 2020-04-12 14:53:30 +10:00
Andrew Kannan
27e7f322a5 CannonKeys DB60 (Daughterboard60) PCB (#8208)
* Cannonkeys DB60 Keyboard

* WhitespacE

* Add ISO and make layer names more idiomatic

* backlight enable

* Remove big backslash from ISO

* Apply suggestions from code review

Co-Authored-By: Ryan <fauxpark@gmail.com>

* Update for correct matrix

* Apply suggestions from code review

Co-Authored-By: James Young <18669334+noroadsleft@users.noreply.github.com>
Co-Authored-By: Ryan <fauxpark@gmail.com>

* Update chibios config files

* Complete VIA keymap

* Remove ugly hack comments

* Update keyboards/cannonkeys/db60/rules.mk

Co-Authored-By: Joel Challis <git@zvecr.com>

Co-authored-by: Ryan <fauxpark@gmail.com>
Co-authored-by: James Young <18669334+noroadsleft@users.noreply.github.com>
Co-authored-by: Joel Challis <git@zvecr.com>
2020-04-11 23:21:36 +01:00
Andrew Kannan
dfdc89296b DevastatingTKL Keyboard (#8209)
* Save progress

* Finished matrix and everything

* Apply suggestions from code review

Co-Authored-By: Ryan <fauxpark@gmail.com>

* Update DevastatingTKL

* Renames

* Add renamed files

* Update chibios files and VIA keymap for completion

* Some cleanup

* Apply suggestions from code review

Co-Authored-By: James Young <18669334+noroadsleft@users.noreply.github.com>

* Update keyboards/cannonkeys/devastatingtkl/rules.mk

Co-Authored-By: Joel Challis <git@zvecr.com>

Co-authored-by: Ryan <fauxpark@gmail.com>
Co-authored-by: James Young <18669334+noroadsleft@users.noreply.github.com>
Co-authored-by: Joel Challis <git@zvecr.com>
2020-04-11 23:19:44 +01:00
James Young
671020af08 hineybush Physix Configurator bugfix (#8761)
* file linting

* fix object order
2020-04-11 12:42:13 +01:00
Purdea Andrei
b8c3f4c60b quantum/debounce: Added sym_pk debounce algorithm (#8587)
* quantum/debounce: Added sym_pk debounce algorithm

* Apply suggestions from code review

Co-Authored-By: Ryan <fauxpark@gmail.com>

* quantum/debounce/sym_pk: delete comments and rename functions following code review

* quantum/debounce/sym_pk: Modifications for code readability according to code review

* quantum/debounce/sym_pk: Modifications for code readability according to code review (2)

* quantum/debounce/sym_pk: code review: cleaner code

Co-Authored-By: Nick Brassel <nick@tzarc.org>

Co-authored-by: Ryan <fauxpark@gmail.com>
Co-authored-by: Nick Brassel <nick@tzarc.org>
2020-04-11 21:29:48 +10:00
Takeshi ISHII
511fe643c2 [Keymap] fix OLED display on Helix keyboard keymaps default and… (#8737)
Since #7773, the mode number of RGBlight is no longer displayed on the Helix OLEDs. I fixed this.
2020-04-11 10:41:12 +02:00
moyi4681
f7601dba13 change kbd67 rev1 and rev2 default keymaps (#8758)
* change kbd67 default keymap
2020-04-10 20:15:23 -07:00
Reid
89cab95b63 [Keyboard] Add splitish (#8751)
* Added personal minivan keymap, and started work on splitish directory

* Merge branch 'splitish' of github.com:RSchneyer/qmk_firmware into splitish

Trying to undo attempted fix

Added splitish keyboard files, removed personal Minivan keymap

* Removed personal Minivan keymaps

* Fixed small issue in readme

* Added changes based on inital PR feedback

* forgot a semicolon

* Quick config.h file and default keymap update
2020-04-11 11:43:21 +10:00
QMK Bot
cc38627816 format code according to conventions [skip ci] 2020-04-11 00:48:16 +00:00
Purdea Andrei
6c2c3c13e9 Various fixes to how timer differences are calculated (#8585)
* tmk_core/common: Fixing TIMER_DIFF macro to calculate difference correctly after the timer wraps.

Let's go through an example, using the following macro:

If the first timer read is 0xe4 and the second one is 0x32, the timer wrapped.
If the timer would have had more bits, it's new value would have been 0x132,
and the correct difference in time is 0x132 - 0xe4 = 0x4e

old code TIMER_DIFF_8(0x32, 0xe4) = 0xff - 0xe4 + 0x32 = 0x4d, which is wrong.
new code TIMER_DIFF_8(0x32, 0xe4) = 0xff + 1 - 0xe4 + 0x32 = 0x4e, which is correct.

This also gives a chance for a smart compiler to optimize the code using normal
integer overflow.

For example on AVR, the following C code:
uint8_t __attribute__ ((noinline)) test(uint8_t current_timer, uint8_t start_timer)
{
    return TIMER_DIFF_8(current_timer, start_timer);
}
With the original code, it gets translated to the following list of instructions:
00004c6e <test>:
    4c6e:       98 2f           mov     r25, r24
    4c70:       86 1b           sub     r24, r22
    4c72:       96 17           cp      r25, r22
    4c74:       08 f4           brcc    .+2             ; 0x4c78 <test+0xa>
    4c76:       81 50           subi    r24, 0x01       ; 1
    4c78:       08 95           ret
But with this commit, it gets translated to a single instruction:
00004c40 <test>:
    4c40:       86 1b           sub     r24, r22
    4c42:       08 95           ret

This unfortunately doesn't always work so nicely, for example the following C code:
int __attribute__ ((noinline)) test(uint8_t current_timer, uint8_t start_timer)
{
    return TIMER_DIFF_8(current_timer, start_timer);
}
(Note: return type changed to int)
With the original code it gets translated to:
00004c6e <test>:
    4c6e:       28 2f           mov     r18, r24
    4c70:       30 e0           ldi     r19, 0x00       ; 0
    4c72:       46 2f           mov     r20, r22
    4c74:       50 e0           ldi     r21, 0x00       ; 0
    4c76:       86 17           cp      r24, r22
    4c78:       20 f0           brcs    .+8             ; 0x4c82 <test+0x14>
    4c7a:       c9 01           movw    r24, r18
    4c7c:       84 1b           sub     r24, r20
    4c7e:       95 0b           sbc     r25, r21
    4c80:       08 95           ret
    4c82:       c9 01           movw    r24, r18
    4c84:       84 1b           sub     r24, r20
    4c86:       95 0b           sbc     r25, r21
    4c88:       81 50           subi    r24, 0x01       ; 1
    4c8a:       9f 4f           sbci    r25, 0xFF       ; 255
    4c8c:       08 95           ret
Wth this commit it gets translated to:
00004c40 <test>:
    4c40:       28 2f           mov     r18, r24
    4c42:       30 e0           ldi     r19, 0x00       ; 0
    4c44:       46 2f           mov     r20, r22
    4c46:       50 e0           ldi     r21, 0x00       ; 0
    4c48:       86 17           cp      r24, r22
    4c4a:       20 f0           brcs    .+8             ; 0x4c54 <test+0x14>
    4c4c:       c9 01           movw    r24, r18
    4c4e:       84 1b           sub     r24, r20
    4c50:       95 0b           sbc     r25, r21
    4c52:       08 95           ret
    4c54:       c9 01           movw    r24, r18
    4c56:       84 1b           sub     r24, r20
    4c58:       95 0b           sbc     r25, r21
    4c5a:       93 95           inc     r25
    4c5c:       08 95           ret
There is not much performance improvement in this case, however at least with this
commit it functions correctly.

Note: The following commit will improve compiler output for the latter example.

* tmk_core/common: Improve code generation for TIMER_DIFF* macros

Because of integer promotion the compiler is having a hard time generating
efficient code to calculate TIMER_DIFF* macros in some situations.
In the below example, the return value is "int", and this is causing the
trouble.

Example C code:

int __attribute__ ((noinline)) test(uint8_t current_timer, uint8_t start_timer)
{
    return TIMER_DIFF_8(current_timer, start_timer);
}

BEFORE: (with -Os)

00004c40 <test>:
    4c40:       28 2f           mov     r18, r24
    4c42:       30 e0           ldi     r19, 0x00       ; 0
    4c44:       46 2f           mov     r20, r22
    4c46:       50 e0           ldi     r21, 0x00       ; 0
    4c48:       86 17           cp      r24, r22
    4c4a:       20 f0           brcs    .+8             ; 0x4c54 <test+0x14>
    4c4c:       c9 01           movw    r24, r18
    4c4e:       84 1b           sub     r24, r20
    4c50:       95 0b           sbc     r25, r21
    4c52:       08 95           ret
    4c54:       c9 01           movw    r24, r18
    4c56:       84 1b           sub     r24, r20
    4c58:       95 0b           sbc     r25, r21
    4c5a:       93 95           inc     r25
    4c5c:       08 95           ret

AFTER: (with -Os)

00004c40 <test>:
    4c40:       86 1b           sub     r24, r22
    4c42:       90 e0           ldi     r25, 0x00       ; 0
    4c44:       08 95           ret

Note: the example is showing -Os but improvements can be seen at all optimization levels,
including -O0. We never use -O0, but I tested it to make sure that no extra code is
generated in that case.OA

* quantum/debounce: Fix custom wrapping timers in eager_pr and eager_pk debounce algorithms

Please see the below simulated sequence of events:
Column A is the 16-bit value returned by read_timer();
Column B is the value returned by custom_wrap_timer_read();
Column C is the original code: (timer_read() % MAX_DEBOUNCE)

    A,     B,     C
65530,    19,    30
65531,    20,    31
65532,    21,    32
65533,    22,    33
65534,    23,    34
65535,    24,    35
    0     25,     0
    1,    26,     1
    2,    27,     2
    3,    28,     3
    4,    29,     4
    5,    30,     5

read_timer() wraps about every 1.09 seconds, and so debouncing might
fail at these times without this commit.

* quantum/debounce/eager_pr and eager_pk: modifications for code readability according to code review.

* quantum/debounce/eager_pr and eager_pk: modifications for code readability according to code review. (2)
2020-04-11 10:14:28 +10:00
Joshua Moses Diamond
e4cc642a79 Some refinements of 75_ansi/spidey3 layout (#8581)
* First cut at Josh Diamond's KBD75 customizations.
Includes:
* My unique keymap with ChromeOS specific keys
* Use RGB underglow to indicate Caps Lock
* Some unicode bindings
* Some changes to make debugging easier

* Updated spidey3 to be applicable to all 75_ansi boards

* Sadly, ChromeOS doesn't pay attention to most consumer codes

* Add mac layer; fix flakeyness in CAPS_LOCK underglow.

* Make layers.json match the keymap (to the extent possible)

* Major cleanup; fix broken debug persistence

* Cleanup some whitespace issues

* Fix incorrect log message.

* Rework layer indication to user RGBLIGHT_LAYERS

* Update layouts/community/75_ansi/spidey3/keymap.c

Co-Authored-By: Drashna Jaelre <drashna@live.com>

* Rename users/spidey3/rgblight.c to layer_rgb.c per suggestion

* Refactor to use set_single_persistant_default_layer().

* Use dprint/f to make logging more elegant.

* Update users/spidey3/config.h

Co-Authored-By: Drashna Jaelre <drashna@live.com>

* Update users/spidey3/config.h

Co-Authored-By: Drashna Jaelre <drashna@live.com>

* Update layouts/community/75_ansi/spidey3/rules.mk

Co-Authored-By: Ryan <fauxpark@gmail.com>

* Update users/spidey3/spidey3.c

Co-Authored-By: Ryan <fauxpark@gmail.com>

* Update users/spidey3/layer_rgb.c

Co-Authored-By: Ryan <fauxpark@gmail.com>

* Update users/spidey3/init.c

Co-Authored-By: Ryan <fauxpark@gmail.com>

* Changes from code review

* Numpad layer, various keys for 75_ansi/spidey3

* Add Fn-B to toggle NKRO

* Blink rgb to acknowledge some setting changes

* Updated media control & reset key location

* Minor cleanup

Co-authored-by: Joshua Diamond <jdiamond@Deep-Thought.local>
Co-authored-by: Drashna Jaelre <drashna@live.com>
Co-authored-by: Ryan <fauxpark@gmail.com>
2020-04-11 10:10:37 +10:00
Keith Long
c3c3943432 [Keymap] added vim compatibility, backspace above enter, and general macOS opt… (#8080)
* added vim compatibility, backspace above enter, and general macOS optimizations on top of default layout

* add space65 macOS keymap for vim users with an optimized bottom row

* Update keyboards/projectkb/alice/keymaps/keithlo/keymap.c
2020-04-10 14:53:13 -07:00
foxx1337
061ed87b89 Modernize ctrl, shift, alt mods detection (#8724) 2020-04-10 20:19:34 +01:00
Spaceman
5c1aca0b88 Fix spaceman naming (#8741)
* Fix spaceman naming

* Update keyboards/pancake/info.json

* Update keyboards/2_milk/info.json
2020-04-10 00:44:45 -07:00
Marko Bakan
6384a2abd8 [Keyboard] obuwunkunubi/spaget handwired (#8738)
* adding my keymap

* Update keyboards/handwired/obuwunkunubi/spaget/readme.md

* Update keyboards/handwired/obuwunkunubi/spaget/readme.md

* Update keyboards/handwired/obuwunkunubi/spaget/keymaps/default/rules.mk

* Update rules.mk

* Update keyboards/handwired/obuwunkunubi/spaget/spaget.h

* Update keyboards/handwired/obuwunkunubi/spaget/spaget.h

* Update keyboards/handwired/obuwunkunubi/spaget/info.json

* Update keyboards/handwired/obuwunkunubi/spaget/rules.mk

* Update rules.mk

* Update keyboards/handwired/obuwunkunubi/spaget/spaget.c

* Update keyboards/handwired/obuwunkunubi/spaget/keymaps/default/keymap.c

* Update keyboards/handwired/obuwunkunubi/spaget/keymaps/default/keymap.c

* Update keyboards/handwired/obuwunkunubi/spaget/keymaps/default/keymap.c

* Update keyboards/handwired/obuwunkunubi/spaget/keymaps/default/keymap.c

* Update keyboards/handwired/obuwunkunubi/spaget/keymaps/default/keymap.c

* Update keyboards/handwired/obuwunkunubi/spaget/keymaps/default/keymap.c

* Update keyboards/handwired/obuwunkunubi/spaget/keymaps/default/keymap.c

* Update keyboards/handwired/obuwunkunubi/spaget/info.json

* Update keymap.c

* Apply suggestions from code review

* Apply suggestions from code review

* Update spaget.h

* Update keymap.c

Updated comments
2020-04-09 12:45:08 -07:00
Konstantin Đorđević
439afc883a [Keymap] Update personal userspace and keymaps (#8747)
* Update mousekey parameters in userspace

* Disable GRAVE_ESC in boards where it isn't used

* Tweak MODERN_DOLCH_RED and reset RGB on Shift+Toggle in KBD6X

* Disable RGB controls when Fn/Caps indicator lights are on

* Use LTO_ENABLE instead of setting -flto directly

* Add led_update_keymap, use SS_LCTL instead of SS_LCTRL

* Change TAPPING_TOGGLE from 2 to 3
2020-04-09 09:54:19 -07:00
Manna Harbour
07c75feba3 Add PS2_MOUSE_ROTATE to compensate for device orientation (#8650)
* Add PS2_MOUSE_ROTATE to compensate for device orientation

* fixup! Add PS2_MOUSE_ROTATE to compensate for device orientation

* Reformat with IndentPPDirectives: AfterHash as per #6316
2020-04-09 01:29:27 -07:00
Joshua Rubin
b5aa5e4338 Add RGB support in via to launchpad (#8621)
Signed-off-by: Joshua Rubin <me@jawa.dev>
2020-04-09 09:25:08 +02:00
George Wietor
be8443b35b VIA support for the KBDFans KBD6x (#8680)
* Add VIA keymap

* Update VID/PID

- Update VID/PID to match other KBDfans keyboards
- Flesh out keyboard description

* add missing newline. whoops.

* Update keyboards/kbdfans/kbd6x/keymaps/via/rules.mk

Co-Authored-By: Drashna Jaelre <drashna@live.com>

* update author / copyright date

* Update keyboards/kbdfans/kbd6x/keymaps/via/rules.mk

Co-Authored-By: Ryan <fauxpark@gmail.com>

* Update keyboards/kbdfans/kbd6x/keymaps/via/keymap.c

Co-Authored-By: Joel Challis <git@zvecr.com>

* Update keyboards/kbdfans/kbd6x/kbd6x.h

Co-Authored-By: Joel Challis <git@zvecr.com>

Co-authored-by: George Wietor <george@light-gray.attlocal.net>
Co-authored-by: Drashna Jaelre <drashna@live.com>
Co-authored-by: Ryan <fauxpark@gmail.com>
Co-authored-by: Joel Challis <git@zvecr.com>
2020-04-09 09:16:04 +02:00
Konstantin Đorđević
4b10235f67 Set the correct RGB LED count on YD60MQ (#8629)
* Fix RGB LED count on YD60MQ

* Split YD60MQ into 12-LED and 16-LED revisions

* Update readmes

* Make 12led the default version

* Readd base rules.mk, version→variant in readme

* Add syntax highlighting to code blocks in readme
2020-04-08 18:51:18 -07:00
Yan-Fa Li
6ef13f83e2 [Keymap] Updates to personal keymaps (#8665) 2020-04-08 18:20:58 -07:00
Konstantin Đorđević
be2f5816b6 Fix compile issues related to NO_ACTION_MACRO/FUNCTION and LTO_ENABLE (#8663)
* Define NO_ACTION_MACRO/FUNCTION in header instead of makefile when LTO is enabled

Currently, boards and keymaps that define NO_ACTION_MACRO/FUNCTION unconditionally
will not compile with LTO_ENABLE (#8604). This fixes the issue by moving the
definitions from common.mk to action.h, which enables us to check for previous
definitions of those macros (this cannot be done in a makefile).

* Remove LTO checks in templates

Since now NO_ACTION_MACRO/FUNCTION are defined as needed in action.h (which is
included by quantum.h), checking for LTO in keyboard and user code is no
longer required.

* Update LTO_ENABLE docs
2020-04-09 00:18:30 +01:00
stanrc85
ff213d5fe1 [Keymap] Userspace update Rgb layers code (#8659)
* enable rgblight layers

* rgblight layers code

* switch to new rgblight layers

* testing led positions

* fix caps typo

* lights and colors working

* rules updated for different rgb use

* Extra spaces removed
2020-04-08 23:56:55 +01:00
Danny
3234118e52 Add Choconum (#8709)
* Add Choconum

* Disable SPI/I2C, add mem fix

* Rename layouts

* Nuke unused config.h files

* Fix username
2020-04-08 20:30:33 +02:00
Jared Giles
a1ffc40b36 Add Via keymap for BM16-A (#8681)
* Add Via keymap for BM16-A

* Apply suggestions from code review

Co-Authored-By: James Young <18669334+noroadsleft@users.noreply.github.com>
Co-Authored-By: Ryan <fauxpark@gmail.com>

* Deleted as per noroadsleft

Co-authored-by: James Young <18669334+noroadsleft@users.noreply.github.com>
Co-authored-by: Ryan <fauxpark@gmail.com>
2020-04-08 20:04:39 +02:00
Erovia
8fe5c718b4 Fix edge-case with config
Without this check, users can lock themselves out by enabling developer
mode, than disabling the dependencies. They wouldn't be able to turn off
developer mode as none of the subcommands (including 'config') would
work.
2020-04-08 09:31:14 -07:00
Erovia
38f14c4174 Don't hide for devs... 2020-04-08 09:31:14 -07:00
Erovia
eb683c8c52 Apply @skullydazed's suggestions, move 'import milc'
Only 'import milc' after we are sure that the minimum required modules
are available, as it depends on a few of them.
2020-04-08 09:31:14 -07:00
Erovia
21799be1ca Make dedicated sections for user/dev commands in docs 2020-04-08 09:31:14 -07:00
Erovia
5cfc3ce02e Rebase on master, hide some other subcommands
The list of hidden subcommands were approved by @skullydazed ;)
Currently hidden if 'user.developer' is not True:

  - cformat
  - docs
  - kle2json
  - pyformat
  - pytest
2020-04-08 09:31:14 -07:00
Erovia
724f20ed32 Use milc for config check, requirements fixes
Use milc's config finding and parsing to check if the user is a
developer or not.
'requirements-dev.txt' will now load 'requirements.txt', so no need to
run pip twice.
Add missing 'yapf' dependency to 'requirements-dev.txt'.
2020-04-08 09:31:14 -07:00
Erovia
c61f016fa4 CLI: Add development mode support
Hide development specific options and don't require dev modules unless
`user.developer` is set to `True`.
2020-04-08 09:31:14 -07:00
Salicylic-acid3
ea7e40bae1 Update info.json (#8723)
Addressed a key shift in the QMK Configurator.
2020-04-08 15:09:20 +02:00
QMK Bot
974f83ec4b format code according to conventions [skip ci] 2020-04-08 01:38:16 +00:00
Ryan
400ca2d035 spi_master for AVR (#8299)
* Change _delay_ms/us() to wait_ms/us()

* Switch to platform-agnostic GPIO macros

* Add AVR spi_master and migrate Adafruit BLE code

* Set verbose back to false

* Add clock divisor, bit order and SPI mode configuration for init

* Add start and stop functions

* Move configuration of mode, endianness and speed to `spi_start()`

* Some breaks here would be good

* Default Adafruit BLE clock divisor to 4 (2MHz on the Feather 32U4)

* Remove mode and divisor enums

* Add some docs

* No hr at EOF

* Add links in sidebar
2020-04-08 11:04:31 +10:00
DennyTom
e409fb47f2 DennyTom's buttery_engine (#8138)
* Selectively adding pieces

* Adding georgi keymap

* Adding more files, fixing make

* Smaller makefiles

* Fixing make rules

* README more inline with QMK's guidelines

* Turning off buggy assert

* Improving documentation based on a user feedback.

* Slightly better schema

* Resurrected state machine diagram
2020-04-07 21:13:17 +10:00
fauxpark
0499f30f59 Update BÉPO keymap and sendstring LUT 2020-04-07 20:50:10 +10:00
elmo-space
ae74922d14 add via support for kira80 (#8677)
* add via support for kira80

* remove redundant raw enable from rules.mk

* clean additional layers for via

* changed USB Vendor ID
2020-04-07 01:43:48 -07:00
artjomsR
3349a8b49b [Keyboard] Wheatfield Split75 (#8511)
* Added split75 keyboard

* tidy up commented out code + removed default

* added visual map

* proper led functions. more layers for keymap

* led functions. moved mod keys to numbers

* double tapping toggle + leds on power on

* media keys fix

* clean up of commented out code and unnecessary functions. readme update.
default keymap

* removed bootloadHID file

* Update keyboards/split75/config.h

* Update keyboards/split75/config.h

* Update keyboards/split75/config.h

* Update keyboards/split75/config.h

* removed python flashing script

* Update keyboards/split75/keymaps/default/keymap.c

* Update keyboards/split75/split75.h

* Update keyboards/split75/keymaps/art/keymap.c

* Update keyboards/split75/keymaps/art/keymap.c

* Update keyboards/split75/keymaps/art/keymap.c

* Update keyboards/split75/keymaps/default/keymap.c

* reintroduced empty matrix_scan_user to default keymap

* Update keyboards/split75/keymaps/art/keymap.c

* Update keyboards/split75/keymaps/art/keymap.c

* Update keyboards/split75/usbconfig.h

* Update keyboards/ergodone/config.h

* Update keyboards/split75/keymaps/art/keymap.c

* updated readme file

* Update keyboards/split75/usbconfig.h

* Update keyboards/split75/rules.mk

* Update keyboards/split75/split75.c

* code fix after suggestions

* defined tapping toggle as double tap

* added info.json

* Update keyboards/split75/config.h

* fix for leds not displaying properly when initialising

* Update keyboards/split75/README.md

* Update keyboards/split75/keymaps/default/keymap.c

* Update keyboards/split75/keymaps/art/keymap.c

* changed product description fields

* renamed user functions

* indentation fix

* Update keyboards/split75/usbconfig.h

* Update keyboards/split75/usbconfig.h

* Update keyboards/split75/usbconfig.h

* Update keyboards/split75/usbconfig.h

* Update keyboards/split75/usbconfig.h

* Update keyboards/split75/split75.c

* Update keyboards/split75/split75.c

* art keymap update

* Update keyboards/split75/config.h

* Update keyboards/split75/keymaps/art/keymap.c

* Update keyboards/split75/keymaps/art/keymap.c

* Update keyboards/split75/keymaps/art/keymap.c

* Update keyboards/split75/keymaps/art/keymap.c

* Update keyboards/split75/keymaps/art/keymap.c

* Update keyboards/split75/split75.c

* Update keyboards/split75/keymaps/art/keymap.c

* Update keyboards/split75/keymaps/default/keymap.c

* Update keyboards/split75/split75.c

* Update keyboards/split75/matrix.c

* Update keyboards/split75/rules.mk

* Update keyboards/split75/split75.c

* Update keyboards/split75/split75.c

* Update keyboards/split75/split75.c

* Update keyboards/split75/config.h

* Update keyboards/split75/split75.c

* disable underglow on sleep and enabled backlighting

* Update keyboards/split75/usbconfig.h

* Update keyboards/split75/usbconfig.h

* Update keyboards/split75/usbconfig.h

* Update keyboards/split75/usbconfig.h

* Update keyboards/split75/usbconfig.h

* Update keyboards/split75/usbconfig.h

* personal keymap update

* changed boot animation

* consistent whitespace

* Tidied up default notes and unnecessary comments

* Unique Vendor ID

* remove usb config file

* corrected manufacturer

* Update keyboards/split75/config.h

* Update keyboards/split75/README.md

* Update keyboards/split75/split75.c

* Update keyboards/split75/split75.c

* Update keyboards/split75/split75.c

* Update keyboards/split75/split75.c

* Update keyboards/split75/split75.c

* Update keyboards/split75/split75.c

* Update keyboards/split75/split75.h

* Update keyboards/split75/split75.h

* Update keyboards/split75/split75.h

* Update keyboards/split75/split75.c

* Update keyboards/split75/matrix.c

* Update keyboards/split75/matrix.c

* Update keyboards/split75/matrix.c

* Update keyboards/split75/matrix.c

* Update keyboards/split75/split75.h

* Personal keymap restore after refactor

* Moved to wheatfield folder + updated readme
2020-04-07 01:36:54 -07:00
skullY
b4ef72423e Correctly handle json keymaps with ANY() 2020-04-07 01:34:21 -07:00
Konstantin Đorđević
f4b67cde8a Update C coding conventions to match .clang-format config for i… (#8717)
* Update C coding conventions to match current .clang-format config for indenting PP directives

* Make indenting guideline clearer
2020-04-07 14:14:08 +10:00
Andrew Kannan
0a643be39e Update 072 based CannonKeys boards to rely on core QMK support (#8716)
* Swap CannonKeys 072 boards over to rely on core QMK backlight support

* Rename keymap

* Rename via_tsangan back to via
2020-04-07 14:01:11 +10:00
Joel Challis
6c8e205fc0 Remove keyboard level ws2812 spi drivers (#7694) 2020-04-06 21:31:34 +01:00
Joel Challis
7901006753 Refactor cannonkeys f103 boards to use core backlight (#8089)
* Refactor to use core backlight

* Remove custom implementation
2020-04-06 21:10:30 +01:00
Wilba
9bfa713421 Configurable VIA layout options default value (#8707) 2020-04-06 20:27:44 +01:00
Salicylic-acid3
b6fc3ad8e7 Keymap Update jisplit89 (#8708)
Fixed wrong Enter key position.
2020-04-06 19:28:42 +01:00
Konstantin Đorđević
e0909a31c7 GR_DTON → GR_DIAT 2020-04-06 19:32:40 +02:00
Konstantin Đorđević
d6bffdf577 Small corrections to Belgian, Serbian and Slovenian keymaps 2020-04-06 19:10:57 +02:00
Pekaso
d1190df10b fix for split-common (#8703) 2020-04-06 20:47:31 +10:00
fauxpark
bf38f39c3f Wrong letter 2020-04-06 20:15:13 +10:00
James Young
6add103827 add 60_ansi layout to YD60MQ (#8696) 2020-04-05 22:47:24 -07:00
fauxpark
62d1d69ba9 Update Italian macOS keymaps and add sendstring LUTs 2020-04-06 15:30:36 +10:00
QMK Bot
7642075fc3 format code according to conventions [skip ci] 2020-04-05 22:57:28 +00:00
Ryan
ca91dc594b V-USB: Remove some stuff from usbconfig.h that should not be configurable (#8656)
* V-USB: Remove some stuff from usbconfig.h that should not be configurable

* Clean up some ifdefs

* And some more

* Even more
2020-04-05 23:25:07 +01:00
jotix
26cb83b8c0 jotix layouts (#8644)
* jotix layouts

* jotix ortho 4x4 layout

* Update layouts/community/ortho_4x4/jotix/keymap.c

Co-Authored-By: Drashna Jaelre <drashna@live.com>

* jotix

Co-authored-by: Drashna Jaelre <drashna@live.com>
2020-04-05 23:15:24 +01:00
Joel Challis
2392ddb76b Enable memcore to fix malloc/rand crashes (#8695) 2020-04-05 22:15:40 +01:00
Ryan
6de77141a4 Doctor: Add avrdude/dfu-util/dfu-programmer version printing (#8678)
* Doctor: Add avrdude/dfu-util/dfu-programmer version printing

* Extra newline

* Iterate through version checking functions
2020-04-05 18:11:55 +02:00
ThePanduuh
6f6c2e1c5c updated rules.mk and default keymap of Wonderland for VIA support (#8668)
* updated rules.mk and default keymap of Wonderland for VIA support

* Restored default keymap and rules.mk, added via keymap folder with modified default keymap and rules.mk, also fixed VendorID in config.h

* fixed jargon on layers 3 and 4 of Wonderland VIA keymap

* cleaned up via keymap, removed fluff

* default keymap for Wonderland restored

* removed unnecessary information from rules.mk

* made more readable per noroadsleft suggestion

Co-Authored-By: James Young <18669334+noroadsleft@users.noreply.github.com>

Co-authored-by: James Young <18669334+noroadsleft@users.noreply.github.com>
2020-04-05 15:19:36 +01:00
Wilba
48cad94d7e Added Caps Lock LED handler to wilba.tech PCBs (#8660) 2020-04-05 15:18:17 +01:00
halfenergized
90665aeec9 Add keyboard TGR-910 (#8683)
* Add files via upload

* Update info.json

* Update info.json

* Update 910.h

* Update 910.h

* Update 910.h

* Update info.json

* Update 910.c

* Update 910.h

* Update config.h

* Update config.h

* Update keymap.c

* Update rules.mk

* Update readme.md

* Delete config.h

* Delete readme.md
2020-04-05 14:48:23 +01:00
Drashna Jaelre
845953cc67 V-USB remote wakeup (#7627)
* V-USB remote wakeup

Backport from tmk/tmk_keyboard@391c979be7

* Change vusb.c remote wake config

as per fauxpark's suggestion
2020-04-05 18:18:19 +10:00
Ryan
c3c2eb71e1 Add Greek keymap (#8636)
* Add Greek keymap

* Split left shift (unused), change keycode for dialytika tonos

* Update quantum/keymap_extras/keymap_greek.h

Co-Authored-By: Konstantin Đorđević <vomindoraan@gmail.com>

* Fix definition for DTON

Co-authored-by: Konstantin Đorđević <vomindoraan@gmail.com>
2020-04-05 00:56:20 -07:00
Ryan
28a6a4a15b Add Polish keymap (#8637)
* Add Polish keymap

* Fix wrong AltGr mapping

* These are ogoneks, not cedillas

* Too many !s

* ANSI

* Just use BSLS

* Move BSLS

* Move PIPE

* Fix some incorrect names in keymap_slovak.h

Thanks to vomindoraan
2020-04-05 00:55:13 -07:00
Drashna Jaelre
ccb37f673a Add Russian keymap (#8638)
* Add Russian keymap

* Switch to ANSI layout
2020-04-05 00:53:52 -07:00
Ryan
c5efbc45a1 Add Korean keymap (#8635)
* Add Korean keymap

* Switch to ANSI layout

* Update quantum/keymap_extras/keymap_korean.h

Co-Authored-By: Konstantin Đorđević <vomindoraan@gmail.com>

Co-authored-by: Konstantin Đorđević <vomindoraan@gmail.com>
2020-04-05 00:51:10 -07:00
Joshua Rubin
6a0d3c3517 [Keyboard] Add 60_hhkb layout to hhkb (#8618)
Signed-off-by: Joshua Rubin <me@jawa.dev>
2020-04-05 00:29:17 -07:00
coseyfannitutti
2fbbac04bb [Keyboard] romeo - add via layout (#8667) 2020-04-04 22:38:25 -07:00
huajijam
04c81a04c7 [Keyboard] Add ReverseStudio-DecadePad (#8553)
* ADD DecadePad

* Fix Key display bug

* fix

* firmware1

THIS IS A Backup commit

* firmware2

* rename all fill with lower case

* fix bug

* Final Version

Fix all bugs

* Requested change apply

* suggested apply

* change apply

* via test

* Apply change and fix via support problem
2020-04-04 22:28:40 -07:00
yfuku
120fcc58b6 [Keyboard] Add bat43 Keyboard (#8648)
* carete bat43 dir by new_keyboard.sh

* customize

* bugfix

* fix

* remove LAYOUT_kc

* Update keyboards/bat43/readme.md

* Update keyboards/bat43/rules.mk

* Remove unnecessary parts

* converted to Kxy format

* Update keyboards/bat43/bat43.h
2020-04-04 21:59:49 -07:00
skullY
2f15cb2126 minor tweaks 2020-04-04 12:43:13 -07:00
Ross Baquir
8af156d976 Fix saving output from avrdude and dfu-programmer 2020-04-04 12:43:13 -07:00
Ross Baquir
70b5015162 Use version_arg in ESSENTIAL_BINARIES dict 2020-04-04 12:43:13 -07:00
Ross Baquir
3fad3854d6 Fixes #8541 by getting version from -dumpversion then --version as fallback 2020-04-04 12:43:13 -07:00
MechMerlin
38d7145da2 VIA Support: 1upkeyboards Sweet16 (#8652)
* update VID and PID to match the rest of 1up's collection

* add VIA keymap
2020-04-04 16:52:05 +11:00
Ethan Durrant
6e8876be39 [Keyboard] Lattice60 (#8603)
* created initial files for the lattice60

* modifying the keymaps and config

* keymap edits and docs

* modifying docs and added personal keymap

* added pic and website to readme

* added layout image for default keymap

* updating layout pictures

* minor formatting edit

* file cleanup

* trying to prevent errors with usbconfig

* removed usbconfig.h

* cleaning up comments

* switched to use community hhkb layout
2020-04-03 13:37:31 -07:00
coseyfannitutti
0bb2924670 Discipline - Add ISO compatibility, rawHID enable, via layout (#8627)
* Add ISO compatibility, rawHID enable, via layout

* Update rules.mk

* Update keyboards/coseyfannitutti/discipline/rules.mk

* Update keyboards/coseyfannitutti/discipline/keymaps/via/rules.mk

* Update rules.mk

* Update rules.mk

* Update keyboards/coseyfannitutti/discipline/rules.mk

* Update rules.mk

* update iso layout macros

* Update keymap.c
2020-04-03 13:26:42 -07:00
ai03
2f623daa45 [Keyboard] Add Orbit-X Keyboard (#8605)
* Make initial batch of files

* Tweak keymap

* Mod default keymap

* Add via compat

* Update default keymap based on real world use

* Remove RGB, LCD, MIDI options

* Remove unnecessary functons from orbit_x.c

* Update readme

* Cleanup makefile as necessary

* Make the readme file for default keymap not completely empty

* Update keyboards/ai03/orbit_x/keymaps/default/keymap.c

* Update keyboards/ai03/orbit_x/readme.md

* Update keyboards/ai03/orbit_x/info.json
2020-04-03 04:33:53 -07:00
Joshua Rubin
ebbaba9001 add 60_tsangan_hhkb layout to GH60 rev. C (#8617)
* add 60_tsangan_hhkb layout to gh60
2020-04-02 20:32:36 -07:00
Joshua Rubin
5f35b07102 add 60_tsangan_hhkb layout to dz60 rules (#8616)
* add 60_tsangan_hhkb layout to dz60
2020-04-02 20:22:48 -07:00
QMK Bot
59188bf29d format code according to conventions [skip ci] 2020-04-02 21:59:37 +00:00
Joel Challis
9c4bf0ac4a Initial support for ATtiny85 (#8632)
* Initial support for ATtiny85

* Update mcu selection
2020-04-02 22:23:57 +01:00
yiancar
f2901375ce Add VIA to Gingham (#8651)
* Add VIA to Gingham

- Add VIA keymap
- Fix minor typo in config.h
- Remove redundunt methods and defines

* Update keyboards/gingham/config.h

Co-Authored-By: Ryan <fauxpark@gmail.com>

Co-authored-by: Ryan <fauxpark@gmail.com>
2020-04-02 22:18:50 +01:00
Takuya Urakawa
f65e79477f Add via keymap to plaid (#8640)
* define VID/PID in post_config.h, add via keymap

* update readme, set vid/pid for via

* update keymap

* delete usbconfig.h, update keymap

* add status led feature

* Apply suggestions from code review

Co-Authored-By: Joel Challis <git@zvecr.com>

* undef vid/pid in keymap

Co-authored-by: Joel Challis <git@zvecr.com>
2020-04-02 22:16:49 +01:00
chemicalwill
3094422b33 Fixed info.json (#8653)
* Previous info.json had 4 layers instead of 1, incorrect height and width

* Added labels for arrows (Up, Down, Left, Right)

* Formatted info.json by rows
2020-04-02 21:00:04 +01:00
Joel Challis
31fd0cbc1c Fix AVR ws2812 when ADDRESS_BASE is non zero (#8646)
* Fix AVR ws2812 when ADDRESS_BASE is non zero

* fix port

* remove unused function defs
2020-04-02 20:46:38 +01:00
Ryan
2b427f774a Fix pgm_read_ptr() define for ARM (#8658) 2020-04-02 16:52:16 +01:00
Silvio Gulizia
85444176b2 [Keymap] sigul Planck layout updates (#8649)
* fix missing music mode legend

* edit cleaning for readability and removing unused keys

* remove MOUSE from lower, raise and mouse

* remove MOUSE keycode

* edit with updates

Co-authored-by: pisilvio <silvio@picampus.it>
2020-04-02 13:09:26 +01:00
2Moons-JP
52b48997eb info.json fix for basekeys/slice (#8606)
* info.json fix
2020-04-02 00:40:07 -07:00
umi
808aab8496 add japanese translation (feature part 01) (#8196)
* add feature part 01

* update sentences

* update sentences

* update sentences

* update file based on comment

* leave ctrl, shift, alt key name as alphabet

* update file based on comment

* update file based on comment

* update file based on comment

* update file based on comment

* remove unnecessary space on define line

* update sentence based on pull request's comment

* translate 'breathing' in document

* change expression in table

* update file based on comment

* change the word 'brightness', and update based on comment

* update based on comment

* update based on comment

* add language directory name to each internal link

* update based on comment

* update based on comment
2020-04-02 12:56:59 +09:00
Xyverz
0742f9fc96 Changes to my Ergodox & Planck keymaps (#8622)
* Changes to my Ergodox & Planck keymaps

* Fixed Typos

Corrected some typos and omissions to my Ergodox layout and readme

* Fixed Typos

Fixed some typos in my ErgoDox Readme and keymap.c files
2020-04-02 00:03:52 +01:00
Joel Challis
58a9c84d6b Strip out features to allow minimum firmware sizes (#8645) 2020-04-01 21:06:22 +01:00
yiancar
c217186bea Updated V-USB template to allow usbFunctionWriteOut (#8634) 2020-04-01 17:11:24 +01:00
fauxpark
781308507d Switch to ANSI layout 2020-04-02 03:10:51 +11:00
spe2
2eb6cb0dfd Add additional minimal "mini" keymap for Centromere (#8579)
* Create readme.md

* Add files for Centromere

* Add keymap files for Centromere

* Add default keymap for Centromere

* Create keymap directory

* Add keymap files

* keymap directory cleanup

* Keyboard keymap directory cleanup

* Update keyboards/centromere/config.h

Co-Authored-By: Drashna Jaelre <drashna@live.com>

* Update keyboards/centromere/config.h

Co-Authored-By: Drashna Jaelre <drashna@live.com>

* Update keyboards/centromere/config.h

Co-Authored-By: Drashna Jaelre <drashna@live.com>

* Update keymap.c

* Update keymap.c

* Update centromere.c

Changed LED control to GPIO functions

* Update centromere.h

* Update rules.mk

* Update keyboards/centromere/rules.mk

Co-Authored-By: fauxpark <fauxpark@gmail.com>

* Update keyboards/centromere/rules.mk

Co-Authored-By: fauxpark <fauxpark@gmail.com>

* Update keyboards/centromere/rules.mk

Co-Authored-By: fauxpark <fauxpark@gmail.com>

* Update keyboards/centromere/rules.mk

Co-Authored-By: fauxpark <fauxpark@gmail.com>

* Update keyboards/centromere/keymaps/default_u2/keymap.c

Co-Authored-By: fauxpark <fauxpark@gmail.com>

* Update keyboards/centromere/rules.mk

Co-Authored-By: fauxpark <fauxpark@gmail.com>

* Update keyboards/centromere/keymaps/default/keymap.c

Co-Authored-By: fauxpark <fauxpark@gmail.com>

* Update keyboards/centromere/centromere.h

Co-Authored-By: fauxpark <fauxpark@gmail.com>

* Update keyboards/centromere/centromere.h

Co-Authored-By: fauxpark <fauxpark@gmail.com>

* Update keyboards/centromere/centromere.h

Co-Authored-By: fauxpark <fauxpark@gmail.com>

* Update keyboards/centromere/rules.mk

Co-Authored-By: fauxpark <fauxpark@gmail.com>

* Update keyboards/centromere/centromere.c

Co-Authored-By: fauxpark <fauxpark@gmail.com>

* Update keyboards/centromere/centromere.h

Co-Authored-By: fauxpark <fauxpark@gmail.com>

* Update keyboards/centromere/centromere.h

Co-Authored-By: fauxpark <fauxpark@gmail.com>

* Update keyboards/centromere/rules.mk

Co-Authored-By: fauxpark <fauxpark@gmail.com>

* Apply suggestions from code review

Co-Authored-By: fauxpark <fauxpark@gmail.com>

* Update readme.md

* Create keymap.c

Add a minimalist keymap for Centromere.

* Update keyboards/centromere/keymaps/mini/keymap.c

Commit keymap suggestion change

Co-Authored-By: ridingqwerty <george.g.koenig@gmail.com>

* Update keyboards/centromere/keymaps/mini/keymap.c

Co-Authored-By: ridingqwerty <george.g.koenig@gmail.com>

* Update keyboards/centromere/keymaps/mini/keymap.c

Co-Authored-By: Drashna Jaelre <drashna@live.com>

* Update keymap.c

Remove QWERTY keymap tone, only QWERTY is used here so additional case unnecessary.

* Update keyboards/centromere/keymaps/mini/keymap.c

Co-Authored-By: Ryan <fauxpark@gmail.com>

* Update keyboards/centromere/keymaps/mini/keymap.c

Co-Authored-By: Ryan <fauxpark@gmail.com>

* Update keyboards/centromere/keymaps/mini/keymap.c

Co-Authored-By: Ryan <fauxpark@gmail.com>

* Update keyboards/centromere/keymaps/mini/keymap.c

Co-Authored-By: Ryan <fauxpark@gmail.com>

* Update keyboards/centromere/keymaps/mini/keymap.c

Co-Authored-By: ridingqwerty <george.g.koenig@gmail.com>

Co-authored-by: Drashna Jaelre <drashna@live.com>
Co-authored-by: fauxpark <fauxpark@gmail.com>
Co-authored-by: ridingqwerty <george.g.koenig@gmail.com>
2020-04-02 02:04:02 +11:00
Ryan
95c5c11d0b Miscellaneous cleanups (#8639)
* Miscellaneous cleanups

* Cast NO_PIN
2020-04-01 15:49:45 +01:00
Joel Challis
b6a09502c6 Migrate :program logic to :flash (#8631) 2020-04-01 13:27:16 +01:00
shela
1962135418 [Docs] Update Japanese translation of i2c_driver.md (#8523)
* Update Japanese translation of i2c_driver.md

* Apply a part of suggestions from code review
2020-04-01 15:05:45 +09:00
Takuya Urakawa
d79be051dd [Docs] Japanese translation of hardware_*.md (#8278)
* add docs/ja/hardware.md

* add docs/ja/hardware_avr.md

* add docs/ja/hardware_drivers.md

* add docs/ja/hardware_keyboard_guidelines.md

* update hardware.md

* add space around alphabet word

* fix link tag

* Apply suggestions from code review

Co-Authored-By: shela <shelaf@users.noreply.github.com>

* remove ja/hardware.md

* Apply suggestions from code review

Co-Authored-By: shela <shelaf@users.noreply.github.com>
Co-Authored-By: Takeshi ISHII <2170248+mtei@users.noreply.github.com>

* match word matrix with other translations

* Apply suggestions from code review

Co-Authored-By: Takeshi ISHII <2170248+mtei@users.noreply.github.com>

Co-authored-by: shela <shelaf@users.noreply.github.com>
Co-authored-by: Takeshi ISHII <2170248+mtei@users.noreply.github.com>
2020-04-01 15:04:16 +09:00
fauxpark
3fe8d604a4 Add Russian keymap 2020-04-01 14:09:34 +11:00
838 changed files with 35475 additions and 19771 deletions

View File

@ -1,24 +0,0 @@
-I.
-I./drivers
-I./drivers/avr
-I./keyboards/ergodox_ez
-I./keyboards/ergodox_ez/keymaps/vim
-I./lib
-I./lib/lufa
-I./quantum
-I./quantum/api
-I./quantum/audio
-I./quantum/keymap_extras
-I./quantum/process_keycode
-I./quantum/serial_link
-I./quantum/template
-I./quantum/tools
-I./quantum/visualizer
-I./tmk_core
-I./tmk_core/common
-I./tmk_core/common/debug.h
-I./tmk_core/protocol
-I./tmk_core/protocol/lufa
-I./util
-DQMK_KEYBOARD=\"$(KEYBOARD)\" -DQMK_KEYMAP=\"$(KEYMAP)\"

View File

@ -19,7 +19,7 @@ jobs:
container: qmkfm/base_container
steps:
- uses: actions/checkout@v1
- uses: actions/checkout@v2
with:
submodules: recursive
- name: Install dependencies

2
.gitignore vendored
View File

@ -24,6 +24,7 @@ quantum/version.h
.idea/
CMakeLists.txt
cmake-build-debug
.clang_complete
doxygen/
.DS_Store
/util/wsl_downloaded
@ -47,7 +48,6 @@ doxygen/
*.iml
.browse.VC.db*
*.stackdump
util/Win_Check_Output.txt
# Let these ones be user specific, since we have so many different configurations
.vscode/c_cpp_properties.json
.vscode/launch.json

20
.vscode/settings.json vendored
View File

@ -9,13 +9,17 @@
"**/*.bin": true
},
"files.associations": {
"*.h": "c",
"*.c": "c",
"*.inc": "c",
"*.cpp": "cpp",
"*.hpp": "cpp",
"xstddef": "c",
"type_traits": "c",
"utility": "c"
"*.h": "c",
"*.c": "c",
"*.inc": "c",
"*.cpp": "cpp",
"*.hpp": "cpp",
"xstddef": "c",
"type_traits": "c",
"utility": "c"
},
"[markdown]": {
"editor.trimAutoWhitespace": false,
"files.trimTrailingWhitespace": false
}
}

View File

@ -557,55 +557,38 @@ endef
# Let's match everything, we handle all the rule parsing ourselves
.PHONY: %
%:
# Check if we have the CMP tool installed
cmp $(ROOT_DIR)/Makefile $(ROOT_DIR)/Makefile >/dev/null 2>&1; if [ $$? -gt 0 ]; then printf "$(MSG_NO_CMP)"; exit 1; fi;
# Ensure that python3 is installed. This check can be removed after python is used in more places.
if ! python3 --version 1> /dev/null 2>&1; then printf "$(MSG_PYTHON_MISSING)"; fi
# Check if the submodules are dirty, and display a warning if they are
ifndef SKIP_GIT
if [ ! -e lib/chibios ]; then git submodule sync lib/chibios && git submodule update --depth 50 --init lib/chibios; fi
if [ ! -e lib/chibios-contrib ]; then git submodule sync lib/chibios-contrib && git submodule update --depth 50 --init lib/chibios-contrib; fi
if [ ! -e lib/ugfx ]; then git submodule sync lib/ugfx && git submodule update --depth 50 --init lib/ugfx; fi
if [ ! -e lib/lufa ]; then git submodule sync lib/lufa && git submodule update --depth 50 --init lib/lufa; fi
git submodule status --recursive 2>/dev/null | \
while IFS= read -r x; do \
case "$$x" in \
\ *) ;; \
*) printf "$(MSG_SUBMODULE_DIRTY)";break;; \
esac \
done
endif
rm -f $(ERROR_FILE) > /dev/null 2>&1
$(eval $(call PARSE_RULE,$@))
$(eval $(call SET_SILENT_MODE))
# Run all the commands in the same shell, notice the + at the first line
# it has to be there to allow parallel execution of the submake
# This always tries to compile everything, even if error occurs in the middle
# But we return the error code at the end, to trigger travis failures
# The sort at this point is to remove duplicates
$(foreach COMMAND,$(sort $(COMMANDS)),$(RUN_COMMAND))
if [ -f $(ERROR_FILE) ]; then printf "$(MSG_ERRORS)" & exit 1; fi;
$(foreach TEST,$(sort $(TESTS)),$(RUN_TEST))
if [ -f $(ERROR_FILE) ]; then printf "$(MSG_ERRORS)" & exit 1; fi;
# # Check if we have the CMP tool installed
# cmp $(ROOT_DIR)/Makefile $(ROOT_DIR)/Makefile >/dev/null 2>&1; if [ $$? -gt 0 ]; then printf "$(MSG_NO_CMP)"; exit 1; fi;
# # Ensure that python3 is installed. This check can be removed after python is used in more places.
# if ! python3 --version 1> /dev/null 2>&1; then printf "$(MSG_PYTHON_MISSING)"; fi
# # Check if the submodules are dirty, and display a warning if they are
#ifndef SKIP_GIT
# if [ ! -e lib/chibios ]; then git submodule sync lib/chibios && git submodule update --depth 50 --init lib/chibios; fi
# if [ ! -e lib/chibios-contrib ]; then git submodule sync lib/chibios-contrib && git submodule update --depth 50 --init lib/chibios-contrib; fi
# if [ ! -e lib/ugfx ]; then git submodule sync lib/ugfx && git submodule update --depth 50 --init lib/ugfx; fi
# if [ ! -e lib/lufa ]; then git submodule sync lib/lufa && git submodule update --depth 50 --init lib/lufa; fi
# git submodule status --recursive 2>/dev/null | \
# while IFS= read -r x; do \
# case "$$x" in \
# \ *) ;; \
# *) printf "$(MSG_SUBMODULE_DIRTY)";break;; \
# esac \
# done
#endif
# rm -f $(ERROR_FILE) > /dev/null 2>&1
# $(eval $(call PARSE_RULE,$@))
# $(eval $(call SET_SILENT_MODE))
# # Run all the commands in the same shell, notice the + at the first line
# # it has to be there to allow parallel execution of the submake
# # This always tries to compile everything, even if error occurs in the middle
# # But we return the error code at the end, to trigger travis failures
# # The sort at this point is to remove duplicates
# $(foreach COMMAND,$(sort $(COMMANDS)),$(RUN_COMMAND))
# if [ -f $(ERROR_FILE) ]; then printf "$(MSG_ERRORS)" & exit 1; fi;
# $(foreach TEST,$(sort $(TESTS)),$(RUN_TEST))
# if [ -f $(ERROR_FILE) ]; then printf "$(MSG_ERRORS)" & exit 1; fi;
# These no longer work because of the colon system
# All should compile everything
# .PHONY: all
# all: all-keyboards test-all
# Define some shortcuts, mostly for compatibility with the old syntax
# .PHONY: all-keyboards
# all-keyboards: all\:all\:all
# .PHONY: all-keyboards-defaults
# all-keyboards-defaults: all\:default
# .PHONY: test
# test: test-all
# .PHONY: test-clean
# test-clean: test-all-clean
bin/qmk makehandler $@
lib/%:
git submodule sync $?

File diff suppressed because one or more lines are too long

59
bin/qmk
View File

@ -4,38 +4,59 @@
import os
import sys
from importlib.util import find_spec
from pathlib import Path
# Add the QMK python libs to our path
script_dir = os.path.dirname(os.path.realpath(__file__))
qmk_dir = os.path.abspath(os.path.join(script_dir, '..'))
python_lib_dir = os.path.abspath(os.path.join(qmk_dir, 'lib', 'python'))
sys.path.append(python_lib_dir)
script_dir = Path(os.path.realpath(__file__)).parent
qmk_dir = script_dir.parent
python_lib_dir = Path(qmk_dir / 'lib' / 'python').resolve()
sys.path.append(str(python_lib_dir))
# Make sure our modules have been setup
with open(os.path.join(qmk_dir, 'requirements.txt'), 'r') as fd:
for line in fd.readlines():
line = line.strip().replace('<', '=').replace('>', '=')
if line[0] == '#':
continue
def _check_modules(requirements):
""" Check if the modules in the given requirements.txt are available.
"""
with Path(qmk_dir / requirements).open() as fd:
for line in fd.readlines():
line = line.strip().replace('<', '=').replace('>', '=')
if '#' in line:
line = line.split('#')[0]
if len(line) == 0 or line[0] == '#' or line.startswith('-r'):
continue
module = line.split('=')[0] if '=' in line else line
if '#' in line:
line = line.split('#')[0]
module = dict()
module['name'] = module['import'] = line.split('=')[0] if '=' in line else line
if module in ['pep8-naming']:
# Not every module is importable by its own name.
continue
if module['name'] == "pep8-naming":
module['import'] = "pep8ext_naming"
if not find_spec(module):
print('Could not find module %s!' % module)
print('Please run `pip3 install -r requirements.txt` to install the python dependencies.')
exit(255)
if not find_spec(module['import']):
print('Could not find module %s!' % module['name'])
print('Please run `python3 -m pip install -r %s` to install required python dependencies.' % (qmk_dir / requirements,))
if developer:
print('You can also turn off developer mode: qmk config user.developer=None')
print()
exit(255)
developer = False
# Make sure our modules have been setup
_check_modules('requirements.txt')
# Setup the CLI
import milc # noqa
# For developers additional modules are needed
if milc.cli.config.user.developer:
# Do not run the check for 'config',
# so users can turn off developer mode
if len(sys.argv) == 1 or (len(sys.argv) > 1 and 'config' != sys.argv[1]):
developer = True
_check_modules('requirements-dev.txt')
milc.EMOJI_LOGLEVELS['INFO'] = '{fg_blue}Ψ{style_reset_all}'

View File

@ -21,6 +21,11 @@ else ifneq ("$(wildcard $(MAIN_KEYMAP_PATH_1)/keymap.json)","")
KEYMAP_PATH := $(MAIN_KEYMAP_PATH_1)
endif
# Load the keymap-level rules.mk if exists
ifneq ("$(wildcard $(KEYMAP_PATH))", "")
-include $(KEYMAP_PATH)/rules.mk
endif
# Generate the keymap.c
$(KEYBOARD_OUTPUT)/src/keymap.c: $(KEYMAP_JSON)
bin/qmk json2c --quiet --output $(KEYMAP_C) $(KEYMAP_JSON)

View File

@ -6,6 +6,7 @@
* [Testing and Debugging](newbs_testing_debugging.md)
* [Getting Help/Support](support.md)
* [Other Resources](newbs_learn_more_resources.md)
* [Syllabus](syllabus.md)
* FAQs
* [General FAQ](faq_general.md)
@ -121,6 +122,7 @@
* [Drivers](hardware_drivers.md)
* [ADC Driver](adc_driver.md)
* [I2C Driver](i2c_driver.md)
* [SPI Driver](spi_driver.md)
* [WS2812 Driver](ws2812_driver.md)
* [EEPROM Driver](eeprom_driver.md)
* [GPIO Controls](internals_gpio_control.md)
@ -135,6 +137,10 @@
* [Development Environment](api_development_environment.md)
* [Architecture Overview](api_development_overview.md)
* Hardware Platform Development
* Arm/ChibiOS
* [Early initialization](platformdev_chibios_earlyinit.md)
* QMK Reference
* [Contributing to QMK](contributing.md)
* [Translating the QMK Docs](translating.md)

View File

@ -6,7 +6,7 @@ The QMK CLI makes building and working with QMK keyboards easier. We have provid
### Requirements :id=requirements
The CLI requires Python 3.5 or greater. We try to keep the number of requirements small but you will also need to install the packages listed in [`requirements.txt`](https://github.com/qmk/qmk_firmware/blob/master/requirements.txt). These are installed automatically when you install the QMK CLI.
QMK requires Python 3.6 or greater. We try to keep the number of requirements small but you will also need to install the packages listed in [`requirements.txt`](https://github.com/qmk/qmk_firmware/blob/master/requirements.txt). These are installed automatically when you install the QMK CLI.
### Install Using Homebrew (macOS, some Linux) :id=install-using-homebrew
@ -21,7 +21,7 @@ qmk setup # This will clone `qmk/qmk_firmware` and optionally set up your build
### Install Using easy_install or pip :id=install-using-easy_install-or-pip
If your system is not listed above you can install QMK manually. First ensure that you have python 3.5 (or later) installed and have installed pip. Then install QMK with this command:
If your system is not listed above you can install QMK manually. First ensure that you have python 3.6 (or later) installed and have installed pip. Then install QMK with this command:
```
pip3 install qmk

View File

@ -1,38 +1,6 @@
# QMK CLI Commands
# CLI Commands
## `qmk cformat`
This command formats C code using clang-format.
Run it with no arguments to format all core code that has been changed. Default checks `origin/master` with `git diff`, branch can be changed using `-b <branch_name>`
Run it with `-a` to format all core code, or pass filenames on the command line to run it on specific files.
**Usage for specified files**:
```
qmk cformat [file1] [file2] [...] [fileN]
```
**Usage for all core files**:
```
qmk cformat -a
```
**Usage for only changed files against origin/master**:
```
qmk cformat
```
**Usage for only changed files against branch_name**:
```
qmk cformat -b branch_name
```
# User Commands
## `qmk compile`
@ -136,16 +104,6 @@ This command lets you configure the behavior of QMK. For the full `qmk config` d
qmk config [-ro] [config_token1] [config_token2] [...] [config_tokenN]
```
## `qmk docs`
This command starts a local HTTP server which you can use for browsing or improving the docs. Default port is 8936.
**Usage**:
```
qmk docs [-p PORT]
```
## `qmk doctor`
This command examines your environment and alerts you to potential build or flash problems. It can fix many of them if you want it to.
@ -180,28 +138,6 @@ Creates a keymap.c from a QMK Configurator export.
qmk json2c [-o OUTPUT] filename
```
## `qmk kle2json`
This command allows you to convert from raw KLE data to QMK Configurator JSON. It accepts either an absolute file path, or a file name in the current directory. By default it will not overwrite `info.json` if it is already present. Use the `-f` or `--force` flag to overwrite.
**Usage**:
```
qmk kle2json [-f] <filename>
```
**Examples**:
```
$ qmk kle2json kle.txt
☒ File info.json already exists, use -f or --force to overwrite.
```
```
$ qmk kle2json -f kle.txt -f
Ψ Wrote out to info.json
```
## `qmk list-keyboards`
This command lists all the keyboards currently defined in `qmk_firmware`
@ -232,6 +168,74 @@ This command creates a new keymap based on a keyboard's existing default keymap.
qmk new-keymap [-kb KEYBOARD] [-km KEYMAP]
```
---
# Developer Commands
## `qmk cformat`
This command formats C code using clang-format.
Run it with no arguments to format all core code that has been changed. Default checks `origin/master` with `git diff`, branch can be changed using `-b <branch_name>`
Run it with `-a` to format all core code, or pass filenames on the command line to run it on specific files.
**Usage for specified files**:
```
qmk cformat [file1] [file2] [...] [fileN]
```
**Usage for all core files**:
```
qmk cformat -a
```
**Usage for only changed files against origin/master**:
```
qmk cformat
```
**Usage for only changed files against branch_name**:
```
qmk cformat -b branch_name
```
## `qmk docs`
This command starts a local HTTP server which you can use for browsing or improving the docs. Default port is 8936.
**Usage**:
```
qmk docs [-p PORT]
```
## `qmk kle2json`
This command allows you to convert from raw KLE data to QMK Configurator JSON. It accepts either an absolute file path, or a file name in the current directory. By default it will not overwrite `info.json` if it is already present. Use the `-f` or `--force` flag to overwrite.
**Usage**:
```
qmk kle2json [-f] <filename>
```
**Examples**:
```
$ qmk kle2json kle.txt
☒ File info.json already exists, use -f or --force to overwrite.
```
```
$ qmk kle2json -f kle.txt -f
Ψ Wrote out to info.json
```
## `qmk pyformat`
This command formats python code in `qmk_firmware`.
@ -251,3 +255,4 @@ This command runs the python test suite. If you make changes to python code you
```
qmk pytest
```

View File

@ -6,6 +6,18 @@ This document has useful information for developers wishing to write new `qmk` s
The QMK CLI operates using the subcommand pattern made famous by git. The main `qmk` script is simply there to setup the environment and pick the correct entrypoint to run. Each subcommand is a self-contained module with an entrypoint (decorated by `@cli.subcommand()`) that performs some action and returns a shell returncode, or None.
## Developer mode:
If you intend to maintain keyboards and/or contribute to QMK, you can enable the CLI's "Developer" mode:
`qmk config user.developer=True`
This will allow you to see all available subcommands.
**Note:** You will have to install additional requirements:
```bash
python3 -m pip install -r requirements-dev.txt
```
# Subcommands
[MILC](https://github.com/clueboard/milc) is the CLI framework `qmk` uses to handle argument parsing, configuration, logging, and many other features. It lets you focus on writing your tool without wasting your time writing glue code.
@ -32,7 +44,7 @@ def hello(cli):
First we import the `cli` object from `milc`. This is how we interact with the user and control the script's behavior. We use `@cli.argument()` to define a command line flag, `--name`. This also creates a configuration variable named `hello.name` (and the corresponding `user.name`) which the user can set so they don't have to specify the argument. The `cli.subcommand()` decorator designates this function as a subcommand. The name of the subcommand will be taken from the name of the function.
Once inside our function we find a typical "Hello, World!" program. We use `cli.log` to access the underlying [Logger Object](https://docs.python.org/3.5/library/logging.html#logger-objects), whose behavior is user controllable. We also access the value for name supplied by the user as `cli.config.hello.name`. The value for `cli.config.hello.name` will be determined by looking at the `--name` argument supplied by the user, if not provided it will use the value in the `qmk.ini` config file, and if neither of those is provided it will fall back to the default supplied in the `cli.argument()` decorator.
Once inside our function we find a typical "Hello, World!" program. We use `cli.log` to access the underlying [Logger Object](https://docs.python.org/3.6/library/logging.html#logger-objects), whose behavior is user controllable. We also access the value for name supplied by the user as `cli.config.hello.name`. The value for `cli.config.hello.name` will be determined by looking at the `--name` argument supplied by the user, if not provided it will use the value in the `qmk.ini` config file, and if neither of those is provided it will fall back to the default supplied in the `cli.argument()` decorator.
# User Interaction
@ -44,13 +56,13 @@ There are two main methods for outputting text in a subcommand- `cli.log` and `c
You can use special tokens to colorize your text, to make it easier to understand the output of your program. See [Colorizing Text](#colorizing-text) below.
Both of these methods support built-in string formatting using python's [printf style string format operations](https://docs.python.org/3.5/library/stdtypes.html#old-string-formatting). You can use tokens such as `%s` and `%d` within your text strings then pass the values as arguments. See our Hello, World program above for an example.
Both of these methods support built-in string formatting using python's [printf style string format operations](https://docs.python.org/3.6/library/stdtypes.html#old-string-formatting). You can use tokens such as `%s` and `%d` within your text strings then pass the values as arguments. See our Hello, World program above for an example.
You should never use the format operator (`%`) directly, always pass values as arguments.
### Logging (`cli.log`)
The `cli.log` object gives you access to a [Logger Object](https://docs.python.org/3.5/library/logging.html#logger-objects). We have configured our log output to show the user a nice emoji for each log level (or the log level name if their terminal does not support unicode.) This way the user can tell at a glance which messages are most important when something goes wrong.
The `cli.log` object gives you access to a [Logger Object](https://docs.python.org/3.6/library/logging.html#logger-objects). We have configured our log output to show the user a nice emoji for each log level (or the log level name if their terminal does not support unicode.) This way the user can tell at a glance which messages are most important when something goes wrong.
The default log level is `INFO`. If the user runs `qmk -v <subcommand>` the default log level will be set to `DEBUG`.

View File

@ -20,11 +20,11 @@ Most of our style is pretty easy to pick up on, but right now it's not entirely
* We accept both forms of preprocessor if's: `#ifdef DEFINED` and `#if defined(DEFINED)`
* If you are not sure which to prefer use the `#if defined(DEFINED)` form.
* Do not change existing code from one style to the other, except when moving to a multiple condition `#if`.
* Do not put whitespace between `#` and `if`.
* When deciding how (or if) to indent directives keep these points in mind:
* Readability is more important than consistency.
* Follow the file's existing style. If the file is mixed follow the style that makes sense for the section you are modifying.
* When choosing to indent you can follow the indention level of the surrounding C code, or preprocessor directives can have their own indent level. Choose the style that best communicates the intent of your code.
* When deciding how (or if) to indent preprocessor directives, keep these points in mind:
* Readability is more important than consistency.
* Follow the file's existing style. If the file is mixed, follow the style that makes sense for the section you are modifying.
* When indenting, keep the hash at the start of the line and add whitespace between `#` and `if`, starting with 4 spaces after the `#`.
* You can follow the indention level of the surrounding C code, or preprocessor directives can have their own indentation levels. Choose the style that best communicates the intent of your code.
Here is an example for easy reference:

View File

@ -2,7 +2,7 @@
Most of our style follows PEP8 with some local modifications to make things less nit-picky.
* We target Python 3.5 for compatability with all supported platforms.
* We target Python 3.6 for compatability with all supported platforms.
* We indent using four (4) spaces (soft tabs)
* We encourage liberal use of comments
* Think of them as a story describing the feature
@ -317,7 +317,7 @@ At the time of this writing our tests are not very comprehensive. Looking at the
## Integration Tests
Integration tests can be found in `lib/python/qmk/tests/test_cli_commands.py`. This is where CLI commands are actually run and their overall behavior is verified. We use [`subprocess`](https://docs.python.org/3.5/library/subprocess.html#module-subprocess) to launch each CLI command and a combination of checking output and returncode to determine if the right thing happened.
Integration tests can be found in `lib/python/qmk/tests/test_cli_commands.py`. This is where CLI commands are actually run and their overall behavior is verified. We use [`subprocess`](https://docs.python.org/3.6/library/subprocess.html#module-subprocess) to launch each CLI command and a combination of checking output and returncode to determine if the right thing happened.
## Unit Tests

View File

@ -115,9 +115,9 @@ If you define these options you will disable the associated feature, which can s
* `#define NO_ACTION_ONESHOT`
* disable one-shot modifiers
* `#define NO_ACTION_MACRO`
* disable old style macro handling: MACRO() & action_get_macro
* disable old-style macro handling using `MACRO()`, `action_get_macro()` _(deprecated)_
* `#define NO_ACTION_FUNCTION`
* disable calling of action_function() from the fn_actions array (deprecated)
* disable old-style function handling using `fn_actions`, `action_function()` _(deprecated)_
## Features That Can Be Enabled
@ -317,10 +317,10 @@ This is a [make](https://www.gnu.org/software/make/manual/make.html) file that i
* `LAYOUTS`
* A list of [layouts](feature_layouts.md) this keyboard supports.
* `LINK_TIME_OPTIMIZATION_ENABLE`
* Enables Link Time Optimization (`LTO`) when compiling the keyboard. This makes the process take longer, but can significantly reduce the compiled size (and since the firmware is small, the added time is not noticeable). However, this will automatically disable the old Macros and Functions features automatically, as these break when `LTO` is enabled.
It does this by automatically defining `NO_ACTION_MACRO` and `NO_ACTION_FUNCTION`
* Enables Link Time Optimization (LTO) when compiling the keyboard. This makes the process take longer, but it can significantly reduce the compiled size (and since the firmware is small, the added time is not noticeable).
However, this will automatically disable the legacy TMK Macros and Functions features, as these break when LTO is enabled. It does this by automatically defining `NO_ACTION_MACRO` and `NO_ACTION_FUNCTION`. (Note: This does not affect QMK [Macros](feature_macros.md) and [Layers](feature_layers.md).)
* `LTO_ENABLE`
* It has the same meaning as LINK_TIME_OPTIMIZATION_ENABLE. You can use `LTO_ENABLE` instead of `LINK_TIME_OPTIMIZATION_ENABLE`.
* Has the same meaning as `LINK_TIME_OPTIMIZATION_ENABLE`. You can use `LTO_ENABLE` instead of `LINK_TIME_OPTIMIZATION_ENABLE`.
## AVR MCU Options
* `MCU = atmega32u4`

View File

@ -98,6 +98,7 @@
* [ISP Flashing Guide](de/isp_flashing_guide.md)
* [ARM Debugging Guide](de/arm_debugging.md)
* [I2C Driver](de/i2c_driver.md)
* [SPI Driver](de/spi_driver.md)
* [GPIO Controls](de/internals_gpio_control.md)
* [Proton C Conversion](de/proton_c_conversion.md)

View File

@ -98,6 +98,7 @@
* [Guía de flasheado de ISP](es/isp_flashing_guide.md)
* [Guía de depuración de ARM](es/arm_debugging.md)
* [Driver I2C](es/i2c_driver.md)
* [Driver SPI](es/spi_driver.md)
* [Controles GPIO](es/internals_gpio_control.md)
* [Conversión Proton C](es/proton_c_conversion.md)

View File

@ -160,10 +160,3 @@ As of now root of its cause is not clear but some build options seem to be relat
https://github.com/tmk/tmk_keyboard/issues/266
https://geekhack.org/index.php?topic=41989.msg1967778#msg1967778
## FLIP Doesn't Work
### `AtLibUsbDfu.dll` Not Found
Remove current driver and reinstall one FLIP provides from DeviceManager.
http://imgur.com/a/bnwzy

View File

@ -6,11 +6,11 @@ These allow you to combine a modifier with a keycode. When pressed, the keydown
|----------|-------------------------------|----------------------------------------------------|
|`LCTL(kc)`|`C(kc)` |Hold Left Control and press `kc` |
|`LSFT(kc)`|`S(kc)` |Hold Left Shift and press `kc` |
|`LALT(kc)`|`A(kc)` |Hold Left Alt and press `kc` |
|`LALT(kc)`|`A(kc)`, `LOPT(kc)` |Hold Left Alt and press `kc` |
|`LGUI(kc)`|`G(kc)`, `LCMD(kc)`, `LWIN(kc)`|Hold Left GUI and press `kc` |
|`RCTL(kc)`| |Hold Right Control and press `kc` |
|`RSFT(kc)`| |Hold Right Shift and press `kc` |
|`RALT(kc)`|`ALGR(kc)` |Hold Right Alt and press `kc` |
|`RALT(kc)`|`ROPT(kc)`, `ALGR(kc)` |Hold Right Alt and press `kc` |
|`RGUI(kc)`|`RCMD(kc)`, `LWIN(kc)` |Hold Right GUI and press `kc` |
|`SGUI(kc)`|`SCMD(kc)`, `SWIN(kc)` |Hold Left Shift and GUI and press `kc` |
|`LCA(kc)` | |Hold Left Control and Alt and press `kc` |
@ -18,7 +18,7 @@ These allow you to combine a modifier with a keycode. When pressed, the keydown
|`MEH(kc)` | |Hold Left Control, Shift and Alt and press `kc` |
|`HYPR(kc)`| |Hold Left Control, Shift, Alt and GUI and press `kc`|
You can also chain them, for example `LCTL(LALT(KC_DEL))` makes a key that sends Control+Alt+Delete with a single keypress.
You can also chain them, for example `LCTL(LALT(KC_DEL))` or `C(A(KC_DEL))` makes a key that sends Control+Alt+Delete with a single keypress.
# Legacy Content :id=legacy-content

View File

@ -38,5 +38,6 @@ For use in keyboards where refreshing ```NUM_KEYS``` 8-bit counters is computati
appropriate for the ErgoDox models; the matrix is rotated 90°, and hence its "rows" are really columns, and each finger only hits a single "row" at a time in normal use.
* eager_pk - debouncing per key. On any state change, response is immediate, followed by ```DEBOUNCE``` milliseconds of no further input for that key
* sym_g - debouncing per keyboard. On any state change, a global timer is set. When ```DEBOUNCE``` milliseconds of no changes has occured, all input changes are pushed.
* sym_pk - debouncing per key. On any state change, a per-key timer is set. When ```DEBOUNCE``` milliseconds of no changes have occured on that key, the key status change is pushed.

View File

@ -161,11 +161,11 @@ There's also a couple of mod shortcuts you can use:
* `SS_LCTL(string)`
* `SS_LSFT(string)`
* `SS_LALT(string)`
* `SS_LALT(string)` or `SS_LOPT(string)`
* `SS_LGUI(string)`, `SS_LCMD(string)` or `SS_LWIN(string)`
* `SS_RCTL(string)`
* `SS_RSFT(string)`
* `SS_RALT(string)` or `SS_ALGR(string)`
* `SS_RALT(string)`, `SS_ROPT(string)` or `SS_ALGR(string)`
* `SS_RGUI(string)`, `SS_RCMD(string)` or `SS_RWIN(string)`
These press the respective modifier, send the supplied string and then release the modifier.

View File

@ -266,6 +266,25 @@ To reverse the scroll axes you can put:
into config.h.
### Rotate Mouse Axes :id=rotate-mouse-axes
Transform the output of the device with a clockwise rotation of 90, 180, or 270
degrees.
When compensating for device orientation, rotate the output the same amount in
the opposite direction. E.g. if the normal device orientation is considered to
be North-facing, compensate as follows:
```c
#define PS2_MOUSE_ROTATE 270 /* Compensate for East-facing device orientation. */
```
```c
#define PS2_MOUSE_ROTATE 180 /* Compensate for South-facing device orientation. */
```
```c
#define PS2_MOUSE_ROTATE 90 /* Compensate for West-facing device orientation. */
```
### Debug Settings :id=debug-settings
To debug the mouse, add `debug_mouse = true` or enable via bootmagic.

View File

@ -26,7 +26,6 @@ Compatible flashers:
* [QMK Toolbox](https://github.com/qmk/qmk_toolbox/releases) (recommended GUI)
* [dfu-programmer](https://github.com/dfu-programmer/dfu-programmer) / `:dfu` in QMK (recommended command line)
* [Atmel's Flip](http://www.microchip.com/developmenttools/productdetails.aspx?partno=flip) (not recommended)
Flashing sequence:

View File

@ -101,7 +101,8 @@
* [Guide des claviers soudés à la main](fr-fr/hand_wire.md)
* [Guide de flash de lISP](fr-fr/isp_flashing_guide.md)
* [Guide du débogage ARM](fr-fr/arm_debugging.md)
* [Drivers i2c](fr-fr/i2c_driver.md)
* [Drivers I2C](fr-fr/i2c_driver.md)
* [Drivers SPI](fr-fr/spi_driver.md)
* [Contrôles des GPIO](fr-fr/internals_gpio_control.md)
* [Conversion en Proton C](fr-fr/proton_c_conversion.md)

View File

@ -155,11 +155,3 @@ Pour le moment, l'origine du problème n'est pas comprise, mais certaines option
https://github.com/tmk/tmk_keyboard/issues/266
https://geekhack.org/index.php?topic=41989.msg1967778#msg1967778
## FLIP ne marche pas
### `AtLibUsbDfu.dll` Not Found
Supprimez le pilote actuel et réinstallez celui donné par FLIP dans le gestionnaire de périphériques.
http://imgur.com/a/bnwzy

View File

@ -26,7 +26,6 @@ Méthodes de flash compatibles :
* [QMK Toolbox](https://github.com/qmk/qmk_toolbox/releases) (interface graphique recommandé)
* [dfu-programmer](https://github.com/dfu-programmer/dfu-programmer) / `:dfu` avec QMK (outil en ligne de commande recommandé)
* [Atmel's Flip](http://www.microchip.com/developmenttools/productdetails.aspx?partno=flip) (non recommandé)
Ordre des actions:

View File

@ -20,7 +20,6 @@ The "easy" way to flash the firmware is using a tool from your host OS:
* [QMK Toolbox](https://github.com/qmk/qmk_toolbox) (recommended)
* [Teensy Loader](https://www.pjrc.com/teensy/loader.html)
* [Atmel FLIP](http://www.atmel.com/tools/flip.aspx)
If you want to program via the command line you can uncomment the ['modifyvm'] lines in the Vagrantfile to enable the USB passthrough into Linux and then program using the command line tools like dfu-util/dfu-programmer or you can install the Teensy CLI version.

View File

@ -114,6 +114,7 @@
* [מדריך לצריבת ISP](he-il/isp_flashing_guide.md)
* [מדריך לדיבאגינג ARM](he-il/arm_debugging.md)
* [מנהל התקן I2C](he-il/i2c_driver.md)
* [מנהל התקן SPI](he-il/spi_driver.md)
* [בקרת GPIO](he-il/internals_gpio_control.md)
* [המרת Proton C](he-il/proton_c_conversion.md)

View File

@ -121,6 +121,7 @@
* [ドライバ](ja/hardware_drivers.md)
* [ADC ドライバ](ja/adc_driver.md)
* [I2C ドライバ](ja/i2c_driver.md)
* [SPI ドライバ](ja/spi_driver.md)
* [WS2812 ドライバ](ja/ws2812_driver.md)
* [EEPROM ドライバ](ja/eeprom_driver.md)
* [GPIO コントロール](ja/internals_gpio_control.md)

View File

@ -152,10 +152,3 @@ https://geekhack.org/index.php?topic=14290.msg1884034#msg1884034
https://github.com/tmk/tmk_keyboard/issues/266
https://geekhack.org/index.php?topic=41989.msg1967778#msg1967778
## FLIP が動作しない
### `AtLibUsbDfu.dll` が見つかりません
デバイスマネージャから現在のドライバを削除し、FLIP が提供するものを再インストールします。
http://imgur.com/a/bnwzy

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