GeekTool

2016年12月29日 (木)

GeekTool で Magic TrackPad 2のバッテリー残量を表示

Magic TrackpadのバッテリーをGeek Toolで表示させることにしたのだが、MacBook Proでは使えていたioregコマンドで見つけることが出来なかった。

system_profiler SPBluetoothDataTypeを実行してみたところ、
Trackpad:
...
Minor Type: Trackpad
Services: Magic Trackpad 2
...
Battery Level: 92%
...
Keyboard:
...
Minor Type: Keyboard
Services: Apple Wireless Keyboard
...
Battery Level: 94%
...
というのが出力されたのでこれを利用する。
何回か実行して必ずトラックパッド、キーボードの順番(たぶんBluetooth機器名順)だったから、全くスマートでは無いが不具合が起きるまでの暫定として1行目をトラックパッド、2行目をキーボードと決め打ちすることにした。

| | コメント (0) | トラックバック (0)

2012年5月31日 (木)

Geekletで天気のアイコンが表示されない事象を修正




いつの間にかYahoo.comのページが改変されていてGeekToolで天気のアイコンが表示されない事象が発生していたので修正。
※修正前はこれ

地震速報のページも構成が変わっていたので合わせて修正。
こちらはURLが変更になっていたこと、画像中に震源地・マグニチュード・最大震度が合わせて表示されるようになっているので津波情報だけピックアップするようにした。
※オリジナルはこれ

いずれも公式に提供されている機能ではなくHTMLを解析して取得していので、今回の様に改変に伴いGeekletも修正する必要がある。






 
 

| | コメント (0) | トラックバック (0)

2012年1月28日 (土)

Geekletを追加(バッテリー情報、雨雲レーダー、地震速報等)

Geekletを幾つか追加。
前記事GeekToolでデスクトップをカスタマイズ

17. バッテリー情報を表示

Battery

設計時の最大バッテリー容量、現在の最大バッテリー容量(充電可能な最大容量)、現在のバッテリー容量(充電量)、充電回数を取得して表示する。
購入当初は最大バッテリー容量は設計容量を上回っていることが多いが使用しているうちに段々減ってきてそのうち設計容量を下回るようになる。現在の最大バッテリー容量/設計時の容量(例では4373÷4680)を現時点での健康度として算出(ただしこの現在の最大バッテリー容量は状態によって数%の変動があるので参考値程度)。
また、現在のバッテリー容量/現在の最大バッテリー容量を充電率として算出。


18. ネットワーク環境を表示

Network02

Network01

ネットワーク環境設定で設定している環境名を表示。自宅・職場・外出先など複数のネットワーク環境を設定している場合は意味があるかもしれないが、自宅のみ等1つしか環境を設定していない場合は表示させても無意味。

19. 雨雲レーダーを表示

Lader

日本気象協会のサイトで公開している雨雲レーダーの画像を取得。

このGeekletは画像ファイルを取得してテンポラリフォルダに格納。Imageでその画像「file:/tmp/weather_lader.jpg」を表示。
このソースは東京の場合。各地域はソース中の「pref-16」の部分を変更する。値は実際にサイトを開いてURLで確認。
また、このGeekletでは画像の取得と同時に時刻を出力しているのでレーダー画像の前面に設置するように順番を変えることで時刻付きで表示出来る。
おまけ。次の画像を凡例として同じくレーダー画像の上に表示する。

Lader_sample


注意点としては画像の取得間隔と表示の更新間隔を調整すること。初回起動時など更新タイミングによっては古い画像が表示されたり、何も表示されない場合がある。そんな場合はGeekToolでReflesh Allを実行する。

19. 地震速報を表示

Earthquake

日本気象協会のサイトから地震速報の画面を取得して表示する。
スクリプトは画像を取得するとともに地震の詳細を表示するので画像の上に表示するように順番を変更すること。
更新頻度の設定は難しいので適当に。ただし大きく揺れた後はサイトのレスポンスがかなり悪くなるので画像を取得出来ない場合もあるのは仕方が無い。


