Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

サンプルファイルの置き換え機能があると嬉しい #20

Open
oosakiken1 opened this issue Jun 17, 2024 · 4 comments · May be fixed by #22
Open

サンプルファイルの置き換え機能があると嬉しい #20

oosakiken1 opened this issue Jun 17, 2024 · 4 comments · May be fixed by #22
Assignees

Comments

@oosakiken1
Copy link

oosakiken1 commented Jun 17, 2024

根本的な設計思想からはずれているかもしれませんが
ファイルを置き換えながら検証する機能(モード)があると嬉しい

使い方のイメージ。

  • サンプルには完成版のファイルだけを登録する。
  • 最初のステップで、サンプルファイルを置き換える。(例えば「replace」「replace-partial」コマンドなど)
  • 次のステップから、旧ファイルとコードブロックを検証する。正しければ、差分を反映して新サンプルファイルを置き換える(例えば「upd-diff」「upd-diff-partial」コマンドなど )
  • 最終ステップで完成版ができるかどうかを検証する(既存の「diff」「diff-partial」など)

メリット
サンプルファイルの登録が最終版だけでよくなる

デメリット
最終版と差分がでたときに、どのコードブロックに差分があったかを調べるのが面倒になる
検証中にエラーがでると、差分反映できなくなるので、そこで検査が止まる

@oosakiken1
Copy link
Author

oosakiken1 commented Jun 17, 2024

準備するのは、以下の2ファイルだけ

md

<div class="code-decorate disable-copy" topnum=1>
<!-- assert-codeblock replace ABGOZZ02_G004_diff_notation_step0.txt -->

```txt
月曜日の天気は晴れ
火曜日の天気は曇り
木曜日の天気は雨
```
</div>

このファイルの 3 行目に「水曜日の天気は晴れ」という行を **追加** する場合は、下のように書きます。

<div class="code-decorate disable-copy" topnum=1>
<!-- assert-codeblock upd-diff ABGOZZ02_G004_diff_notation_step0.txt ABGOZZ02_G004_diff_notation_step1.txt -->

```diff
 月曜日の天気は晴れ
 火曜日の天気は曇り
+水曜日の天気は晴れ
 木曜日の天気は雨
```

</div>

追加したあとで、ファイルの 2 行目の「火曜日の天気は曇り」を **削除** する場合は、下のように書きます。

<div class="code-decorate" topnum=1>
<!-- assert-codeblock upd-diff ABGOZZ02_G004_diff_notation_step1.txt ABGOZZ02_G004_diff_notation_step2.txt -->

```diff
 月曜日の天気は晴れ
-火曜日の天気は曇り
 水曜日の天気は晴れ
 木曜日の天気は雨
```

</div>

**実際に追加したり削除したりする行そのものには、先頭の `+` や `-` といった記号は含まない** ことに注意しましょう。<br>

最後に今ある行を変更する場合は、下のように書きます。

<div class="code-decorate disable-copy" topnum=1>
<!-- assert-codeblock diff ABGOZZ02_G004_diff_notation_step2.txt ABGOZZ02_G004_diff_notation_step3.txt -->

```diff
 月曜日の天気は晴れ
-水曜日の天気は晴れ
+水曜日の天気は台風
 木曜日の天気は雨だ
```

</div>

ABGOZZ02_G004_diff_notation_step3.txt

月曜日の天気は晴れ
水曜日の天気は台風
木曜日の天気は雨だ

@oosakiken1
Copy link
Author

アサインする権限がないみたいなので、アサインしていませんが、作業しています。
他の修正と被ったら、すみません

@dorimiamn
Copy link
Contributor

ご存知でしたらすみません、一応の情報共有ですが、意図されない差分に対して、マークダウン側もしくはサンプルのコードのどちらかを適用する機能を実装しています 🙇
https://github.com/progedu/intro-2024-edition/issues/1075

この issue で言及されているのは意図的にサンプルファイルの修正を行う機能ですのでおそらく被りはありません。


明示的に行う発想がなかったので、この issue で言及されている機能を実装していただけるとかなり助かります!

@oosakiken1 oosakiken1 linked a pull request Jun 21, 2024 that will close this issue
@oosakiken1
Copy link
Author

oosakiken1 commented Jun 21, 2024

コマンド名を

  • upd-exact
  • upd-diff
  • upd-partial
  • upd-diff-partial

の4つにしました。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants