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

和暦年の0埋めフォーマットがあるとうれしい #11

Open
masa-kunikata opened this issue May 17, 2019 · 3 comments
Open

Comments

@masa-kunikata
Copy link

こんにちは!
wareki gem 大変ありがたく使わせていただいております。

標記の件、和暦年のフォーマット文字列 %Jg では、1 など0埋めされていない文字列が返ってきたので、下記の感じで0埋める必要がありました。

require 'wareki'
d = Date.today
zero_padded_nen = "00#{d.strftime('%Jg')}"[-2..-1] # => "01"

デフォルト2桁で0埋めするようなフォーマット指定があると、なんとなくうれしいような気がしておりますが、いかがでしょうか?

@sugi
Copy link
Owner

sugi commented May 19, 2019

確かにそうですね。
年だけではなくて、現状月や日も0埋めオプションはありません。

どちらかというと strftime への互換性を考えると、標準は 0 埋めにして、フォーマット文字列の glibc 拡張 (桁数とか指定できるやつ) を使えるようにすべきかも……

@sugi
Copy link
Owner

sugi commented Jun 11, 2019

忙しくてまだ進んでなくてすみません。

今ふと思い出したのですが、もし扱う範囲が新暦の範囲(明治6年移行)だけなのであれば、strftime の通常の %m %d が使えますので、とりあえずそれを使って貰うのが早いかも知れません。

@masa-kunikata
Copy link
Author

わざわざありがとうございます!

フォーマット文字列の glibc 拡張 (桁数とか指定できるやつ)

printf でつかうような %02d などのことだとは思うのですが、sugiさんが想定している仕様は、どんなもんなのか??
なにか、お手伝いできればうれしいんですが、、、

strftime の通常の %m %d

月と日のこちらフォーマットは、併用しております。(※明治以降のみでございます)
令和元年のweb画面テストを先々月くらいにやってまして、テキストフィールドに年2桁
(令和)「01」
と入れなければ、いけない画面だったもので「1」が入力されたテストで、エラーになっておりました。
ユースケースとしてはそんな感じです。

masa-kunikata added a commit to masa-kunikata/wareki that referenced this issue Jun 15, 2019
masa-kunikata added a commit to masa-kunikata/wareki that referenced this issue Jun 16, 2019
Fix standard Date#strftime compatibility
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

No branches or pull requests

2 participants