wifi-wand 2.13.0 → 2.14.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +2 -0
- data/RELEASE_NOTES.md +5 -0
- data/lib/wifi-wand/command_line_interface.rb +18 -5
- data/lib/wifi-wand/models/mac_os_model.rb +11 -4
- data/lib/wifi-wand/types/available_network_info.rb +3 -0
- data/lib/wifi-wand/version.rb +1 -1
- data/logo/logo.md +39 -0
- data/logo/wifiwand-logo-horizontal-black.png +0 -0
- data/logo/wifiwand-logo-horizontal-color.png +0 -0
- data/logo/wifiwand-logo-horizontal-white.png +0 -0
- data/logo/wifiwand-logo-vertical-black.png +0 -0
- data/logo/wifiwand-logo-vertical-color.png +0 -0
- data/logo/wifiwand-logo-vertical-white.png +0 -0
- data/logo/wifiwand-logomark-black.png +0 -0
- data/logo/wifiwand-logomark-color.png +0 -0
- data/logo/wifiwand-logomark-white.png +0 -0
- metadata +14 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 3c9b7b8e153c2765c68823302d56c2c4a3a3176a430603ab79a31849b7f606bc
|
4
|
+
data.tar.gz: 2eb10109cc4edeab46652f92c4e79afdadbff9584da7f98603442d0c550da128
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 4e6d207393f4ea32b89b3b731023504afdc8bb60b13a3475e2cb27677656c511b4968a73fecb29c9731e9c545659858ea174bcb474b8736958fdb6499bdaef00
|
7
|
+
data.tar.gz: e3189d29f2059a639347acd1338cb3ba45f251aed82fd85de77b4a1a566e5a2038c9b0bb9ad692e2da3d1bcaff08ac3838c0c1665c895380d3778f706c7a5abd
|
data/README.md
CHANGED
data/RELEASE_NOTES.md
CHANGED
@@ -1,3 +1,8 @@
|
|
1
|
+
## v2.14.0
|
2
|
+
|
3
|
+
* `ls_avail_nets` command now outputs access points in signal strength order.
|
4
|
+
* Add logo to project, show it in README.md.
|
5
|
+
|
1
6
|
## v2.13.0
|
2
7
|
|
3
8
|
* Fix: network names could not be displayed when one contained a nonstandard character (e.g. D5 for a special apostrophe in Mac Roman encoding).
|
@@ -9,6 +9,7 @@ class CommandLineInterface
|
|
9
9
|
|
10
10
|
attr_reader :interactive_mode, :model, :open_resources, :options
|
11
11
|
|
12
|
+
PROJECT_URL = 'https://github.com/keithrbennett/wifiwand'
|
12
13
|
|
13
14
|
class Command < Struct.new(:min_string, :max_string, :action); end
|
14
15
|
|
@@ -306,15 +307,22 @@ When in interactive shell mode:
|
|
306
307
|
|
307
308
|
def cmd_l
|
308
309
|
info = model.available_network_info
|
310
|
+
|
309
311
|
if interactive_mode
|
310
312
|
info
|
311
313
|
else
|
312
|
-
|
313
|
-
|
314
|
+
output = ''
|
315
|
+
unless model.wifi_on?
|
316
|
+
output << "Wifi is off, cannot see available networks."
|
314
317
|
else
|
315
|
-
|
316
|
-
|
318
|
+
if post_processor
|
319
|
+
output = post_processor.(info)
|
320
|
+
else
|
321
|
+
output << "\nAccess points listed in descending order of signal strength (RSSI):\n\n"
|
322
|
+
output << fancy_string(info)
|
323
|
+
end
|
317
324
|
end
|
325
|
+
puts output
|
318
326
|
end
|
319
327
|
end
|
320
328
|
|
@@ -378,7 +386,11 @@ When in interactive shell mode:
|
|
378
386
|
resource_codes.each do |code|
|
379
387
|
resource = OPEN_RESOURCES.find_by_code(code)
|
380
388
|
if resource
|
381
|
-
|
389
|
+
if code == 'spe' && Dir.exist?('/Applications/Speedtest.app/')
|
390
|
+
model.open_application('Speedtest')
|
391
|
+
else
|
392
|
+
model.open_resource(resource.resource)
|
393
|
+
end
|
382
394
|
end
|
383
395
|
end
|
384
396
|
nil
|
@@ -469,6 +481,7 @@ When in interactive shell mode:
|
|
469
481
|
Command.new('pr', 'pref_nets', -> (*_options) { cmd_pr }),
|
470
482
|
Command.new('q', 'quit', -> (*_options) { cmd_q }),
|
471
483
|
Command.new('t', 'till', -> (*options) { cmd_t(*options) }),
|
484
|
+
Command.new('u', 'url', -> (*_options) { PROJECT_URL }),
|
472
485
|
Command.new('w', 'wifi_on', -> (*_options) { cmd_w }),
|
473
486
|
Command.new('x', 'xit', -> (*_options) { cmd_x })
|
474
487
|
]
|
@@ -76,12 +76,16 @@ class MacOsModel < BaseModel
|
|
76
76
|
command = "#{airport_command} -s | iconv -f macroman -t utf-8"
|
77
77
|
max_attempts = 50
|
78
78
|
|
79
|
-
|
80
79
|
reformat_line = ->(line) do
|
81
80
|
ssid = line[0..31].strip
|
82
81
|
"%-32.32s%s" % [ssid, line[32..-1]]
|
83
82
|
end
|
84
83
|
|
84
|
+
signal_strength = ->(line) { (line[50..54] || '').to_i }
|
85
|
+
|
86
|
+
sort_in_place_by_signal_strength = ->(lines) do
|
87
|
+
lines.sort! { |x,y| signal_strength.(y) <=> signal_strength.(x) }
|
88
|
+
end
|
85
89
|
|
86
90
|
process_tabular_data = ->(output) do
|
87
91
|
lines = output.split("\n")
|
@@ -91,12 +95,10 @@ class MacOsModel < BaseModel
|
|
91
95
|
# Reformat the line so that the name is left instead of right justified
|
92
96
|
reformat_line.(line)
|
93
97
|
end
|
94
|
-
|
95
|
-
data_lines.sort!
|
98
|
+
sort_in_place_by_signal_strength.(data_lines)
|
96
99
|
[reformat_line.(header_line)] + data_lines
|
97
100
|
end
|
98
101
|
|
99
|
-
|
100
102
|
output = try_os_command_until(command, ->(output) do
|
101
103
|
! ([nil, ''].include?(output))
|
102
104
|
end)
|
@@ -349,6 +351,11 @@ class MacOsModel < BaseModel
|
|
349
351
|
end
|
350
352
|
|
351
353
|
|
354
|
+
def open_application(application_name)
|
355
|
+
run_os_command('open -a ' + application_name)
|
356
|
+
end
|
357
|
+
|
358
|
+
|
352
359
|
def open_resource(resource_url)
|
353
360
|
run_os_command('open ' + resource_url)
|
354
361
|
end
|
data/lib/wifi-wand/version.rb
CHANGED
data/logo/logo.md
ADDED
@@ -0,0 +1,39 @@
|
|
1
|
+
## Logo Image Files
|
2
|
+
|
3
|
+
#### wifiwand-logo-horizontal-color.png
|
4
|
+
![h-color](wifiwand-logo-horizontal-color.png)
|
5
|
+
|
6
|
+
#### wifiwand-logo-horizontal-black.png
|
7
|
+
![h-black](wifiwand-logo-horizontal-black.png)
|
8
|
+
|
9
|
+
#### wifiwand-logo-horizontal-white.png
|
10
|
+
|
11
|
+
(White is invisible on this page.)
|
12
|
+
|
13
|
+
![h-white](wifiwand-logo-horizontal-white.png)
|
14
|
+
|
15
|
+
|
16
|
+
#### wifiwand-logo-vertical-color.png
|
17
|
+
![v-color](wifiwand-logo-vertical-color.png)
|
18
|
+
|
19
|
+
#### wifiwand-logo-vertical-black.png
|
20
|
+
![v-black](wifiwand-logo-vertical-black.png)
|
21
|
+
|
22
|
+
#### wifiwand-logo-vertical-white.png
|
23
|
+
|
24
|
+
(White is invisible on this page.)
|
25
|
+
|
26
|
+
![v-white](wifiwand-logo-vertical-white.png)
|
27
|
+
|
28
|
+
|
29
|
+
#### wifiwand-logomark-color.png
|
30
|
+
![v-color](wifiwand-logomark-color.png)
|
31
|
+
|
32
|
+
#### wifiwand-logomark-black.png
|
33
|
+
![v-black](wifiwand-logomark-black.png)
|
34
|
+
|
35
|
+
#### wifiwand-logomark-white.png
|
36
|
+
|
37
|
+
(White is invisible on this page.)
|
38
|
+
|
39
|
+
![v-white](wifiwand-logomark-white.png)
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: wifi-wand
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.
|
4
|
+
version: 2.14.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Keith Bennett
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2018-07
|
11
|
+
date: 2018-12-07 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -78,7 +78,18 @@ files:
|
|
78
78
|
- lib/wifi-wand/os/base_os.rb
|
79
79
|
- lib/wifi-wand/os/imaginary_os.rb
|
80
80
|
- lib/wifi-wand/os/mac_os.rb
|
81
|
+
- lib/wifi-wand/types/available_network_info.rb
|
81
82
|
- lib/wifi-wand/version.rb
|
83
|
+
- logo/logo.md
|
84
|
+
- logo/wifiwand-logo-horizontal-black.png
|
85
|
+
- logo/wifiwand-logo-horizontal-color.png
|
86
|
+
- logo/wifiwand-logo-horizontal-white.png
|
87
|
+
- logo/wifiwand-logo-vertical-black.png
|
88
|
+
- logo/wifiwand-logo-vertical-color.png
|
89
|
+
- logo/wifiwand-logo-vertical-white.png
|
90
|
+
- logo/wifiwand-logomark-black.png
|
91
|
+
- logo/wifiwand-logomark-color.png
|
92
|
+
- logo/wifiwand-logomark-white.png
|
82
93
|
- sample-avail-network-data.xml
|
83
94
|
- sample-available-networks.json
|
84
95
|
- sample-available-networks.yaml
|
@@ -105,7 +116,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
105
116
|
version: '0'
|
106
117
|
requirements: []
|
107
118
|
rubyforge_project:
|
108
|
-
rubygems_version: 2.7.
|
119
|
+
rubygems_version: 2.7.7
|
109
120
|
signing_key:
|
110
121
|
specification_version: 4
|
111
122
|
summary: Mac WiFi utility
|