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 +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
|