blog.bouzuya.net

2019-02-27 bouzuya/purescript-npm-bin-calendar 1.0.0 をつくった

bouzuya/purescript-npm-bin-calendar の 1.0.0 をつくった。 mockmock.dev #204 における w010 の成果物。 2019-02-17 に 0.1.0 をつくっている。 w010 のこれまでのルール・活動は bouzuya/w010 を参照。

calendar はカレンダーを表示するコマンド。指定した日付を強調表示できる。 GitHub の contribution の表示に似ている。↓は例。

$ echo '["2019-01-02","2019-01-04","2019-W03-1"]' | npx @bouzuya/habit-calendar
2019
     Jan Feb Mar Apr  May Jun Jul  Aug Sep  Oct Nov Dec
Mon  _O__________________________________________________
Tue _____________________________________________________
Wed O___________________________________________________
Thu ____________________________________________________
Fri O___________________________________________________
Sat ____________________________________________________
Sun ____________________________________________________

0.1.0 から 1.0.0 では↓の変更を加えた。

  • 入力の方法を変更 (ファイル→標準入力)
  • 入力の形式を変更 ({ [date:string]: boolean; }string[])
    • 日付に YYYY-Www-D の形式を指定可能に
  • 年の表示を追加 (2019)
  • 月の表示を追加 (Jan Feb ...)
  • 年の指定を追加 (npx @bouzuya/habit-calendar [<YEAR>])
    • 未指定時は現在の年に

今回も前回の cat (2019-02-12) と同様に CLI 。

実装。プログラミング言語は PureScript 。パッケージマネージャーに spago と npm 。特徴的なパッケージは bouzuya/purescript-bouzuya-datetimeWeekDate の含まれている 0.3.0 (2019-02-25) を使っている。あとは npm initializer に bouzuya/create-purescript-npm-bin を使っている。

次は bouzuya/purescript-npm-bin-google-calendar-eventsbouzuya/create-b かな。


bouzuya/purescript-examples に comma と stdin を追加。

comma は数値をカンマ区切りにする例。 stdin は標準入力から文字列を読み込む例。


『バイオハザード 2 アポカリプス』を観た。 2019-02-26 に続いて。これも観たことがある。主人公の超人化。