aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorumi <57262844+umi-umi@users.noreply.github.com>2020-09-18 04:04:07 +0900
committerGitHub <noreply@github.com>2020-09-17 12:04:07 -0700
commitbc010d62cab9a632d6338218e648aa37a8814c1d (patch)
tree4a81b14b77fe37d93e460fd660706eb157157830
parentbc15c4f4ab81c1e2950dfc1c38cf86dc626573c9 (diff)
downloadqmk_firmware-bc010d62cab9a632d6338218e648aa37a8814c1d.tar.gz
qmk_firmware-bc010d62cab9a632d6338218e648aa37a8814c1d.zip
[Docs] Japanese translation of docs/tap_hold.md (#10017)
* add tap_hold.md translation * update based on comment * update based on comment * update based on comment
-rw-r--r--docs/ja/tap_hold.md195
1 files changed, 195 insertions, 0 deletions
diff --git a/docs/ja/tap_hold.md b/docs/ja/tap_hold.md
new file mode 100644
index 000000000..a0f089762
--- /dev/null
+++ b/docs/ja/tap_hold.md
@@ -0,0 +1,195 @@
1# タップホールド設定オプション
2
3<!---
4 original document: 0.9.51:docs/tap_hold.md
5 git diff 0.9.51 HEAD -- docs/tap_hold.md | cat
6-->
7
8タップホールドオプションは素晴らしいものですが、問題が無いわけではありません。デフォルト設定を適切なものにしようとしましたが、一部の人にとってまだ問題を引き起こすかもしれません。
9
10次のオプションによりタップホールドキーの挙動を変更することができます。
11
12## タッピング時間
13
14以下の機能の全ての核心は、タッピング時間の設定です。これにより、何をタップとし、何をホールドとするかが決まります。これが自然に感じられるぴったりのタイミングは、キーボードごと、スイッチごと、あるいはキーごとに異ることもありえます。
15
16`config.h` に以下の設定を追加することで、この時間を全体的に設定することができます:
17
18```c
19#define TAPPING_TERM 200
20```
21
22この設定はミリ秒で定義され、デフォルトは 200ms です。これは大多数の人にとっての適切な平均値です。
23
24この機能をより細かく制御するために、以下を `config.h` に追加することができます:
25```c
26#define TAPPING_TERM_PER_KEY
27```
28
29そして、以下の関数をキーマップに追加します:
30
31```c
32uint16_t get_tapping_term(uint16_t keycode, keyrecord_t *record) {
33 switch (keycode) {
34 case SFT_T(KC_SPC):
35 return TAPPING_TERM + 1250;
36 case LT(1, KC_GRV):
37 return 130;
38 default:
39 return TAPPING_TERM;
40 }
41}
42```
43
44
45## 許容ホールド
46
47[PR#1359](https://github.com/qmk/qmk_firmware/pull/1359/) 以降、新しい `config.h` オプションがあります:
48
49```c
50#define PERMISSIVE_HOLD
51```
52
53これは高速なタイピストや高い `TAPPING_TERM` 設定に対して、タップとホールドキー(モッドタップのような)の動作を向上させます。
54
55モッドタップキーを押し、他のキーをタップ(押して放す)して、モッドタップキーを放すという動作の全てをタッピング時間内に行うと、両方のキーの「タッピング」機能が出力されます。
56
57例えば:
58
59- `SFT_T(KC_A)` を押す
60- `KC_X` を押す
61- `KC_X` を放す
62- `SFT_T(KC_A)` を放す
63
64通常、これら全てを `TAPPING_TERM` (デフォルト: 200ms) 内で行うと、ファームウェアとホストシステムによって `ax` として登録されます。許容ホールドを有効にすると、別のキーがタップされた場合にモッドタップキーを修飾キーと見なすように処理を変更し、 `X` (`SHIFT`+`x`) と登録されます。
65
66?> `モッドタップ割り込みの無視`を有効にしている場合、これにより両方の動きが変更されます。通常のキーには、最初のキーが最初に放された場合、あるいは両方のキーが `TAPPING_TERM` より長くホールドされた場合に、修飾キーが追加されます。
67
68この機能をより細かく制御するために、以下を `config.h` に追加することができます:
69
70```c
71#define PERMISSIVE_HOLD_PER_KEY
72```
73
74そして、以下の関数をキーマップに追加します:
75
76```c
77bool get_permissive_hold(uint16_t keycode, keyrecord_t *record) {
78 switch (keycode) {
79 case LT(1, KC_BSPC):
80 return true;
81 default:
82 return false;
83 }
84}
85```
86
87## モッドタップ割り込みの無視
88
89この設定を有効にするには、これを `config.h` に追加してください:
90
91```c
92#define IGNORE_MOD_TAP_INTERRUPT
93```
94
95許容ホールドと同様に、これは高速なタイピストのためのファームウェアの処理方法を変更します。モッドタップキーを押し、他のキーを押し、モッドタップキーを放し、通常のキーを放すと、通常は両方のキーの「タッピング」機能が出力されます。これはローリングコンボキーには望ましくないかもしれません。
96
97`モッドタップ割り込みの無視`を設定するには、両方のキーを `TAPPING_TERM` の間ホールドすると、(その修飾キーの)ホールド機能を実行する必要があります。
98
99例えば:
100
101- `SFT_T(KC_A)` を押す
102- `KC_X` を押す
103- `SFT_T(KC_A)` を放す
104- `KC_X` を放す
105
106通常、これは `X` (`SHIFT`+`x`) を送信します。`モッドタップ割り込みの無視` を有効にすると、ホールドアクションを登録するには、両方のキーを `TAPPING_TERM` の間ホールドする必要があります。この場合、素早いタップは `ax` を送信しますが、両方をホールドすると、`X` (`SHIFT`+`x`) を出力します。
107
108
109?> __注意__: これはモディファイアにのみ関係し、レイヤー切り替えキーには関係しません。
110
111?> `許容ホールド`を有効にすると、これは両方がどのように動作するかを変更します。通常のキーには、最初のキーが最初に放された場合、あるいは両方のキーが `TAPPING_TERM` より長くホールドされた場合に、修飾キーが追加されます。
112
113この機能をより細かく制御するために、以下を `config.h` に追加することができます:
114
115```c
116#define IGNORE_MOD_TAP_INTERRUPT_PER_KEY
117```
118
119そして、以下の関数をキーマップに追加します:
120
121```c
122bool get_ignore_mod_tap_interrupt(uint16_t keycode, keyrecord_t *record) {
123 switch (keycode) {
124 case SFT_T(KC_SPC):
125 return true;
126 default:
127 return false;
128 }
129}
130```
131
132## タッピング強制ホールド
133
134`タッピング強制ホールド` を有効にするには、以下を `config.h` に追加します:
135
136```c
137#define TAPPING_FORCE_HOLD
138```
139
140タップの後でユーザがキーをホールドすると、これは修飾キーをホールドするかわりにタップされたキーを繰り返します。これにより、タップされたキーのために自動繰り返しを使うことができます。
141
142例:
143
144- SFT_T(KC_A) を押す
145- SFT_T(KC_A) を放す
146- SFT_T(KC_A) を押す
147- タッピング時間より長く待ちます...
148- SFT_T(KC_A) を放す
149
150デフォルトの設定では、最初に放したときに `a` が送信され、2回目の押下で `a` が送信され、コンピュータに自動リピート機能を作動させることができます。
151
152`TAPPING_FORCE_HOLD` を使うと、2回目の押下は Shift として解釈され、それをタップして使った後ですぐに修飾キーとして使うことができます。
153
154!> `TAPPING_FORCE_HOLD` はタッピングトグル(`TT` レイヤーキーコード、ワンショットタッピングトグルなど)を使うものをすべて破壊します。
155
156この機能をより細かく制御するために、以下を `config.h` に追加することができます:
157
158```c
159#define TAPPING_FORCE_HOLD_PER_KEY
160```
161
162そして、以下の関数をキーマップに追加します:
163
164```c
165bool get_tapping_force_hold(uint16_t keycode, keyrecord_t *record) {
166 switch (keycode) {
167 case LT(1, KC_BSPC):
168 return true;
169 default:
170 return false;
171 }
172}
173```
174
175## レトロタッピング
176
177`レトロタッピング`を有効にするには、以下を `config.h` に追加してください:
178
179```c
180#define RETRO_TAPPING
181```
182
183他のキーを押さずにデュアルファンクションキーを押して放しても何も起こりません。レトロタッピングを有効にすると、他のキーを押さずにキーを放すと、元のキーコードがタッピング時間外であっても送信されます。
184
185例えば、他のキーを押すことなく `LT(2, KC_SPACE)` を押したり放したりしても何も起こりません。これを有効にすると、代わりに `KC_SPACE` を送信します。
186
187## キー別の関数にキーレコードを含めるのはなぜですか?
188
189「キー別」の関数全てにキーレコードを含んでいることに気付いたかもしれません。そしてなぜそうしたのか不思議に思っているかもしれません。
190
191まぁ、それは単純に本当にカスタマイズのためです。ただし、具体的には、それはキーボードの配線方法によって異なります。例えば、各行が実際にキーボードのマトリックスの1行を使っている場合、キーコード全体をチェックする代わりに、`if (record->event.row == 3)` を使うほうが簡単かもしれません。これは、ホームキー行でタップホールドタイプのキーを使っている人にとって特に便利です。そのため、通常のタイピングを妨げないように微調整することができるのではないでしょうか。
192
193## `*_kb` や `*_user` 関数が無いのはなぜですか?
194
195QMK にある他の多くの関数とは異なり、quantum あるいはキーボードレベルの関数を持つ必要はありません (または理由さえありません)。ここではユーザレベルの関数だけが有用なため、そのようにマークする必要はありません。