hidg0 0.1.0 → 0.1.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
2
  SHA256:
3
- metadata.gz: 68962cffd1ff46b36521423ed4632ead086fc8f6bfdfecdece33783ed79d9a4d
4
- data.tar.gz: 5814ab247ff6cb222c62d6fa4a48b6c6c6d12696422e7024d0e616e31387989b
3
+ metadata.gz: 6b651f72166ab438924461c6d94223f905aaec495ff3c569457e230732b2020e
4
+ data.tar.gz: 473b8489d54e75fb8b4277f22c9eaf53364cac54ddcf164e52a6717a3778b59b
5
5
  SHA512:
6
- metadata.gz: e85e81a2cf5b98c1098d679b02d89bc24d2c64b76751cf514ab54d6fe2d00985888e7af3abf7311a153b31efe8be2c04b587f8c2238909771c4fa53457497781
7
- data.tar.gz: f67fd1abb38793a45131237198f99354c723d08643b1e91172b9c772c92b6cd728ffc32964539703e7fb4fd13f0d41bc18adfb659d7a4994cebad1fed3c40319
6
+ metadata.gz: 508231d3058738ef02bda6949e4df4b20e5e1be0f53f12a286d5b47aaf7084f981f072aed961ac2950ea96e0bc2ca46a11520112015a9571c5b37a9bc866937f
7
+ data.tar.gz: fcb03997fdb852c3985e29183efed53de4e933978ae88f2b5aa119232cdc937ef807014347aec795a361812b887689c7f84d17cb0722910a8ab1e9e7c2a2119a
checksums.yaml.gz.sig CHANGED
Binary file
data/lib/hidg0.rb CHANGED
@@ -87,7 +87,7 @@ KEYS = {
87
87
  home: 74, # Keyboard Home
88
88
  pageup: 75, # Keyboard Page Up
89
89
  delete: 76, # Keyboard Delete Forward
90
- _end: 77, # Keyboard End
90
+ end: 77, # Keyboard End
91
91
  pagedown: 78, # Keyboard Page Down
92
92
  right: 79, # Keyboard Right Arrow
93
93
  left: 80, # Keyboard Left Arrow
@@ -110,7 +110,7 @@ KEYS = {
110
110
  kp9: 97, # Keypad 9 and Page Up
111
111
  kp0: 98, # Keypad 0 and Insert
112
112
  kpdot: 99, # Keypad . and Delete
113
- _102nd: 100, # Keyboard Non-US and |
113
+ :'102nd' => 100, # Keyboard Non-US and |
114
114
  compose: 101, # Keyboard Application
115
115
  power: 102, # Keyboard Power
116
116
  kpequal: 103, # Keypad =
@@ -181,7 +181,61 @@ KEYS = {
181
181
  media_sleep: 248,
182
182
  media_coffee: 249,
183
183
  media_refresh: 250,
184
- media_calc: 251
184
+ media_calc: 251,
185
+ A: :a,
186
+ B: :b,
187
+ C: :c,
188
+ D: :d,
189
+ E: :e,
190
+ F: :f,
191
+ G: :g,
192
+ H: :h,
193
+ I: :i,
194
+ J: :j,
195
+ K: :k,
196
+ L: :l,
197
+ M: :m,
198
+ N: :n,
199
+ O: :o,
200
+ P: :p,
201
+ Q: :q,
202
+ R: :r,
203
+ S: :s,
204
+ T: :t,
205
+ U: :u,
206
+ V: :v,
207
+ W: :w,
208
+ X: :x,
209
+ Y: :y,
210
+ Z: :z,
211
+ :'!' => :'1',
212
+ :'@' => :'2',
213
+ :'#' => :'3',
214
+ :'$' => :'4',
215
+ :'%' => :'5',
216
+ :'^' => :'6',
217
+ :'&' => :'7',
218
+ :'*' => :'8',
219
+ :'(' => :'9',
220
+ :')' => :'0',
221
+ :'_' => :minus,
222
+ :'+' => :equal,
223
+ :'{' => :leftbrace,
224
+ :'}' => :rightbrace,
225
+ :'|' => :backslash,
226
+ :'~' => :hashtilde,
227
+ :':' => :semicolon,
228
+ :'"' => :apostrophe,
229
+ :'<' => :comma,
230
+ :'>' => :dot,
231
+ :'?' => :slash,
232
+ clear: :numlock,
233
+ down_arrow: :kp2,
234
+ pagedn: :kp3,
235
+ left_arrow: :kp4,
236
+ right_arrow: :kp6,
237
+ up_arrow: :kp8,
238
+ page_up: :kp9,
185
239
  }
186
240
 
187
241
  class HidG0
@@ -192,14 +246,33 @@ class HidG0
192
246
 
193
247
  def keypress(key)
194
248
 
195
- write_report(NULL_CHAR*2 + KEYS[key.to_sym].chr + NULL_CHAR*5)
249
+ if KEYS[key.to_sym].is_a? Integer then
196
250
 
251
+ write_report(NULL_CHAR*2 + KEYS[key.to_sym].chr + NULL_CHAR*5)
252
+
253
+ else
254
+
255
+ write_report(32.chr + NULL_CHAR + KEYS[KEYS[key.to_sym]].chr + \
256
+ NULL_CHAR*5)
257
+
258
+ end
259
+
197
260
  # Release keys
198
261
  write_report(NULL_CHAR*8)
199
262
 
200
263
  end
201
264
 
202
- def sendkeys()
265
+ def sendkeys(s)
266
+
267
+ s.gsub(/ /,'{space}').scan(/\{[^\}]+\}|./).each do |x|
268
+
269
+ if x.length == 1 and x.downcase == x then
270
+ keypress x
271
+ else
272
+ keypress x[1..-2]
273
+ end
274
+ end
275
+
203
276
  end
204
277
 
205
278
  private
data.tar.gz.sig CHANGED
Binary file
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: hidg0
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - James Robertson
metadata.gz.sig CHANGED
Binary file