qmk_sweep_skeletyl/keyboards/jones/v03/v03.h
Takeshi Nishio deea6a9826
Add jones v.0.3 and v.0.3.1 keyboard (#11130)
* Update LEDの物理的接続とQMKのソフト的接続を調整し、左→アンダーグロー→右と繋がるようにした。

* Update レイヤーインジケータ関連変数を、#ifdefブロック内へ移動。

* Update コード整形

* Revert "Update コード整形"

This reverts commit c98483d9a0b41f8939a01b677cdcd18a8af34f78.

* Update 未使用のキーコード、S_SLSHに関連するコードを削除。

* Update コード整形

* Update キーごとのTappingTerm設定を使用しなくなったため、削除。

* Update 未使用コード削除。

* Update コメント追加

* Update レイヤーとIMEのON/OFFを同じキーに割り当てるのをやめたため、関連コードを削除。

* Update コメント追加

* Update コメント

* Update 誤読を避けるため、ifブロックの表記を括弧を使用したものへ変更。動作に変化なし。

* Update 未使用のため削除。

* Update LED関連でデフォルトレイヤーを格納して使用しないため、削除。

* Update コメント

* Update レイヤーによってロータリーエンコーダの動作を変える機能を追加。

* Update comment

* Update 実態に合わせて修正。

* Update JP用キーコードへの書き換え忘れを修正。

* New v.0.3.1 JP style

* Update v.0.3のJPスタイルではオーディオサポートなし。

* Update to latest information

* New

* New keyboard "stmeishi"

* Update layout name

* Update move common settings from keymap's "rules.mk" to keyboard's "rules.mk".

* Update: Move common settings from keymap's "rules.mk" to keyboard's "rules.mk".

* Update: Add "LAYOUT_all" for multiple layout.

* Update target to latest "v.0.3.1".

* Remove unused item.

* Update comments.

* Update Rotary Encoder pins to actual used count.

* Update increase value to maximum.

* Update comments.

* Change default Effects.

* Remove unused items.

* Update comment.

* Change: Use define and function insted of real value for wait.

* Update copyrght.

* Update Update: Add "LAYOUT_all" for multiple layout.

* New: Place info.json copied from v.0.3.1.

* Remove unused items.

* Update: Add comma at last element.

* Update comments.

* Update: change if block style.

* Update: Change Japanese comments to English.

* Update: Change layout name.

* Update: Change layout name.

* Update: Fix miss numbering for ANSI layout.

* Update: Move "Tap Dance" rule to keymap's rule.

* New: Add default keymap.

* Delete: Moving files to branch.

* Initial: Add files from local.

* Remove local only unused keymaps.

* Update: Remove unused, comment outed codes.

* Add default keymap for v.0.3.

* Update: Add custom keycodes.

* Update: Change layer handling from process_record_user to layer_state_set_user.

* Update comment.

* Update: Remove unused function.

* Add my ErgoDash settings.

* Add my NumAtreus_Plus8 settings.

* Add my test_k15r2 settings.

* New Colice片手分動作確認済み

* Update スプリットキーボード対応

* Update 反応が悪くずっと二度押ししているので、ESCキーをレイヤーキーとの共用から、単独機能に変更。

* Update 右手スイッチ配置変更。インジケータLED対応。

* Change インジケータLEDが眩しいので、明るさを下げた。

* Change 右手親指のキーマップ変更。

* Change NumLockの誤爆防止のため、二度押しでレイヤートグルするようにした。

* Change 左手側、Bの右側のキーを誤爆することが多く日本語入力が途切れるため、レイヤーキーの機能左右で入れ替え。

* Update 右手側、画像ソフトなどで使うため、矢印キーの左をレイヤーキーからCTRLへ変更。

* New add new keyboard

* Update Duplex-Matrixが動作した初版

* New Duplex-Matrixのサンプルコード by e3w2q を最新のQMKファームウェアで動作するよう一部修正したもの。

* update Comment-out debug print code.

* Update Colice V0.2 キープレートで矢印キー付近の物理配列が変わったことへ対応

* Update キーレイアウト

* New Initial commit

* Update Fix migrate errors from test_duplex_dp to test_col2col

* Remove unnecessary files

* Testing

* Update IKeJIさんの方法(とりあえずCOL2COLと呼ぶ)の動作テストOK

* New 2乗マトリクス配線のキーボードを追加

* Update キーレイアウト調整

* New colice_rr 初回コミット。基本動作確認OK。LED不調。

* Update Eable LED, Reduce firmwre size

* Update colice_rr キーマップ調整。

* Update colice_rr ロータリーエンコーダ機能追加。

* Move colice_rr を colice_rr_split へ移動。

* Update colice_rr_splitフォルダへ移動したことに対応。

* New colice_rr_splitの初回コミット。

* Update キーマップ調整

* Update キーマップ調整

* New initial comit

* Update 意図せずカッコを入力することがるため、LSPO、RSPCの使用を中止。

* Change Fnキー押下時の日本語入力ONを、長押し時にキャンセルするように変更。

* Change LED点灯方法変更。

* Change 基板バージョンごとにサブフォルダを作成するようにした。

* Update Windows用レイヤーを追加

* Update LED設定を調整

* New Jones v.0.2を新規追加

* Update Numレイヤー追加。キーマップ調整。レイヤーインジケータLED調整。

* Update 左手Yをやめる

* Update ESCによるNumレイヤートグルを、ESC連打でトグルするのを防止するため、ダブルタップからトリプルタップへ変更。

* Update readme

* Update QMKの標準に従うよう各ファイルの内容を変更。

* Update 長音(ー)を入力しやすくするため、レイヤー上でホームポジションに近い位置に配置。

* Update タップダンスの状態判別を、Single,Double,Triple,Holdの4つのステータスにまとめた。

* Update キーボードの電源が切れてもデフォルトレイヤーの状態を保存しておくため、MACとWINレイヤーへの変更はEEPROMへ書き込むようにした。

* Update 不要箇所削除

* Update キーマップをNarrowとWideで書き換えるのが不便なので、分割した。

* Update 最新のPCBに合わせ、デフォルトをv.0.2に変更。

* New v.0.3を新規追加

* Update キーマトリクスに後からJPを追加するため、ANSI用に表記変更。

* Update ANSI用のキーマップであることを明記。

* New JP用キーマップを新規追加。

* Update スイッチの物理的存在、Enter右側はキー1個、に合わせて、ANSIレイアウトを修正。

* New FA (Full Armor)用レイアウトを新規追加

* Update 物理的ロック付きのCAPSは使用しないため、無効化。

* Update ハードウェアのサポート対象にキープレートを追加。

* Update FAで使用するAudio、RotaryEncoderの機能追加。機能削減でファームウェアサイズ縮小。

* Update オーディオ機能にキークリックを追加。

* update FA用設定

* Update 右シフトにキー追加

* Update 変換キー調整

* New オーディを有効化。マウスキーはサイズ削減のため無効化。

* Update スイッチ配置ミス修正。

* Update ピン定義を、ロータリーエンコーダの回転方向に合わせた

* Update 2音同時発音用にピン定義を追加。

* Update ファームサイズに空きがあるので、クリッキー音をデフォルトで利用できるようにした。

* Update LED設定変更

* New 物理配列がJPで、中身はUS配列のキーマップを追加。

* Update 行と列が入り乱れたレイアウトのため、音階が正しくなるように、Music-Mode用のキーマップを定義。

* Change マイナーバージョンの表記に対応できるよう、DEVICE_VERの桁を1つ上げた。

* Update オルソ+ロースタガであることがわかるように、キーボードの簡単な説明を変更。

* New v.0.3.1の初期コミット

* Update 左右で回転方向の判定が逆になるので、右手側を左手に合わせた。

* Update キーマップ調整

* Update LEDインジケータを、v.0.3系と同じ点灯方法(2個をベースレイヤ、1個をRAISEなど)に変更。

* Update RGBLIGHT明るさ調整、エフェクト追加。

* Update 未使用キー設定を削除。

* Update Shiftと組み合わせた/?キーの反応を良くするため、キーごとにTAPPING_TERMを指定できるようにした。

* Update LEDエフェクト追加

* Update keymap

* Update 未使用のものを削除

* Update LEDの物理的接続とQMKのソフト的接続を調整し、左→アンダーグロー→右と繋がるようにした。

* Update レイヤーインジケータ関連変数を、#ifdefブロック内へ移動。

* Update コード整形

* Revert "Update コード整形"

This reverts commit c98483d9a0b41f8939a01b677cdcd18a8af34f78.

* Update 未使用のキーコード、S_SLSHに関連するコードを削除。

* Update コード整形

* Update キーごとのTappingTerm設定を使用しなくなったため、削除。

* Update 未使用コード削除。

* Update コメント追加

* Update レイヤーとIMEのON/OFFを同じキーに割り当てるのをやめたため、関連コードを削除。

* Update コメント追加

* Update コメント

* Update 誤読を避けるため、ifブロックの表記を括弧を使用したものへ変更。動作に変化なし。

* Update 未使用のため削除。

* Update LED関連でデフォルトレイヤーを格納して使用しないため、削除。

* Update コメント

* Update レイヤーによってロータリーエンコーダの動作を変える機能を追加。

* Update comment

* Update 実態に合わせて修正。

* Update JP用キーコードへの書き換え忘れを修正。

* New v.0.3.1 JP style

* Update v.0.3のJPスタイルではオーディオサポートなし。

* Update to latest information

* New

* New keyboard "stmeishi"

* Update layout name

* Update move common settings from keymap's "rules.mk" to keyboard's "rules.mk".

* Update: Move common settings from keymap's "rules.mk" to keyboard's "rules.mk".

* Update: Add "LAYOUT_all" for multiple layout.

* Update target to latest "v.0.3.1".

* Remove unused item.

* Update comments.

* Update Rotary Encoder pins to actual used count.

* Update increase value to maximum.

* Update comments.

* Change default Effects.

* Remove unused items.

* Update comment.

* Change: Use define and function insted of real value for wait.

* Update copyrght.

* Update Update: Add "LAYOUT_all" for multiple layout.

* New: Place info.json copied from v.0.3.1.

* Remove unused items.

* Update: Add comma at last element.

* Update comments.

* Update: change if block style.

* Update: Change Japanese comments to English.

* Update: Change layout name.

* Update: Change layout name.

* Update: Fix miss numbering for ANSI layout.

* Update: Move "Tap Dance" rule to keymap's rule.

* New: Add default keymap.

* Delete: Moving files to branch.

* Initial: Add files from local.

* Remove local only unused keymaps.

* Update: Remove unused, comment outed codes.

* Add default keymap for v.0.3.

* Update: Add custom keycodes.

* Update: Change layer handling from process_record_user to layer_state_set_user.

* Update comment.

* Update: Remove unused function.

* Revert "Remove: Non related files."

This reverts commit 82306568fad408427c757de832025dee91ca5a7f.

* Update: To resolve "submodule path not found" message.

* RemoRemove: Non related files.

* Revert file before miss comit.

* Update: Remove unused keycode.

* Update: レイアウト設定内のNUMレイヤへのトグルを、カスタムキーコード表記に変更。

* Update: Comment

* Update: Remove unused items.

* Update layout settings.

* Update: For simplicity, change toggle ADJUST layer method from process_record_user() to layer_state_set_user().

* Update: comment and styling.

* Update: Remove unused custom keycodes.

* Update: For simplicity, change toggle layer method from process_record_user() to layer_state_set_user().

* Update: Remove unused items.

* Update: comment and styling.

* Update: Correct comment.

* Update description and flashing example.

* Update: Remove comment-outed bootloaders.

* Update comments.

* Update: Correct LED count, without under-glow.

* Update: Chenged to common values with v.0.3.1.

* Update: Changed to common values with v.0.3.

* Updarte: Remove unused layout.

* Update: Change default layout to "ALL".

* Update comment.

* Update comment.

* Add missing file.

* Update: Change build option definition style.

* Update: Change build option definition style.

* Update: Change CUSTOM_MATRIX to "lite" and convert "matrix.c" to "lite" version.

* Update: Move "music_map" to keyboard's c file.

To provide common definition for other keymap creator.

* Update: Change keyboard name "v.0.3.1" ---> "v03_1".

For human readability, version name "v.0.3.1" remains at title on "readme.md".

* Update: Change keyboard name "v.0.3" ---> "v03".

For human readability, version name "v.0.3" remains at title on "readme.md".

* Update: Correct matrix definition at "k92".

* Apply suggestions from code review

Remove unnecessary comment block.

* Apply suggestions from code review

Remove "Optional" deprecated items.

* Apply suggestions from code review

Change "make" target keymap to standard default.

* Apply suggestions from code review

Remove rules for MIDI_ENABLE, FAUXCLICKY_ENABLE and HD44780_ENABLE.
These features are not enabled.

* Apply suggestions from code review

Convert tabs to spaces.

* Update: Change #define ROW_SHIFTER to keyboard specific.
2021-01-24 13:54:29 -08:00

105 lines
6 KiB
C

/* Copyright 2020 Takeshi Nishio
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#pragma once
#include "quantum.h"
/*
FULL 11x11 ROUND-ROBIN MATRIX for Reference
{ KC_NO, k21, k31, k41, k51, k61, k71, k81, k91, ka1, kb1 }, \
{ k12, KC_NO, k32, k42, k52, k62, k72, k82, k92, ka2, kb2 }, \
{ k13, k23, KC_NO, k43, k53, k63, k73, k83, k93, ka3, kb3 }, \
{ k14, k24, k34, KC_NO, k54, k64, k74, k84, k94, ka4, kb4 }, \
{ k15, k25, k35, k45, KC_NO, k65, k75, k85, k95, ka5, kb5 }, \
{ k16, k26, k36, k46, k56, KC_NO, k76, k86, k96, ka6, kb6 }, \
{ k17, k27, k37, k47, k57, k67, KC_NO, k87, k97, ka7, kb7 }, \
{ k18, k28, k38, k48, k58, k68, k78, KC_NO, k98, ka8, kb8 }, \
{ k19, k29, k39, k49, k59, k69, k79, k89, KC_NO, ka9, kb9 }, \
{ k1a, k2a, k3a, k4a, k5a, k6a, k7a, k8a, k9a, KC_NO, kba }, \
{ k1b, k2b, k3b, k4b, k5b, k6b, k7b, k8b, k9b, kab, KC_NO } \
*/
/* This is a shortcut to help you visually see your layout.
*
* The first section contains all of the arguments representing the physical
* layout of the board and position of the keys.
*
* The second converts the arguments into a two-dimensional array which
* represents the switch matrix.
*/
#define LAYOUT_all( \
k17, k27, k37, k47, k57, k67, k76, k86, k96, ka6, kb6, k81, k91, ka1, kb1, \
k18, k38, k48, k58, k68, k78, k87, k97, ka7, kb7, k82, K92, ka2, kb2, \
k19, k39, k49, k59, k69, k79, k89, k98, ka8, kb8, k83, k93, ka3, kb3, \
k1a, k3a, k4a, k5a, k6a, k7a, k8a, k9a, ka9, kb9, k84, k94, ka4, kb4, \
k1b, k2b, k3b, k4b, k6b, k8b, k9b, kab, k85, k95, ka5, kb5 \
) \
{ \
{ KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, k81, k91, ka1, kb1 }, \
{ KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, k82, KC_NO, ka2, kb2 }, \
{ KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, k83, k93, ka3, kb3 }, \
{ KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, k84, k94, ka4, kb4 }, \
{ KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, k85, k95, ka5, kb5 }, \
{ KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, k76, k86, k96, ka6, kb6 }, \
{ k17, k27, k37, k47, k57, k67, KC_NO, k87, k97, ka7, kb7 }, \
{ k18, KC_NO, k38, k48, k58, k68, k78, KC_NO, k98, ka8, kb8 }, \
{ k19, KC_NO, k39, k49, k59, k69, k79, k89, KC_NO, ka9, kb9 }, \
{ k1a, KC_NO, k3a, k4a, k5a, k6a, k7a, k8a, k9a, KC_NO, KC_NO }, \
{ k1b, k2b, k3b, k4b, KC_NO, k6b, KC_NO, k8b, k9b, kab, KC_NO } \
}
#define LAYOUT_ansi( \
k17, k27, k37, k47, k57, k67, k76, k86, k96, ka6, kb6, k81, k91, ka1, kb1, \
k18, k38, k48, k58, k68, k78, k87, k97, ka7, kb7, k82, k92, ka2, kb2, \
k19, k39, k49, k59, k69, k79, k89, k98, ka8, kb8, k83, k93, kb3, \
k1a, k3a, k4a, k5a, k6a, k7a, k8a, k9a, ka9, kb9, k84, k94, ka4, kb4, \
k1b, k2b, k3b, k4b, k6b, k8b, k9b, kab, k85, k95, ka5, kb5 \
) \
{ \
{ KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, k81, k91, ka1, kb1 }, \
{ KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, k82, k92, ka2, kb2 }, \
{ KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, k83, k93, KC_NO, kb3 }, \
{ KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, k84, k94, ka4, kb4 }, \
{ KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, k85, k95, ka5, kb5 }, \
{ KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, k76, k86, k96, ka6, kb6 }, \
{ k17, k27, k37, k47, k57, k67, KC_NO, k87, k97, ka7, kb7 }, \
{ k18, KC_NO, k38, k48, k58, k68, k78, KC_NO, k98, ka8, kb8 }, \
{ k19, KC_NO, k39, k49, k59, k69, k79, k89, KC_NO, ka9, kb9 }, \
{ k1a, KC_NO, k3a, k4a, k5a, k6a, k7a, k8a, k9a, KC_NO, KC_NO }, \
{ k1b, k2b, k3b, k4b, KC_NO, k6b, KC_NO, k8b, k9b, kab, KC_NO } \
}
#define LAYOUT_jp( \
k17, k27, k37, k47, k57, k67, k76, k86, k96, ka6, kb6, k81, k91, ka1, kb1, \
k18, k38, k48, k58, k68, k78, k87, k97, ka7, kb7, k82, ka2, kb2, \
k19, k39, k49, k59, k69, k79, k89, k98, ka8, kb8, k83, k93, ka3, kb3, \
k1a, k3a, k4a, k5a, k6a, k7a, k8a, k9a, ka9, kb9, k84, k94, ka4, kb4, \
k1b, k2b, k3b, k4b, k6b, k8b, k9b, kab, k85, k95, ka5, kb5 \
) \
{ \
{ KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, k81, k91, ka1, kb1 }, \
{ KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, k82, KC_NO, ka2, kb2 }, \
{ KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, k83, k93, ka3, kb3 }, \
{ KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, k84, k94, ka4, kb4 }, \
{ KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, k85, k95, ka5, kb5 }, \
{ KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, k76, k86, k96, ka6, kb6 }, \
{ k17, k27, k37, k47, k57, k67, KC_NO, k87, k97, ka7, kb7 }, \
{ k18, KC_NO, k38, k48, k58, k68, k78, KC_NO, k98, ka8, kb8 }, \
{ k19, KC_NO, k39, k49, k59, k69, k79, k89, KC_NO, ka9, kb9 }, \
{ k1a, KC_NO, k3a, k4a, k5a, k6a, k7a, k8a, k9a, KC_NO, KC_NO }, \
{ k1b, k2b, k3b, k4b, KC_NO, k6b, KC_NO, k8b, k9b, kab, KC_NO } \
}