雨雲レーダーや地震情報など外部サイトの情報はいつ仕様が変更されるか分からないので、いずれ表示出来なくなるケースもある。
※実際変更されて取得出来なくなったので修正

MacBook Airなどの小さな画面で幾つも画像を表示するとかなりうるさく感じてしまうので、バランスを取りながら表示の取種選択をした方がいい。 Manage Groupを細かく作成してメニューバーから切り替えるという方法もある。

| | コメント (2) | トラックバック (0)

2012年1月21日 (土)

iOSのカレンダーアイコン




iOSのカレンダーアイコンのPhotoshopファイル。サイズは512*512。
Photoshopで数字や曜日を変更可能、曜日には英語用も用意。GeekToolで使用するぐらいしか使い道はない。

Ios_calendar_icon


「iOS_Calendar_Icon.psd」をダウンロード

GeekToolですぐ使えるように曜日・日付を表示してない背景画像のみをPNG形式(512px)で追加。
Ios_calendar_icon


Adobe Photoshop Elements 10 Editor    Adobe Photoshop Elements 10 Editor - Adobe Systems Incorporated

続きを読む "iOSのカレンダーアイコン"

| | コメント (0) | トラックバック (0)

2011年11月20日 (日)

GeekToolでカーネルパニック?




2週間でカーネルパニックが2回発生した。
ログによると、カーネルパニックの直前に動作したプロセスは2回ともGeekToolだった。

色々調べてみたところGeekToolの中で使用しているlsofコマンドの実行が契機になっているのではないかと推測出来たのだが、システムへの影響を考慮すると原因特定のためにカーネルパニックを再現したくはないので、とりあえずlsofコマンドを使用しているgeekletを停止してしばらく様子を見ることにした。
(その他のgeekletは動作させたまま)

その後3週間はカーネルパニックが発生していない。

続きを読む "GeekToolでカーネルパニック?"

| | コメント (0) | トラックバック (0)

2011年9月18日 (日)

GeekToolでデスクトップをカスタマイズ


GeekToolを使ってみた。

Geektool00

Mac App Storeにアプリケーションが登録されたが、元々はシステム環境設定ツールだ。本家では現在もシステム環境設定としてダウンロード出来る。
アプリ版も試してみたがImageプラグインで画像を表示させたときに、アイコンが画像の下に隠れてしまう場合がある。

用意されているプラグインはFile、Image、Shellの3つ。
Fileはテキストファイルなどをそのまま表示する。/var/log/system.logを設定すればシステム状況がリアルタイムで表示される。
Imageは画像ファイルを指定するとデスクトップに表示される。指定したディレクトリ内の画像をランダムに表示したり更新間隔や透過性なども設定出来る。アップルメニューのロゴはImageを使用した。
一番便利なのがShellだろう。これはコマンドを設定するとその結果のテキストを表示する(出力テキストが無くても構わない、その場合はコマンドを実行するだけ)。
コマンドというだけあって、基本的にはUNIXやMacOS固有のコマンドやシェル、perlなどのスクリプト言語を設定する必要があるが、普通のユーザーには若干敷居が高いかもしれない。プログラムというほどレベルは高くないが、テキスト加工で正規表現を多様することになるのがハードルを上げる気がする。

ネットで探せば色々なサイトにGeekletやコマンドが公開されているので、これをそのままコピーするだけでもいいしアイディア次第で色々なカスタマイズが出来る。ただしコマンドベースなので日本語の処理は苦手。
使用しているGeekletはこのサイトを参照にして、修正したり自分で作成したりした(そのまま使っているものもある)。

表示テキストはフォント・色・透過率・サイズなどを設定することが出来る。
注意点としては、出力結果が基本的にコマンド出力なのでCourier、Menlo、Monacoなどの等幅フォントで表示しないと段組が崩れること。
フォントを設定する際に影をONにするとアンチエイリアスが有効となる。

1. アップルメニュー

Geektool01

同サイズの画像をImageで貼り付けた。[Keep on Top]にチェック。

2. システム構成

Geektool02



3. 前回コンピュータ起動時からの時間

Geektool03



