prettier / prettier/plugin-php
Null coalesce operator getting too verbose sometimes
オープン
まだ誰も着手していません。
enhancement
- 主要言語
- PHP
- スター
- 1.9k
- フォーク
- 139
- PR マージ指標
- 30日以内にマージされた PR はありません
説明
- @prettier/plugin-php@0.14.1
- prettier@2.0.5
Options
### General
trailingComma: all
printWidth: 80
tabWidth: 4
useTabs: false
singleQuote: true
requirePragma: false
insertPragma: false
### JavaScript
semi: false
### VueJS
vueIndentScriptAndStyle: true
### PHP
phpVersion: "7.4"
trailingCommaPHP: true
braceStyle: psr-2
Input:
return $data['template_name'] ?? $data['templateName'] ?? $this->templateName ?? $this->template_name ?? null;
Output:
return $data['template_name'] ??
($data['templateName'] ??
($this->templateName ?? ($this->template_name ?? null)));
Expected behavior:
return $data['template_name']
?? $data['templateName']
?? $this->templateName
?? $this->template_name
?? null;
コントリビューションガイド
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
調査の方向性
ファイルやテストは指定されていません。提供された PHP 入力、Prettier 2.0.5、@prettier/plugin-php 0.14.1 を使って問題を再現し、その後、PHP のフォーマットロジックと、連鎖した null 合体式に対する既存のテストを見つけてください。式が 1 行に 1 つの演算子で、現在の出力に示されている入れ子の括弧なしにフォーマットされれば完了です。
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- php
- 領域
- tooling
- issue の種類
- バグ
- 難易度
- 3/5
- 見積もり時間
- 1〜2日
- 活発さ
- 停滞
- 明瞭さ
- 明確に書かれている
- 初心者へのやさしさ
- 45/100