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

Choiceで半角スペースを扱えるようにする #321

Merged
merged 4 commits into from
Dec 12, 2020

Conversation

ysakasin
Copy link
Member

@ysakasin ysakasin commented Dec 12, 2020

入力例

choice[A,B,C,D]
choice(A,B,C,D)
choice A B C D
choice(新クトゥルフ神話TRPG, ソード・ワールド2.5, Dungeons & Dragons)

仕様

区切り文字

"choice"の次の文字によって区切り文字が変化する

  • "[" -> "," で区切る
  • "(" -> "," で区切る
  • 空白文字 -> /\s+/ にマッチする文字列で区切る

空白の扱い

各項目の前後に空白文字があった場合は除去される

  • choice[A, B, C , D ]choice[A,B,C,D] と等価

項目が空文字列である場合、その項目は無視する

  • choice[A,,C]choice[A,C] と等価

利用できる文字を増やす

フォーマットを選ぶことで、項目の文字列に(),を含めることができる

  • choice A,B X,Y -> "A,B""X,Y" から選ぶ
  • choice(A[], B[], C[]) -> "A[]", "B[]", "C[]" から選ぶ
  • choice[A(), B(), C()] -> "A()", "B()", "C()" から選ぶ

@codecov
Copy link

codecov bot commented Dec 12, 2020

Codecov Report

Merging #321 (44c0aa6) into master (318ee9b) will increase coverage by 0.01%.
The diff coverage is 100.00%.

Impacted file tree graph

@@            Coverage Diff             @@
##           master     #321      +/-   ##
==========================================
+ Coverage   93.37%   93.38%   +0.01%     
==========================================
  Files         255      255              
  Lines       18328    18362      +34     
==========================================
+ Hits        17113    17147      +34     
  Misses       1215     1215              
Impacted Files Coverage Δ
lib/bcdice/common_command/choice.rb 100.00% <100.00%> (ø)

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 318ee9b...44c0aa6. Read the comment docs.

@ysakasin ysakasin changed the title Choiceで半角スペースを扱えるようにする #276 Choiceで半角スペースを扱えるようにする Dec 12, 2020
Copy link
Member

@ochaochaocha3 ochaochaocha3 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

いずれのパターンも仕様通りに動いていそうです。これで表記の選択肢が広がりますね!

次の2点についてはいかがでしょうか?

  • 括弧の閉じ忘れ検出についてテストされていない(Codecovの指摘より)ので、テストケースを追加する。
  • これまでのコマンドは原則として大文字表記になっていたが、今回の変更を機に choice と小文字で表示するように変更するか。

@ysakasin
Copy link
Member Author

@ochaochaocha3

括弧の閉じ忘れ検出についてテストされていない(Codecovの指摘より)ので、テストケースを追加する。

追加しました!

これまでのコマンドは原則として大文字表記になっていたが、今回の変更を機に choice と小文字で表示するように変更するか。

choice に関しては今までも例外的に choiceと小文字で出力されていました。今後もドキュメントや出力を含めて全て 小文字で choice で統一したいです。

Copy link
Member

@ochaochaocha3 ochaochaocha3 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

今までも例外的に choiceと小文字で出力されていました。

以前のテストケースを見落としていました。すみません!

これで大丈夫だと思います!

@ysakasin ysakasin merged commit 5f87700 into master Dec 12, 2020
@ysakasin ysakasin deleted the enhance_choice branch December 12, 2020 15:37
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 this pull request may close these issues.

2 participants