4. TImeMachineでバックアップしてからの日数

Geektool04



5. ディスクの使用量

Geektool05


MacBook Airは1台だけだから上記のコマンドで構わないが、2台以上のHDD(SSD)を搭載している場合は対象のVolumesを追加で記述する。

※ちなみにこのGeekletはMountain Lionではdfコマンドの変更に伴いキレイに表示されない。

6. CPUおよびメモリの使用状況

Geektool06



7. CPU利用率順のプロセス一覧

Geektool07


-13は表示する行数。タイトル行があるので実際に表示されるプロセス数は12。11にすれば上位10プロセスが表示される。

8. メモリ利用率順のプロセス一覧

Geektool08


CPU利用率順とは引数が異なる。

9. ネットワーク状況表示

Geektool09


MacBook Airの場合は有線LANが無いのでe0がWi-Fiだが、有線LAN付属モデルの場合はe0が有線、e1がWiFiとなるのでスクリプトを修正する必要がある。

10. 現在のネットワーク転送状況

Geektool10



11. ネットワークにアクセスしているプロセスを表示

Geektool11



12. iOSカレンダー

Geektool12

背景のアイコンをImageで貼り付けて、その上にShellで曜日と日付を設定した。
それぞれサイズが異なるので別々のGeeklet。フォントはHelveticaを使用。


(修正)日付の表示形式が%dだと3日は03と表示されてしまうことに気づいた。%eとすることで1桁表示になる。

13. カレンダー

Geektool13

カレンダーはネットから画像をダウンロードしてImageで表示してもいいが、Shellで表示すれば自動更新される。

だけでも表示されるが、以下のコマンドで当日の色を変更して強調。

mの前の31の部分が当日の色を指定。数値毎の色は以下のとおり。
30 黒
31 赤
32 緑
33 黄色
34 青
35 マゼンタ
36 シアン
37 白
設置の際には月によっては6列になるケースを考慮してレイアウトを決定すること。

14. 天気

Geektool14

現在の天気をアイコンと文字、予報を文字で表示。 何も表示しないアイコン画像を取得するShellを配置。現在地を取得するのは面倒なのでechoコマンドで"Tokyo, Japan"を表示。
アイコンをダウンロード

URLのtokyo-prefecture/tokyo-1118370を変更すると他の地域のアイコンが取得出来る。
※Yahoo.comのサイトが改変されてアイコンを取得することが出来なくなったので修正
ダウンロードしたアイコンをImageで表示。画像のパスは上記の保存ファイルである/tmp/weather.png。
現在の天気を表示

url末尾の&u=cを省略すると気温が華氏で表示される。
予報を表示

他の地域を取得する場合はJAXX0085を変更。
主な日本の都市の一覧は以下のとおり。
札幌0078
仙台0104
横浜0099
名古屋0057
京都0047
金沢0030
大阪0071
広島0018
松山0052
福岡0009
那覇0058

天気予報をYahoo.comから取得しているが、日本語の天気予報は情報が細かい分だけ構造が面倒で加工しづらい。簡単なスクリプトで取得出来る場所(データ)は無いものか?

15. 天気図(衛星写真)

Geektool15

日本の衛星写真の画像を一時フォルダに保存して表示。
画像は日本気象協会のサイトのものを利用。

Imageで画像を表示。画像のパスは上記の保存ファイルである/tmp/weather_map_satellite.jpg。

16.電力使用量を表示

Geektool16

データはGoogleのGo 節電 プロジェクト APIを使用。
電力使用率

電力使用量

東電以外の場合はAPIに従って取得元を変更。


GeekToolではグループを設定してそれぞれのグループ毎に表示のON/OFFが出来るので、気分や環境によって表示させるGeekletを変更するのもいい。
色々組み合わせてデスクトップを賑やかにしてみたけど、結局落ち着くのはシンプルな画面だったりする。

Geektool99



GeekTool (.prefpane)
GeekTool (.app)GeekTool - Tynsoe.org
    


 

続きを読む "GeekToolでデスクトップをカスタマイズ"

| | コメント (0) | トラックバック (0)