Skip to content

Terminal Table is a simple ASCII table generator written in Crystal.

License

Notifications You must be signed in to change notification settings

benoist/terminal_table.cr

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

TerminalTable

Build Status

Terminal Table is a simple ASCII table generator written in Crystal. This code was inspired by Terminal Table Ruby implementation https://github.com/tj/terminal-table

Installation

Add this to your application's shard.yml:

dependencies:
  terminal_table:
    github: benoist/terminal_table.cr

Usage

require "terminal_table"

# Table with headings
table = TerminalTable.new
table.headings = ["Char", "Num"]
table << ["a", 1]
table << ["b", 2]
table << ["c", 3]
puts table.render
+------+-----+
| Char | Num |
+------+-----+
| a    | 1   |
| b    | 2   |
| c    | 3   |
+------+-----+

# Table with a separator for each row
table = TerminalTable.new
table.headings = ["Char", "Num"]
table.separate_rows = true
table << ["a", 1]
table << ["b\nc", 2]
table << ["d", 3]
puts table.render
+------+-----+
| Char | Num |
+------+-----+
| a    | 1   |
+------+-----+
| b    | 2   |
| c    |     |
+------+-----+
| d    | 3   |
+------+-----+

TODO

  • [] Cell alignment
  • [] Colspans

Contributing

  1. Fork it ( https://github.com/benoist/terminal_table.cr/fork )
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create a new Pull Request

Contributors

  • benoist Benoist Claassen - creator, maintainer

About

Terminal Table is a simple ASCII table generator written in Crystal.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published