Module: Indicator
- Defined in:
- lib/indicator/spin.rb,
lib/indicator/spinner.rb,
lib/indicator/version.rb
Defined Under Namespace
Classes: Spin
Constant Summary collapse
- VERSION =
"0.1.2"
Class Method Summary collapse
Class Method Details
.set(name = :bar) ⇒ Object
7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 |
# File 'lib/indicator/spinner.rb', line 7 def set name = :bar case name when :bar %w{ | / - \\ } when :x %w{ + X } when :< %w{ | < } when :> %w{ | > } when :V %w{ V > ^ } when :dots %w{ : . } when :bars %w{ - = } when :p %w{ p b d q } when :bqpd %w{ bq pd } when :- %w{ - ~ } when :arrows %w{ ← ↖ ↑ ↗ → ↘ ↓ ↙ ← ↖ ↑ ↗ → ↘ ↓ ↙ } when :box %w{ ┤ ┘ ┴ └ ├ ┌ ┬ ┐ ┤ ┘ ┴ └ ├ ┌ ┬ ┐ } when :braile %w{ ⣾ ⣽ ⣻ ⢿ ⡿ ⣟ ⣯ ⣷ ⠁ ⠂ ⠄ ⡀ ⢀ ⠠ ⠐ ⠈ } else %w{ | / - \\ } end end |
.spin(opts = {}, &blk) ⇒ Object
47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 |
# File 'lib/indicator/spinner.rb', line 47 def spin opts={}, &blk spinner = opts[:spinner] || self.spinner(opts) noclean = opts[:noclean] || false ondemand = opts[:ondemand] || false if ondemand yield spinner else t = Thread.new { yield spinner } while t.alive? spinner.spinning end t.join end spinner.clean unless noclean end |