mirror of
https://github.com/ivuorinen/dotfiles.git
synced 2026-02-03 14:44:13 +00:00
76 lines
2.3 KiB
Fish
76 lines
2.3 KiB
Fish
# @halostatue/fish-macos/functions/__macos_mac_airport.fish:v7.0.1
|
|
|
|
function __macos_mac_airport::ssid
|
|
__macos_mac_airport::run -I | string replace --filter --regex '\s+SSID: (\S+)' '$1'
|
|
end
|
|
|
|
function __macos_mac_airport::run
|
|
/System/Library/PrivateFrameworks/Apple80211.framework/Versions/Current/Resources/airport \
|
|
$argv
|
|
end
|
|
|
|
function __macos_mac_airport
|
|
argparse --name 'mac airport' h/help -- $argv
|
|
or return 1
|
|
|
|
if set --query _flag_help
|
|
echo 'Usage: mac airport STATE
|
|
mac airport SUBCOMMAND [SSID]
|
|
|
|
Performs various WiFi (AirPort) operations. If no state or subcommand is
|
|
provided, the scan subcommand will be run by default. Otherwise a state (off,
|
|
on, toggle) or a subcommand must be provided.
|
|
|
|
States:
|
|
off Disables the WiFi adapter.
|
|
on Enables the WiFi adapter.
|
|
toggle Toggles the status of the WiFi adapter.
|
|
|
|
Subcommands:
|
|
password [SSID] Shows the password of the current or specified SSID.
|
|
scan Scans for WiFi networks..
|
|
ssid Shows the current WiFi network SSID.
|
|
status Shows the status of the WiFi adapter.
|
|
|
|
Options:
|
|
-h, --help Show this help'
|
|
return 0
|
|
end
|
|
|
|
set --function cmd (string lower -- $argv[1])
|
|
set --erase argv[1]
|
|
|
|
switch $cmd
|
|
case scan ''
|
|
printf "Scanning...\r"
|
|
__macos_mac_airport::run -s
|
|
case network ssid
|
|
__macos_mac_airport::ssid
|
|
case off
|
|
networksetup -setairportpower en0 off
|
|
case on
|
|
networksetup -setairportpower en0 on
|
|
case status
|
|
networksetup -getairportpower en0 | string replace --regex '^[^:]+: ' '' | string lower
|
|
case toggle
|
|
if test (__macos_mac_airport status) == on
|
|
__macos_mac_airport off
|
|
else
|
|
__macos_mac_airport on
|
|
end
|
|
case password
|
|
set --local ssid
|
|
if set --query argv[1]
|
|
set ssid $argv[1]
|
|
else
|
|
set ssid (__macos_mac_airport::ssid)
|
|
end
|
|
|
|
security find-generic-password -D "AirPort network password" -l $ssid -gw
|
|
case '*'
|
|
echo >&2 'mac airport: Unknown command.'
|
|
__macos_mac_airport --help >&2
|
|
return 1
|
|
end
|
|
end
|