morse-code-rb 0.2.0 → 0.2.1

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