grid
A simple string grid formatter library for crystal programming language.
Installation
-
Add the dependency to your
shard.yml
:dependencies: grid: github: Jeddi212/grid
-
Run
shards install
Usage
require "grid"
grid = Grid.new("Rubys Crystals Emeralds Sapphires a b") # Create a new Grid instance
grid.auto(18, true) # generate top-down grid with 18 char as max canvas width
grid.to_s(true) # get the string format (true) in top-down direction
# Rubys Sapphires
# Crystals a
# Emeralds b
grid.auto(18, false) # generate left-right grid with 18 char as max canvas width
grid.to_s(false) # get the string format (false) in left-right direction
# Rubys Crystals
# Emeralds Sapphires
# a b
grid = Grid.new("Rubys Crystals Emeralds Sapphires a b", "|") # Create a new Grid instance with custom separator
grid.auto(18, true) # generate top-down grid with 18 char as max canvas width
grid.to_s(true, false) # get the string format (true) in top-down direction
# Rubys|Sapphires
# Crystals| a
# Emeralds| b
For detailed api, check grid docs.
Development
Work in progress
-
[x] Auto grid
-
[x] Direction
- [x] top-down
- [x] left-right
-
[ ] Custom header
-
[ ] Manual grid
- [ ] col & row size - [ ] col width - [ ] elipsis - [ ] pass through
Contributing
- Fork it (https://github.com/Jeddi212/grid/fork)
- Create your feature branch (
git checkout -b my-new-feature
) - Commit your changes (
git commit -am 'Add some feature'
) - Push to the branch (
git push origin my-new-feature
) - Create a new Pull Request
Contributors
- Jeddi212 - creator and maintainer