[CS] PopClip で簡単に単語登録をする機能拡張

選択した文字列を単語登録する時に、PopClip を使えば、便利じゃね?と思い至ったので自作してみました。

単語登録を呼び出す AppleSCript は、パワーリンゴさんの「OS X Mavericksの「ことえり単語登録」を簡単にするAppleScriptを組む、その1。」のエントリを参考にさせていただきました。ありがとうございます。

あと、選択した文字列をコピーしたりペーストしたりというのは、ネットで色々と調べて参考にさせていただきました。ありがとうございます。AppleScript を解説した書籍も出ていますが、なにぶん出版されてから時間がかなり経っているので、ここで、新しい書籍でも出ないかしら。

さて、PopClip の機能拡張を自作するには、以下のようなファイルが必要になります。

  • Config.plist
  • icon.png(アイコンの画像。サイズは 256×256 くらいか?)
  • AppleScriptファイル

Config.plist を作るには、Xcode や Property List Editor を使えばいいと思います。

Config.plist

詳細は以下のような感じ。

  • AppleScript File:自作した AppleScript のファイル名(ここでは word-registration.applescript)
  • Image File:自作したアイコンのファイル名(ここでは word-registration.png)
  • Title:機能拡張の名前(ここでは単語登録)
  • Extension Description:機能拡張の説明(ここでは Word Registration)
  • Extension Identifier:ドメインの後は自由に付けられるよう(ここでは jp.corestudio.popclip.extension.word-registration)
  • Extension Name:PopClip で表示される名前(ここでは単語登録)

AppleScript は以下のように作ってみました。なにぶんド素人なので、見難かったらスイマセン。もっとスマートな記述方法があれば教えてください。

set frontmostApp to path to frontmost application
tell application "Finder"
	set appName to name of frontmostApp
end tell

if appName ends with ".app" then
	set appName to text 1 thru -5 of appName
end if

activate application appName
tell application "System Events"
	tell application process appName
		keystroke "c" using command down
	end tell
end tell

tell application appName
	set theText to the clipboard as string
end tell

tell application "System Preferences"
	activate
	set current pane to pane id "com.apple.preference.keyboard"
end tell

tell application "System Events"
	tell process "System Preferences"
		tell tab group 1 of window "キーボード"
			click radio button "ユーザ辞書"
			click button 1 of group 1
			delay 0.5
			keystroke tab
			keystroke "v" using command down
			keystroke tab using shift down
		end tell
	end tell
end tell

tell application "System Preferences"
	activate
end tell

上の記述を、スクリプトエディタにコピペして使ってもらえばいいと思うんですが、自分が作成している中で、スクリプトエディタで保存したファイルを使うと、エラーが出て PopClip にインストールすることが出来ませんでした。

はっきりした原因がよく分からなかったんですが、文字コード周りのようなので、CotEditor を使ってエンコーディングなどを下のように設定して、保存。うまく行くようになりました。

CotEditor

あとは、作成した「Config.plist」「スクリプトファイル」「アイコンファイル」を一つのフォルダにまとめて、フォルダ名を「extension.popclipext」などと、拡張子に「.popclipext」が付いた名前にします。拡張子を付けると、フォルダアイコンから PopClip の機能拡張アイコンに変化するので、そのファイルをダブルクリックします。

PopClip 機能拡張のインストール

こんな警告が表示されるので、インストールするボタンをクリックします。これで、機能拡張が使えるようになります。

PopClip 機能拡張一覧

ブラウザでもエディタでも、文中に登録しておきたい単語があったら、それを選択して PopClip でこの機能拡張を選んでやれば、システム環境設定が起動して、キーボードのユーザ辞書の入力欄にカーソルが移動します。分かりやすく動画にしてみました。

いやぁ〜 PopClip は便利だ(笑) どなたかのお役に立てば幸いです。

Tweet about this on TwitterShare on FacebookShare on Google+Share on Tumblr

関連エントリ

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です


*