July 6, 2016

macOSの日本語入力遅延を解消する

macOSは「ライブ変換」と「推測候補表示」という日本語入力を支援する機能を提供している。ただ、残念なことに、これらの機能がオンだと、日本語入力時のレスポンスが遅くなってしまう。そのため、私はこの機能をオフにしている。(いままでの日本語入力と比べると革新的なので、高スペックなMacを手に入れたら、常用したいとは思っている。) 「ライブ変換」 「ライブ変換」については、下記の記事が詳しい。 新Mac OSの日本語入力が「驚くほど使える」のを知っていますか? - 日経トレンディネット 「推測候補表示」 入力した内容から、センテンスを推測して、候補を表示する機能と理解している。 例えば、「コーヒー」と入力すると、変換候補に「コーヒーブレイク」や「コーヒーゼリー」を表示する。 「ライブ変換」と「推測候補表示」をオフにする方法 macOSの環境設定 > キーボード > 入力ソースで、ライブ変換と推測候補表示のチェックを外すだけで良い。

June 13, 2015

macOSで定刻にプログラムを実行させる

macOSで決まった時刻にプログラムを実行させたいので、UNIXやLinuxのcron、Windowsのタスクスケジューラに相当する機能がないか調べた。Mac Developer Libraryを覗くと、Scheduling Timed Jobsにジョブに関する記述があり、まとめると以下のようになる。 プログラムを定時実行させる場合は、launchdジョブとcronジョブが使える 好ましいのはlaunchdのジョブを使うことである。cronは非推奨だ launchdジョブの定義 launchdジョブはプロパティリストファイル(.plist)で定義する。記述方法はA launchd Tutorialをはじめとするリンクを参考資料にまとめたので、そちらをみてほしい。 launchdジョブの配置場所 launchdジョブは用途によって設置場所が異なる。 launchdジョブ定義ファイルの配置場所 配置場所 用途 ~/Library/LaunchAgents 各ユーザが管理するエージェントを設定 /Library/LaunchAgents 管理者が管理するエージェントを設定 /Library/LaunchDaemons 管理者が管理するデーモンを設定 /System/Library/LaunchAgents OSが管理するエージェントを設定 /System/Library/LaunchDaemons OSが管理するデーモンを設定 デーモンはシステムレベルで実行されるジョブのことを指す。従ってroot権限を必要とする。そして、LaunchDaemonsディレクトリはユーザディレクトリには存在しない。エージェントはログインしているユーザ毎に実行されるジョブを指す。 例えば、特定のユーザ用のジョブなら、下記のようにコマンドを実行する。 $ launchctl load ~/Library/LaunchAgents/com.hiroakit.hoge.plist # 登録 $ launchctl list com.hiroakit.hoge # 確認 $ launchctl unload ~/Library/LaunchAgents/com.hiroakit.hoge.plist # 登録解除 実行したlaunchdジョブのログ 実行結果は、原則として/var/log/system.logに出力される。 Read more