Macのアプリケーションを仕事用とプライベート用で使い分けている場合、MacでFnキーを押すとGyazoを起動する設定 - Qiita のように普段使いのアプリケーションの方にショートカットキーを当てたりしていると仕事用の方ときに使い勝手が違って不自然な気持ちになるので、ちょっと試しに設定をしてみたところ、割と便利に使えているので紹介します。
SSIDで切り替えるので、今日はリモートワークにしようとかそもそもノマドワーカースタイルだったら使えないけど、まぁ逆に家とそれ以外という使い方も出来そう。
良しなに使って下さい。
使い方
~/.switch_gyazo
にSSID名を以下の要領で書き込む。
ssids:
- myOfficeWiFi_SSID_NAME
- mySecondOfficeWiFi_SSID_NAME
以下のスクリプトを適当に保存する。
#!/usr/bin/env ruby
require 'yaml'
settings = YAML.load_file("#{ENV['HOME']}/.switch_gyazo")
ssid = `system_profiler SPAirPortDataType | awk -F':' '/Current Network Information:/ {
getline
sub(/^ */, "")
sub(/:$/, "")
print
}'`.chomp
if settings['ssids'].include?(ssid)
app_path = settings['teams_app'] || "/Applications/Gyazo\\ Teams.app"
else
app_path = settings['private_app'] || "/Applications/Gyazo.app"
end
exec "open #{app_path}"
これまでの Gyazo.app
を呼び出す代わりに switch_gyazo.rb
を実行するようにする。
例えば、MacでFnキーを押すとGyazoを起動する設定 - Qiitaを真似して、karabinerを利用している場合は~/Library/Application\ Support/Karabiner/private.xml
の内容を次のように変更する。(以下の設定をそのまま使う場合は% chmod +x switch_gyazo.rb
などで実行可能にしておく必要があります)
<?xml version="1.0"?>
<root>
<vkopenurldef>
<name>KeyCode::VK_OPEN_URL_GYAZO</name>
<url type="shell">
<![CDATA[ /path/to/switch_gyazo.rb ]]>
</url>
</vkopenurldef>
<item>
<name>fn to Switch Gyazo</name>
<identifier>remap.fn2gyazo</identifier>
<autogen>
--KeyOverlaidModifier--
KeyCode::FN, ModifierFlag::FN,
KeyCode::FN,
KeyCode::VK_OPEN_URL_GYAZO
</autogen>
</item>
</root>
デフォルトでは、指定したSSIDでは/Applications/Gyazo Teams.app
が起動し、それ以外では/Applications/Gyazo.app
が起動します。
もしファイルを変更したい場合は~/.switch_gyazo
に以下のように項目を追加することで起動アプリケーションを変更することが出来ます。
teams_app: "/Applications/MyGyazoTeams.app"
private_app: "/Applications/MyPrivateGyazo.app"