Macとかの雑記帳

特殊文字の入力を簡単にしてくれるAutomatorサービスがMac OS X Hintsで公開されてました。特殊文字を含んだ文章を書く場合は便利だと思います。

下の様なダイアログが表示され、そこからマウス操作で入力したい文字を選んでクリックすると、選んだ文字が入力されるものです。

clam.png

これは下のApplescriptをAutomatorでサービスとして保存して、キーボードショートカットで呼び出して使います。

tell application "System Events"
set frontApp to name of first process whose frontmost is true
end tell

set theCommand to «data utxt2318» as Unicode text
set theControl to «data utxt2303» as Unicode text
set theOption to «data utxt2325» as Unicode text
set theShift to «data utxt21E7» as Unicode text
set theEscape to «data utxt238B» as Unicode text
set theTab to «data utxt21E5» as Unicode text
set theReturn to «data utxt21A9» as Unicode text
set theEnter to «data utxt2324» as Unicode text
set doubleTab to tab & tab

tell application frontApp
choose from list {theShift & doubleTab & "Shift", theControl & doubleTab & "Control", theOption & doubleTab & "Option", theCommand & doubleTab & "Command", theOption & theCommand & doubleTab & "Option+Command", theEscape & doubleTab & "Escape", theTab & doubleTab & "Tab", theReturn & doubleTab & "Return", theEnter & doubleTab & "Enter"} with prompt "Pick the symbols you want:" OK button name "Insert" with multiple selections allowed
end tell

if result is not equal to false then
set pickedSymbols to result as string
set displaySymbols to ""
if pickedSymbols contains "Shift" then
set displaySymbols to displaySymbols & theShift
end if

if pickedSymbols contains "Control" then
set displaySymbols to displaySymbols & theControl
end if

if pickedSymbols contains "Option" then
set displaySymbols to displaySymbols & theOption
end if

if pickedSymbols contains "Command" then
set displaySymbols to displaySymbols & theCommand
end if

if pickedSymbols contains "Escape" then
set displaySymbols to displaySymbols & theEscape
end if
if pickedSymbols contains "Tab" then
set displaySymbols to displaySymbols & theTab
end if
if pickedSymbols contains "Return" then
set displaySymbols to displaySymbols & theReturn
end if
if pickedSymbols contains "Enter" then
set displaySymbols to displaySymbols & theEnter
end if

tell application "System Events"
tell process frontApp
set the clipboard to displaySymbols
keystroke "v" using {command down}
end tell
end tell
end if

Automatorで作成

Automatorを起動しテンプレートでサービスを選んだら、検索対象を「すべてのアプリケーション」項目を「入力なし」に変更し、上のスクリプトをコピペして適当な名前(s_characterとか)でワークフローを保存します。

clam.png

後はシステム環境設定でショートカットを割当れば、いつでも呼び出せる様になります。

clam.png

私は Control Command S を割り当てました。

スポンサード リンク