morse-code-rb 0.2.0 → 0.2.1

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
- SHA256:
3
- metadata.gz: 155330eb3dfc7d3b1520f0a7dbce2fe62a439eb03d4b05f4d0a00018913efb8a
4
- data.tar.gz: 2df9d246a942f2b8ad5bb0d24439c71ce5113ef0d100df093abd073d9bf8d1f7
2
+ SHA1:
3
+ metadata.gz: 17c6ca85c62d3bd75096554e0a57044e99cf3769
4
+ data.tar.gz: 05d61184298e1c8a55a4fdda5a1628293a7ca29e
5
5
  SHA512:
6
- metadata.gz: ee66e59f359e292c01c47510d300523157ab4949c7efeab3cf631e633596f67c805ff37726fbbb2939b807042294a678e8c274a45f4e09d3416ccf1beef079c8
7
- data.tar.gz: ca7c65f814ec6f36375cdf4ab8ed81ae38883e66d9b9c5cf00440f746615eb493e7433655d2b637d9d0596a31499b7b4561458ea6756e5a4cfdf0c73b63f7d95
6
+ metadata.gz: ed9c6be874649076fcccdf18543fbb484b3eaa86004c9b494b3d2c5ca495f16a7a5ccad0cb1d0085e35167d96a7e59abe5e17d61f22204b2355e5160592f335c
7
+ data.tar.gz: dfb8f8958ababf42357d35a488ca0fa4890950cc645e4cabcdc92dbe9e0ff4165733d485178899bc78547f6ee901e0d891a501c48cfe26ff6ada1c644355af55
data/README.md CHANGED
@@ -31,8 +31,8 @@ dit_dah = MorseCode::Encoder.new(content).dit_dah
31
31
  puts encode_content
32
32
  puts dit_dah
33
33
 
34
- $> .. .- -- .-. --- -... --- - .-.-.-
35
- $> DITDIT DITDAH DAHDAH DITDAHDIT DAHDAHDAH DAHDITDITDIT DAHDAHDAH DAH DITDAHDITDAHDITDAH
34
+ $> .. / .- -- / .-. --- -... --- - .-.-.-
35
+ $> DITDIT / DITDAH DAHDAH / DITDAHDIT DAHDAHDAH DAHDITDITDIT DAHDAHDAH DAH DITDAHDITDAHDITDAH
36
36
  ```
37
37
 
38
38
  ### Decode
@@ -40,15 +40,15 @@ $> DITDIT DITDAH DAHDAH DITDAHDIT DAHDAHDAH DAHDITDITDIT DAHDAHDAH DAH DITDAHDIT
40
40
  ```ruby
41
41
  require 'morse_code'
42
42
 
43
- content = '.. .- -- .-. --- -... --- - .-.-.-'
43
+ content = '.. / .- -- / .-. --- -... --- - .-.-.-'
44
44
  decode_content = MorseCode::Decoder.new(content).decode
45
45
  puts decode_content
46
- $> I A M R O B O T .
46
+ $> I AM ROBOT.
47
47
 
48
- dit_dah = 'DITDIT DITDAH DAHDAH DITDAHDIT DAHDAHDAH DAHDITDITDIT DAHDAHDAH DAH DITDAHDITDAHDITDAH'
48
+ dit_dah = 'DITDIT / DITDAH DAHDAH / DITDAHDIT DAHDAHDAH DAHDITDITDIT DAHDAHDAH DAH DITDAHDITDAHDITDAH'
49
49
  dit_dah_to = MorseCode::Decoder.new(dit_dah).dit_dah_to
50
50
  puts dit_dah_to
51
- $> I A M R O B O T .
51
+ $> I AM ROBOT.
52
52
  ```
53
53
 
54
54
  ### Terminal
@@ -65,20 +65,20 @@ mc commands:
65
65
 
66
66
  ```shell
67
67
  $> mc -e 'I am Robot.'
