このコミットが含まれているのは:
@@ -140,10 +140,22 @@ npm run preview
|
||||
99 文字を超えるなら block 形式へ切り替へるか、message 定数化などで縮める。
|
||||
- Ruby の method chain や call argument を折り返す際、call-site の `)` を
|
||||
block close のやうに独立させない。
|
||||
- Ruby では、行末の `\` を用途を問はず一切使用しない。
|
||||
- Ruby では、文字列連結、logger message、method call、条件式、SQL 断片、
|
||||
正規表現その他すべての式で、行末バックスラッシュによる継続を禁止する。
|
||||
- Ruby の block body は、その基準位置から 2 空白深くする。
|
||||
- Ruby の wrapped expression、method argument、array element、hash pair などの
|
||||
continuation indentation は、その statement の基準位置から 4 空白深くする。
|
||||
- Ruby の continuation indentation を、行頭からの絶対空白数として扱はない。
|
||||
- Ruby では、暗黙的に継続可能な構文を優先し、method call、array、Hash 及び
|
||||
括弧内ではバックスラッシュなしで改行する。
|
||||
- Ruby では、行長制限を守るために行末バックスラッシュを導入してはならない。
|
||||
- Ruby で行末バックスラッシュが必要に見える場合は、括弧内で自然に改行する、
|
||||
一つの文字列補間へまとめる、中間変数へ分ける、`format` を使ふ、heredoc を
|
||||
使ふ、array 又は Hash を組み立ててから処理する、条件式全体を括弧で囲む、
|
||||
method へ抽出する、のいづれかへ書き換へる。
|
||||
- formatter 又は自動修正にも、Ruby の行末バックスラッシュを生成させない。
|
||||
- 新規 code だけでなく、今回触れる Ruby code にも行末バックスラッシュを残さない。
|
||||
- 例へば class body 内の array は、class body の 2 空白を基準に、更に 4 空白
|
||||
深くするため、結果として行頭から 6 空白になる。
|
||||
|
||||
@@ -197,6 +209,48 @@ end
|
||||
|
||||
Bad:
|
||||
|
||||
```rb
|
||||
Rails.logger.info(
|
||||
"post_import_metadata_fetch_failure "\
|
||||
"#{ payload.to_json }")
|
||||
```
|
||||
|
||||
Good:
|
||||
|
||||
```rb
|
||||
payload = {
|
||||
error: e.class.name,
|
||||
message: e.message }
|
||||
|
||||
Rails.logger.info(
|
||||
"post_import_metadata_fetch_failure #{ payload.to_json }")
|
||||
```
|
||||
|
||||
Bad:
|
||||
|
||||
```rb
|
||||
message = "first "\
|
||||
"second"
|
||||
```
|
||||
|
||||
Good:
|
||||
|
||||
```rb
|
||||
message = format(
|
||||
'%<first>s %<second>s',
|
||||
first: 'first',
|
||||
second: 'second')
|
||||
```
|
||||
|
||||
Bad:
|
||||
|
||||
```rb
|
||||
result = first_value + \
|
||||
second_value
|
||||
```
|
||||
|
||||
Bad:
|
||||
|
||||
```rb
|
||||
records.each {
|
||||
do_work(_1) }
|
||||
|
||||
新しい課題から参照
ユーザをブロックする