From 8b5d02f3e2d27064b7106fb0721d988218647170 Mon Sep 17 00:00:00 2001 From: umi-umi <57262844+umi-umi@users.noreply.github.com> Date: Wed, 12 Aug 2020 20:39:30 +0900 Subject: [PATCH 1/4] add tap_hold.md translation --- docs/ja/tap_hold.md | 195 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 195 insertions(+) create mode 100644 docs/ja/tap_hold.md diff --git a/docs/ja/tap_hold.md b/docs/ja/tap_hold.md new file mode 100644 index 000000000000..1f9f96ef78d7 --- /dev/null +++ b/docs/ja/tap_hold.md @@ -0,0 +1,195 @@ +# タップホールド設定オプション + + + +タップホールドオプションは素晴らしいですが、問題が無いわけではありません。合理的なデフォルトでそれらを設定しようとしていますが、一部の人にとってまだ問題を引き起こすかもしれません。 + +これらのオプションによりタップホールドキーの挙動を変更することができます。 + +## タッピング条件 + +以下の機能の全ての核心は、タッピング条件の設定です。これにより、タップとホールドが決まります。自然に感じられる正確なタイミングは、キーボードごと、スイッチごと、キーごとに異なるかもしれません。 + +`config.h` に以下の設定を追加することで、このグローバル時間を設定することができます: + +```c +#define TAPPING_TERM 200 +``` + +この設定はミリ秒で定義され、デフォルトは 200ms です。これは大多数の人にとっての適切な平均値です。 + +この機能をより細かく制御するために、以下を `config.h` に追加することができます: +```c +#define TAPPING_TERM_PER_KEY +``` + +そして、以下の関数をキーマップに追加します: + +```c +uint16_t get_tapping_term(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + case SFT_T(KC_SPC): + return TAPPING_TERM + 1250; + case LT(1, KC_GRV): + return 130; + default: + return TAPPING_TERM; + } +} +``` + + +## 許容ホールド + +[PR#1359](https://github.com/qmk/qmk_firmware/pull/1359/) の時点で、新しい `config.h` オプションがあります: + +```c +#define PERMISSIVE_HOLD +``` + +これは高速なタイピストや高い `TAPPING_TERM` 設定に対して、タップとホールドキー(モッドタップのような)動作を向上させます。 + +モッドタップキーを押し、他のキーをタップ(押して放す)して、モッドタップキーを放すと、全てのタッピング時間内で両方のキーの「タッピング」機能が出力されます。 + +例えば: + +- `SFT_T(KC_A)` ダウン +- `KC_X` ダウン +- `KC_X` アップ +- `SFT_T(KC_A)` アップ + +通常、これら全てを `TAPPING_TERM` (デフォルト: 200ms) 内で行うと、ファームウェアとホストシステムによって `ax` として登録されます。許容ホールドを有効にすると、別のキーがタップされた場合にモッドタップキーを Mod と見なすことで処理され、 `X` として登録されます (`SHIFT`+`x`)。 + +?> `モッドタップ割り込みの無視`を有効にしている場合、これにより両方の動きが変更されます。最初のキーが最初に放された場合、あるいは両方のキーが `TAPPING_TERM` より長くホールドされた場合に、通常のキーにモディファイアが追加されます。 + +この機能をより細かく制御するために、以下を `config.h` に追加することができます: + +```c +#define PERMISSIVE_HOLD_PER_KEY +``` + +そして、以下の関数をキーマップに追加します: + +```c +bool get_permissive_hold(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + case LT(1, KC_BSPC): + return true; + default: + return false; + } +} +``` + +## Mod タイプ割り込みの無視 + +この設定を有効にするには、これを `config.h` に追加してください: + +```c +#define IGNORE_MOD_TAP_INTERRUPT +``` + +許容ホールドと同様に、これは高速なタイピストのためのファームウェアの処理方法を変更します。モッドタップキーを押し、他のキーを押し、モッドタップキーを放し、通常のキーを放すと、通常は両方のキーについての "タッピング" の機能が出力されます。これはローリングコンボキーには望ましくないかもしれません。 + +`モッドタップ割り込みの無視`の設定には、ホールド機能 (mod) を引き起こすために `TAPPING_TERM` の両方のキーを必要とします。 + +例えば: + +- `SFT_T(KC_A)` ダウン +- `KC_X` ダウン +- `SFT_T(KC_A)` アップ +- `KC_X` アップ + +通常、これは `X` を送信します (`SHIFT`+`x`)。`モッドタップ割り込みの無視`を有効にすると、ホールドアクションを登録するために、`TAPPING_TERM` に両方のキーをホールドする必要があります。この場合、素早いタップは `ax` を送信しますが、両方をホールドすると、`X` (`SHIFT`+`x`) を出力します。 + + +?> __注意__: これはモディファイアにのみ関係し、レイヤー切り替えキーには関係しません。 + +?> `許容ホールド`を有効にすると、これは両方がどのように動作するかを変更します。通常のキーには、最初のキーが最初に放された場合、あるいは両方のキーが `TAPPING_TERM` より長くホールドされた場合に、モディファイアが追加されます。 + +この機能をより細かく制御するために、以下を `config.h` に追加することができます: + +```c +#define IGNORE_MOD_TAP_INTERRUPT_PER_KEY +``` + +そして、以下の関数をキーマップに追加します: + +```c +bool get_ignore_mod_tap_interrupt(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + case SFT_T(KC_SPC): + return true; + default: + return false; + } +} +``` + +## タッピングフォースホールド + +`タッピングフォースホールド` を有効にするには、以下を `config.h` に追加します: + +```c +#define TAPPING_FORCE_HOLD +``` + +タップの後でユーザがキーをホールドすると、これは修飾キーをホールドするかわりにタップされたキーを繰り返します。これにより、タップされたキーのために自動繰り返しを使うことができます。 + +例: + +- SFT_T(KC_A) ダウン +- SFT_T(KC_A) アップ +- SFT_T(KC_A) ダウン +- タッピング時間より長く待ちます... +- SFT_T(KC_A) アップ + +デフォルトの設定では、最初のリリースで `a` が送信され、2回目の押下で `a` が送信され、コンピュータに自動リピート機能をさせることができます。 + +`TAPPING_FORCE_HOLD` を使うと、2回目の押下はシフトとして解釈され、それをタップして使った後ですぐにモディファイアとして使うことができます。 + +!> `TAPPING_FORCE_HOLD` はタッピングトグル(`TT` レイヤーのキーコード、ワンショットタッピングトグルなど)を使うものをすべて破壊します。 + +この機能をより細かく制御するために、以下を `config.h` に追加することができます: + +```c +#define TAPPING_FORCE_HOLD_PER_KEY +``` + +そして、以下の関数をキーマップに追加します: + +```c +bool get_tapping_force_hold(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + case LT(1, KC_BSPC): + return true; + default: + return false; + } +} +``` + +## レトロタッピング + +`レトロタッピング`を有効にするには、以下のものを `config.h` に追加してください: + +```c +#define RETRO_TAPPING +``` + +他のキーを押さずにデュアルファンクションキーを押して放しても何も起こりません。レトロタップを有効にすると、他のキーを押さずにキーを放すと、元のキーコードがタッピング時間外であっても送信されます。 + +例えば、他のキーを押すことなく `LT(2, KC_SPACE)` を押したり放したりしても何も起こりません。これを有効にすると、代わりに `KC_SPACE` を送信します。 + +## キーの関数ごとにキーのレコードを含めるのはなぜですか? + +「キーごと」の関数全てにキーレコードを含んでいることに気付いたかもしれません。そしてなぜそうしたのか不思議に思っているかもしれません。 + +まぁ、それは単純に本当にカスタマイズのためです。ただし、具体的には、それはキーボードの配線方法によって異なります。例えば、各行が実際にキーボードのマトリックスの行を使っている場合、キーコード全体をチェックする代わりに、`if (record->event.row == 3)` を使うほうが簡単かもしれません。これは、ホームキー行でタップホールドタイプのキーを使っている人にとって特に便利です。そのため、通常のタイピングを妨げないように微調整することができるのではないでしょうか。 + +## `*_kb` or `*_user` 関数が無いのはなぜですか? + +ここにある他の多くの関数とは異なり、quantum あるいはキーボードレベルの関数を持つ必要はありません (または理由さえありません)。ここではユーザレベルの関数だけが有用なため、そのようにマークする必要はありません。 From e38c577346e3176dbf5fcb04fa221731563b8a24 Mon Sep 17 00:00:00 2001 From: umi-umi <57262844+umi-umi@users.noreply.github.com> Date: Tue, 25 Aug 2020 19:36:56 +0900 Subject: [PATCH 2/4] update based on comment --- docs/ja/tap_hold.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/ja/tap_hold.md b/docs/ja/tap_hold.md index 1f9f96ef78d7..970c1ca86318 100644 --- a/docs/ja/tap_hold.md +++ b/docs/ja/tap_hold.md @@ -5,7 +5,7 @@ git diff 0.9.51 HEAD -- docs/tap_hold.md | cat --> -タップホールドオプションは素晴らしいですが、問題が無いわけではありません。合理的なデフォルトでそれらを設定しようとしていますが、一部の人にとってまだ問題を引き起こすかもしれません。 +タップホールドオプションは素晴らしいですが、問題が無いわけではありません。合理的なデフォルト設定でそれらを構築しようとしていますが、一部の人にとってまだ問題を引き起こすかもしれません。 これらのオプションによりタップホールドキーの挙動を変更することができます。 @@ -50,9 +50,9 @@ uint16_t get_tapping_term(uint16_t keycode, keyrecord_t *record) { #define PERMISSIVE_HOLD ``` -これは高速なタイピストや高い `TAPPING_TERM` 設定に対して、タップとホールドキー(モッドタップのような)動作を向上させます。 +これは高速なタイピストや高い `TAPPING_TERM` 設定に対して、タップとホールドキー(モッドタップのような)の動作を向上させます。 -モッドタップキーを押し、他のキーをタップ(押して放す)して、モッドタップキーを放すと、全てのタッピング時間内で両方のキーの「タッピング」機能が出力されます。 +モッドタップキーを押し、他のキーをタップ(押して放す)して、モッドタップキーを放すという動作の全てをタッピング時間内に行うと、両方のキーの「タッピング」機能が出力されます。 例えば: @@ -147,7 +147,7 @@ bool get_ignore_mod_tap_interrupt(uint16_t keycode, keyrecord_t *record) { - タッピング時間より長く待ちます... - SFT_T(KC_A) アップ -デフォルトの設定では、最初のリリースで `a` が送信され、2回目の押下で `a` が送信され、コンピュータに自動リピート機能をさせることができます。 +デフォルトの設定では、最初のリリースで `a` が送信され、2回目の押下で `a` が送信され、コンピュータに自動リピート機能を作動させることができます。 `TAPPING_FORCE_HOLD` を使うと、2回目の押下はシフトとして解釈され、それをタップして使った後ですぐにモディファイアとして使うことができます。 From 1b22c0da6c39178e83603c9be62c288e22aca2c2 Mon Sep 17 00:00:00 2001 From: umi-umi <57262844+umi-umi@users.noreply.github.com> Date: Sat, 5 Sep 2020 23:16:40 +0900 Subject: [PATCH 3/4] update based on comment --- docs/ja/tap_hold.md | 70 ++++++++++++++++++++++----------------------- 1 file changed, 35 insertions(+), 35 deletions(-) diff --git a/docs/ja/tap_hold.md b/docs/ja/tap_hold.md index 970c1ca86318..910935dc619e 100644 --- a/docs/ja/tap_hold.md +++ b/docs/ja/tap_hold.md @@ -5,13 +5,13 @@ git diff 0.9.51 HEAD -- docs/tap_hold.md | cat --> -タップホールドオプションは素晴らしいですが、問題が無いわけではありません。合理的なデフォルト設定でそれらを構築しようとしていますが、一部の人にとってまだ問題を引き起こすかもしれません。 +タップホールドオプションは素晴らしいですが、問題が無いわけではありません。適切なデフォルト設定でそれらを構築しようとしていますが、一部の人にとってまだ問題を引き起こすかもしれません。 これらのオプションによりタップホールドキーの挙動を変更することができます。 -## タッピング条件 +## タッピング時間 -以下の機能の全ての核心は、タッピング条件の設定です。これにより、タップとホールドが決まります。自然に感じられる正確なタイミングは、キーボードごと、スイッチごと、キーごとに異なるかもしれません。 +以下の機能の全ての核心は、タッピング時間の設定です。これにより、タップとホールドが決まります。自然に感じられる正確なタイミングは、キーボードごと、スイッチごと、キーごとに異なるかもしれません。 `config.h` に以下の設定を追加することで、このグローバル時間を設定することができます: @@ -44,7 +44,7 @@ uint16_t get_tapping_term(uint16_t keycode, keyrecord_t *record) { ## 許容ホールド -[PR#1359](https://github.com/qmk/qmk_firmware/pull/1359/) の時点で、新しい `config.h` オプションがあります: +[PR#1359](https://github.com/qmk/qmk_firmware/pull/1359/) 以降、新しい `config.h` オプションがあります: ```c #define PERMISSIVE_HOLD @@ -56,14 +56,14 @@ uint16_t get_tapping_term(uint16_t keycode, keyrecord_t *record) { 例えば: -- `SFT_T(KC_A)` ダウン -- `KC_X` ダウン -- `KC_X` アップ -- `SFT_T(KC_A)` アップ +- `SFT_T(KC_A)` を押す +- `KC_X` を押す +- `KC_X` を放す +- `SFT_T(KC_A)` を放す -通常、これら全てを `TAPPING_TERM` (デフォルト: 200ms) 内で行うと、ファームウェアとホストシステムによって `ax` として登録されます。許容ホールドを有効にすると、別のキーがタップされた場合にモッドタップキーを Mod と見なすことで処理され、 `X` として登録されます (`SHIFT`+`x`)。 +通常、これら全てを `TAPPING_TERM` (デフォルト: 200ms) 内で行うと、ファームウェアとホストシステムによって `ax` として登録されます。許容ホールドを有効にすると、別のキーがタップされた場合にモッドタップキーを修飾キーと見なすように処理を変更し、 `X` (`SHIFT`+`x`) と登録されます。 -?> `モッドタップ割り込みの無視`を有効にしている場合、これにより両方の動きが変更されます。最初のキーが最初に放された場合、あるいは両方のキーが `TAPPING_TERM` より長くホールドされた場合に、通常のキーにモディファイアが追加されます。 +?> `モッドタップ割り込みの無視`を有効にしている場合、これにより両方の動きが変更されます。通常のキーには、最初のキーが最初に放された場合、あるいは両方のキーが `TAPPING_TERM` より長くホールドされた場合に、修飾キーが追加されます。 この機能をより細かく制御するために、以下を `config.h` に追加することができます: @@ -84,7 +84,7 @@ bool get_permissive_hold(uint16_t keycode, keyrecord_t *record) { } ``` -## Mod タイプ割り込みの無視 +## モッドタップ割り込みの無視 この設定を有効にするには、これを `config.h` に追加してください: @@ -92,23 +92,23 @@ bool get_permissive_hold(uint16_t keycode, keyrecord_t *record) { #define IGNORE_MOD_TAP_INTERRUPT ``` -許容ホールドと同様に、これは高速なタイピストのためのファームウェアの処理方法を変更します。モッドタップキーを押し、他のキーを押し、モッドタップキーを放し、通常のキーを放すと、通常は両方のキーについての "タッピング" の機能が出力されます。これはローリングコンボキーには望ましくないかもしれません。 +許容ホールドと同様に、これは高速なタイピストのためのファームウェアの処理方法を変更します。モッドタップキーを押し、他のキーを押し、モッドタップキーを放し、通常のキーを放すと、通常は両方のキーの「タッピング」機能が出力されます。これはローリングコンボキーには望ましくないかもしれません。 -`モッドタップ割り込みの無視`の設定には、ホールド機能 (mod) を引き起こすために `TAPPING_TERM` の両方のキーを必要とします。 +`モッドタップ割り込みの無視`を設定するには、両方のキーを `TAPPING_TERM` の間ホールドすると、(その修飾キーの)ホールド機能を実行する必要があります。 例えば: -- `SFT_T(KC_A)` ダウン -- `KC_X` ダウン -- `SFT_T(KC_A)` アップ -- `KC_X` アップ +- `SFT_T(KC_A)` を押す +- `KC_X` を押す +- `SFT_T(KC_A)` を放す +- `KC_X` を放す -通常、これは `X` を送信します (`SHIFT`+`x`)。`モッドタップ割り込みの無視`を有効にすると、ホールドアクションを登録するために、`TAPPING_TERM` に両方のキーをホールドする必要があります。この場合、素早いタップは `ax` を送信しますが、両方をホールドすると、`X` (`SHIFT`+`x`) を出力します。 +通常、これは `X` (`SHIFT`+`x`) を送信します。`モッドタップ割り込みの無視` を有効にすると、ホールドアクションを登録するには、両方のキーを `TAPPING_TERM` の間ホールドする必要があります。この場合、素早いタップは `ax` を送信しますが、両方をホールドすると、`X` (`SHIFT`+`x`) を出力します。 ?> __注意__: これはモディファイアにのみ関係し、レイヤー切り替えキーには関係しません。 -?> `許容ホールド`を有効にすると、これは両方がどのように動作するかを変更します。通常のキーには、最初のキーが最初に放された場合、あるいは両方のキーが `TAPPING_TERM` より長くホールドされた場合に、モディファイアが追加されます。 +?> `許容ホールド`を有効にすると、これは両方がどのように動作するかを変更します。通常のキーには、最初のキーが最初に放された場合、あるいは両方のキーが `TAPPING_TERM` より長くホールドされた場合に、修飾キーが追加されます。 この機能をより細かく制御するために、以下を `config.h` に追加することができます: @@ -129,9 +129,9 @@ bool get_ignore_mod_tap_interrupt(uint16_t keycode, keyrecord_t *record) { } ``` -## タッピングフォースホールド +## タッピング強制ホールド -`タッピングフォースホールド` を有効にするには、以下を `config.h` に追加します: +`タッピング強制ホールド` を有効にするには、以下を `config.h` に追加します: ```c #define TAPPING_FORCE_HOLD @@ -141,17 +141,17 @@ bool get_ignore_mod_tap_interrupt(uint16_t keycode, keyrecord_t *record) { 例: -- SFT_T(KC_A) ダウン -- SFT_T(KC_A) アップ -- SFT_T(KC_A) ダウン +- SFT_T(KC_A) を押す +- SFT_T(KC_A) を放す +- SFT_T(KC_A) を押す - タッピング時間より長く待ちます... -- SFT_T(KC_A) アップ +- SFT_T(KC_A) を放す -デフォルトの設定では、最初のリリースで `a` が送信され、2回目の押下で `a` が送信され、コンピュータに自動リピート機能を作動させることができます。 +デフォルトの設定では、最初に放したときに `a` が送信され、2回目の押下で `a` が送信され、コンピュータに自動リピート機能を作動させることができます。 -`TAPPING_FORCE_HOLD` を使うと、2回目の押下はシフトとして解釈され、それをタップして使った後ですぐにモディファイアとして使うことができます。 +`TAPPING_FORCE_HOLD` を使うと、2回目の押下は Shift として解釈され、それをタップして使った後ですぐに修飾キーとして使うことができます。 -!> `TAPPING_FORCE_HOLD` はタッピングトグル(`TT` レイヤーのキーコード、ワンショットタッピングトグルなど)を使うものをすべて破壊します。 +!> `TAPPING_FORCE_HOLD` はタッピングトグル(`TT` レイヤーキーコード、ワンショットタッピングトグルなど)を使うものをすべて破壊します。 この機能をより細かく制御するために、以下を `config.h` に追加することができます: @@ -174,22 +174,22 @@ bool get_tapping_force_hold(uint16_t keycode, keyrecord_t *record) { ## レトロタッピング -`レトロタッピング`を有効にするには、以下のものを `config.h` に追加してください: +`レトロタッピング`を有効にするには、以下を `config.h` に追加してください: ```c #define RETRO_TAPPING ``` -他のキーを押さずにデュアルファンクションキーを押して放しても何も起こりません。レトロタップを有効にすると、他のキーを押さずにキーを放すと、元のキーコードがタッピング時間外であっても送信されます。 +他のキーを押さずにデュアルファンクションキーを押して放しても何も起こりません。レトロタッピングを有効にすると、他のキーを押さずにキーを放すと、元のキーコードがタッピング時間外であっても送信されます。 例えば、他のキーを押すことなく `LT(2, KC_SPACE)` を押したり放したりしても何も起こりません。これを有効にすると、代わりに `KC_SPACE` を送信します。 -## キーの関数ごとにキーのレコードを含めるのはなぜですか? +## キー別の関数にキーレコードを含めるのはなぜですか? -「キーごと」の関数全てにキーレコードを含んでいることに気付いたかもしれません。そしてなぜそうしたのか不思議に思っているかもしれません。 +「キー別」の関数全てにキーレコードを含んでいることに気付いたかもしれません。そしてなぜそうしたのか不思議に思っているかもしれません。 -まぁ、それは単純に本当にカスタマイズのためです。ただし、具体的には、それはキーボードの配線方法によって異なります。例えば、各行が実際にキーボードのマトリックスの行を使っている場合、キーコード全体をチェックする代わりに、`if (record->event.row == 3)` を使うほうが簡単かもしれません。これは、ホームキー行でタップホールドタイプのキーを使っている人にとって特に便利です。そのため、通常のタイピングを妨げないように微調整することができるのではないでしょうか。 +まぁ、それは単純に本当にカスタマイズのためです。ただし、具体的には、それはキーボードの配線方法によって異なります。例えば、各行が実際にキーボードのマトリックスの1行を使っている場合、キーコード全体をチェックする代わりに、`if (record->event.row == 3)` を使うほうが簡単かもしれません。これは、ホームキー行でタップホールドタイプのキーを使っている人にとって特に便利です。そのため、通常のタイピングを妨げないように微調整することができるのではないでしょうか。 -## `*_kb` or `*_user` 関数が無いのはなぜですか? +## `*_kb` や `*_user` 関数が無いのはなぜですか? -ここにある他の多くの関数とは異なり、quantum あるいはキーボードレベルの関数を持つ必要はありません (または理由さえありません)。ここではユーザレベルの関数だけが有用なため、そのようにマークする必要はありません。 +QMK にある他の多くの関数とは異なり、quantum あるいはキーボードレベルの関数を持つ必要はありません (または理由さえありません)。ここではユーザレベルの関数だけが有用なため、そのようにマークする必要はありません。 From cc58fb7a2dc64902802b22aa20691cd2208a7163 Mon Sep 17 00:00:00 2001 From: umi-umi <57262844+umi-umi@users.noreply.github.com> Date: Tue, 15 Sep 2020 21:41:36 +0900 Subject: [PATCH 4/4] update based on comment --- docs/ja/tap_hold.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/ja/tap_hold.md b/docs/ja/tap_hold.md index 910935dc619e..a0f08976283c 100644 --- a/docs/ja/tap_hold.md +++ b/docs/ja/tap_hold.md @@ -5,15 +5,15 @@ git diff 0.9.51 HEAD -- docs/tap_hold.md | cat --> -タップホールドオプションは素晴らしいですが、問題が無いわけではありません。適切なデフォルト設定でそれらを構築しようとしていますが、一部の人にとってまだ問題を引き起こすかもしれません。 +タップホールドオプションは素晴らしいものですが、問題が無いわけではありません。デフォルト設定を適切なものにしようとしましたが、一部の人にとってまだ問題を引き起こすかもしれません。 -これらのオプションによりタップホールドキーの挙動を変更することができます。 +次のオプションによりタップホールドキーの挙動を変更することができます。 ## タッピング時間 -以下の機能の全ての核心は、タッピング時間の設定です。これにより、タップとホールドが決まります。自然に感じられる正確なタイミングは、キーボードごと、スイッチごと、キーごとに異なるかもしれません。 +以下の機能の全ての核心は、タッピング時間の設定です。これにより、何をタップとし、何をホールドとするかが決まります。これが自然に感じられるぴったりのタイミングは、キーボードごと、スイッチごと、あるいはキーごとに異ることもありえます。 -`config.h` に以下の設定を追加することで、このグローバル時間を設定することができます: +`config.h` に以下の設定を追加することで、この時間を全体的に設定することができます: ```c #define TAPPING_TERM 200