Sha256: 08cb4eab5a307a1ef3521f9a7196d86a85b71b6c91d835f4447ab08325177805
Contents?: true
Size: 1.47 KB
Versions: 9
Compression:
Stored size: 1.47 KB
Contents
# frozen_string_literal: true module FatTable # Output the table in the same way as org-mode for emacs does. This is almost # identical to TextFormatter except that dates do get formatted as inactive # timestamps and the connector at the beginning of hlines is a '|' rather than # a '+' as for text tables. class OrgFormatter < Formatter def self.default_format fmt = super fmt[:date_fmt] = '[%F %a]' fmt[:datetime_fmt] = '[%F %a %H:%M:%S]' fmt end private # Does this Formatter require a second pass over the cells to align the # columns according to the alignment formatting instruction to the width of # the widest cell in each column? def aligned? true end def pre_header(widths) result = +'|' widths.each_value do |w| result += '-' * (w + 2) + '+' end result[-1] = '|' result + "\n" end def pre_row '|' end def pre_cell(_head) '' end def quote_cell(val) val end def post_cell '' end def inter_cell '|' end def post_row "|\n" end def hline(widths) result = +'|' widths.each_value do |w| result += '-' * (w + 2) + '+' end result[-1] = '|' result + "\n" end def post_footers(widths) result = +'|' widths.each_value do |w| result += '-' * (w + 2) + '+' end result[-1] = '|' result + "\n" end end end
Version data entries
9 entries across 9 versions & 1 rubygems