Compare commits

...

132 Commits

Author SHA1 Message Date
9b85bd68a4 feat: add dvorak-fr as extra keymap (#9512) 2020-06-24 22:52:40 -07:00
ce91b36c5d [Update] Japanese Translation of docs/feature_layers.md (#9537)
* update docs/ja/feature_layers.md

see https://github.com/qmk/qmk_firmware/pull/9492

* update original document's TAG
2020-06-25 14:22:17 +09:00
2521b970e5 add_adjust_layer (#9532) 2020-06-25 09:27:25 +10:00
598c392709 Add VIA support to Noxary 268 (#9449)
* Remove "rev1" from readme.md

* Update rules.mk to enable bootmagic, mousekeys, console, command

Also disable NKRO

* Update USB descriptor, replace ifndef with pragma once, remove RGB

* Replace ifndef with pragma once

* Add commented led code

* Add VIA keymap

* Update keyboards/noxary/268/268.c

Remove commented code

* Update keyboards/noxary/268/keymaps/via/readme.md

Flip layout image and title

* Update keyboards/noxary/268/rules.mk

Remove error in comment

* Update keyboards/noxary/268/rules.mk

Remove HD44780 rule option

* Update keyboards/noxary/268/keymaps/via/rules.mk

Replace Link_Time_Optimization with LTO

* Update keyboards/noxary/268/readme.md

Change Noxary link
2020-06-24 11:34:55 -07:00
4d218566cc [Keymap] Add pierrec83's gherkin keymap (#9465)
* [Keymap] Add pierrec83's gherkin keymap

Contribute my gherkin keymap upstream as it is semi-stable. It has grown
in symbiosis with my Kyria keymap which is already upstream.

Add a readme

* Remove generated keymap and instructions to generate it as it is done by qmk flash
2020-06-24 02:42:20 -07:00
a4b2baa2ba [Update] Japanese translation of docs/newbs_building_firmware_configurator.md (#9395)
* update docs/ja/newbs_building_firmware_configurator.md

Following the original changes, docs/ja/newbs_building_firmware_configurator.md  was divided into docs/ja/configurator_step_by_step.md and docs/ja/configurator_troubleshooting.md.

* Update docs/ja/configurator_step_by_step.md

Co-authored-by: shela <shelaf@users.noreply.github.com>

* Update docs/ja/configurator_step_by_step.md

Co-authored-by: shela <shelaf@users.noreply.github.com>

* Update docs/ja/configurator_step_by_step.md

Co-authored-by: shela <shelaf@users.noreply.github.com>

* Update docs/ja/configurator_step_by_step.md

Co-authored-by: shela <shelaf@users.noreply.github.com>

* Update docs/ja/configurator_step_by_step.md

Co-authored-by: shela <shelaf@users.noreply.github.com>

* Update docs/ja/configurator_troubleshooting.md

Co-authored-by: shela <shelaf@users.noreply.github.com>

* Update docs/ja/configurator_troubleshooting.md

Co-authored-by: shela <shelaf@users.noreply.github.com>

* Update docs/ja/configurator_step_by_step.md

Co-authored-by: shela <shelaf@users.noreply.github.com>

* Update docs/ja/configurator_step_by_step.md

Co-authored-by: shela <shelaf@users.noreply.github.com>

* Update docs/ja/configurator_step_by_step.md

Co-authored-by: shela <shelaf@users.noreply.github.com>

* Update docs/ja/configurator_troubleshooting.md

Co-authored-by: shela <shelaf@users.noreply.github.com>

* Update docs/ja/newbs_building_firmware_configurator.md

Co-authored-by: shela <shelaf@users.noreply.github.com>

* Update docs/ja/configurator_troubleshooting.md

Co-authored-by: shela <shelaf@users.noreply.github.com>

* Update docs/ja/newbs_building_firmware_configurator.md

Co-authored-by: shela <shelaf@users.noreply.github.com>

* Update docs/ja/configurator_step_by_step.md

Co-authored-by: shela <shelaf@users.noreply.github.com>

Co-authored-by: shela <shelaf@users.noreply.github.com>
2020-06-24 18:10:52 +09:00
4b80ee46f8 Add Hebrew keymap aliases (#9383)
* Add Hebrew keymap aliases

* Use NBSP for internal space in box drawings

* Apply suggestions from code review

* More whitespace fixes

* IL_DVAV, IL_DYOD and IL_VYOD were incorrect

* Add IL_DEG, IL_MUL, IL_DIV

* Hebrew is now ISO (no more BAE)

* Use ISO left shift

* Apply suggestions from code review

* DYOD and VYOD were reversed in diagram.

Oops!
2020-06-23 22:35:43 -07:00
9b398a8f31 Partial and window screenshots (#9332) 2020-06-24 12:02:12 +10:00
c30170b868 [Keyboard] added 4pplet keyboards (#8935)
* added 4pplet keyboards

added 4pplet keyboards

* Update keyboards/4pplet/aekiso60_rev_a/aekiso60_rev_a.h

* Update keyboards/4pplet/aekiso60_rev_a/config.h

* Update keyboards/4pplet/aekiso60_rev_a/config.h

* Update keyboards/4pplet/waffling60_rev_a/config.h

* Update keyboards/4pplet/aekiso60_rev_a/rules.mk

* Update keyboards/4pplet/aekiso60_rev_a/rules.mk

* Update keyboards/4pplet/waffling60_rev_a/rules.mk

* Update keyboards/4pplet/waffling60_rev_a/rules.mk

* Update keyboards/4pplet/steezy60_rev_a/config.h

* Delete info.json

* Delete info.json

* Delete info.json

* removed VIA_ENABLE

* Update config.h

* Update rules.mk

* Update steezy60_rev_a.h

* Update config.h

* Removed VIA_ENABLE

* Update keyboards/4pplet/steezy60_rev_a/rules.mk

* Removed VIA_ENABLE

* Update config.h

* Update config.h

* Update config.h

* adding fauxpark suggestion

* Update keyboards/4pplet/aekiso60_rev_a/config.h

* Update keyboards/4pplet/aekiso60_rev_a/rules.mk

* some updates recommended by noroadsleft, still work in progress 

some updates recommended by noroadsleft, still work in progress

* made directorys for revisions per noroadsleft  suggestion

made directorys for revisions per noroadsleft  suggestion

* renamed keyboard_pre_init_user to keyboard_pre_init_kb

* Update keyboards/4pplet/aekiso60/rev_a/config.h

* Update keyboards/4pplet/waffling60/rev_a/rev_a.c

* Update keyboards/4pplet/waffling60/rev_a/rev_a.c

* started working on refactoring led function for waffling60

* removed LED functionality

* Update keyboards/wilba_tech/zeal60/rules.mk

* Update keyboards/wilba_tech/zeal60/rules.mk

* Update keyboards/4pplet/waffling60/rev_a/rules.mk

* Update keyboards/4pplet/steezy60/rev_a/rules.mk

* Update keyboards/4pplet/aekiso60/keymaps/via/keymap.c

* Update keyboards/4pplet/aekiso60/rev_a/rules.mk
2020-06-23 18:13:21 -07:00
39b483ad32 Fix maja info.json (#9511) 2020-06-23 22:36:54 +01:00
88ebf92184 Fix info.json for Suihankey (#9490) 2020-06-23 10:25:20 -07:00
-k
8d792cfb5f [Keymap] Add personal keymap for Planck (#9424)
* Create readme.md

* Add personal keymap

* Edit readme

* Reorganize layouts

* Update config.h

* Edit beep settings

* Apply suggestions from code review

* More suggestions from code review
2020-06-23 03:28:54 -07:00
bd1b51cbd1 Wazowski fixed keymap placement (#9408)
- online configurator keys were in the wrong location and needed to be fixed
- fixed a key being to high on the y position
2020-06-23 10:07:15 +01:00
3028662fa3 [Keyboard] Add KBO-5000 keyboard (#9381)
* Initial fork of Sinc

* Setup keymaps, layouts, and encoders

* Add ANSI configurator layout

* Add ISO layout for configurator

* Add all layout option for configurator

* Fix spacing

* Remove extra line

* Remove unneeded ifdef
2020-06-23 02:05:44 -07:00
aea2d6845a Fix error_log complaint about Big Series boards (#9510) 2020-06-23 09:40:00 +01:00
a502ce43c3 create maja info json (#9472) 2020-06-23 09:32:45 +01:00
b0e30862d6 bm43a stevexyz keymap (#9468)
Co-authored-by: Joel Challis <git@zvecr.com>
Co-authored-by: steve <steve@stery>
2020-06-23 09:28:05 +01:00
146873fd8e Add more community layout support to Discipline (#8540) 2020-06-23 09:27:34 +01:00
umi
b3b617633c [Docs] Japanese translation of docs/feature_layers.md (#9252)
* add feature_layers.md translation

* update based on comment

* update based on comment

* update based on comment
2020-06-23 16:42:01 +09:00
9ae8a45197 fixed the layer limit of LT() (#9492) 2020-06-23 16:24:23 +09:00
a8bb5840ad Update VIA support for Noxary 268.2 (#9451)
* Update readme.md description

* Enable bootmagic lite

* Update USB descriptor

* Add modern led code

* Update default keymap for readability

* Update default keymap readme with layout image

* Add VIA keymap

* Update keyboards/noxary/268_2/keymaps/default/readme.md

Flip order of layout image and title

* Update keyboards/noxary/268_2/keymaps/via/readme.md

Flip order of layout image and title

* Update keyboards/noxary/268_2/readme.md

bullet point keyboard maintainer

* Update keyboards/noxary/268_2/readme.md

Change list style
2020-06-22 23:24:33 -07:00
d353fcb99c Add VIA support to Noxary x268 (#9450)
* Update USB descriptors

* Update default keymap for readability

* Update readme description

* Update rules.mk build options, enable bootmagic and mousekey

* Add commented modern led code

* Add VIA keymap

* Update default keymap readme.md layout image

* Update keyboards/noxary/x268/rules.mk

remove incorrect comment

* Update keyboards/noxary/x268/x268.c

remove commented setPinOutput(B1)

* Update keyboards/noxary/x268/keymaps/default/readme.md

Flip order of layout image and title

* Update keyboards/noxary/x268/keymaps/via/readme.md

Flip order of layout image and title

* Update LED function to led_update_kb()
2020-06-22 23:08:36 -07:00
f0bde7906d Update miryoku (#9442)
- Add mouse buttons overlay layer
- Change button order
- Remove crkbd hardware specifics
- Add alternative base layer alphas
- Change title
- Add logo
- Reword intro text
- Add dev branch and new commits links
- Replace manual toc and remove anchors
- Unindent lists
- Reduce headings
- Update docs
- Build keymap as object instead of including .c file
- Add kle subset mapping images
- Add alternative mapping support
- Change default mapping for ortho_4x12
- Add split mapping for ortho_4x12
- Add contact section
- Add #pragma once to layout and keyboard config.h
2020-06-22 22:30:05 -07:00
24b0cda3e8 [Keyboard] add h60 PCB (#9242)
* add h60 initial files

* add h60 image

* updated per PR request

* Update keyboards/hineybush/h60/keymaps/default/keymap.c

* Update keyboards/hineybush/h60/keymaps/kei/keymap.c

* Update keyboards/hineybush/h60/keymaps/via/keymap.c

* Update keyboards/hineybush/h60/h60.h

* Update keyboards/hineybush/h60/h60.h

* Update keyboards/hineybush/h60/rules.mk
2020-06-22 12:25:56 -07:00
1ab8f969f6 [Update] Japanese Translation of docs/faq_build.md (#9458)
* update docs/ja/faq_build.md

* update docs/ja/faq_build.md to 0.9.10

* Update docs/ja/faq_build.md

Co-authored-by: shela <shelaf@users.noreply.github.com>

Co-authored-by: shela <shelaf@users.noreply.github.com>
2020-06-22 20:24:33 +09:00
58af0305f5 [Update] Japanese translation of newbs.md (#9388)
* update docs/ja/newbs.md

* Update docs/ja/newbs.md

Co-authored-by: shela <shelaf@users.noreply.github.com>

* Update docs/ja/newbs.md

Co-authored-by: shela <shelaf@users.noreply.github.com>

* Update docs/ja/newbs.md

Co-authored-by: shela <shelaf@users.noreply.github.com>

Co-authored-by: shela <shelaf@users.noreply.github.com>
2020-06-22 20:13:01 +09:00
umi
c7cc20918b [Docs] Japanese translation of docs/feature_userspace.md (#9253)
* add feature_userspace.md translation

* update based on comment
2020-06-22 20:11:49 +09:00
umi
924573ece2 [Docs] Japanese translation of docs/feature_macros.md (#9137)
* add feature_macros.md translation

* update based on comment

* update based on comment
2020-06-22 20:08:26 +09:00
5f06fce2c5 Fix info.json for Uni660 (#9489) 2020-06-22 09:49:47 +01:00
4b13c49578 user keymaps for ergodox_ez/dvorak_42_key / atreus/dvorak_42_key (#9429)
Co-authored-by: Drashna Jaelre <drashna@live.com>
Co-authored-by: Ryan <fauxpark@gmail.com>
2020-06-22 09:45:47 +01:00
98642ca028 Improve keycode handling for RGB (#7677)
Co-authored-by: drashna <drashna@live.com>
Co-authored-by: noroadsleft <18669334+noroadsleft@users.noreply.github.com>
2020-06-22 09:38:58 +01:00
82dc8faaf3 Fixing MIDI for ARM without NKRO enabled (#9466) 2020-06-22 08:43:08 +01:00
0b09189087 [Keymap] New custom 'super alt' keymap for the Drop ALT (#9385)
* New custom 'super alt' keymap for the Drop ALT

* Improvements to 'super alt' keymap based on PR feedback

* Fix flickering LED caps lock bug

* Code cleanup from PR feedback

* Minor keymap layout cleanup
2020-06-22 16:11:10 +10:00
3d6d899666 qmk cformat (#9500) 2020-06-22 11:21:48 +10:00
cb13dd0a33 Enable NKRO on 1up's boards (#9434)
* enable NKRO and keep consistent with bootmagic set to lite

* Update keyboards/1upkeyboards/1up60hse/rules.mk

Co-authored-by: Ryan <fauxpark@gmail.com>

Co-authored-by: Ryan <fauxpark@gmail.com>
2020-06-21 23:47:41 +01:00
af4bc251f9 Updates on Mixi default keymaps and fixes on configuration (#9467) 2020-06-21 22:59:43 +01:00
e79fb2c26e [Docs] fix indentation (#9491) 2020-06-21 20:03:35 +01:00
3e0f8f9c8b update docs/ja/feature_bootmagic.md (#9459) 2020-06-21 21:56:06 +09:00
b0a31f0bf3 update ja/hardware_keyboard_guidelines.md (#9457) 2020-06-21 21:49:43 +09:00
a91034b802 [Update] Change Original TAGs of Japanese translations (#9453)
* The TAGs of the original document has been updated to facilitate future verification.

 * docs/ja/driver_installation_zadig.md
 * docs/ja/feature_audio.md
 * docs/ja/feature_auto_shift.md
 * docs/ja/feature_bluetooth.md
 * docs/ja/hardware_avr.md
 * docs/ja/hardware_drivers.md
 * docs/ja/getting_started_make_guide.md

* The TAG of the original document has been updated to facilitate future verification.

* The TAG of the original document has been updated to facilitate future verification.

* update docs/ja/feature_tap_dance.md
2020-06-21 21:45:27 +09:00
2f85f6fbff [Docs] Japanese translation of breaking_changes*.md (#8576)
* add japanese translation 'docs/ja/breaking_changes.md'

Note: this is cherry-pick from umi-umi's translation in PR #7248

* update ja/breaking_changes.md

* update ja/breaking_changes.md, add ja/breaking_changes_instructions.md

* translating ja/breaking_changes_instructions.md

* translating ja/breaking_changes_instructions.md

* translated ja/breaking_changes_instructions.md

* update ja/breaking_changes.md, ja/breaking_changes_instructions.md

Breaking change の訳語を「破壊的な変更」から「互換性を破る変更」に変更。
ただし、文中の用語としては、Breaking change をそのまま使用するむねドキュメントの導入部で
訳注でしめし、文中では、原語のまま使用する。

* update docs/ja/_summary.md

* Update docs/ja/breaking_changes.md

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

* Update docs/ja/breaking_changes.md

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

* Update docs/ja/breaking_changes.md

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

* Update docs/ja/breaking_changes.md

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

* Update docs/ja/breaking_changes.md

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

* Update docs/ja/breaking_changes.md

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

* Update docs/ja/breaking_changes.md

* update docs/ja/breaking_changes.md

* update docs/ja/breaking_changes.md

* update docs/ja/breaking_changes.md

* update docs/ja/breaking_changes.md

* update docs/ja/breaking_changes.md

* Update docs/ja/breaking_changes_instructions.md

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

* Update docs/ja/breaking_changes_instructions.md

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

* update docs/ja/breaking_changes.md

* Update docs/ja/breaking_changes_instructions.md

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

* Update docs/ja/breaking_changes_instructions.md

* Update docs/ja/breaking_changes_instructions.md

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

* update docs/ja/breaking_changes_instructions.md

* update docs/ja/breaking_changes_instructions.md

* The base of the translation of docs/ja/breaking_changes_instructions.md was changed to 0.9.0.

* The base of the translation of docs/ja/breaking_changes.md was changed to 0.9.0.

* Update docs/ja/breaking_changes.md

Co-authored-by: s-show <s1shimz@gmail.com>

* update docs/ja/breaking_changes.md

* Update docs/ja/breaking_changes_instructions.md

Co-authored-by: shela <shelaf@users.noreply.github.com>

* update docs/ja/breaking_changes.md

* update docs/ja/breaking_changes.md

Co-authored-by: umi-umi <57262844+umi-umi@users.noreply.github.com>
Co-authored-by: shela <shelaf@users.noreply.github.com>
Co-authored-by: s-show <s1shimz@gmail.com>
2020-06-21 20:17:16 +09:00
32340e14fb Update newbs MSYS2 pacman instructions (#9445) 2020-06-21 10:54:53 +01:00
b7da69ec85 Adding information to feature_encoders.md (#9486)
Co-authored-by: Ryan <fauxpark@gmail.com>
2020-06-21 17:10:01 +10:00
f36112e957 added keyboard 5x12 to boardsource folder (#9438)
* added keyboard 5x12 to boardsource folder

* Apply suggestions from code review

Co-authored-by: Ryan <fauxpark@gmail.com>

Co-authored-by: Ryan <fauxpark@gmail.com>
2020-06-20 23:13:43 +01:00
30cdf9331a Change led variable in rgb_matrix_drivers to avoid conflicts (#9412)
* Change `led` to `led_matrix` in rgb_matrix_drivers

Is a minor change that only affects the driver file. 

However, this will allow somebody to run rgblight along side rgb matrix
using the ws2812 driver, as well.  Specifically, so you can use the
custom driver for rgblight to set a different pin (barring a change to
the `ws2812_setleds` function).  

Courtesy of discord conversion:
https://discordapp.com/channels/440868230475677696/568161140534935572/721555623191248906

* Change name to be super specific

* Update rgb_matrix_drivers.c
2020-06-20 23:07:26 +01:00
8252f378d9 Add velocikey to alice keymap (#9476) 2020-06-20 22:57:33 +01:00
d7f9e6fcf1 Added missing RGB controls on layer 1. (#9481) 2020-06-20 22:47:09 +01:00
5c07363054 spidey3 userspace: GUI F-Key lock was affecting some non-F-keys (#9469) 2020-06-20 22:39:45 +01:00
b6e9ef8dd1 CI: Run 'qmk info' on keyboard changes (#9212) 2020-06-20 22:19:56 +01:00
e58ab6d326 update shell.nix (#8910)
* now uses gcc 8.4
* fixes building boards with adafruit feather (in my case pancake)
2020-06-20 22:03:06 +01:00
02781979d6 [Docs] Improve Unicode documentation (#8676) 2020-06-20 21:58:48 +01:00
69b484600f Remove more useless code (#9475) 2020-06-20 21:51:50 +01:00
de79d55187 New Keyboard: E8.5 TKL (#9447)
Co-authored-by: Ryan <fauxpark@gmail.com>
2020-06-20 21:47:50 +01:00
580cb2c1df [Update] Files with Japanese translations related to #8822 (#9455)
* The TAG of the original document has been updated to facilitate future verification.

* The TAG of the original document has been updated to facilitate future verification.

* The TAG of the original document has been updated to facilitate future verification.
2020-06-20 21:02:16 +09:00
d9eae3ef03 Support IS31FL3741 and IS31FL3741A. (#9201) 2020-06-20 14:49:15 +10:00
05e6cc2655 Enable Mousekeys for Keebio Quefrency rev1 (#9478) 2020-06-20 13:45:25 +10:00
8b572de523 format code according to conventions [skip ci] 2020-06-20 03:37:04 +00:00
18e561b82c Fix incorrect delay when setting WS2812 (and similar) leds (#9302)
* Fix incorrect delay when setting WS2812 (and similar) leds

* Add documentation for WS2812_DELAY_MICROSECONDS

* Remove improper cast to uint8_t

Co-authored-by: Sergey Vlasov <sigprof@gmail.com>

* Remove unneeded cast to uint8_t and correct math

Co-authored-by: Sergey Vlasov <sigprof@gmail.com>

* microseconds -> µs

Co-authored-by: Ryan <fauxpark@gmail.com>

* Make documentation better match the spec sheet.

Co-authored-by: Ryan <fauxpark@gmail.com>

* Rename macro to match spec sheet

* Further correction to the delay maths for the SPI case.

Co-authored-by: Joel Challis <git@zvecr.com>

* Move ws2812_common.h to the drivers directory

* Revert "Further correction to the delay maths for the SPI case."

This reverts commit e61b56a2cfc7dfec9992a7a3af92afa50e5b8ec0.

* Remove ws2812_setleds_pin(); consolidate ws2812.h

Co-authored-by: Sergey Vlasov <sigprof@gmail.com>
Co-authored-by: Ryan <fauxpark@gmail.com>
Co-authored-by: Joel Challis <git@zvecr.com>
2020-06-20 12:59:28 +10:00
c785148445 STM32 WS2812 Open Drain Configuration (#9414)
* update docs stm32 only and applies  to all 3 driver
* cformat
2020-06-20 08:35:32 +10:00
b43bdc1c69 rebound rev4, consolodated switch matrix from 5x12 to 7x8 (#9314) 2020-06-20 08:27:27 +10:00
5a5ecd7dd9 Remove rules.mk for gboards/engine and gboards/g (#9444) 2020-06-19 15:51:50 +10:00
60be8d9f24 [Keyboard] GameBuddy macropad (#9391)
* GameBuddy macropad

* Update config.h

* Update keyboards/clawsome/gamebuddy/config.h

* Update keyboards/clawsome/gamebuddy/readme.md

* Update keyboards/clawsome/gamebuddy/readme.md

* Update keyboards/clawsome/gamebuddy/readme.md

* Update readme.md

* Update keyboards/clawsome/gamebuddy/rules.mk

* Update keyboards/clawsome/gamebuddy/readme.md
2020-06-18 20:31:51 -07:00
3f85e90126 Fix Eon87 info.json (#9460)
* Fix Eon87 info.json

* Adjust bottom row sizes
2020-06-18 20:16:57 -07:00
3eefe31a54 Keymap: Add custom keymap for Planck (#9417)
* Keymap: Add custom keymap for Planck

* Fixup buffet's planck keymap
2020-06-18 18:32:27 -07:00
7be65f2cd0 Add VIA support to Noxary 220 and Update Noxary 280 for readability (#9348)
* Update noxary 220 readme.md

* Update Noxary 280 readme.md 

add heading and spelling

* Update spelling of Noxary 280 keymap copyright

* Update Noxary 280 config.h

change product ID and product name, remove commented code

* Change  MCU name and disable Mousekey

* Update Noxary 220 config.h

Change vendor ID, Product ID, Product name and desc, remove commented code

* Update 220.h

change LAYOUT_ortho_6x4 to LAYOUT, change copyrght to Rozakiin

* Change LED indicator function

update copyright to Rozakiin

* Add via keymap

* Update  Noxary 220 default keymap for readability and numpad codes

* Update all Noxary 220 readme.md to conform to QMK templates

* Update Noxary 280 readme.md to conform to QMK template

* Disable console and command, and enable link time optimisation for VIA

* Update Noxary 280 keymaps for better readability

* Update keyboards/noxary/220/keymaps/default/keymap.c

* Update keyboards/noxary/220/220.h

* Update keyboards/noxary/220/keymaps/default/keymap.c

* Update keyboards/noxary/220/keymaps/default/keymap.c

* Update keyboards/noxary/220/keymaps/via/rules.mk

* Update keyboards/noxary/280/keymaps/default/keymap.c

* Update keyboards/noxary/280/keymaps/via/rules.mk

* Update keyboards/noxary/220/rules.mk

* Update keyboards/noxary/280/keymaps/via/keymap.c

* Update keyboards/noxary/220/keymaps/default/keymap.c

* Update keyboards/noxary/220/keymaps/default/keymap.c

* Update keyboards/noxary/220/keymaps/via/keymap.c

* Update keyboards/noxary/220/keymaps/via/keymap.c

* Update keyboards/noxary/220/keymaps/via/keymap.c

* Update keyboards/noxary/220/keymaps/via/keymap.c

* Update keyboards/noxary/220/keymaps/via/keymap.c

* Update keyboards/noxary/280/config.h

* Update keyboards/noxary/220/rules.mk

* Update keyboards/noxary/220/config.h

* Update keyboards/noxary/280/readme.md

Change layout links to ones with background removed
2020-06-18 13:14:09 -07:00
016b4be751 Update docs/ja/feature_backlight.md: apply #9043's change (#9454) 2020-06-19 04:53:16 +09:00
db80209e69 Parse version better in qmk doctor GCC version checks (#9324) 2020-06-18 19:37:47 +01:00
716924de3e [Keyboard] Added ymdk split64 based on walston's work (#9183)
* Added ymdk split64 based on walson's work

* Commented out features on walston's keymap as it was too big to compile

* Update keyboards/ymdk_sp64/config.h

* Update keyboards/ymdk_sp64/keymaps/daed/keymap.c

* Update keyboards/ymdk_sp64/matrix.c

* Update keyboards/ymdk_sp64/matrix.c

* Update keyboards/ymdk_sp64/matrix.c

* keymap changes

* Update keyboards/ymdk_sp64/matrix.c

* Update keyboards/ymdk_sp64/matrix.c

* Update keyboards/ymdk_sp64/rules.mk

* Update keyboards/ymdk_sp64/config.h

* Update keyboards/ymdk_sp64/config.h

* Update keyboards/ymdk_sp64/readme.md

* Update keyboards/ymdk_sp64/rules.mk

* Update keyboards/ymdk_sp64/config.h

* Update keyboards/ymdk_sp64/rules.mk

* Update keyboards/ymdk_sp64/ymdk_sp64.c

* Update keyboards/ymdk_sp64/keymaps/walston/rules.mk

* Update keyboards/ymdk_sp64/readme.md

* Made requested changes and moved keyboard under ymdk directory

* Update keyboards/ymdk/ymdk_sp64/keymaps/walston/keymap.c

* Update keyboards/ymdk/ymdk_sp64/config.h

* Update keyboards/ymdk/ymdk_sp64/config.h

* Update keyboards/ymdk/ymdk_sp64/keymaps/default/keymap.c

* Update keyboards/ymdk/ymdk_sp64/keymaps/default/keymap.c

* updated changes for pr 9183

* updated changes for pr 9183

* updated changes for pr 9183

* Removed redundant "QMK_KEYBOARD_H" include
2020-06-18 03:01:22 -07:00
d88dca3ca7 YMD75: move MCU/Bootloader rules to revision level (#9452)
Work-around for an issue with QMK Configurator's API.
2020-06-18 00:15:22 -07:00
9c1097e768 Fix for One Shot Layer not being cleaned up after some actions (#8832) 2020-06-18 08:07:48 +01:00
f7eb030e91 Standardize how unicode is processed (fixes #8768) (#8770)
Co-authored-by: Konstantin Đorđević <vomindoraan@gmail.com>
2020-06-18 08:07:34 +01:00
aae1814319 [Keyboard] Add Via support for Let's Split v2 (#9448)
* initial let's split with rgb

* Revert default

* Add Via keymap

* Remove my keymap

* Remove trailing slashes
2020-06-18 00:06:11 -07:00
Dan
78fdd40622 [Keymap] Dcompact for iris (#9406)
Co-authored-by: Dan Herrera <sonarius@shew.io>
Co-authored-by: Ryan <fauxpark@gmail.com>
2020-06-17 22:20:45 -07:00
43b6f031b1 [Keymap] Add pierrec83's Kyria keymap (#9401) 2020-06-17 22:18:16 -07:00
3e27ceee42 [Keyboard] Nebula12 keyboard (#9397)
Co-authored-by: Ryan <fauxpark@gmail.com>
Co-authored-by: Drashna Jaelre <drashna@live.com>
2020-06-17 22:16:26 -07:00
67f374029d [Keyboard] added VIA support for HotDox (#9377)
* added VIA support for HotDox

* Update keyboards/hotdox/keymaps/via/keymap.c

Thank you drashna :)

Co-authored-by: Drashna Jaelre <drashna@live.com>

Co-authored-by: Drashna Jaelre <drashna@live.com>
2020-06-17 21:52:33 -07:00
30fd69886d [Keyboard] Add Mixi (#9364)
* [Keyboard] Add Mixi

Co-authored-by: Ryan <fauxpark@gmail.com>

Co-authored-by: Ryan <fauxpark@gmail.com>
2020-06-17 21:39:16 -07:00
ed528403fd [Keyboard] Add Eon87 (#9337)
Co-authored-by: Maarten Dekkers <maartenn2001@gmail.com>
2020-06-17 21:30:34 -07:00
faae375ccd Fix error_log complaint about Preonic layouts (#9443) 2020-06-17 21:23:09 -07:00
b0fd064491 Fix Kudox Columner Configurator key ordering (#9427) 2020-06-17 20:47:52 -07:00
abf466e57d Add Configurator layout support for westfoxtrot/prophet (#9428) 2020-06-17 20:47:25 -07:00
157319fbd0 [Keyboard] Jian keyboard (#8914)
Co-authored-by: Joel Challis <git@zvecr.com>
Co-authored-by: Drashna Jaelre <drashna@live.com>
Co-authored-by: Ryan <fauxpark@gmail.com>
Co-authored-by: Nick Brassel <nick@tzarc.org>
2020-06-17 19:17:30 -07:00
Dan
39ff121d73 Implement game mode layer for dcompact on planck (#9402) 2020-06-17 18:53:36 -07:00
8018f4db2d [Keymap] new keymap for XD75 (#8675)
Co-authored-by: grousselle <grousselle@WX-OR6215570.ad.francetelecom.fr>
2020-06-17 18:32:02 -07:00
1a159a38ed Clean up Tap Dance docs (#9372)
* Clean up Tap Dance docs

* Add heading IDs for translation
2020-06-17 17:10:35 -07:00
a0bf235644 CLI: Add ATmega328 and ATtiny85 to supported CPUs (#9371)
* CLI: Add ATmega328 to supported CPUs

Support for ATmega328 was added in #9043.

* Update lib/python/qmk/constants.py
2020-06-17 15:45:53 -07:00
f420741f9b Fix error_log complaint about clueboard/66_hotswap/gen1 layout macro (#9400)
* Fix error_log complaint about clueboard/66_hotswap/gen1 layout macro

* Remove gen1 info.json in favour of higher level file

* Split into revision-specific info.json
2020-06-17 00:30:54 -07:00
0b7b74f56a Nebula65 (#9368)
* Initial nebula65 commit

* Use PWM driver

* Polishing

* Remove random rgblight settings

* Spelling fix

* Update keyboards/nebula65/keymaps/default/readme.md

Co-authored-by: Ryan <fauxpark@gmail.com>

* Update keyboards/nebula65/keymaps/via/readme.md

Co-authored-by: Ryan <fauxpark@gmail.com>

* Update keyboards/nebula65/readme.md

Co-authored-by: Ryan <fauxpark@gmail.com>

* Update keyboards/nebula65/readme.md

Co-authored-by: Ryan <fauxpark@gmail.com>

* Clean includes in .h file

* Update keyboards/nebula65/readme.md

Co-authored-by: Drashna Jaelre <drashna@live.com>

* Further cleanup

Co-authored-by: Ryan <fauxpark@gmail.com>
Co-authored-by: Drashna Jaelre <drashna@live.com>
2020-06-16 14:02:01 -07:00
80b2b710da added 4x12 (#9411)
Co-authored-by: Ryan <fauxpark@gmail.com>
Co-authored-by: Drashna Jaelre <drashna@live.com>
2020-06-16 20:08:30 +01:00
3814dacf27 [Keymap] Add froggy keymap with 106/109 (JP) settings for helix keyboard (#8967)
* initial commit for froggy 106 key mode

* add mode indicator on OLED

* use #pragma once instead of include guard

* remove unusable codes

* remove audio codes, because helix rev.2 has no audio feature

* use set_single_persistent_default_layer

* remove eeprom update check
2020-06-15 21:46:12 -07:00
7576f6162e [Keymap] csc027/keymap-updates (#9420) 2020-06-15 03:48:21 -07:00
e8a02afc8c Add VIA support to keebio/nyquist (#9399) 2020-06-15 20:45:56 +10:00
357a888d80 [Keymap] Drashna's Keymap Update - Display Edition (#9282)
OLED Display fixes
Add support for RGBLIGHT Layers
Add gaming layer to corn and kyria
RGBLight Startup Animation fixes and improvements (uses matrix_scan now!)
Pimoroni Trackball support added (IT'S RGB!!!)
Fix issues due to code changes
2020-06-15 03:41:28 -07:00
7f5656996c [Keymap] Add "shwilliam" Preonic keymap (#9409)
Co-authored-by: Ryan <fauxpark@gmail.com>
2020-06-15 03:26:58 -07:00
b008a9afe6 HID Liberation Device Refactor and Configurator layout support (#9394) 2020-06-15 03:11:19 -07:00
d8e3294aea [Keyboard] Fix Configurator layout data for handwired/1800fl (#9393) 2020-06-15 03:10:15 -07:00
a8d073368f [Keyboard] Fix Configurator layout data for acheron/elongate (#9392) 2020-06-15 03:09:48 -07:00
44d93285d1 Change ?= to = in keyboard rules.mk (#9390) 2020-06-15 03:06:10 -07:00
8e0af2f5ba [Docs] Fix link to mod_tap.md in the one_shot_keys.md file (#9380) 2020-06-15 02:55:00 -07:00
da76734fe0 [Keyboard] Hub16 keymap bugfix (#9345) 2020-06-15 02:17:30 -07:00
c029c5b187 [Keyboard] Add Eon75 (#9333)
Co-authored-by: Drashna Jaelre <drashna@live.com>
Co-authored-by: Maarten Dekkers <maartenn2001@gmail.com>
2020-06-15 02:09:24 -07:00
294cfd8d33 Delete trailing period in documentation (#9416) 2020-06-15 02:49:36 +10:00
622e94c6cd [Keyboard] Add S7 Elephant Rev2 Support (#9398)
* Add S7 Elephant Rev2 Support

* Apply suggestions from code review

I tested the changes on my board as well, thanks for the suggestions!

* Added a default folder in the makefile so that this would no longer be a breaking change
2020-06-13 23:45:47 -07:00
ba7f52aaeb Boardsource 3x4 info json fix (#9266)
* added bordsource 3x4 macro pad

* added bordsource 3x4 macro pad

* Update keyboards/boardsource/3x4/3x4.h

* Update keyboards/boardsource/3x4/3x4.c

* Update keyboards/boardsource/3x4/config.h

* Update keyboards/boardsource/3x4/config.h

* Update keyboards/boardsource/3x4/config.h

* Update keyboards/boardsource/3x4/config.h

* added link to readme

* Update keyboards/boardsource/3x4/keymaps/default/keymap.c

* Apply suggestions from code review

* changed the layout to refelect the keyboard

* Update keyboards/boardsource/3x4/info.json

Oh your right my bad. In the future is there an easier way for me to test the info.json and the confiscator before doing my pr?

* Apply suggestions from code review

* got 3x4 building again

* Apply suggestions from code review

* applied requested change on readme

* Update keyboards/boardsource/3x4/readme.md

* Apply suggestions from code review
2020-06-13 12:08:54 -07:00
307013a2f8 [Keymap] Personal keymaps for Prime_E, Corne, Space65 and updates (#9234)
* initial draft maps

* updates to the keymap to enable LED

* does one still have to do these shenanigans?

* update keymap with lights

* update OLED stuff

* update corne config

* update singav3 pcb config

* update ilpse config and map

* update prime keymap as well

* update the keymap for prime_e

* update tapping term and keymap

* switch numbers to the raise layer

* move nav to lower

* add mousekeys as well

* some fixes

* update keymap

* add my layout for space65

* update map

* update keymap

* add grave key

* update  config for my keymap

* update keymap

* switch to newer mechanisms

* grave on capslock

* cleanup

* udpate config

* update keymap

* Update keyboards/gray_studio/space65/keymaps/madhatter/rules.mk

* Update keyboards/gray_studio/space65/keymaps/madhatter/keymap.c

* Update keyboards/crkbd/keymaps/madhatter/rules.mk

* Update keyboards/crkbd/keymaps/madhatter/rules.mk

* Update keyboards/gray_studio/space65/keymaps/madhatter/keymap.c

* Update keyboards/crkbd/keymaps/madhatter/keymap.c

* Update keyboards/primekb/prime_e/keymaps/madhatter/config.h

* Update keyboards/gray_studio/space65/keymaps/madhatter/config.h

* Update keyboards/crkbd/keymaps/madhatter/keymap.c

* Update keyboards/wilba_tech/wt75_b/keymaps/madhatter/config.h

* Update keyboards/crkbd/keymaps/madhatter/keymap.c

* Update keyboards/crkbd/keymaps/madhatter/keymap.c

* Update keyboards/gray_studio/space65/keymaps/madhatter/config.h

* Update keyboards/primekb/prime_e/keymaps/madhatter/config.h

* Update keyboards/wilba_tech/wt75_b/keymaps/madhatter/config.h

* Update keyboards/crkbd/keymaps/madhatter/keymap.c

* Update keyboards/crkbd/keymaps/madhatter/keymap.c

* Update keyboards/primekb/prime_e/keymaps/madhatter/keymap.c

* Update keyboards/crkbd/keymaps/madhatter/readme.md

* remove file I don't use
2020-06-13 12:03:11 -07:00
f68abbf6c8 format code according to conventions [skip ci] 2020-06-13 18:51:08 +00:00
897c4cd175 [Keyboard] Add Batpad 2x4 PCB (#9295)
* Add files via upload

* Update config.h

* Update config.h

* Update keyboards/Yncognito/batpad/batpad.c

* Update batpad.c

* Update keyboards/Yncognito/batpad/keymaps/default/keymap.c

* Update keyboards/Yncognito/batpad/batpad.h

* Update keyboards/Yncognito/batpad/keymaps/default/keymap.c

* Update keyboards/Yncognito/batpad/keymaps/default/keymap.c

* Update keyboards/Yncognito/batpad/keymaps/via/keymap.c

* Update keyboards/Yncognito/batpad/keymaps/via/keymap.c

* Update keyboards/Yncognito/batpad/keymaps/via/keymap.c

* Update keyboards/Yncognito/batpad/batpad.c

* Rename keyboards/Yncognito/batpad/rules.mk to keyboards/yncognito/batpad/rules.mk

* Rename keyboards/Yncognito/batpad/readme.md to keyboards/yncognito/batpad/readme.md

* Rename keyboards/Yncognito/batpad/info.json to keyboards/yncognito/batpad/info.json

* Rename keyboards/Yncognito/batpad/config.h to keyboards/yncognito/batpad/config.h

* Rename keyboards/Yncognito/batpad/batpad.h to keyboards/yncognito/batpad/batpad.h

* Rename keyboards/Yncognito/batpad/batpad.c to keyboards/yncognito/batpad/batpad.c

* Rename keyboards/Yncognito/batpad/keymaps/default/readme.md to keyboards/yncognito/batpad/keymaps/default/readme.md

* Rename keyboards/Yncognito/batpad/keymaps/default/keymap.c to keyboards/yncognito/batpad/keymaps/default/keymap.c

* Rename keyboards/Yncognito/batpad/keymaps/default/config.h to keyboards/yncognito/batpad/keymaps/default/config.h

* Rename keyboards/Yncognito/batpad/keymaps/via/rules.mk to keyboards/yncognito/batpad/keymaps/via/rules.mk

* Rename keyboards/Yncognito/batpad/keymaps/via/keymap.c to keyboards/yncognito/batpad/keymaps/via/keymap.c

* Rename keyboards/Yncognito/batpad/keymaps/via/config.h to keyboards/yncognito/batpad/keymaps/via/config.h

* Update keyboards/yncognito/batpad/readme.md

* Update keyboards/yncognito/batpad/readme.md

* Update keyboards/yncognito/batpad/rules.mk

* Delete config.h

* Delete config.h

* Update readme.md

* Update keyboards/yncognito/batpad/batpad.c

* Update keyboards/yncognito/batpad/readme.md

* Update keyboards/yncognito/batpad/keymaps/via/keymap.c

* Update keyboards/yncognito/batpad/info.json

* Update keyboards/yncognito/batpad/batpad.h
2020-06-13 11:48:48 -07:00
1f2807c2de Add ANSI and ISO layout for KBD67mkII soldered PCB (#9340)
* add ansi and iso layouts

* fix iso map mistake

* fix mistake again...

* Update keyboards/kbdfans/kbd67/mkii_soldered/keymaps/iso/keymap.c

* rename layout macros to the blocker variants and add ansi_split_bs

* Apply suggestions from code review
2020-06-13 11:45:03 -07:00
b160913309 [Keyboard] Add new PCB Infinity87 (#9287)
* Add new PCB Infinity87

* Update keymap.c

* Update readme.md

* Update rules.mk

* update

* Update info.json
2020-06-13 11:43:04 -07:00
867fded980 [Keyboard] Add OmronTKL (#9346)
* Add OmronTKL

* Fix column pins
2020-06-13 11:41:53 -07:00
d1730ec760 [keymap] upstreaming a minor keymap update (#9366) 2020-06-13 21:11:28 +10:00
4057d44989 [Keymap] Add Kyria keymap (#9224)
* Add Kyria keymap

* clean split hand detection code

* rename "joystick" to "thumbstick"

* thumbstick overhaul

* removed angle correction, seems buggy

* save some memory

* Remove deprecated config option

* Use the correct types for getting host led states

* Fix include path

* Made .h files for encoder and oled code

* Increase speed cap on thumbstick
2020-06-13 01:24:13 -07:00
2bfcb6bfc5 [Keymap] Add custom corne keymap (#9283)
* Add custom corne keymap

* Clean up rules.mk

* Clean up base layer on keymap.c

* Clean up lower layer on keymap.c

* Clean up raise layer on keymap.c

* Clean up adjust layer in keymap.c
2020-06-13 01:18:33 -07:00
1f42071238 dz60 iso split - cleaned up the readme and replaced normal key with numpad key on numpad layer (#9339)
* README cleanup

* replaced "normal" numbers with "keypad" numbers:
KC_P4 replaced by KC_KP_P4

* replaced "normal" keys on Numpad Layer with the "KeyPad" keys
KC_1 replaced by KC_P1 etc.
2020-06-13 00:29:22 -07:00
400423d10b VIA Support: Noxary 260 (#9349)
* add VIA support to noxary 260

* change the layout macro to be 60_ansi as thats going to be the base VIA layout

* update readme
2020-06-13 00:16:07 -07:00
54ef02dead Fix project alice indicators (#9342) 2020-06-13 00:06:38 -07:00
umi
044b4aaf01 [Docs] Japanese translation of docs/feature_split_keyboard.md (#9031)
* add feature_split_keyboard.md translation

* add header for git

* update based on comment

* update based on comment
2020-06-12 23:50:19 -07:00
ccb4b81b3f Fix my personal keymap // Custom keymap for Kbdfans/kbd67/rev2 with improvements on Accessibility (#9207)
Co-authored-by: Ryan <fauxpark@gmail.com>
2020-06-11 22:39:56 +10:00
e269977387 Murcielago: improve default keymap (#9363)
* Squashed new default keymap for murcielago
2020-06-11 04:45:53 -07:00
0cb4da2c74 Really fix Ubuntu/Debian setup when $PATH contains spaces (#9370)
PR #9307 fixed the immediately visible problem (the command that was
added to $HOME/.bashrc was incorrect because of missing quotes around
paths with spaces).  However, the modified command is still wrong - it
captures the value of $PATH at the setup time, and the resulting command
written out to $HOME/.bashrc will overwrite $PATH with that captured
value, ignoring any changes in the environment.  This may be especially
important for WSL, where the initial value of $PATH in Linux includes
everything which has been added to %PATH% on the Windows side; after
adding that command to $HOME/.bashrc the WSL environment will no longer
pick up any changes made by newly installed Windows software.

Instead of that, use single quotes around the command, so that the
environment variables are not expanded at the setup time, and the
command that is added to $HOME/.bashrc becomes exactly this:

    PATH="$HOME/.local/bin:$PATH"

This command will use the $HOME and $PATH environment variable values at
the time the command is executed, not at the time the QMK setup is
performed, so any further updates to $PATH are taken into account.
Double quotes also ensure that the command is safe even if the values of
those environment variables contain spaces.
2020-06-11 12:26:10 +01:00
9b0c734733 Fix Configurator layout data for clueboard/2x1800/2019 (#9373) 2020-06-11 12:07:15 +01:00
fffee6ade1 Fixing Iron165 VIA Keymap (#9298)
* Fixing via issues

* Fixing whitespace issues on the keymap

* Fixed the default via layer 1 keymap, was a little weird before

* Removing redundant declarations in via/rules.mk
2020-06-11 00:12:53 +01:00
97ddc7ea18 Fix Ubuntu/Debian setup when $PATH contains spaces (#9307)
* Change `echo` to `export`

* Add `export` as a note under the `echo` command

* Remove note from last commit

Co-authored-by: Ryan <fauxpark@gmail.com>

* Update docs/newbs_getting_started.md

Co-authored-by: Ryan <fauxpark@gmail.com>

* Update docs/newbs_getting_started.md

Add 1 line of whitespace under note

Co-authored-by: Ryan <fauxpark@gmail.com>

Co-authored-by: Ryan <fauxpark@gmail.com>
2020-06-10 23:46:13 +01:00
3afd2d81b8 Add documentation for selecting an Arm MCU (#9046)
* Initial doco write-up.

* Update docs/platformdev_selecting_arm_mcu.md

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

* Apply suggestions from code review

Co-authored-by: Ryan <fauxpark@gmail.com>

Co-authored-by: James Young <18669334+noroadsleft@users.noreply.github.com>
Co-authored-by: Ryan <fauxpark@gmail.com>
2020-06-10 23:32:58 +01:00
2543bad250 [Docs] Fixed the hyperlink to /users/_example/. (#9326) 2020-06-10 15:27:25 -07:00
a056d94561 [keyboard] Project Keyboard Signature 87 (#9062)
* preliminary check in, basically a copy from 159's github with a few additions to get it to compile

* update readme

* fixup the LAYOUT macro labels to be more reasonable

* add tkl_ansi LAYOUT macro for community layout support

* clean up rules.mk, add community layout suport, and add in bootloader

* add a tsangan layout macro

* spruce up readme

* add VIA keymap

* add qmk configurator support

* Update keyboards/projectkb/signature87/rules.mk

Co-authored-by: Joel Challis <git@zvecr.com>

* Update keyboards/projectkb/signature87/rules.mk

Co-authored-by: Joel Challis <git@zvecr.com>

* Update keyboards/projectkb/signature87/rules.mk

Co-authored-by: Joel Challis <git@zvecr.com>

* remove unneeded file

* Update keyboards/projectkb/signature87/config.h

Co-authored-by: Joel Challis <git@zvecr.com>

* Update keyboards/projectkb/signature87/rules.mk

Co-authored-by: Ryan <fauxpark@gmail.com>

* Update keyboards/projectkb/signature87/config.h

Co-authored-by: Joel Challis <git@zvecr.com>
Co-authored-by: Ryan <fauxpark@gmail.com>
2020-06-10 23:26:21 +01:00
573d1fbb92 Include pointing_device_send in docs (#9185) 2020-06-10 23:18:53 +01:00
437446ba8f Fix one shot swaphands compiler error when NO_ACTION_ONESHOT is defined (#9296)
* init

* add RETRO_TAP; tap anyway after TAP_TERM, if no interruption

* RETRO_TAP works for other types of taps

* revert to upstream/master

* explain this fork in readme

* use one readme.md file instaed

* fix the error if NO_ACTION_ONESHOT is defined

* restore readme.md to upstream master

Co-authored-by: Tsan-Kuang Lee <tsan.kuang.lee@gmail.com>
2020-06-10 22:40:17 +01:00
8640b43214 [Keymap] WPM-responsive OLED animation in personal keymap (#9264)
Using the wpm feature, I create a responsive OLED animation that changes based on how fast the user types. As written there are three phases (It's bongo cat!) but can easily be reconfigured and replaced with other images.

Multiple byte arrays consume considerable space so choose your usage wisely. When customized, the smaller the byte array used, the better, due to space limitations on most microcontrollers.

I made this with no prior knowledge of C, so I'm looking forward to any and all suggested improvements.

Credit is owed to obosob for laying the foundation for this little script as well to /u/pixelbenny for graciously providing the bongocat artwork I adapted for the animation.

The config.h includes a tweak to the Kyria's LED mapping, so that the order now reflects their physical positions, making animations smoother.

Co-authored-by: Ryan <fauxpark@gmail.com>
Co-authored-by: Drashna Jaelre <drashna@live.com>
Co-authored-by: Simon Schuster <SimonSchuster@Simons-MacBook-Pro-2.local>
Co-authored-by: James Incandenza <james@ij.net>
2020-06-10 14:39:07 -07:00
09fc6cab34 Add bat43 rev2 (#9319)
* add rev2

* Update keyboards/bat43/rev1/rules.mk

Co-authored-by: Ryan <fauxpark@gmail.com>

* Update keyboards/bat43/rev2/rules.mk

Co-authored-by: Ryan <fauxpark@gmail.com>

Co-authored-by: Ryan <fauxpark@gmail.com>
2020-06-10 22:38:11 +01:00
7e8dc2e570 [Keymap] Add dual layer keymap for xd002 macropad (#9222)
Co-authored-by: Joel Challis <git@zvecr.com>
Co-authored-by: Drashna Jaelre <drashna@live.com>
2020-06-10 14:33:26 -07:00
263536586d [Keyboard] Wazowski 23-19 PCB Support (#9198)
Co-authored-by: Joel Challis <git@zvecr.com>
Co-authored-by: Ryan <fauxpark@gmail.com>
Co-authored-by: Chris Figueroa <chrisfigueroa16@gmail.com>
2020-06-10 14:32:03 -07:00
636 changed files with 34867 additions and 3767 deletions

49
.github/workflows/info.yml vendored Normal file
View File

@ -0,0 +1,49 @@
name: PR Lint keyboards
on:
pull_request:
paths:
- 'keyboards/**'
jobs:
info:
runs-on: ubuntu-latest
container: qmkfm/base_container
steps:
- uses: actions/checkout@v2
with:
fetch-depth: 0
- name: Print info
run: |
git rev-parse --short HEAD
echo ${{ github.event.pull_request.base.sha }}
git diff --name-only ${{ github.event.pull_request.base.sha }}...
- name: Run qmk info
shell: 'bash {0}'
run: |
QMK_CHANGES=$(git diff --name-only ${{ github.event.pull_request.base.sha }}...)
QMK_KEYBOARDS=$(qmk list-keyboards)
exit_code=0
for KB in $QMK_KEYBOARDS; do
KEYBOARD_CHANGES=$(echo "$QMK_CHANGES" | grep -E '^(keyboards/'${KB}'/)')
if [[ -z "$KEYBOARD_CHANGES" ]]; then
# skip as no changes for this keyboard
continue
fi
KEYMAP_ONLY=$(echo "$KEYBOARD_CHANGES" | grep -cv /keymaps/)
if [[ $KEYMAP_ONLY -gt 0 ]]; then
echo "linting ${KB}"
# TODO: info info always returns 0 - right now the only way to know failure is to inspect log lines
qmk info -kb ${KB} 2>&1 | tee /tmp/$$
!(grep -cq ☒ /tmp/$$)
: $((exit_code = $exit_code + $?))
fi
done
exit $exit_code

View File

@ -144,7 +144,7 @@ ifeq ($(strip $(RGBLIGHT_ENABLE)), yes)
endif
endif
VALID_MATRIX_TYPES := yes IS31FL3731 IS31FL3733 IS31FL3737 WS2812 custom
VALID_MATRIX_TYPES := yes IS31FL3731 IS31FL3733 IS31FL3737 IS31FL3741 WS2812 custom
LED_MATRIX_ENABLE ?= no
ifneq ($(strip $(LED_MATRIX_ENABLE)), no)
@ -205,6 +205,13 @@ ifeq ($(strip $(RGB_MATRIX_ENABLE)), IS31FL3737)
QUANTUM_LIB_SRC += i2c_master.c
endif
ifeq ($(strip $(RGB_MATRIX_ENABLE)), IS31FL3741)
OPT_DEFS += -DIS31FL3741 -DSTM32_I2C -DHAL_USE_I2C=TRUE
COMMON_VPATH += $(DRIVER_PATH)/issi
SRC += is31fl3741.c
QUANTUM_LIB_SRC += i2c_master.c
endif
ifeq ($(strip $(RGB_MATRIX_ENABLE)), WS2812)
OPT_DEFS += -DWS2812
WS2812_DRIVER_REQUIRED := yes

View File

@ -145,6 +145,7 @@
* Hardware Platform Development
* Arm/ChibiOS
* [Selecting an MCU](platformdev_selecting_arm_mcu.md)
* [Early initialization](platformdev_chibios_earlyinit.md)
* QMK Reference

View File

@ -26,7 +26,7 @@ If your encoder's clockwise directions are incorrect, you can swap the A & B pad
#define ENCODER_DIRECTION_FLIP
```
Additionally, the resolution can be specified in the same file (the default & suggested is 4):
Additionally, the resolution, which defines how many pulses the encoder registers between each detent, can be defined with:
```c
#define ENCODER_RESOLUTION 4

View File

@ -19,7 +19,7 @@ These functions allow you to activate layers in various ways. Note that layers a
### Caveats :id=caveats
Currently, `LT()` and `MT()` are limited to the [Basic Keycode set](keycodes_basic.md), meaning you can't use keycodes like `LCTL()`, `KC_TILD`, or anything greater than `0xFF`. Specifically, dual function keys like `LT` and `MT` use a 16 bit keycode. 4 bits are used for the function identifier, the next 12 are divided into the parameters. Layer Tap uses 4 bits for the layer (and is why it's limited to layers 0-16, actually), while Mod Tap does the same, 4 bits for the identifier, 4 bits for which mods are used, and all of them use 8 bits for the keycode. Because of this, the keycode used is limited to `0xFF` (0-255), which are the basic keycodes only.
Currently, `LT()` and `MT()` are limited to the [Basic Keycode set](keycodes_basic.md), meaning you can't use keycodes like `LCTL()`, `KC_TILD`, or anything greater than `0xFF`. Specifically, dual function keys like `LT` and `MT` use a 16 bit keycode. 4 bits are used for the function identifier, the next 12 are divided into the parameters. Layer Tap uses 4 bits for the layer (and is why it's limited to layers 0-15, actually), while Mod Tap does the same, 4 bits for the identifier, 4 bits for which mods are used, and all of them use 8 bits for the keycode. Because of this, the keycode used is limited to `0xFF` (0-255), which are the basic keycodes only.
Expanding this would be complicated, at best. Moving to a 32-bit keycode would solve a lot of this, but would double the amount of space that the keymap matrix uses. And it could potentially cause issues, too. If you need to apply modifiers to your tapped keycode, [Tap Dance](feature_tap_dance.md#example-5-using-tap-dance-for-advanced-mod-tap-and-layer-tap-keys) can be used to accomplish this.

View File

@ -5,7 +5,7 @@ If you've ever used Vim, you know what a Leader key is. If not, you're about to
That's what `KC_LEAD` does. Here's an example:
1. Pick a key on your keyboard you want to use as the Leader key. Assign it the keycode `KC_LEAD`. This key would be dedicated just for this -- it's a single action key, can't be used for anything else.
2. Include the line `#define LEADER_TIMEOUT 300` in your `config.h`. This sets the timeout for the `KC_LEAD` key. Specifically, when you press the `KC_LEAD` key, you only have a certain amount of time to complete the Leader Key sequence. The `300` here sets that to 300ms, and you can increase this value to give you more time to hit the sequence. But any keys pressed during this timeout are intercepted and not sent, so you may want to keep this value low. .
2. Include the line `#define LEADER_TIMEOUT 300` in your `config.h`. This sets the timeout for the `KC_LEAD` key. Specifically, when you press the `KC_LEAD` key, you only have a certain amount of time to complete the Leader Key sequence. The `300` here sets that to 300ms, and you can increase this value to give you more time to hit the sequence. But any keys pressed during this timeout are intercepted and not sent, so you may want to keep this value low.
* By default, this timeout is how long after pressing `KC_LEAD` to complete your entire sequence. This may be very low for some people. So you may want to increase this timeout. Optionally, you may want to enable the `LEADER_PER_KEY_TIMING` option, which resets the timeout after each key is tapped. This allows you to maintain a low value here, but still be able to use the longer sequences. To enable this option, add `#define LEADER_PER_KEY_TIMING` to your `config.h`.
3. Within your `matrix_scan_user` function, add something like this:

View File

@ -6,34 +6,34 @@ Macros allow you to send multiple keystrokes when pressing just one key. QMK has
## The New Way: `SEND_STRING()` & `process_record_user`
Sometimes you just want a key to type out words or phrases. For the most common situations we've provided `SEND_STRING()`, which will type out your string (i.e. a sequence of characters) for you. All ASCII characters that are easily translated to a keycode are supported (e.g. `\n\t`).
Sometimes you want a key to type out words or phrases. For the most common situations, we've provided `SEND_STRING()`, which will type out a string (i.e. a sequence of characters) for you. All ASCII characters that are easily translatable to a keycode are supported (e.g. `qmk 123\n\t`).
Here is an example `keymap.c` for a two-key keyboard:
```c
enum custom_keycodes {
QMKBEST = SAFE_RANGE,
QMKBEST = SAFE_RANGE,
};
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
switch (keycode) {
case QMKBEST:
if (record->event.pressed) {
// when keycode QMKBEST is pressed
SEND_STRING("QMK is the best thing ever!");
} else {
// when keycode QMKBEST is released
}
break;
}
return true;
if (record->event.pressed) {
// when keycode QMKBEST is pressed
SEND_STRING("QMK is the best thing ever!");
} else {
// when keycode QMKBEST is released
}
break;
}
return true;
};
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[0] = {
{QMKBEST, KC_ESC}
}
[0] = {
{QMKBEST, KC_ESC},
// ...
},
};
```
@ -49,42 +49,45 @@ You can do that by adding another keycode and adding another case to the switch
```c
enum custom_keycodes {
QMKBEST = SAFE_RANGE,
QMKURL,
MY_OTHER_MACRO
QMKBEST = SAFE_RANGE,
QMKURL,
MY_OTHER_MACRO,
};
bool process_record_user(uint16_t keycode, keyrecord_t *record) {
switch (keycode) {
switch (keycode) {
case QMKBEST:
if (record->event.pressed) {
// when keycode QMKBEST is pressed
SEND_STRING("QMK is the best thing ever!");
} else {
// when keycode QMKBEST is released
}
break;
if (record->event.pressed) {
// when keycode QMKBEST is pressed
SEND_STRING("QMK is the best thing ever!");
} else {
// when keycode QMKBEST is released
}
break;
case QMKURL:
if (record->event.pressed) {
// when keycode QMKURL is pressed
SEND_STRING("https://qmk.fm/\n");
} else {
// when keycode QMKURL is released
}
break;
if (record->event.pressed) {
// when keycode QMKURL is pressed
SEND_STRING("https://qmk.fm/\n");
} else {
// when keycode QMKURL is released
}
break;
case MY_OTHER_MACRO:
if (record->event.pressed) {
SEND_STRING(SS_LCTL("ac")); // selects all and copies
}
break;
}
return true;
if (record->event.pressed) {
SEND_STRING(SS_LCTL("ac")); // selects all and copies
}
break;
}
return true;
};
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[0] = {
{MY_CUSTOM_MACRO, MY_OTHER_MACRO}
}
[0] = {
{MY_CUSTOM_MACRO, MY_OTHER_MACRO},
// ...
},
};
```

View File

@ -21,7 +21,11 @@ Keep in mind that a report_mouse_t (here "mouseReport") has the following proper
* `mouseReport.h` - this is a signed int from -127 to 127 (not 128, this is defined in USB HID spec) representing horizontal scrolling (+ right, - left).
* `mouseReport.buttons` - this is a uint8_t in which the last 5 bits are used. These bits represent the mouse button state - bit 3 is mouse button 5, and bit 7 is mouse button 1.
When the mouse report is sent, the x, y, v, and h values are set to 0 (this is done in "pointing_device_send()", which can be overridden to avoid this behavior). This way, button states persist, but movement will only occur once. For further customization, both `pointing_device_init` and `pointing_device_task` can be overridden.
Once you have made the necessary changes to the mouse report, you need to send it:
* `pointing_device_send()` - Sends the mouse report to the host and zeroes out the report.
When the mouse report is sent, the x, y, v, and h values are set to 0 (this is done in `pointing_device_send()`, which can be overridden to avoid this behavior). This way, button states persist, but movement will only occur once. For further customization, both `pointing_device_init` and `pointing_device_task` can be overridden.
In the following example, a custom key is used to click the mouse and scroll 127 units vertically and horizontally, then undo all of that when released - because that's a totally useful function. Listen, this is an example:
@ -38,6 +42,7 @@ case MS_SPECIAL:
currentReport.buttons &= ~MOUSE_BTN1;
}
pointing_device_set_report(currentReport);
pointing_device_send();
break;
```

View File

@ -186,8 +186,16 @@ All RGB keycodes are currently shared with the RGBLIGHT system:
|`RGB_VAD` | |Decrease value (brightness), increase value when Shift is held |
|`RGB_SPI` | |Increase effect speed (does not support eeprom yet), decrease speed when Shift is held|
|`RGB_SPD` | |Decrease effect speed (does not support eeprom yet), increase speed when Shift is held|
|`RGB_MODE_PLAIN` |`RGB_M_P `|Static (no animation) mode |
|`RGB_MODE_BREATHE` |`RGB_M_B` |Breathing animation mode |
|`RGB_MODE_RAINBOW` |`RGB_M_R` |Full gradient scrolling left to right (uses the `RGB_MATRIX_CYCLE_LEFT_RIGHT` mode) |
|`RGB_MODE_SWIRL` |`RGB_M_SW`|Full gradient spinning pinwheel around center of keyboard (uses `RGB_MATRIX_CYCLE_PINWHEEL` mode) |
* `RGB_MODE_*` keycodes will generally work, but are not currently mapped to the correct effects for the RGB Matrix system
* `RGB_MODE_*` keycodes will generally work, but not all of the modes are currently mapped to the correct effects for the RGB Matrix system.
`RGB_MODE_PLAIN`, `RGB_MODE_BREATHE`, `RGB_MODE_RAINBOW`, and `RGB_MATRIX_SWIRL` are the only ones that are mapped properly. The rest don't have a direct equivalent, and are not mapped.
!> By default, if you have both the [RGB Light](feature_rgblight.md) and the RGB Matrix feature enabled, these keycodes will work for both features, at the same time. You can disable the keycode functionality by defining the `*_DISABLE_KEYCODES` option for the specific feature.
## RGB Matrix Effects :id=rgb-matrix-effects
@ -385,6 +393,7 @@ These are defined in [`rgblight_list.h`](https://github.com/qmk/qmk_firmware/blo
#define RGB_MATRIX_STARTUP_SAT 255 // Sets the default saturation value, if none has been set
#define RGB_MATRIX_STARTUP_VAL RGB_MATRIX_MAXIMUM_BRIGHTNESS // Sets the default brightness value, if none has been set
#define RGB_MATRIX_STARTUP_SPD 127 // Sets the default animation speed, if none has been set
#define RGB_MATRIX_DISABLE_KEYCODES // disables control of rgb matrix by keycodes (must use code functions to control the feature)
```
## EEPROM storage :id=eeprom-storage

View File

@ -64,6 +64,9 @@ Changing the **Value** sets the overall brightness.<br>
|`RGB_MODE_GRADIENT`|`RGB_M_G` |Static gradient animation mode |
|`RGB_MODE_RGBTEST` |`RGB_M_T` |Red, Green, Blue test animation mode |
!> By default, if you have both the RGB Light and the [RGB Matrix](feature_rgb_matrix.md) feature enabled, these keycodes will work for both features, at the same time. You can disable the keycode functionality by defining the `*_DISABLE_KEYCODES` option for the specific feature.
## Configuration
Your RGB lighting can be configured by placing these `#define`s in your `config.h`:
@ -76,6 +79,7 @@ Your RGB lighting can be configured by placing these `#define`s in your `config.
|`RGBLIGHT_LIMIT_VAL` |`255` |The maximum brightness level |
|`RGBLIGHT_SLEEP` |*Not defined*|If defined, the RGB lighting will be switched off when the host goes to sleep|
|`RGBLIGHT_SPLIT` |*Not defined*|If defined, synchronization functionality for split keyboards is added|
|`RGBLIGHT_DISABLE_KEYCODES`|*not defined*|If defined, disables the ability to control RGB Light from the keycodes. You must use code functions to control the feature|
## Effects and Animations

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -111,7 +111,7 @@ This is ideal for when you want ensure everything compiles successfully when pre
## Examples
For a brief example, checkout [`/users/_example/`](https://github.com/qmk/qmk_firmware/tree/master/users/drashna).
For a brief example, checkout [`/users/_example/`](https://github.com/qmk/qmk_firmware/tree/master/users/_example).
For a more complicated example, checkout [`/users/drashna/`](https://github.com/qmk/qmk_firmware/tree/master/users/drashna)'s userspace.

View File

@ -106,7 +106,7 @@
* [Velocikey](ja/feature_velocikey.md)
* QMK の開発
* 破壊的な変更
* 互換性を破る変更/Breaking changes
* [概要](ja/breaking_changes.md)
* [プルリクエストにフラグが付けられた](ja/breaking_changes_instructions.md)
* 履歴

120
docs/ja/breaking_changes.md Normal file
View File

@ -0,0 +1,120 @@
# Breaking changes/互換性を破る変更
<!---
grep --no-filename "^[ ]*git diff" docs/ja/*.md | sh
original document: 0.9.0:docs/breaking_changes.md
git diff 0.9.0 HEAD -- docs/breaking_changes.md | cat
-->
このドキュメントは QMK の互換性を破る変更(Breaking change) のプロセスについて説明します。
互換性を破る変更とは、互換性がなかったり潜在的な危険が生じるように QMK の動作を変える変更を指します。
ユーザが QMK ツリーを更新しても自分のキーマップが壊れない事を確信できるように、これらの変更を制限します。(訳注:以後、原文のまま Breaking change を用語として使用します。)
Breaking change ピリオドとは、危険な変更、または予想外の変更を QMK へ行なう PR をマージする時のことです。
付随するテスト期間があるため、問題が起きることはまれか、有りえないと確信しています。
## 過去の Breaking change には何が含まれますか?
* [2020年5月30日](ja/ChangeLog/20200530.md)
* [2020年2月29日](ja/ChangeLog/20200229.md)
* [2019年8月30日](ja/ChangeLog/20190830.md)
## 次の Breaking change はいつですか?
次の Breaking change は2020年8月29日に予定されています。
### 重要な日付
* [x] 2020年 5月30日 - `develop` が作成されました。毎週リベースされます。
* [ ] 2020年 8月 1日 - `develop` は新しいPRを取り込みません。
* [ ] 2020年 8月 1日 - テスターの募集。
* [ ] 2020年 8月27日 - `master`がロックされ、PR はマージされません。
* [ ] 2020年 8月29日 - `develop``master` にマージします。
* [ ] 2020年 8月29日 - `master` のロックが解除されます。PR を再びマージすることができます。
## どのような変更が含まれますか?
最新の Breaking change 候補を見るには、[`breaking_change` ラベル](https://github.com/qmk/qmk_firmware/pulls?q=is%3Aopen+label%3Abreaking_change+is%3Apr)を参照してください。
現在から `develop` が閉じられるまでの間に新しい変更が追加される可能性があり、そのラベルが適用された PR はマージされることは保証されていません。
このラウンドに、あなたの Breaking change を含めたい場合は、`breaking_change` ラベルを持つ PR を作成し、`develop` が閉じる前に承認してもらう必要があります。
`develop` が閉じた後は、新しい Breaking change は受け付けられません。
受け入れの基準:
* PR が完了し、マージの準備ができている
* PR が ChangeLog を持つ
# チェックリスト
ここでは、Breaking change プロセスを実行する時に使用する様々なプロセスについて説明します。
## `master` から `develop` をリベースします
これは `develop` が開いている間、毎週金曜日に実行されます。
プロセス:
```
cd qmk_firmware
git checkout master
git pull --ff-only
git checkout develop
git rebase master
git push --force
```
## `develop` ブランチの作成
以前の `develop` ブランチがマージされた直後に、これが発生します。
* `qmk_firmware` git commands
* [ ] `git checkout master`
* [ ] `git pull --ff-only`
* [ ] `git checkout -b develop`
* [ ] Edit `readme.md`
* [ ] これがテストブランチであることを上部に大きな通知で追加します。
* [ ] このドキュメントへのリンクを含めます
* [ ] `git commit -m 'Branch point for <DATE> Breaking Change'`
* [ ] `git tag breakpoint_<YYYY>_<MM>_<DD>`
* [ ] `git tag <next_version>` # ブレーキング ポイント タグがバージョンの増分を混乱させないようにします
* [ ] `git push origin develop`
* [ ] `git push --tags`
## マージの 4 週間前
* `develop` は新しい PR に対して閉じられ、現在の PR の修正のみがマージされる可能性があります。
* テスターの呼び出しを投稿します
* [ ] Discord
* [ ] GitHub PR
* [ ] https://reddit.com/r/olkb
## マージの 1 週間前
* master が < 2 日前> から <マージの日> まで閉じられることを発表します
* [ ] Discord
* [ ] GitHub PR
* [ ] https://reddit.com/r/olkb
## マージの 2 日前
* master が 2 日間閉じられることを発表します
* [ ] Discord
* [ ] GitHub PR
* [ ] https://reddit.com/r/olkb
## マージの日
* `qmk_firmware` git commands
* [ ] `git checkout develop`
* [ ] `git pull --ff-only`
* [ ] `git rebase origin/master`
* [ ] Edit `readme.md`
* [ ] `develop` についてのメモを削除
* [ ] ChangeLog を 1 つのファイルにまとめます。
* [ ] `git commit -m 'Merge point for <DATE> Breaking Change'`
* [ ] `git push origin develop`
* GitHub Actions
* [ ] `develop`の PR を作成します
* [ ] travis がクリーンに戻ったことを確認します
* [ ] `develop` PR をマージします

View File

@ -0,0 +1,51 @@
# breaking changes/互換性を破る変更: プルリクエストにフラグが付けられた
<!---
grep --no-filename "^[ ]*git diff" docs/ja/*.md | sh
original document: 0.9.0:docs/breaking_changes_instructions.md
git diff 0.9.0 HEAD -- docs/breaking_changes_instructions.md | cat
-->
QMK のメンバーがあなたのプルリクエストに返信し、あなたの提出したものは Breaking change (互換性を破る変更) であると述べている場合があります。メンバーの判断では、あなたが提案した変更は QMK やその利用者にとってより大きな影響を持つと考えられます。
プルリクエストにフラグが立てられる原因となるものには、以下のようなものがあります:
- **ユーザーのキーマップに対する編集**
ユーザーが自分のキーマップを QMK に提出した後、しばらくしてさらに更新してプルリクエストを開いたところ、それが `qmk/qmk_firmware` リポジトリで編集されていたためにマージできなかったことに気づくことがあるかもしれません。すべてのユーザーが Git や GitHub を使いこなせるわけではないので、ユーザー自身で問題を修正できないことに気づくかもしれません。
- **期待される動作の変更**
QMK の動作を変更すると、既存の QMK 機能への変更を組み込んだ新しいファームウェアをフラッシュした場合、ユーザはハードウェアまたは QMK が壊れていると考え、希望する動作を復元する手段がないことに気付くことがあります。
- **ユーザーのアクションを必要とする変更**
変更には、ツールチェインを更新したり、Git で何らかのアクションを取るなど、ユーザーがアクションを行う必要がある場合もあります。
- **精査が必要な変更**
時には、投稿がプロジェクトとしての QMK に影響を与えることもあります。これは、著作権やライセンスの問題、コーディング規約、大規模な機能のオーバーホール、コミュニティによるより広範なテストを必要とする「リスクの高い」変更、あるいは全く別のものである可能性があります。
- **エンドユーザーとのコミュニケーションを必要とする変更**
これには、将来の非推奨化への警告、時代遅れの慣習、その他伝えなければならないが上記のカテゴリのどれかに当てはまらないものが含まれます。
## 何をすればいいのか?
提出したものが Breaking change だと判断された場合、手続きをスムーズに進めるためにできることがいくつかあります。
### PR を分割することを検討する
あなたがコアコードを投稿していて、それが Breaking change プロセスを経る必要がある唯一の理由が、あなたの変更に合わせてキーマップを更新していることである場合、古いキーマップが機能し続けるような方法であなたの機能を投稿できるかどうかを検討してください。
そののち、Breaking change プロセスを経て古いコードを削除する別の PR を提出してください。
### ChangeLog エントリの提供
Breaking change プロセスを経て提出する際には、変更ログのエントリを含めることを我々は要請します。
エントリーは、あなたのプルリクエストが行う変更の短い要約としてください &ndash; [ここの各セクションは changelog として開始されました](ja/ChangeLog/20190830.md "n.b. This should link to the 2019 Aug 30 Breaking Changes doc - @noroadsleft")。
変更ログは `docs/ChangeLog/YYYYMMDD/PR####.md` に置いてください。
ここで、`YYYYMMDD` は QMK の breaking change ブランチ &ndash; 通常は `develop` という名称 &ndash;`master` ブランチにマージされる日付、`####` はプルリクエストの番号です。
ユーザー側でのアクションを必要とする場合、あなたの変更ログは、どのようなアクションを取らなければならないかをユーザーに指示するか、そのようなアクションを指示する場所にリンクする必要があります。
### 変更点を文書化する
提出物の目的を理解し、それが必要とする可能性のある意味合いやアクションを理解することで、レビュープロセスをより簡単にすることができます。この目的のためには変更履歴で十分かもしれませんが、より広範囲の変更を行う場合には、変更履歴には不向きな詳細レベルが必要になるかもしれません。
あなたのプルリクエストにコメントしたり、質問やコメント、変更要求に対応したりすることは、非常にありがたいことです。
### 助けを求める
あなたの提出物にフラグが立ったことで、あなたはびっくりしてしまったかもしれません。もし、あなた自身が脅されたり、圧倒されたりしていると感じたら、私たちに知らせてください。プルリクエストにコメントするか、[Discord で QMK チームに連絡を取ってください](https://discord.gg/Uq7gcHh)。

View File

@ -1,8 +1,8 @@
# QMK CLI 設定
<!---
original document: d598f01cb:docs/cli_configuration.md
git diff d598f01cb HEAD -- docs/cli_configuration.md | cat
original document: 0.9.0:docs/cli_configuration.md
git diff 0.9.0 HEAD -- docs/cli_configuration.md | cat
-->
このドキュメントは `qmk config` がどのように動作するかを説明します。

View File

@ -0,0 +1,67 @@
# QMK Configurator: ステップ・バイ・ステップ
<!---
grep --no-filename "^[ ]*git diff" docs/ja/*.md | sh
original document: 0.9.0:docs/configurator_step_by_step.md
git diff 0.9.0 HEAD -- docs/configurator_step_by_step.md | cat
-->
このページでは、QMK Configurator でファームウェアを構築する手順を説明します。
## ステップ 1: キーボードを選ぶ
ドロップダウンボックスをクリックして、キーマップを作成するキーボードを選択します。
?> **キーボードに複数のバージョンがある場合は、正しいバージョンを選択してください。**
大事なことなのでもう一度言います。
!> **正しいバージョンを選択してください!**
キーボードが QMK を搭載していると宣伝されていてもリストにない場合は、開発者がまだ作業中か、私たちがまだマージするきっかけがなかった可能性があります。
アクティブな [プルリクエスト](https://github.com/qmk/qmk_firmware/pulls?q=is%3Aopen+is%3Apr+label%3Akeyboard) がない場合、[qmk_firmware](https://github.com/qmk/qmk_firmware/issues)で報告して、その特定のキーボードのサポートをリクエストします。
製作者自身の GitHub アカウントにある QMK 搭載キーボードもあります。
それも再確認してください。
## ステップ2: キーボードのレイアウトを選択する
作成したいと思うキーマップに最も近いレイアウトを選択します。一部のキーボードには、まだ十分なレイアウトや正しいレイアウトが定義されていません。これらは将来サポートされる予定です。
## ステップ3: キーマップの名前を決める
お好みの名前をキーマップにつけます。
?> コンパイル時に問題が発生した場合は、もしかすると QMK ファームウェアリポジトリに既に同じ名前が存在しているのかもしれません。名前を変更してみてください。
## ステップ4: キーマップを定義する
キーコードの入力は、3つの方法のいずれかで行います。
1. ドラッグ・アンド・ドロップ
2. レイアウト上の空の場所をクリックして、希望するキーコードをクリックします
3. レイアウト上の空の場所をクリックして、キーボードの物理キーを押します
?> マウスをキーの上に置くと、そのキーコードの機能の短い説明文が出ます。より詳細な説明については以下を見てください:
* [基本的なキーコードリファレンス](ja/keycodes_basic.md)
* [高度なキーコードリファレンス](ja/feature_advanced_keycodes.md)
!> 選択したレイアウトが物理的なビルドと一致しない場合は、使用していないキーは空白のままにしておきます。どのキーが使用されているかわからない場合、例えば、バックスペースキーは1つだが `LAYOUT_all` には2つのキーがある場合は、同じキーコードを両方の場所に配置してください。
## ステップ5: 後日のためにキーマップを保存する
キーマップに満足するか、または後で作業したい場合は、`Export Keymap' ボタンを押します。
これでキーマップがあなたのコンピュータに保存されます。
その後、`Import Keymap` ボタンを押すことで、この .json ファイルを後で読み込むことができます。
!> **注意:** このファイルは、kbfirmware.com またはその他のツールに使用される .json ファイルと同じ形式ではありません。これらのツールにこの .json を使用したり、QMK Configurator でこれらのツールの .json を使用しようとすると、問題が発生します。
## ステップ6: ファームウェアをコンパイルする
緑色の `Compile` ボタンを押します。
コンパイルが完了すると、緑色の `Download Firmware` ボタンを押すことができます。
## 次のステップ: キーボードに書き込む(フラッシュする)
[ファームウェアを書きこむ](ja/newbs_flashing.md) を参照してください。

View File

@ -0,0 +1,32 @@
# Configurator トラブルシューティング
<!---
grep --no-filename "^[ ]*git diff" docs/ja/*.md | sh
original document: 0.9.0:docs/configurator_troubleshooting.md
git diff 0.9.0 HEAD -- docs/configurator_troubleshooting.md | cat
-->
## 私の .json ファイルが動きません
.json ファイルが QMK Configurator で作ったものの場合、おめでとうございます。バグに遭遇しました。 [qmk_configurator](https://github.com/qmk/qmk_configurator/issues) で報告してください。
そうでない場合は、... 他の .json ファイルを使用しないようにという、上に書いた注意書きを見逃してませんか?
#### レイアウトに余分なスペースがありますか?どうすればいいですか?
もしスペースバーが3つに分かれている場合は、全てスペースバーで埋めるのが最善の方法です。バックスペースや Shift キーについても同じことができます。
#### キーコードってなに?
以下を見てください。
* [基本的なキーコードリファレンス](ja/keycodes_basic.md)
* [高度なキーコードリファレンス](ja/feature_advanced_keycodes.md)
#### コンパイルできません
キーマップの他のレイヤーを再確認して、おかしなキーが存在しないことを確認してください。
## 問題とバグ
私たちは利用者の依頼やバグレポートを常に受け入れています。[qmk_configurator](https://github.com/qmk/qmk_configurator/issues) で報告してください。

View File

@ -1,8 +1,8 @@
# Zadig を使ったブートローダドライバのインストール
<!---
original document: d598f01cb:docs/driver_installation_zadig.md
git diff d598f01cb HEAD -- docs/driver_installation_zadig.md | cat
original document: 0.9.0:docs/driver_installation_zadig.md
git diff 0.9.0 HEAD -- docs/driver_installation_zadig.md | cat
-->
QMK はホストにたいして通常の HID キーボードデバイスとして振る舞うため特別なドライバは必要ありません。しかし、Windows でのキーボードへの書き込みは、多くの場合、キーボードをリセットした時に現れるブートローダデバイスで*行います*。

View File

@ -1,8 +1,8 @@
# よくあるビルドの質問
<!---
original document: 0f43c2652:docs/faq_build.md
git diff 0f43c2652 HEAD -- docs/faq_build.md | cat
original document: 0.9.10:docs/faq_build.md
git diff 0.9.10 HEAD -- docs/faq_build.md | cat
-->
このページは QMK のビルドに関する質問を説明します。まだビルドをしていない場合は、[ビルド環境のセットアップ](ja/getting_started_build_tools.md) および [Make 手順](ja/getting_started_make_guide.md)ガイドを読むべきです。
@ -32,33 +32,30 @@ sudo udevadm trigger
**/etc/udev/rules.d/50-atmel-dfu.rules:**
```
# Atmel ATMega32U4
SUBSYSTEMS=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2ff4", MODE:="0666"
SUBSYSTEMS=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2ff4", TAG+="uaccess", RUN{builtin}+="uaccess"
# Atmel USBKEY AT90USB1287
SUBSYSTEMS=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2ffb", MODE:="0666"
SUBSYSTEMS=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2ffb", TAG+="uaccess", RUN{builtin}+="uaccess"
# Atmel ATMega32U2
SUBSYSTEMS=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2ff0", MODE:="0666"
SUBSYSTEMS=="usb", ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2ff0", TAG+="uaccess", RUN{builtin}+="uaccess"
```
**/etc/udev/rules.d/52-tmk-keyboard.rules:**
```
# tmk keyboard products https://github.com/tmk/tmk_keyboard
SUBSYSTEMS=="usb", ATTRS{idVendor}=="feed", MODE:="0666"
```
**/etc/udev/rules.d/54-input-club-keyboard.rules:**
```
# Input Club keyboard bootloader
SUBSYSTEMS=="usb", ATTRS{idVendor}=="1c11", MODE:="0666"
SUBSYSTEMS=="usb", ATTRS{idVendor}=="1c11", ATTRS{idProduct}=="b007", TAG+="uaccess", RUN{builtin}+="uaccess"
```
**/etc/udev/rules.d/55-caterina.rules:**
```
# ModemManager should ignore the following devices
ATTRS{idVendor}=="2a03", ENV{ID_MM_DEVICE_IGNORE}="1"
ATTRS{idVendor}=="2341", ENV{ID_MM_DEVICE_IGNORE}="1"
SUBSYSTEMS=="usb", ATTRS{idVendor}=="2a03", ATTRS{idProduct}=="0036", TAG+="uaccess", RUN{builtin}+="uaccess", ENV{ID_MM_DEVICE_IGNORE}="1"
SUBSYSTEMS=="usb", ATTRS{idVendor}=="2341", ATTRS{idProduct}=="0036", TAG+="uaccess", RUN{builtin}+="uaccess", ENV{ID_MM_DEVICE_IGNORE}="1"
SUBSYSTEMS=="usb", ATTRS{idVendor}=="1b4f", ATTRS{idProduct}=="9205", TAG+="uaccess", RUN{builtin}+="uaccess", ENV{ID_MM_DEVICE_IGNORE}="1"
SUBSYSTEMS=="usb", ATTRS{idVendor}=="1b4f", ATTRS{idProduct}=="9203", TAG+="uaccess", RUN{builtin}+="uaccess", ENV{ID_MM_DEVICE_IGNORE}="1"
```
**注意:** ModemManager フィルタリングは厳モードではい場合のみ動作します。以下のコマンドその設定を更することができます:
**注意:** 古い(1.12以前の) ModemManager では、フィルタリングは厳密なモードではい場合のみ動作し以下のコマンドその設定を更することができます
```console
sudo sed -i 's/--filter-policy=strict/--filter-policy=default/' /lib/systemd/system/ModemManager.service
sudo systemctl daemon-reload
@ -68,15 +65,15 @@ sudo systemctl restart ModemManager
**/etc/udev/rules.d/56-dfu-util.rules:**
```
# stm32duino
SUBSYSTEMS=="usb", ATTRS{idVendor}=="1eaf", ATTRS{idProduct}=="0003", MODE:="0666"
SUBSYSTEMS=="usb", ATTRS{idVendor}=="1eaf", ATTRS{idProduct}=="0003", TAG+="uaccess", RUN{builtin}+="uaccess"
# Generic stm32
SUBSYSTEMS=="usb", ATTRS{idVendor}=="0483", ATTRS{idProduct}=="df11", MODE:="0666"
SUBSYSTEMS=="usb", ATTRS{idVendor}=="0483", ATTRS{idProduct}=="df11", TAG+="uaccess", RUN{builtin}+="uaccess"
```
**/etc/udev/rules.d/57-bootloadhid.rules:**
```
# bootloadHID
SUBSYSTEMS=="usb", ATTRS{idVendor}=="16c0", ATTRS{idProduct}=="05df", MODE:="0666"
SUBSYSTEMS=="usb", ATTRS{idVendor}=="16c0", ATTRS{idProduct}=="05df", TAG+="uaccess", RUN{builtin}+="uaccess"
```
### Linux のブートローダモードで Serial デバイスが検知されない
@ -116,23 +113,14 @@ OPT_DEFS += -DBOOTLOADER_SIZE=2048
```
## MacOS での `avr-gcc: internal compiler error: Abort trap: 6 (program cc1)`
これは brew での更新に関する問題で、avr-gcc が依存するシンボリックリンクを壊します。
解決法は全ての影響を受けたモジュールを削除し再インストールすることです。
```
brew rm avr-gcc
brew rm avr-gcc@8
brew rm dfu-programmer
brew rm dfu-util
brew rm gcc-arm-none-eabi
brew rm arm-gcc-bin@8
brew rm avrdude
brew install avr-gcc@8
brew install dfu-programmer
brew install dfu-util
brew install arm-gcc-bin@8
brew install avrdude
brew rm avr-gcc avr-gcc@8 dfu-programmer dfu-util gcc-arm-none-eabi arm-gcc-bin@8 avrdude qmk
brew install qmk/qmk/qmk
brew link --force avr-gcc@8
brew link --force arm-gcc-bin@8
```

View File

@ -1,8 +1,8 @@
# デバッグの FAQ
<!---
original document: 376419a4f:docs/faq_debug.md
git diff 376419a4f HEAD -- docs/faq_debug.md | cat
original document: 0.9.10:docs/faq_debug.md
git diff 0.9.10 HEAD -- docs/faq_debug.md | cat
-->
このページは、キーボードのトラブルシューティングについての様々な一般的な質問を説明します。

View File

@ -1,53 +1,10 @@
# レイヤーの切り替えとトグル :id=switching-and-toggling-layers
# 修飾キー :id=modifier-keys
<!---
original document: 5d5ff80:docs/feature_advanced_keycodes.md
git diff 5d5ff80 HEAD -- docs/feature_advanced_keycodes.md | cat
original document: 0.9.0:docs/feature_advanced_keycodes.md
git diff 0.9.0 HEAD -- docs/feature_advanced_keycodes.md | cat
-->
これらの機能により、様々な方法でレイヤーをアクティブ化することができます。レイヤーは一般的に独立したレイアウトでは無いことに注意してください -- 複数のレイヤーを一度にアクティブ化することができ、レイヤーが `KC_TRNS` を使ってキーの押下を下のレイヤーに渡すことが一般的です。レイヤーの詳細については、[キーマップの概要](ja/keymap.md#keymap-and-layers)を見てください。MO()、LM()、TT() あるいは LT() を使って一時的なレイヤーの切り替えを使う場合、上のレイヤーのキーを透過にするようにしてください。さもないと意図したように動作しないかもしれません。
* `DF(layer)` - デフォルトレイヤーを切り替えます。デフォルトレイヤーは、他のレイヤーがその上に積み重なっている、常にアクティブな基本レイヤーです。デフォルトレイヤーの詳細については以下を見てください。これは QWERTY から Dvorak レイアウトに切り替えるために使うことができます。(これは一時的な切り替えであり、キーボードの電源が切れるまでしか持続しないことに注意してください。デフォルトレイヤーを永続的に変更するには、[process_record_user](ja/custom_quantum_functions.md#programming-the-behavior-of-any-keycode) 内で `set_single_persistent_default_layer` 関数を呼び出すなど、より深いカスタマイズが必要です。)
* `MO(layer)` - 一時的に*レイヤー*をアクティブにします。キーを放すとすぐに、レイヤーは非アクティブになります。
* `LM(layer, mod)` - (`MO` のように)一時的に*レイヤー*をアクティブにしますが、モディファイア *mod* がアクティブな状態です。layer 0-15 と、左モディファイアのみをサポートします: `MOD_LCTL``MOD_LSFT``MOD_LALT``MOD_LGUI` (`KC_` の代わりに `MOD_` 定数を使うことに注意してください)。これらのモディファイアは、例えば `LM(_RAISE, MOD_LCTL | MOD_LALT)` のように、ビット単位の OR を使って組み合わせることができます。
* `LT(layer, kc)` - ホールドされた時に*レイヤー*を一時的にアクティブにし、タップされた時に *kc* を送信します。layer 0-15 のみをサポートします。
* `OSL(layer)` - 次のキーが押されるまで、一時的に*レイヤー*をアクティブにします。詳細と追加機能については、[ワンショットキー](ja/one_shot_keys.md)を見てください。
* `TG(layer)` - *レイヤー*を切り替えます。非アクティブな場合はアクティブにし、逆も同様です。
* `TO(layer)` - *レイヤー*をアクティブにし、他の全てのレイヤー(デフォルトレイヤーを除く)を非アクティブにします。この関数は特別です。1つのレイヤーをアクティブなレイヤースタックに追加/削除する代わりに、現在のアクティブなレイヤーを完全に置き換え、唯一上位のレイヤーを下位のレイヤーで置き換えることができるからです。これはキーダウンで(キーが押されるとすぐに)アクティブになります。
* `TT(layer)` - レイヤーのタップ切り替え。キーを押したままにすると*レイヤー*がアクティブにされ、放すと非アクティブになります (`MO` 風)。繰り返しタップすると、レイヤーはオンあるいはオフを切り替えます (`TG` 風)。デフォルトでは5回のタップが必要ですが、`TAPPING_TOGGLE` を定義することで変更することができます -- 例えば、2回のタップだけで切り替えるには、`#define TAPPING_TOGGLE 2` を定義します。
## 注意事項
現在のところ、`LT()``MT()` は[基本的なキーコードセット](ja/keycodes_basic.md)に制限されています。つまり、`LCTL()``KC_TILD` あるいは `0xFF` より大きなキーコードを使うことができません。レイヤータップあるいはモッドタップのキーコードの一部として指定されたモディファイアは無視されます。タップしたキーコードにモディファイアを適用する必要がある場合は、[タップダンス](ja/feature_tap_dance.md#example-5-using-tap-dance-for-advanced-mod-tap-and-layer-tap-keys)を使うことができます。
さらに、モッドタップあるいはレイヤータップで少なくとも1つの右手用のモディファイアが指定された場合、指定された全てのモディファイアが右手用になるため、2つをうまく組み合わせて一致させることはできません。
# レイヤーの使用
レイヤーを切り替える時は注意してください。(キーボードを取り外さずに)そのレイヤーを非アクティブにすることができずレイヤーから移動できなくなる可能性があります。最も一般的な問題を避けるためのガイドラインを作成しました。
## 初心者
QMK を使い始めたばかりの場合は、全てを単純にしたいでしょう。レイヤーをセットアップする時は、これらのガイドラインに従ってください:
* デフォルトの "base" レイヤーとして、layer 0 をセットアップします。これは通常の入力レイヤーであり、任意のレイアウト (qwerty、dvorak、colemak など)にすることができます。通常はキーボードのキーのほとんどまたは全てが定義されているため、これを最下位のレイヤーとして設定することが重要です。そうすることで、もしそれが他のレイヤーの上 (つまりレイヤー番号が大きい)にある場合の影響を防ぎます。
* layer 0 をルートとして、レイヤーを "ツリー" レイアウトに配置します。他の複数のレイヤーから同じレイヤーに行こうとしないでください。
* 各レイヤーのキーマップでは、より高い番号のレイヤーのみを参照します。レイヤーは最大の番号(最上位)のアクティブレイヤーから処理されるため、下位レイヤーの状態を変更するのは難しくエラーが発生しやすくなります。
## 中級ユーザ
複数の基本レイヤーが必要な場合があります。例えば、QWERTY と Dvorak を切り替える場合、国ごとに異なるレイアウトを切り替える場合、あるいは異なるビデオゲームごとにレイアウトを切り替える場合などです。基本レイヤーは常に最小の番号のレイヤーである必要があります。複数の基本レイヤーがある場合、常にそれらを相互排他的に扱う必要があります。1つの基本レイヤーがオンの場合、他をオフにします。
## 上級ユーザ
レイヤーがどのように動作し、何ができるかを理解したら、より創造的になります。初心者のセクションで列挙されている規則は、幾つかの巧妙な詳細を回避するのに役立ちますが、特に超コンパクトなキーボードのユーザにとって制約になる場合があります。レイヤーの仕組みを理解することで、レイヤーをより高度な方法で使うことができます。
レイヤーは番号順に上に積み重なっています。キーの押下の動作を決定する時に、QMK は上から順にレイヤーを走査し、`KC_TRNS` に設定されていない最初のアクティブなレイヤーに到達すると停止します。結果として、現在のレイヤーよりも数値的に低いレイヤーをアクティブにし、現在のレイヤー(あるいはアクティブでターゲットレイヤーよりも高い別のレイヤー)に `KC_TRNS` 以外のものがある場合、それが送信されるキーであり、アクティブ化したばかりのレイヤー上のキーではありません。これが、ほとんどの人の "なぜレイヤーが切り替わらないのか" 問題の原因です。
場合によっては、マクロ内あるいはタップダンスルーチンの一部としてレイヤーを切り替えほうが良いかもしれません。`layer_on` はレイヤーをアクティブにし、`layer_off` はそれを非アクティブにします。もっと多くのレイヤーに関する関数は、[action_layer.h](https://github.com/qmk/qmk_firmware/blob/master/tmk_core/common/action_layer.h) で見つけることができます。
# 修飾キー :id=modifier-keys
以下のようにキーコードとモディファイアを組み合わせることができます。押すと、モディファイアのキーダウンイベントが送信され、次に `kc` のキーダウンイベントが送信されます。放すと、`kc` のキーアップイベントが送信され、次にモディファイアのキーアップイベントが送信されます。
| キー | エイリアス | 説明 |
@ -66,12 +23,16 @@ QMK を使い始めたばかりの場合は、全てを単純にしたいでし
| `MEH(kc)` | | 左 Control、左 Shift、左 Alt を押しながら `kc` を押します。 |
| `HYPR(kc)` | | 左 Control、左 Shift、左 Alt、左 GUI を押しながら `kc` を押します。 |
また、それらを繋げることができます。例えば、`LCTL(LALT(KC_DEL))` は1回のキー押下で Control+Alt+Delete を送信するキーを作成します。
また、それらを繋げることができます。例えば、`LCTL(LALT(KC_DEL))` または `C(A(KC_DEL))` は1回のキー押下で Control+Alt+Delete を送信するキーを作成します。
# 過去の内容
# 過去の内容 :id=legacy-content
このページには多くの機能が含まれていました。このページを構成していた多くのセクションをそれぞれのページに移動しました。これより下は全て単なるリダイレクトであるため、web上で古いリンクをたどっている人は探しているものを見つけることができます。
## レイヤー :id=switching-and-toggling-layers
* [レイヤー](ja/feature_layers.md)
## モッドタップ :id=mod-tap
* [モッドタップ](ja/mod_tap.md)

View File

@ -1,8 +1,8 @@
# オーディオ
<!---
original document: 5d5ff80:docs/feature_audio.md
git diff 5d5ff80 HEAD -- docs/feature_audio.md | cat
original document: 0.9.0:docs/feature_audio.md
git diff 0.9.0 HEAD -- docs/feature_audio.md | cat
-->
キーボードは音を出すことができますPlanck、Preonic あるいは特定の PWM 対応ピンにアクセスできる AVR キーボードがある場合は、単純なスピーカーを接続してビープ音を鳴らすことができます。これらのビープ音を使ってレイヤーの変化、モディファイア、特殊キーを示したり、あるいは単にイカした8ビットの曲を鳴らすことができます。

View File

@ -1,8 +1,8 @@
# 自動シフト: なぜシフトキーが必要ですか?
<!---
original document: 5d5ff80:docs/feature_auto_shift.md
git diff 5d5ff80 HEAD -- docs/feature_auto_shift.md | cat
original document: 0.9.0:docs/feature_auto_shift.md
git diff 0.9.0 HEAD -- docs/feature_auto_shift.md | cat
-->
キーをタップすると、その文字を取得します。キーをタップするが、*わずかに*長く押し続けると、シフト状態になります。ほら!シフトキーは必要ありません!

View File

@ -1,8 +1,8 @@
# バックライト
<!---
original document: 5d5ff80:docs/feature_backlight.md
git diff 5d5ff80 HEAD -- docs/feature_backlight.md | cat
original document: 0.9.10:docs/feature_backlight.md
git diff 0.9.10 HEAD -- docs/feature_backlight.md | cat
-->
多くのキーボードは、キースイッチを貫通して配置されたり、キースイッチの下に配置された個々の LED によって、バックライトキーをサポートします。この機能は通常スイッチごとに単一の色しか使用できないため、[RGB アンダーグロー](ja/feature_rgblight.md)および [RGB マトリックス](ja/feature_rgb_matrix.md)機能のどちらとも異なりますが、キーボードに複数の異なる単一色の LED を取り付けることは当然可能です。
@ -94,29 +94,29 @@ BACKLIGHT_DRIVER = pwm
ハードウェア PWM は以下の表に従ってサポートされます:
| バックライトピン | AT90USB64/128 | ATmega16/32U4 | ATmega16/32U2 | ATmega32A | ATmega328P |
| バックライトピン | AT90USB64/128 | ATmega16/32U4 | ATmega16/32U2 | ATmega32A | ATmega328/P |
|-------------|-------------|-------------|-------------|---------|----------|
| `B1` | | | | | Timer 1 |
| `B2` | | | | | Timer 1 |
| `B5` | Timer 1 | Timer 1 | | | |
| `B6` | Timer 1 | Timer 1 | | | |
| `B7` | Timer 1 | Timer 1 | Timer 1 | | |
| `C4` | Timer 3 | | | | |
| `C5` | Timer 3 | | Timer 1 | | |
| `C6` | Timer 3 | Timer 3 | Timer 1 | | |
| `D4` | | | | Timer 1 | |
| `D5` | | | | Timer 1 | |
| `B1` | | | | | Timer 1 |
| `B2` | | | | | Timer 1 |
| `B5` | Timer 1 | Timer 1 | | | |
| `B6` | Timer 1 | Timer 1 | | | |
| `B7` | Timer 1 | Timer 1 | Timer 1 | | |
| `C4` | Timer 3 | | | | |
| `C5` | Timer 3 | | Timer 1 | | |
| `C6` | Timer 3 | Timer 3 | Timer 1 | | |
| `D4` | | | | Timer 1 | |
| `D5` | | | | Timer 1 | |
他の全てのピンはソフトウェア PWM を使います。[オーディオ](ja/feature_audio.md)機能が無効あるいは1つのタイマだけを使っている場合は、ハードウェアタイマによってバックライト PWM を引き起こすことができます:
| オーディオピン | オーディオタイマ | ソフトウェア PWM タイマ |
|---------|-----------|------------------|
| `C4` | Timer 3 | Timer 1 |
| `C5` | Timer 3 | Timer 1 |
| `C6` | Timer 3 | Timer 1 |
| `B5` | Timer 1 | Timer 3 |
| `B6` | Timer 1 | Timer 3 |
| `B7` | Timer 1 | Timer 3 |
| `C4` | Timer 3 | Timer 1 |
| `C5` | Timer 3 | Timer 1 |
| `C6` | Timer 3 | Timer 1 |
| `B5` | Timer 1 | Timer 3 |
| `B6` | Timer 1 | Timer 3 |
| `B7` | Timer 1 | Timer 3 |
両方のタイマーがオーディオのために使われている場合、バックライト PWM はハードウェアタイマを使いませんが、代わりにマトリックススキャンの間に引き起こされます。この場合、PWM の計算は十分なタイミングの精度で呼ばれないかもしれないため、バックライトの明滅はサポートされず、バックライトもちらつくかもしれません。
@ -126,13 +126,13 @@ BACKLIGHT_DRIVER = pwm
| 定義 | デフォルト | 説明 |
|---------------------|-------------|--------------------------------------------------------------------------------------------------------------|
| `BACKLIGHT_PIN` | `B7` | LED を制御するピン。自身のキーボードを設計している場合を除き、これを変更する必要はないはずです |
| `BACKLIGHT_PINS` | *定義なし* | 実験的: 詳細は以下を見てください |
| `BACKLIGHT_LEVELS` | `3` | 輝度のレベルの数 (オフを除いて最大 31) |
| `BACKLIGHT_PIN` | `B7` | LED を制御するピン。自身のキーボードを設計している場合を除き、これを変更する必要はないはずです |
| `BACKLIGHT_PINS` | *定義なし* | 実験的: 詳細は以下を見てください |
| `BACKLIGHT_LEVELS` | `3` | 輝度のレベルの数 (オフを除いて最大 31) |
| `BACKLIGHT_CAPS_LOCK` | *定義なし* | バックライトを使って Caps Lock のインジケータを有効にする (専用 LED の無いキーボードのため) |
| `BACKLIGHT_BREATHING` | *定義なし* | サポートされる場合は、バックライトの明滅動作を有効にする |
| `BREATHING_PERIOD` | `6` | 各バックライトの "明滅" の長さ(秒) |
| `BACKLIGHT_ON_STATE` | `1` | バックライトが "オン" の時のバックライトピンの状態 - high の場合は `1`、low の場合は `0` |
| `BREATHING_PERIOD` | `6` | 各バックライトの "明滅" の長さ(秒) |
| `BACKLIGHT_ON_STATE` | `1` | バックライトが "オン" の時のバックライトピンの状態 - high の場合は `1`、low の場合は `0` |
### バックライトオン状態
@ -192,10 +192,10 @@ BACKLIGHT_DRIVER = pwm
| 定義 | デフォルト | 説明 |
|------------------------|-------------|-------------------------------------------------------------------------------------------------------------|
| `BACKLIGHT_PIN` | `B7` | LED を制御するピン。自身のキーボードを設計している場合を除き、これを変更する必要はないはずです |
| `BACKLIGHT_PWM_DRIVER` | `PWMD4` | 使用する PWM ドライバ。ピンから PWM タイマへのマッピングについては、ST データシートを見てください。自身のキーボードを設計している場合を除き、これを変更する必要はないはずです |
| `BACKLIGHT_PWM_CHANNEL` | `3` | 使用する PWM チャンネル。ピンから PWM チャンネルへのマッピングについては、ST データシートを見てください。自身のキーボードを設計している場合を除き、これを変更する必要はないはずです |
| `BACKLIGHT_PAL_MODE` | `2` | 使用するピンの代替機能。ピンの AF マッピングについては ST データシートを見てください。自身のキーボードを設計している場合を除き、これを変更する必要はないはずです |
| `BACKLIGHT_PIN` | `B7` | LED を制御するピン。自身のキーボードを設計している場合を除き、これを変更する必要はないはずです |
| `BACKLIGHT_PWM_DRIVER` | `PWMD4` | 使用する PWM ドライバ。ピンから PWM タイマへのマッピングについては、ST データシートを見てください。自身のキーボードを設計している場合を除き、これを変更する必要はないはずです |
| `BACKLIGHT_PWM_CHANNEL` | `3` | 使用する PWM チャンネル。ピンから PWM チャンネルへのマッピングについては、ST データシートを見てください。自身のキーボードを設計している場合を除き、これを変更する必要はないはずです |
| `BACKLIGHT_PAL_MODE` | `2` | 使用するピンの代替機能。ピンの AF マッピングについては ST データシートを見てください。自身のキーボードを設計している場合を除き、これを変更する必要はないはずです |
## Software PWM Driver :id=software-pwm-driver
@ -210,7 +210,7 @@ BACKLIGHT_DRIVER = software
| 定義 | デフォルト | 説明 |
|-----------------|-------------|-------------------------------------------------------------------------------------------------------------|
| `BACKLIGHT_PIN` | `B7` | LED を制御するピン。自身のキーボードを設計している場合を除き、これを変更する必要はないはずです |
| `BACKLIGHT_PIN` | `B7` | LED を制御するピン。自身のキーボードを設計している場合を除き、これを変更する必要はないはずです |
| `BACKLIGHT_PINS` | *定義なし* | 実験的: 詳細は以下を見てください |
### 複数のバックライトピン

View File

@ -1,8 +1,8 @@
# Bluetooth
<!---
original document: 5d5ff80:docs/feature_bluetooth.md
git diff 5d5ff80 HEAD -- docs/feature_bluetooth.md | cat
original document: 0.9.0:docs/feature_bluetooth.md
git diff 0.9.0 HEAD -- docs/feature_bluetooth.md | cat
-->
## Bluetooth の既知のサポートハードウェア

View File

@ -1,8 +1,8 @@
# ブートマジック
<!---
original document: 5d5ff80:docs/feature_bootmagic.md
git diff 5d5ff80 HEAD -- docs/feature_bootmagic.md | cat
original document: 0.9.0:docs/feature_bootmagic.md
git diff 0.9.0 HEAD -- docs/feature_bootmagic.md | cat
-->
再書き込みせずにキーボードの挙動を変更することができる、3つの独立した関連する機能があります。それぞれは似たような機能を持ちますが、キーボードがどのように設定されているかによって異なる方法でアクセスされます。
@ -149,6 +149,17 @@ BOOTMAGIC_ENABLE = lite
!> ブートマジックライトを使用すると、EEPROM を**常にリセットします**。つまり保存された全ての設定は失われます。
## 分割キーボード
`SPLIT_HAND_PIN` のようなオプションで、左右の設定があらかじめ決められている場合は、キーボードの左右で別のキーを設定する必要があるかもしれません。これを行うには、`config.h` ファイルに以下のエントリを追加します。
```c
#define BOOTMAGIC_LITE_ROW_RIGHT 4
#define BOOTMAGIC_LITE_COLUMN_RIGHT 1
```
デフォルトでは、これらの値は設定されていません。
## 高度なブートマジックライト
`bootmagic_lite` 関数は必要に応じてコード内で置き換えることができるように、弱く定義されています。これの良い例は Zeal60 キーボードで、追加の処理が必要です。

99
docs/ja/feature_layers.md Normal file
View File

@ -0,0 +1,99 @@
# レイヤー :id=layers
<!---
original document: 0.9.20:docs/feature_layers.md
git diff 0.9.20 HEAD -- docs/feature_layers.md | cat
-->
QMK ファームウェアの最も強力で良く使われている機能の一つは、レイヤーを使う機能です。ほとんどの人にとって、これはラップトップやタブレットキーボードにあるのと同じように、様々なキーを可能にするファンクションキーに相当します。
レイヤースタックがどのように動作するかの詳細な説明については、[キーマップの概要](ja/keymap.md#keymap-and-layers)を調べてください。
## レイヤーの切り替えとトグル :id=switching-and-toggling-layers
以下の関数により、様々な方法でレイヤーをアクティブにすることができます。レイヤーは通常、独立したレイアウトでは無いことに注意してください -- 複数のレイヤーを一度にアクティブにすることができ、レイヤーが `KC_TRNS` を使ってキーの押下を下のレイヤーへと透過させることが一般的です。MO()、LM()、TT() あるいは LT() を使って一時的なレイヤーの切り替えを使う場合、上のレイヤーのキーを透過にするようにしてください。さもないと意図したように動作しないかもしれません。
* `DF(layer)` - デフォルトレイヤーを切り替えます。デフォルトレイヤーは、他のレイヤーがその上に積み重なっている、常にアクティブな基本レイヤーです。デフォルトレイヤーの詳細については以下を見てください。これは QWERTY から Dvorak レイアウトに切り替えるために使うことができます。(これは一時的な切り替えであり、キーボードの電源が切れるまでしか持続しないことに注意してください。デフォルトレイヤーを永続的に変更するには、[process_record_user](ja/custom_quantum_functions.md#programming-the-behavior-of-any-keycode) 内で `set_single_persistent_default_layer` 関数を呼び出すなど、より深いカスタマイズが必要です。)
* `MO(layer)` - 一時的に*レイヤー*をアクティブにします。キーを放すとすぐに、レイヤーは非アクティブになります。
* `LM(layer, mod)` - (`MO` のように)一時的に*レイヤー*をアクティブにしますが、モディファイア *mod* がアクティブな状態です。layer 0-15 と、左モディファイアのみをサポートします: `MOD_LCTL``MOD_LSFT``MOD_LALT``MOD_LGUI` (`KC_` 定数の代わりに `MOD_` 定数を使うことに注意してください)。これらのモディファイアは、例えば `LM(_RAISE, MOD_LCTL | MOD_LALT)` のように、ビット単位の OR を使って組み合わせることができます。
* `LT(layer, kc)` - ホールドされた時に*レイヤー*を一時的にアクティブにし、タップされた時に *kc* を送信します。layer 0-15 のみをサポートします。
* `OSL(layer)` - 次のキーが押されるまで、一時的に*レイヤー*をアクティブにします。詳細と追加機能については、[ワンショットキー](ja/one_shot_keys.md)を見てください。
* `TG(layer)` - *レイヤー*を切り替えます。非アクティブな場合はアクティブにし、逆も同様です。
* `TO(layer)` - *レイヤー*をアクティブにし、他の全てのレイヤー(デフォルトレイヤーを除く)を非アクティブにします。この関数は特別です。1つのレイヤーをアクティブなレイヤースタックに追加/削除する代わりに、現在のアクティブなレイヤーを完全に置き換え、唯一上位のレイヤーを下位のレイヤーで置き換えることができるからです。これはキーダウンで(キーが押されるとすぐに)アクティブになります。
* `TT(layer)` - レイヤーのタップ切り替え。キーを押したままにすると*レイヤー*がアクティブにされ、放すと非アクティブになります (`MO` 風)。繰り返しタップすると、レイヤーはオンあるいはオフを切り替えます (`TG` 風)。デフォルトでは5回のタップが必要ですが、`TAPPING_TOGGLE` を定義することで変更することができます -- 例えば、2回のタップだけで切り替えるには、`#define TAPPING_TOGGLE 2` を定義します。
### 注意事項 :id=caveats
現在のところ、`LT()``MT()` は[基本的なキーコードセット](ja/keycodes_basic.md)に制限されています。つまり、`LCTL()``KC_TILD` あるいは `0xFF` より大きなキーコードを使うことができません。特に、`LT``MT` のような二重の機能キーは16ビットキーコードを使います。4ビットは機能の識別のために使われ、次の12ビットはパラメータに分かれます。レイヤータップはレイヤーに4ビットを使います(実はレイヤータップがレイヤー 0-15 に制限されている理由です)。モッドタップも同じですが、識別子に4ビット、モッドのために4ビットが使われ、全体でキーコードに8ビットを使います。このため、使用されるキーコードは `0xFF` (0-255) に制限され、基本的なキーコードのみです。
これを拡張してもせいぜい複雑になるだけでしょう。32ビットキーコードに移行すると、これの多くが解決されますが、キーマップマトリックスが使用する領域が2倍になります。また、問題が起きる可能性もあります。タップしたキーコードにモディファイアを適用する必要がある場合は、[タップダンス](ja/feature_tap_dance.md#example-5-using-tap-dance-for-advanced-mod-tap-and-layer-tap-keys)を使うことができます。
さらに、モッドタップあるいはレイヤータップで少なくとも1つの右手用のモディファイアが指定された場合、指定された全てのモディファイアが右手用になるため、2つをうまく組み合わせて一致させることはできません。
## レイヤーとの連携 :id=working-with-layers
レイヤーを切り替える時は注意してください。(キーボードを取り外さずに)そのレイヤーを非アクティブにすることができずレイヤーから移動できなくなる可能性があります。最も一般的な問題を避けるためのガイドラインを作成しました。
### 初心者 :id=beginners
QMK を使い始めたばかりの場合は、全てを単純にしたいでしょう。レイヤーをセットアップする時は、これらのガイドラインに従ってください:
* デフォルトの "base" レイヤーとして、layer 0 をセットアップします。これは通常の入力レイヤーであり、任意のレイアウト (qwerty、dvorak、colemak など)にすることができます。通常はキーボードのキーのほとんどまたは全てが定義されているため、これを最下位のレイヤーとして設定することが重要です。そうすることで、もしそれが他のレイヤーの上 (つまりレイヤー番号が大きい)にある場合の影響を防ぎます。
* layer 0 をルートとして、レイヤーを "ツリー" レイアウトに配置します。他の複数のレイヤーから同じレイヤーに行こうとしないでください。
* 各レイヤーのキーマップでは、より高い番号のレイヤーのみを参照します。レイヤーは最大の番号(最上位)のアクティブレイヤーから処理されるため、下位レイヤーの状態を変更するのは難しくエラーが発生しやすくなります。
### 中級ユーザ :id=intermediate-users
複数の基本レイヤーが必要な場合があります。例えば、QWERTY と Dvorak を切り替える場合、国ごとに異なるレイアウトを切り替える場合、あるいは異なるビデオゲームごとにレイアウトを切り替える場合などです。基本レイヤーは常に最小の番号のレイヤーである必要があります。複数の基本レイヤーがある場合、常にそれらを相互排他的に扱う必要があります。1つの基本レイヤーがオンの場合、他をオフにします。
### 上級ユーザ :id=advanced-users
レイヤーがどのように動作し、何ができるかを理解したら、より創造的になります。初心者のセクションで列挙されている規則は、幾つかの巧妙な詳細を回避するのに役立ちますが、特に超コンパクトなキーボードのユーザにとって制約になる場合があります。レイヤーの仕組みを理解することで、レイヤーをより高度な方法で使うことができます。
レイヤーは番号順に上に積み重なっています。キーの押下の動作を決定する時に、QMK は上から順にレイヤーを走査し、`KC_TRNS` に設定されていない最初のアクティブなレイヤーに到達すると停止します。結果として、現在のレイヤーよりも数値的に低いレイヤーをアクティブにし、現在のレイヤー(あるいはアクティブでターゲットレイヤーよりも高い別のレイヤー)に `KC_TRNS` 以外のものがある場合、それが送信されるキーであり、アクティブ化したばかりのレイヤー上のキーではありません。これが、ほとんどの人の "なぜレイヤーが切り替わらないのか" 問題の原因です。
場合によっては、マクロ内あるいはタップダンスルーチンの一部としてレイヤーを切り替えほうが良いかもしれません。`layer_on` はレイヤーをアクティブにし、`layer_off` はそれを非アクティブにします。もっと多くのレイヤーに関する関数は、[action_layer.h](https://github.com/qmk/qmk_firmware/blob/master/tmk_core/common/action_layer.h) で見つけることができます。
## 関数 :id=functions
レイヤーの使用あるいは操作に関係する多くの関数(と変数)があります。
| 関数 | 説明 |
|----------------------------------------------|---------------------------------------------------------------------------------------------------------|
| `layer_state_set(layer_mask)` | 直接レイヤーの状態を設定する (推奨。何をしているのか分かっていない場合は使わないでください)。 |
| `layer_clear()` | 全てのレイヤーを消去する (全てをオフにします)。 |
| `layer_move(layer)` | 指定されたレイヤーをオンにし、それ以外をオフにする。 |
| `layer_on(layer)` | 指定されたレイヤーをオンにし、それ以外を既存の状態のままにする。 |
| `layer_off(layer)` | 指定されたレイヤーをオフにし、それ以外を既存の状態のままにする。 |
| `layer_invert(layer)` | 指定されたレイヤーの状態を反転/トグルする。 |
| `layer_or(layer_mask)` | 指定されたレイヤーと既存のレイヤー状態の間で一致するビットに基づいてレイヤーをオンにする。 |
| `layer_and(layer_mask)` | 指定されたレイヤーと既存のレイヤー状態の間で有効なビットに基づいてレイヤーをオンにする。 |
| `layer_xor(layer_mask)` | 指定されたレイヤーと既存のレイヤー状態の間で一致しないビットに基づいてレイヤーをオンにする。 |
| `layer_debug(layer_mask)` | デバッガのコンソールに現在のビットマスクと最も高いレイヤーを出力する。 |
| `default_layer_set(layer_mask)` | 直接デフォルトレイヤーの状態を設定する (推奨。何をしているのか分かっていない場合は使わないでください)。 |
| `default_layer_or(layer_mask)` | 指定されたレイヤーと既存のデフォルトレイヤー状態の間で一致するビットに基づいてレイヤーをオンにする。 |
| `default_layer_and(layer_mask)` | 指定されたレイヤーと既存のデフォルトレイヤー状態の間で一致する有効なビットに基づいてレイヤーをオンにする。 |
| `default_layer_xor(layer_mask)` | 指定されたレイヤーと既存のデフォルトレイヤー状態の間で一致しないビットに基づいてレイヤーをオンにする。 |
| `default_layer_debug(layer_mask)` | デバッガのコンソールに現在のビットマスクと最も高いアクティブなレイヤーを出力する。 |
| [`set_single_persistent_default_layer(layer)`](ja/ref_functions.md#setting-the-persistent-default-layer) | デフォルトレイヤーを設定し、それを永続化メモリ (EEPROM) に書き込む。 |
| [`update_tri_layer(x, y, z)`](ja/ref_functions.md#update_tri_layerx-y-z) | レイヤー `x``y` の両方がオンであるかを調べ、それに基づいて `z` を設定する(両方がオンの場合オン、そうでなければオフ)。 |
| [`update_tri_layer_state(state, x, y, z)`](ja/ref_functions.md#update_tri_layer_statestate-x-y-z) | `update_tri_layer(x, y, z)` と同じことをするが、`layer_state_set_*` 関数から呼ばれる。 |
呼び出すことができる関数に加えて、レイヤーが変更されるたびに呼び出されるコールバック関数が幾つかあります。これはレイヤー状態を関数に渡し、読み取りや変更することができます。
| コールバック | 説明 |
|-----------------------------------------------------|----------------------------------------------------------------------------------------|
| `layer_state_set_kb(layer_state_t state)` | キーボードレベルのレイヤー関数のためのコールバック。 |
| `layer_state_set_user(layer_state_t state)` | ユーザレベルのレイヤー関数のためのコールバック。 |
| `default_layer_state_set_kb(layer_state_t state)` | キーボードレベルのデフォルトレイヤー関数のためのコールバック。キーボードの初期化時に呼ばれます。 |
| `default_layer_state_set_user(layer_state_t state)` | ユーザレベルのデフォルトレイヤー関数のためのコールバック。キーボードの初期化時に呼ばれます。 |
?> これらのコールバックを使うための追加の情報については、[レイヤー変換コード](ja/custom_quantum_functions.md#layer-change-code)のドキュメントを調べてください。
| チェック関数 | 説明 |
|-------------------------------------------|------------------------------------------------------------------------------|
| `layer_state_cmp(cmp_layer_state, layer)` | これは `cmp_layer_state` を調べて、指定された `layer` が有効かどうかを確認します。これは、レイヤーコールバックで使うためのものです。 |
| `layer_state_is(layer)` | これはレイヤーの状態を調べて、指定された `layer` が有効かどうかを確認します。(グローバルレイヤー状態については、`layer_state_cmp` を呼びます)。 |
!> `IS_LAYER_ON(layer)` もありますが、`layer_state_cmp` 関数には、レイヤー0で正しい値を返すようにするために追加の処理があります。さもないと、レイヤー0がオンになっているかどうかを確認する時に誤った値が返されることがあります。

399
docs/ja/feature_macros.md Normal file

File diff suppressed because it is too large Load Diff

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