matrext 0.3.1 → 0.4.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 35162f8ee09807a31de2aaf941a8027e2aaf0edb
4
- data.tar.gz: 8ee642ea316e99acb1403b1717a41663f2f6d3cf
3
+ metadata.gz: 078a0a8cbfba733797cb50ef473923e9981c5ee5
4
+ data.tar.gz: 998deed2609ee897e7cad13641348dcb2054c86b
5
5
  SHA512:
6
- metadata.gz: 9bd0eeabbbf2c1f3eeed6df5eac5a4a20c773325fd4213213a5bb1b43f0a8f3970b122bdf799c0beaa464a5ef624ee090b753318bf32450f622924f466d90346
7
- data.tar.gz: 34e264a6785927a37259995ab015cb7d9903b9ed3eaebc01156e47db2dd617e6f9f354fe4d00350ea6f06152ed5801b30f1c42c5c785815c9f84639154b16256
6
+ metadata.gz: 4d3e8e9819ddf6f95995f12839b4b9379f7321bf54f1cb17d78cb4aba03209ca3c395339d6073b2cfe10dbef908bad4ccc58133410a728b5466a04be6db037bd
7
+ data.tar.gz: 59b357e61dda2d16dc16ea7620eb516e81ba8ce1dea497856ea9f3a6dd4662f07559885aad914801232193a63e2e270651fecd0b53513fecfe888d879e1c4115
data/bin/matrext CHANGED
@@ -1,21 +1,18 @@
1
1
  #!/usr/bin/env ruby
2
2
 
3
3
  require 'optparse'
4
+
4
5
  require_relative '../lib/matrext'
5
6
  require_relative '../lib/matrext/version'
6
7
 
7
8
  def parse_options
8
- options = {:speed => nil, :oneline => false}
9
+ options = {:oneline => false, :speed => nil}
9
10
 
10
11
  optparse = OptionParser.new do |opts|
11
- opts.banner = 'usage: matrext "phrase" [-q] [-s] [-o]'
12
+ opts.banner = 'usage: matrext "phrase" [-o] [-s insane|fast|slow]'
12
13
 
13
- opts.on('-q', 'Do it quickly') do
14
- options[:speed] = "fast"
15
- end
16
-
17
- opts.on('-s', 'Do it slowly') do
18
- options[:speed] = "slow"
14
+ opts.on('-s', '--speed SPEED', 'Speed at which the text decodes') do |speed|
15
+ options[:speed] = speed
19
16
  end
20
17
 
21
18
  opts.on('-o', '--oneline', 'Display text on one line, along with anything before or after') do
data/lib/matrext/core.rb CHANGED
@@ -1,27 +1,38 @@
1
1
  # lib/matrext/core.rb
2
2
  # The core processing unit
3
3
 
4
+ require 'pry'
5
+
4
6
  module Matrext
5
7
  CHAR_POOL = (33..126).map{ |i| i.chr }
6
- NOISE_MIN_DEFAULT = 3
7
- NOISE_MAX_DEFAULT = 5
8
- DELAY_MIN_DEFAULT = 0.01
9
- DELAY_MAX_DEFAULT = 0.04
8
+ NOISE_MIN_DEFAULT = 4
9
+ NOISE_MAX_DEFAULT = 6
10
+ DELAY_MIN_DEFAULT = 0.009
11
+ DELAY_MAX_DEFAULT = 0.012
10
12
 
11
13
  def self.process(options)
12
14
  letters = options[:phrase]
13
15
 
14
- case options[:speed]
15
- when "fast"
16
+ unless options[:speed].nil?
17
+ speed = options[:speed].to_sym
18
+ end
19
+
20
+ case speed
21
+ when :insane
22
+ noise_min = 1
23
+ noise_max = 2
24
+ delay_min = 0.0005
25
+ delay_max = 0.0015
26
+ when :fast
16
27
  noise_min = 2
17
- noise_max = 3
18
- delay_min = 0.005
19
- delay_max = 0.010
20
- when "slow"
28
+ noise_max = 4
29
+ delay_min = 0.003
30
+ delay_max = 0.005
31
+ when :slow
21
32
  noise_min = 5
22
33
  noise_max = 7
23
- delay_min = 0.015
24
- delay_max = 0.065
34
+ delay_min = 0.03
35
+ delay_max = 0.05
25
36
  else
26
37
  noise_min = NOISE_MIN_DEFAULT
27
38
  noise_max = NOISE_MIN_DEFAULT
@@ -1,3 +1,3 @@
1
1
  module Matrext
2
- VERSION = '0.3.1'
2
+ VERSION = '0.4.0'
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: matrext
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.1
4
+ version: 0.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Michael Chadwick
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-05-14 00:00:00.000000000 Z
11
+ date: 2015-05-19 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler