prettier / prettier/plugin-php

Space before conditional changes closing block

オープン
#1,818 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

主要言語
PHP
スター
1.9k
フォーク
139
PR マージ指標
30日以内にマージされた PR はありません

説明

Having any text characters before the opening <?php causes the closing <?php endif; ?> block to wrap.

@prettier/plugin-php v0.17.4
Playground link

Input:


<?php
$a = 1;
if (true): ?>

text

<?php endif; ?>

Output:


<?php
$a = 1;
if (true): ?>

text

<?php endif;
 ?>

Expected


<?php
$a = 1;
if (true): ?>

text

<?php endif; ?>

As a workaround, putting the opening conditional into it's own block causes the closing block to wrap correctly:


<?php
$a = 1;
?>
<?php if (true): ?>

text

<?php endif; ?>

formats to


<?php $a = 1; ?>
<?php if (true): ?>

text

<?php endif; ?>

コントリビューションガイド

コントリビューションガイドを開く

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

調査の方向性

リンク先のPlaygroundのフォーマッターの動作を、提供されたPHP入力を使って再現し、期待される出力と比較します。テキストがPHPの開始タグより前にある場合に、プラグインが条件付きの終了ブロックをどのように処理するかを追跡します。完了の条件は、終了する <?php endif; ?> が1行のままになり、workaroundも引き続き示されているとおりにフォーマットされることです。

索引モデルが issue の本文から書いたものです。

評価

技術スタック
php
領域
tooling
issue の種類
バグ
難易度
3/5
見積もり時間
1〜2日
活発さ
停滞
明瞭さ
おおむね明確
初心者へのやさしさ
38/100

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。