68
- .. .- -- .-. --- -... --- - .-.-.-
68
+ .. / .- -- / .-. --- -... --- - .-.-.-
69
69
 
70
70
  $> mc -e 'I am Robot.' --dit-dah
71
- DITDIT DITDAH DAHDAH DITDAHDIT DAHDAHDAH DAHDITDITDIT DAHDAHDAH DAH DITDAHDITDAHDITDAH
71
+ DITDIT / DITDAH DAHDAH / DITDAHDIT DAHDAHDAH DAHDITDITDIT DAHDAHDAH DAH DITDAHDITDAHDITDAH
72
72
  ```
73
73
 
74
74
  #### decode
75
75
 
76
76
  ```shell
77
- $> mc -d '.. .- -- .-. --- -... --- - .-.-.-'
78
- I A M R O B O T .
77
+ $> mc -d '.. / .- -- / .-. --- -... --- - .-.-.-'
78
+ I AM ROBOT.
79
79
 
80
- $> mc -d 'DITDIT DITDAH DAHDAH DITDAHDIT DAHDAHDAH DAHDITDITDIT DAHDAHDAH DAH DITDAHDITDAHDITDAH' --dit-dah
81
- I A M R O B O T .
80
+ $> mc -d 'DITDIT / DITDAH DAHDAH / DITDAHDIT DAHDAHDAH DAHDITDITDIT DAHDAHDAH DAH DITDAHDITDAHDITDAH' --dit-dah
81
+ I AM ROBOT.
82
82
  ```
83
83
 
84
84
  ### Contributing
@@ -8,9 +8,16 @@ module MorseCode
8
8
 
9
9
  def decode
10
10
  [].tap do |decode_words|
11
- @message.split(/\s+/).each do |word|
12
- decode_words << (MorseCode::DECODE_MAP[word] || word)
11
+ word = []
12
+ @message.split(/\s+/).each do |char|
13
+ if char == '/'
14
+ decode_words.push(word.join)
15
+ word = []
16
+ else
17
+ word.push(MorseCode::DECODE_MAP[char] || char)
18
+ end
13
19
  end
20
+ decode_words.push(word.join) if word.size > 0
14
21
  end.join(' ')
15
22
  end
16
23
 
@@ -11,8 +11,10 @@ module MorseCode
11
11
  @message.split(/\s+/).each do |word|
12
12
  encode_word = []
13
13
  word.each_char { |char| encode_word << (MorseCode::ENCODE_MAP[char] || char) }
14
+ encode_word.push('/')
14
15
  encode_words.concat(encode_word)
15
16
  end
17
+ encode_words.pop
16
18
  end.join(' ')
17
19
  end
18
20
 
@@ -1,3 +1,3 @@
1
1
  module MorseCode
2
- VERSION = '0.2.0'.freeze
2
+ VERSION = '0.2.1'.freeze
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: morse-code-rb
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.2.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - YingRui Lu
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-10-07 00:00:00.000000000 Z
11
+ date: 2018-10-14 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -94,6 +94,20 @@ dependencies:
94
94
  - - "~>"
95
95
  - !ruby/object:Gem::Version
96
96
  version: '0.11'
97
+ - !ruby/object:Gem::Dependency
98
+ name: pry-byebug
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - "~>"
102
+ - !ruby/object:Gem::Version
103
+ version: '3.5'
104
+ type: :development
105
+ prerelease: false
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - "~>"
109
+ - !ruby/object:Gem::Version
110
+ version: '3.5'
97
111
  - !ruby/object:Gem::Dependency
98
112
  name: rake
99
113
  requirement: !ruby/object:Gem::Requirement
@@ -173,7 +187,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
173
187
  version: '0'
174
188
  requirements: []
175
189
  rubyforge_project:
176
- rubygems_version: 2.7.6
190
+ rubygems_version: 2.6.13
177
191
  signing_key:
178
192
  specification_version: 4
179
193
  summary: Simple Morse Code Encode and Decode Tool