forked from asciidwango/js-primer
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathprh.yml
378 lines (366 loc) · 11.5 KB
/
prh.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
version: 1
imports:
- test/techbooster.yml
rules:
# 大文字小文字全角半角の統一
- expected: Cookie
# 以下と等価 正規表現には強制でgフラグが付く
# - expected: Cookie
# pattern: "/[CcCc][OoOo][OoOo][KkKk][IiIi][EeEe]/g"
# options:
# wordBoundary: false
# specs: []
- expected: Markdown
# 正規表現で置換もできる
- expected: JavaScript
patterns:
- javascript
options:
wordBoundary: true
specs:
- from: javascript
to: JavaScript
- expected: ECMAScript $1
pattern: /ECMAScript([0-9]+)/
# 変換結果についてテストも書ける
- expected: jQuery
specs:
- from: jquery
to: jQuery
- from: JQUERY
to: jQuery
# 変換結果が期待通りではなかった場合、ルールのロードに失敗する
# - expected: JavaScript
# specs:
# - from: JAVASCRIPT
# to: JavaScprit # この場合はテスト側が間違ってる!
# Error: JavaScript spec failed. "JAVASCRIPT", expected "JavaScprit", but got "JavaScript", /[JjJj][AaAa][VvVv][AaAa][SsSs][CcCc][RrRr][IiIi][PpPp][TtTt]/g
# 表現の統一を図る
- expected: デフォルト
pattern: ディフォルト
# patternは複数記述可能
- expected: ハードウェア
pattern:
- ハードウエアー
- ハードウエア # 正規表現に変換する都合上短いものを後に書いたほうがよい
- ハードウェアー
# patternには正規表現が利用可能 否定戻り先読みが欲しい…(JSにはない
- expected: $1ソフトウェア
pattern: /([^経])ソフトウエア/
specs:
# 普通に変換
- from: 広義のソフトウエア
to: 広義のソフトウェア
# 日経ソフトウエア(書名)は変換しない
- from: 日経ソフトウエア
to: 日経ソフトウエア
# Project
- expected: Doctest
- expected: 基本文法
patterns:
- 基礎文法
# http://www.ecma-international.org/ecma-262/6.0/#sec-comments
# MultiLineComment
# SingleLineComment
- expected: 一行コメント
patterns:
- 1行コメント
- ワンラインコメント
prh: 仕様的に http://www.ecma-international.org/ecma-262/6.0/#sec-comments
- expected: $1一行コメント
patterns: /([^1一数])行コメント/
prh: 仕様的に http://www.ecma-international.org/ecma-262/6.0/#sec-comments
- expected: 複数行コメント
patterns:
- ブロックコメント
- マルチラインコメント
prh: 仕様的に http://www.ecma-international.org/ecma-262/6.0/#sec-comments
- expected: うるう年
patterns: 閏年
- expected: 実行する文
patterns:
- 処理したい文
- 処理する文
- expected: case節
patterns:
- case文
prh: "caseは節かブロックです http://www.ecma-international.org/ecma-262/7.0/#prod-CaseClauses"
- expected: break文
patterns:
- break式
- expected: 処理中の$1
patterns: /実行中の([^、。\s]*?文)/
prh: "文は処理中という扱いです"
specs:
- from: 偶数ではない場合、実行中の文をスキップしています。
to : 偶数ではない場合、処理中の文をスキップしています。
- expected: 処理中の$1
patterns: /現在実行中の([^、。\s]*?文)/
prh: "文は処理中という扱いです"
specs:
- from: 現在実行中のループ文を終了することができます。
to : 処理中のループ文を終了することができます。
- expected: 反復処理
patterns:
- 繰り返し処理
- ループ処理
prh: 繰り返しがループ的なものか、同じことを何度も繰り返すかが曖昧なので反復処理にする
- expected: 浮動小数点数$1
patterns:
- /浮動小数点([ぁ-ん])/
prh: "浮動小数点ではなく浮動小数点数を使ってください"
- expected: シングルスレッド
patterns:
- 単一スレッド
- expected: for...in
patterns:
- /for\.{1,2}in/
- /for\\-in/
- for/in
- expected: for...of
patterns:
- /for\.{1,2}of/
- /for\\-of/
- for/of
- expected: バッククオート
patterns: バックティック
- expected: 匿名関数
patterns: 無名関数
- expected: Array-like
patterns: 配列ライク
- expected: Promiseチェーン
patterns:
- /thenチェーン/i
- /promise chain/i
prh: https://github.com/asciidwango/js-primer/pull/116
specs:
- from: thenチェーンと言います
to : Promiseチェーンと言います
- expected: Statement
patterns: ステートメント
options:
wordBoundary: true
- expected: Expression
patterns: エクスプレッション
options:
wordBoundary: true
- expected: 暗黙的な型変換
patterns: 暗黙的な変換
- expected: プリミティブ型
patterns:
- プリミティブなデータ型
- プリミティブデータ型
prh: StringやNumberといったtypeのこと。プリミティブ値の型を示す
- expected: プリミティブ型の値
patterns:
- プリミティブ値
prh: 仕様におけるprimitive valueのこと。 strや1といったプリミティブ型の値を示す
- expected: インデックス
patterns:
- 添字
prh: 配列では添字ではなく、インデックスを使います。
- expected: インデックス
patterns:
- 添字
prh: 配列では添字ではなく、インデックスを使います。
- expected: 疎な配列
patterns: 疎の配列
prh: sparse arrayのこと
- expected: 密な配列
patterns: 密の配列
- expected: テンプレートリテラル
patterns: /Template\s*Literal/i
- expected: テンプレート文字列
patterns: /Template\s*Strings/i
- expected: タグ付きテンプレートリテラル
patterns: /Tagged\s*template\s*literals?/i
- expected: Unicode
patterns: ユニコード
- expected: UTF-16
patterns: /UTF16/i
- expected: 弱い参照
patterns: 弱参照
# Code Unit/ Code Point
- expected: Code Unit
- expected: Code Poiint
- expected: 各Code Unitごとに
patterns: Code Unit単位
- expected: 各Code Pointごとに
patterns: Code Point単位
- expected: strict mode
prh: strict modeでひとつなので常に小文字
- expected: $1分割代入$2
patterns:
- /[^(分割代入()]Destructuring assignment/i
- /[^(分割代入()]Destructuring(\S)/i
- expected: ガベージコレクション
patterns:
- /ガーベッジコレクション|ガーベッジコレクション|ガーベジコレクション/
- expected: クロージャー
patterns:
- /クロージャ(!?ー)/
- expected: 静的に
patterns:
- レキシカルに
- expected: つけるだけ
prh: つけるに統一する
patterns:
- 漬けるだけ
- 付けるだけ
- expected: Todoアプリ
patterns:
- /todoアプリ/i
- expected: Todoアイテム
patterns:
- /todoアイテム/i
# ファイルの読み書き / ファイルI/O
- expected: ファイルの読み書き
patterns:
- ファイルI/0
- ファイルI0
- expected: オブジェクト
patterns:
- オブジェクと
- expected: macOS
patterns:
- MacOS
- Mac OS X
- OS X
- expected: HTML要素
patterns:
- DOM要素
- expected: イベントをリッスン
patterns:
- イベントを監視
prh: https://github.com/asciidwango/js-primer/issues/455
- expected: イベントをディスパッチ
patterns:
- イベントを発火
prh: https://github.com/asciidwango/js-primer/issues/455
- expected: イベントが発生
patterns:
- イベントが発火
- expected: イベントリスナー
patterns:
- /イベントハンドラ(!?関数)/
- /イベントハンドラー(!?関数)/
- expected: イベントリスナー関数
patterns:
- イベントハンドラ関数
- イベントハンドラー関数
- expected: リスナー関数
patterns:
- ハンドラー関数
- ハンドラ関数
- ハンドラ
- expected: エラーファーストコールバック
patterns:
- エラーファーストコールバック関数
- expected: 一度
patterns:
- 1度
- expected: サーバーサイド
patterns:
- サーバサイド
# 一致とマッチ
## 一致は ===
- expected: $1一致
patterns:
- /(正規表現に)一致/
- /(パターンに)一致/
- expected: $1マッチ
patterns:
- /(パターンに)一致/
- /(正規表現に)一致/
- expected: ビルトイン$1
patterns:
- /ネイティブ(関数)/
- /ネイティブ(メソッド)/
# typo
- expected: $1進数
patterns:
- /(\d+)真数/
- expected: 同じ変数名を
patterns:
- /同じ変数を/
- expected: 機会が$1
patterns: /機械が(多い|ある|あり)/
specs:
- from: 機械がある
to: 機会がある
prh: 機械という単語が出てきたら直します
- expected: 状態で
patterns: 常体で
- expected: する場合は
patterns: する倍は
- expected: 式文
patterns: 文式
- expected: 宣言的
patterns: 宣言亭
- expected: コンストラクタ
patterns:
- 今ストラク
- コンストラスト
- expected: 関数内に
patterns:
- 関数中に
- expected: 子クラス
patterns:
- 小クラス
- expected: されています
patterns:
- されいます
- expected: 同期処理
patterns:
- 動機処理
# 文体
- expected: どのように
patterns:
- どうやって
- expected: $1ずつ
patterns: /(\d+[個つ]?)づつ/
specs:
- from: 2個づつ
to : 2個ずつ
- from: 2つづつ
to : 2つずつ
- expected: 箇所
patterns: /[ヶか]所/
specs:
- from: 一ヶ所
to : 一箇所
- from: 2か所
to : 2箇所
- expected: 処理を行います
patterns:
- 処理をします
- expected: 紐付けて定義
patterns:
- 紐付けられて定義
prh: 能動的に書いてください
- expected: $1でのみ
patterns: /(内|中)からのみ/
prh: 表記統一
specs:
- from: 仮引数はその関数の中からのみ参照が可能で、関数の外からは参照できません。
to: 仮引数はその関数の中でのみ参照が可能で、関数の外からは参照できません。
- expected: 実装できました
patterns: 実装ができました
# 漢字開き
- expected: 呼び出す
patterns: 呼びだす
- expected: もとづ$1
patterns: /基づ(く|き)/
- expected: 見てい$1
patterns: /見て行(く|き)/
specs:
- from: では、実際にどのように書くかの例を見て行きたいと思います。
to: では、実際にどのように書くかの例を見ていきたいと思います。
- expected: どのような
patterns: /どういう(?!こと)/
specs:
- from: どういうものがthenableなのか
to: どのようなものがthenableなのか
# techbooster.ymlでは'時刻'が認められないので'刻'を追加
- expected: $1とき
pattern: /(の)時(?!点|代|々|間|刻)/