matrext 0.3.1 → 0.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/bin/matrext +5 -8
- data/lib/matrext/core.rb +23 -12
- data/lib/matrext/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 078a0a8cbfba733797cb50ef473923e9981c5ee5
|
4
|
+
data.tar.gz: 998deed2609ee897e7cad13641348dcb2054c86b
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
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 = {:
|
9
|
+
options = {:oneline => false, :speed => nil}
|
9
10
|
|
10
11
|
optparse = OptionParser.new do |opts|
|
11
|
-
opts.banner = 'usage: matrext "phrase" [-
|
12
|
+
opts.banner = 'usage: matrext "phrase" [-o] [-s insane|fast|slow]'
|
12
13
|
|
13
|
-
opts.on('-
|
14
|
-
options[:speed] =
|
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 =
|
7
|
-
NOISE_MAX_DEFAULT =
|
8
|
-
DELAY_MIN_DEFAULT = 0.
|
9
|
-
DELAY_MAX_DEFAULT = 0.
|
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
|
-
|
15
|
-
|
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 =
|
18
|
-
delay_min = 0.
|
19
|
-
delay_max = 0.
|
20
|
-
when
|
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.
|
24
|
-
delay_max = 0.
|
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
|
data/lib/matrext/version.rb
CHANGED
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.
|
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-
|
11
|
+
date: 2015-05-19 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|