# Console Hash Array Console print progress bar for hash arrays.


Example
```ruby require 'console_hash_array' groups = ConsoleHashArray.example() groups.keys.each.with_index do | key, rindex | ConsoleHashArray.console( groups, rindex, nil, key, :left ) groups[ key ].each.with_index do | item, cindex | ConsoleHashArray.console( groups, rindex, cindex, key, :right ) end end # => # [0] Nurwë .............................. # [1] Legolas .............................. # [2] Primrose Boffin .............................. # [3] Aranuir ....... # [4] Ruby Gardner .............................. # [5] Harding .............................. # [6] Írimon .............................. # [7] Torhir Ifant .............................. # [8] Anairë .............................. # [9] Golasgil .............................. # [10] Mîm .............................. # [11] Tobold Hornblower .............. # [12] Thrór ..... # [13] Gerda Boffin .............................. ```

Table of Contents
1. [Quickstart](#quickstart)
2. [Parameters](#parameters)
3. [Options](#options)
4. [Contributing](#contributing)
5. [Limitations](#limitations)
6. [License](#license)
7. [Code of Conduct](#code-of-conduct)
8. [Support my Work](#support-my-work)


Quickstart ```ruby require 'console_hash_array' groups = ConsoleHashArray.example() groups.keys.each.with_index do | key, rindex | ConsoleHashArray.console( groups, rindex, nil, key, :left ) groups[ key ].each.with_index do | item, cindex | ConsoleHashArray.console( groups, rindex, cindex, key, :right ) end end ```

Setup Add this line to your application's Gemfile: ```bash gem console_hash_array ``` And then execute: ```bash bundle install console_hash_array ``` Or install it yourself as: ```bash gem install console_hash_array ``` On Rubygems: - Gem: https://rubygems.org/gems/console_hash_array - Profile: https://rubygems.org/profiles/a6b8

Methods ### .example() ```ruby require 'console_hash_array' groups = ConsoleHashArray.example() ``` **Return**
Hash ### .console() ```ruby require 'console_hash_array' ConsoleHashArray.console( groups, rindex, cindex, key, :left ) ``` **Input** | | **Type** | **Required** | **Description** | |------:|:------|:------|:------| | **groups** | ```Hash of Arrays``` | Yes | Full Groups Hash | | **rindex** | ```Int``` | Yes | Set row index for calculation and output options. | | **cindex** | ```Int``` | :left = nil, :right = Yes | Set column index for calculation and output options. | | **key** | ```String``` or ```Symbol``` | Yes | Set current key from groups hash. | | **mode** | ```Symbol``` | Yes | Use ```:left``` for initialization row, ```:right``` will update progres line | | **options** | ```Hash``` | No | Change default behaviour. See options for more informations. | **Return**
Hash (p)


Options | Nr | Name | Key | Default | Type | Description | | :-- | :-- | :-- | :-- | :-- | :-- | | 1 | Boxes Total | `:right__boxes_total` | `30`| Int | Set length of progres bar | | 2 | Spaces | `:style__spaces` | `" "`| String | Set Character of space | | 3 | Steps | `:style__steps` | `"."`| String | Set Character of steps | | 4 | Print Left | `:print__left` | `"[{{rindex}}] {{key}} {{left__spaces}} "`| String | Set Structure for `:left` |

Contributing Bug reports and pull requests are welcome on GitHub at https://github.com/a6b8/console-hash-array-for-ruby. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the [code of conduct](https://github.com/a6b8/console-hash-array-for-ruby/blob/master/CODE_OF_CONDUCT.md).


Limitations - Build for development usage - No input validation

License The gem is available as open source under the terms of the [MIT License](https://opensource.org/licenses/MIT).


Code of Conduct Everyone interacting in the console-hash-array-for-ruby project's codebases, issue trackers, chat rooms and mailing lists is expected to follow the [code of conduct](https://github.com/a6b8/console-hash-array-for-ruby/blob/master/CODE_OF_CONDUCT.md).


Support my Work Donate by [https://www.paypal.com](https://www.paypal.com/donate?hosted_button_id=XKYLQ9FBGC4RG)