2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

いつも「いつもお世話になっております」では芸がない

Last updated at Posted at 2020-05-19

まえがき

ある日のメールの文面

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の中に書き込んでください.

~/.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個ぐらい「お世話になっております」と付けないといけないかもしれない・・・

参考にしたページ

2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?