まえがき
ある日のメールの文面
XXです.いつもお世話になっております.
何個ものメールを見ていると,いつも「いつもお世話になっております.」と書いている事に気づきます.流石に芸がない.
たまには,「いつも大変お世話になっております」などの他の表現も混ぜたいところです.
しかし,忙しい毎日の中で他の表現を考えるのは難しい...
自動でランダムに「お世話になっております」文面を入力してもらうようにしましょう!!!
Hammerspoonによるランダム定型文入力
目指す物 :
Hammerspoonを用いて,
Macのメールソフトで CTRL + I と入力したら,
「いつもお世話になっております.」
「いつも大変お世話になっております.」
「毎々お世話になっております.」
「平素よりお世話になっております.」
「毎度お世話になっております.」からランダムランダムに入力されるようにする.
Hammerspoonとは
https://www.hammerspoon.org
Mac OS X向けの強力な自動化ツールです.メッチャ便利.他にも色々できます.
hammerspoonのインストール方法は割愛します.
この辺を参照してください.
https://www.softantenna.com/wp/mac/hammerspoon/
実際のコード
以下のコードをhammerspoonの設定ファイル ~/.hammerspoon/init.lua
の中に書き込んでください.
itsumo_hotkey = hs.hotkey.new({"ctrl"}, "I", function()
f_random = hs.math.randomFloat()
if f_random < 0.73 then
hs.eventtap.keyStrokes('いつもお世話になっております.')
elseif f_random < 0.75 then
hs.eventtap.keyStrokes('日頃よりお世話になっております.')
elseif f_random < 0.8 then
hs.eventtap.keyStrokes('毎々お世話になっております.')
elseif f_random < 0.85 then
hs.eventtap.keyStrokes('平素からお世話になっております.')
else
hs.eventtap.keyStrokes('毎度お世話になっております.')
end
end)
hs.window.filter.new('メール') -- 日本語にしているとき
:subscribe(hs.window.filter.windowFocused, function() itsumo_hotkey:enable() end)
:subscribe(hs.window.filter.windowUnfocused, function() itsumo_hotkey:disable() end)
hs.window.filter.new('Mail') -- 英語にしているとき
:subscribe(hs.window.filter.windowFocused, function() itsumo_hotkey:enable() end)
:subscribe(hs.window.filter.windowUnfocused, function() itsumo_hotkey:disable() end)
説明
先ずホットキーの定義をします.
hs.math.randomFloat()
は0から1までの乱数を返す関数です.この値に応じてランダムな文字列を入力するようにします.
hs.eventtap.keyStrokes('いつもお世話になっております.')
は文字列を入力する関数です.
itsumo_hotkey = hs.hotkey.new({"ctrl"}, "I", function()
f_random = hs.math.randomFloat()
if f_random < 0.73 then
hs.eventtap.keyStrokes('いつもお世話になっております.')
elseif f_random < 0.75 then
hs.eventtap.keyStrokes('日頃よりお世話になっております.')
elseif f_random < 0.8 then
hs.eventtap.keyStrokes('毎々お世話になっております.')
elseif f_random < 0.85 then
hs.eventtap.keyStrokes('平素からお世話になっております.')
else
hs.eventtap.keyStrokes('毎度お世話になっております.')
end
end)
以下の箇所で,メールアプリにフォーカスが当たっている時だけに,itsumo_hotkey
を有効にする.
https://qiita.com/yohm/items/ed2bbc8f7c4340a55695
を参考にしました.
hs.window.filter.new('メール') -- 日本語にしているとき
:subscribe(hs.window.filter.windowFocused, function() itsumo_hotkey:enable() end)
:subscribe(hs.window.filter.windowUnfocused, function() itsumo_hotkey:disable() end)
メールアプリの言語設定を日本語にしたり英語にしたり切り替えているため,英語に切り替えている時のために,以下を定義.
hs.window.filter.new('Mail') -- 英語にしているとき
感想
CTRL+I
で無事,ランダムに「お世話になっております」文面が入力出来るようになりました!!!!!
問題点は,このショートカットを使っていることを知られてしまうと,「お世話になっている」という思いがCTRL+I
だけで表現されている軽薄なものであると,相手に思われてしまいます.
10個ぐらい「お世話になっております」と付けないといけないかもしれない・・・
参考にしたページ