More than 1 year has passed since last update.

ちょっと大きめの表を markdown形式で作成する機会がありました。

  • |の数を合わせるのが面倒!
  • 追加・変更が大変!

となったので、

https://github.com/arches/table_print

という gemを使いました。

以前のバージョンだと、 ヘッダー行の下に|がなく、
若干面倒だったので、Pull requestを送ったところ見事マージされました!

ということでちょっと使い道を

インストール

適当に rubyをインストール(私は2.0系)

gem install table_print

コード

追加・変更が必要だったので、コードがしました。

sample.rb
require 'table_print'
require 'ostruct'

x = []
x << OpenStruct.new(title: "たいとる1", description: "せつめいぶん", photos: %w(しゃしんa-1 しゃしんa-2 しゃしんa-3).collect{|o| {name: o}})
x << OpenStruct.new(title: "たいとる2", description: "せつめいぶん", photos: %w(しゃしんb-1 しゃしんb-2).collect{|o| {name: o}})
x << OpenStruct.new(title: "たいとる3", description: "せつめいぶん", photos: %w(しゃしんc-1 しゃしんc-2 しゃしんc-3 しゃしんc-4).collect{|o| {name: o}})

# ここで出力
tp x, :title, :description, 'photos.name'

実行結果

実行結果は以下のようになります。

TITLE     | DESCRIPTION  | PHOTOS.NAME
----------|--------------|------------
たいとる1 | せつめいぶん | しゃしんa-1
          |              | しゃしんa-2
          |              | しゃしんa-3
たいとる2 | せつめいぶん | しゃしんb-1
          |              | しゃしんb-2
たいとる3 | せつめいぶん | しゃしんc-1
          |              | しゃしんc-2
          |              | しゃしんc-3
          |              | しゃしんc-4

コレをコピペすると以下のようになります。

ヘッダーとかの文字を適宜修正して、完成。

ちょっと楽になりましたとさ。

TITLE DESCRIPTION PHOTOS.NAME
たいとる1 せつめいぶん しゃしんa-1
しゃしんa-2
しゃしんa-3
たいとる2 せつめいぶん しゃしんb-1
しゃしんb-2
たいとる3 せつめいぶん しゃしんc-1
しゃしんc-2
しゃしんc-3
しゃしんc-4