テクニック > 小技

「テクニック/小技」の編集履歴(バックアップ)一覧はこちら

テクニック/小技」(2010/11/15 (月) 21:03:27) の最新版変更点

追加された行は緑色になります。

削除された行は赤色になります。

**小技 新たに一項目設けるまでもないけど知ってると表現の幅が広がるかも…そんな小技を紹介する項です。 ある程度使い込んでみればすぐ気付くような小技から、その発想はなかったわという奇策、あるいは普段使わないけどこんな事も出来るよ的な玄人技まで、そんなもののデータベースとして機能すれば幸いです。 ちなみに本家にも細かいテクニックを紹介するフォーラムがありますので、多少なりとも英語が読める方は目を通すと新たな発見があるかも知れません。面白そうなテクニックは訳して紹介して欲しかったり。 #contents **クライアント ***別クライアントの描画優先順位 Samurizeを複数起動した際、基本的にあとから起動した方が描画優先順位が高いように出来ています(表示設定にもよりますが)。 これを応用したのがテクニックのフェード・アンド・オーバーレイ(仮)なのですが、同様の手法…「つまりクライアントの上に後から呼び出したクライアントを被せる」ことでランチャ的なクライアントから起動した際に、さも選択中のように項目の色を変えるというようなことも可能です。 +↓これをランチャとして right01.jpg +↓これを呼ばせることにより(要フォントの位置合わせ) right02.jpg +↓画面上ではこう見えるように right03.jpg 一つのiniにランチャ部分と情報部分を描画させて、丸ごと切り替えるという手もあります。どちらにも一長一短な部分がありますので、上手く使い分けてください。 ***カレンダーとBilder schra"gstellen (TurnImages.dll) Bilder schra"gstellen (TurnImages.dll)のエフェクト動作中はどんな設定をしていてもクライアントの描画速度が50msに強制変更されます。 カレンダーなんて普段は頻繁に描画更新する必要はないが、先月や今月にカレンダーの表示を変更したい時に困ってるという方は、これを利用して、切り替えボタンにTurnImagesを採用することでスムースに切り替え可能になります。 一応reloadを利用して別のiniに切り替えることも出来なくはないんですが、自分の環境ではタスクトレイのクライアントをクリックした瞬間エラー吐いて落ちました。もしかしたら環境次第かも知れませんので、チャレンジしたい方はどうぞ。 **メーター ***ヒストグラムが汚い ヒストグラムの幅が不揃いでみっともないなという方、メーターの幅を履歴数で割りきれる数を指定してください。構造的に1/2ドットとかねーです。 透過と錯覚を上手く使えば擬似的には可能なのかも知れませんが。 ***フェード(力づくで) 力業で解決することも結構多いSamurize。どうしても文字を儚くフェードさせたいんじゃー!という病んだ方は、該当位置を切り抜いて適当な画像編集ツールで徐々に透過させていき、それを目的のメーターの上から被せるという荒技があります。 台座があれば別ですが、基本的に壁紙ごとに作る必要があるので、わりとどうしようもないテクニックです。 -↓わかりづらいですが曲データの左右端がフェードっぽく見えてるといいな fade01.jpg -↓壁紙なくして二倍の図 fade02.jpg -↓即興ですが反射っぽく見えてるといいな fade03.jpg 一応TextFXでフォントの段階透過可能なんですが、例のように端っこだけちょこっとみたいなことは出来ないです。 壁紙の一部を加工して重ねてメータを変形させるというのは、わりとメジャーなテクニックです。どうしても角丸のプログレスバーが作りたいという人などはチャレンジしてみるのも一興かと思います。ただ汎用性には欠けますので、手間を惜しまないのであれば、DisplayPngFromDirやCustomProgressのような、メーターの値からpngを出力してくれるプラグインを使うか、あるいは通知機能と画像を組み合わせる手法で。 ***三色(以上)のグラデーション 通常プログレスバーで指定できるグラデーションは二色までですが、最小値0最大値50と最小値50最大値100のメーターに分割してそれぞれ色指定すれば三色使えます。もちろん細かく分割すればいくらでも増やせます。 Samurizeの仕様なのかどうなのかは知りませんが、二色のグラデはなぜか中央付近の明るさが落ちるので、幾つかに分割した方が鮮やかだったりします。 progress.jpg -上図上方は、緑→赤 の二色グラデーション -上図下方は、緑→黄色→赤 の三色グラデーション これに限らず同種のメーターで最大値最小値を変えて分割してそれぞれの色を変えるという単純なテクニック(ヒストグラムで80%を越えた部分だけ赤くするような)は、メータは一種に付一個というような固定観念に支配されていると気付きづらいかも知れません。 ***画面領域外にメーターを配置 何らかの理由、例えば半円のメーターを画面端にピッタリと配置したい場合、どうしてもメーターを画面外にはみ出させないとダメなのですが、通常単メーターを選択して画面外に配置することは出来ません。この場合直接座標を入力するか、複数のメーターを選択して動かすと画面外に追い出せるようになります。 ***ドライブ容量での選択 「ドライブ容量」のメーターでドライブを選択する際、CtrlやShiftを押しながら選択することで複数のドライブが選択可能です。全ドライブを合わせた使用状況などを出したい時はどうぞ。 ***タスクマネージャのようにグリッドスクロール ネタ元は本家のScrolling gridsで。正直これ考えた人、バカだと思います(褒め言葉)。 +まず普通にグラフを作ります。表示させるネタは何でもいいです。 +次にグラフの履歴数をメーターの幅に合わせます。 +新たにテキストメーターを追加します。横幅はグラフに合わせ、縦幅は後述の|ぐらいの幅で。 +「表示」タブのテキストボックスに| を大量に並べます。メーター幅からはみ出せばOKです。フォントサイズなどは適当に。 +そのまま「表示」タブの下方にある「テキストが範囲に収まらなければ・・・」まで進み、「スクロール」にチェック。スクロールタイプは「水平方向」、水平方向は「右から左」、「セパレーター」の「 | 」は削除し、スクロール間隔は「1000ミリ秒」とします。「一時停止」にチェックはしないでください。 +必要ならば、作成したテキストメーターをコピペして増やし、|がグラフと同じ高さになるように配置します。 +必要ならば、グラフィックの編集で適当に横棒を作り配置します。 以上で完成です。言葉にするとわかりづらいとは思いますが、要するに|をグリッドの縦ラインと見なし、テキストのスクロール機能でスクロールさせるだけですね。 動きが細かすぎて気にくわない人は履歴数を減らし、スクロール間隔をあわせてください。メーター幅160で履歴40とするならば、1000ミリ秒で4ドットスクロールということになりますので、テキスト側のスクロール間隔は250ミリとなります。 ***ネットワーク送受信速度の単位可変 ネットワーク送受信速度において、数値によって自動で単位が変化して欲しいという要望は本家フォーラムでも出ているようですが、制作者側では実装する気はない(もしくは優先度が低い)という回答がでています。 まぁ実際のところ力づくでも可能なので、一番需要が多そうなKB/sとMB/sを例に方法を書いておきます。 +まず普通に受信速度のメーターを作ります。 ++情報」タブで単位をBytesからKilobytesに変更します。 ++「表示」タブで透過度を0にします。 ++「一般」タブで「通知機能」にチェックを入れ、「通知リスト」に「追加」で監視する値を作ります。 ++「通知のタイミング」は「値を下回るとき」、値は「1024」、文字色は出したい色を選んでください。透過度はそのまま255です。 +もう一つ受信速度のメーターを作ります ++「情報」タブで単位をBytesからMegabytesに変更します。 ++「表示」タブで透過度を0にします。 ++「一般」タブで「通知機能」にチェックを入れ、「通知リスト」に「追加」で監視する値を二つ作ります。 +++通知のタイミングは「値を上回るとき」、値は「1」 、文字色は出したい色を選んでください。透過度はそのまま255です。 +++もう一つは「値になったとき」、値は「1」 、文字色は出したい色を選んでください。こちらも透過度はそのまま255です。 +で、出来た二つのメーターを重ねます。以上です。 Gigabytesも欲しいという人は、Megabytesのメーターをそのままコピーして単位をGigabytesに変更し、元のMagabytesのメーターの通知リストに監視する値をもう二つ追加して、「通知のタイミング」は -「値になったとき」で値に「1024」、透過度を0 -「値を上回るとき」で値に「1024」、透過度を0 としてください。 数値が1000越えると幅合わせがきついって人は、0.9MB/sと921.6KB/s監視させるといい感じかも知れません。 高速回線でメーターの上限値が高すぎてネットワーク送受信の値に幅があり、トップに合わせるとグラフが通常時ほとんど動かなくて寂しいという方も、これを応用して、最大値が違うグラフを幾つか重ねて、回線速度が規定のラインを越えたら表示を切り替える感じにするいいかも。 ***メーターと負の数 意外に知られていませんが(使い途がないともいう)、メーターの最大値/最小値には負の数も使用することが出来ます。 残念ながら最小値-100で最大値0と設定すると-100の時メーターが空になるという実に普通の挙動で、-100に向かってメーター増やしてくれないのかよと思うことも。 知ってると何かに使えるかも知れないので知識として。 ***演算処理と文字列 演算処理では数値以外にメーターの吐き出した文字列の合成をすることが可能になっています。以下簡単な設定。 メーターの一般タブにある演算処理にチェックを入れることで下方に演算の項目が現れます。そこの演算の設定を押すと現れる数式フォームの上部にあるラジオボタンで文字列結合を選択した後、合成したいメーターの名前なり追加したい文字列なりを+で繋いでいってください。%b差し挟むことで改行させることも出来ます。 ただ、コンフィグエディタ上でのテストは転ける時が多いので、クライアント上できちんと動くか確認した方が無難。 また、「文字列」のメーターだけは演算処理がグレーアウトして選択できないようになってます。 全ドライブ情報を一つのツールチップに纏めて出したい時や、改行で切られてるニュースを横一行に配置し、ティッカー風に横スクロールさせたい時など、意外と使い途は多いと思います。 ***科学演算の書式 ヘルプにもなく、ざっと見たところ本家のフォーラムにもなく、Excelなんかとは違う書式のようなので一応メモ代わりに。 例えば除算で余りを求めたい場合は演算式に a MOD b のように記述します(MODの前後には半角スペース必須)。これでaをbで割った時の余りが出力されます。 ***プログレスバーを簡単な背景として使う 適当なツールで描いちゃう方が速いって人も多いと思いますが。 適当な場所に100とだけ書かれたテキストファイルを作成し、コンフィグエディタのメーターの追加→テキストファイルでメーターを追加して、先に作成したテキストを指定します。その後一般タブで表示タイプをプログレスバーにすると、常に100%状態のプログレスバーができあがります。で、これを矩形画像として使います。通常の矩形画像と違い、グラデーションがかけられたり段階透過できたり、ちょっとしたメリットが。 progress2.jpg 同様に円グラフで半円とか変なのが作れたり。 ***アニメーションgifの表示 普通にグラフィックの編集→背景オブジェクトの追加→画像描画でアニメーションgifを追加しても動きません。この場合メーターの追加から文字列あたりの適当なメーターを作成し、表示タイプを画像にして目当てのアニメーションgifを追加してください。ループ回数なんかも設定できます。 ただし、本来アニメーションgifが持っているフレーム情報は反映されず、クライアントの表示更新間隔でパラパラ動くだけにとどまります。 ***横向きの▲を表示する テキストメータ等に任意の記号(▲▼等)を表示させたのち、縦書き用フォントを選択する(字体の選択で先頭に@の付いているもの)。 ***武蔵を使ったフォントの影と縁取り 武蔵 v0.1.6.5以降でアンチエイリアスのウェイトが設定出来るようになりました。 元々細めのフォントだと表示が掠れて見づらいという弱点をフォローするための設定追加だと思うのですが、ウェイトを大きめにとって完全に滲ませ、その上に通常のメーターを重ねることで、普通に作成するよりも効果的な影や縁取りが可能になります。特に縁取りは同系色の壁紙で沈んでしまう箇所なんかで効果的じゃないかと。 AA_Sample.jpg ***現在実行中のプロセス数 パフォーマンスモニタのメーターを作成して、パフォーマンスカウンタの選択でパフォーマンスオブジェクトをObjectsに変更し、Processesを選ぶことで表示されます。 **日付と時刻 ***時差機能 ネットで知り合った海外の知人と待ち合わせ時間決めてチャットするなどの状況でもない限り、使う状況はほとんどないとは思いますが、どうしても明日の日付が出したいという状況に陥った時、時差を使って1440分ずらして表示させることで解決します。 なんか一風変わった時計を作ろうとして、そうだ!時計をプログレスバーで表現するってのはどうだろう!というのはわりとありがちな思考のようですので、そういう時に役に立つかも知れません。 -↓右下の00:00が時差の調節で一時間ズレ。プログレスバーは分です zisa.jpg ちなみに設定でタイムゾーンを律儀に大阪、札幌、東京に合わせるとサマータイムが発動するので、サマータイムの習慣がない日本としては空白のまま使いましょう。 ***和暦 和暦を出したいという人は、日付/時刻のメーターの書式に「gg」で元号が、「ee」で年次が出せます。 月も和暦にあわせて睦月等で表示がしたい方は、おれはおれだ ◆SAGI2KFG6c氏のdayで設定すれば可能ですのでそちらをどうぞ。 ***デジタル時計のコロンを点滅させる 12:51みたいなデジタル時計の、真ん中のコロン(:)を秒で点滅させたいと思う人へ。元ネタは本家の[Easy] Clock: Blinking ':'。 1. 日付/時刻のテキストを追加し、書式で「z」を指定してミリ秒を出す。 2. 「表示」タブの「テキスト」を「:」とし、透過度を0に設定。 3. 次に「一般」タブで通知機能にチェックを入れ、通知のタイミングは「値を上回るとき」、値を「500」で、透過度を255に設定します。 4. 最後にプロジェクトのオプションで表示更新間隔を500ミリ秒に指定。 以上です ***カレンダーのtodayで画像を使う CCalendarやColorCalendarでカレンダーを作成する際、横あるいは縦型カレンダーは月が変わっても日の絶対位置は動かないというのを利用して、日付/時刻のメーターを使ってtodayに画像を使うという方法があります。 一日ならその日付の上に日付/時刻で書式ddを出力させたメーターを重ね、表示タイプ「画像」で、通知機能で01になった時画像を表示させるようにするわけですね。 以降監視する値を一個ずつずらして配置していきます。二日の上には監視02、三日の上には監視03… スクリプトの構造を理解してなくても可能なので楽ですが、月移動させてもまともに動作しないという弱点はあります。当月のみならあんまり気にしなくてもOK。 月が変わる時以外はスクリプト実行しなくても日付が変わると勝手に更新してくれるという利点も。 わかる人はスクリプトの出力を書き換えて(CCalendarならvar dfmt、ColorCalendarならname:"todaybg.txt"の設定)、適当な値を出力させて通知機能で画像出しちゃうと思いますが、まぁこんな事も出来るってことで。 こっちは応用すれば休日なんかにも画像が使えます。 **通知機能 ***タスクスケジューラ 普段あまり意識しない通知機能ですが、日付/時刻のメーターと組み合わせることでタスクスケジューラとして機能させることが可能になっています。 OS側にも搭載されている機能なのでこれ自体は別に珍しい物でもありませんが、Samurizeが動作してないと機能しないという点を利用して、コマンドラインオプションと連携させてSamurize関連の自動制御を行わせると便利かと思います。 一例として、カレンダーのように特定の時刻に更新させたいクライアントのリロードを仕込んでみるとか。 ***通知機能と文字列 通知機能を利用する時、選択した「通知タイミング」によっては「値」を要求されますが、値といっても数字以外の文字列を使用することが可能になっています。 例えば「日付/時刻」のメーターを追加し、「情報」タブの書式をdddにすると現在の曜日が日本語で出るわけですが、通知機能で「値になったとき」、値を「日」で、通知テキストを「Sun」とすると日曜日が英語表記になります。 もっとも例に挙げた機能はスクリプトのdayやWeekdayで実装されており、柔軟性もそちらの方が高いので、あくまで値に日本語を含む文字列を使えることの実証例程度に捕らえてください。 プレイヤーの再生状況を拾い、監視機能と通知画像を組み合わせて、状況がplayならばプレイヤー制御のアイコンを点灯させる…みたいな使い方も可能になります。 **スクリプト ***起動時のスクリプト更新 描画間隔を長目に取っていると、起動時にスクリプトが実行されても次の描画時間まで待たねば表示されません。 わりと不便ですが、実行させたいスクリプトを含むiniと表示用のiniを分割し、StartupEXやみやすたっぷのようなスタートアップを制御してくれるツールを使って、適当に起動遅延を噛ませて、スクリプトを含む側を先に起動させるといい感じになるんじゃないかと思います。 もちろん、テキスト排出型でないと使えません。 ***気象情報取得スクリプトなどで複数地域取得 複数地域の天気取得が可能なスクリプトはありますが、そうでないスクリプトでも複数地域取得する方法。 +スクリプトファイルを、取得したい地域の数だけScriptフォルダ内で複製する。(ファイル名は、拡張子の前に数字つけたりして) +それぞれのスクリプトの設定を変更する。(地域や出力先) +それらスクリプトをSamurizeに張る。 気象情報だけでなく、TV番組表やニュースなどでも同様です。 ***クリック時に音を再生したい ネタ元は本家フォーラムのPlay a Sound on Mouse-Down。 上記のトピック内でuziq氏がPlaySound.vbsを配布されていますので、それをC:\Program Files\Samurize\Scripts内に置き、該当メーターに入力コントロールを作成します。 リンク先はwscript.exe "C:\Program Files\Samurize\Scripts\PlaySound.vbs" "再生させたいwavファイルのパス"とし、アクションは左ボタンを押すあたりに設定します。 こうすることで左ボタンを押したときに指定したwavが再生されるようになります。 本命のリンクは左ボタンを放すに設定してください。 指定出来るのはwavのみです。 また、Windows標準のサウンドレコーダーを使った方法も記されていますが、これはいちいちサウンドレコーダーが起動するのであまり実用的でないと思います。 ***スクリプトのプロキシ設定 プロクシ通していると、天気予報サイトにアクセスすらできなくて泣いた。どうしてもプロクシ通して通信したいと思ったので、 jpWeatherR.vbsの595行目を書き換えた Set xmlhttp = CreateObject( "MSXML2.ServerXMLHTTP" ) ↓ Set xmlhttp = CreateObject("WinHttp.WinHttpRequest.5") そしたらブラウザで設定しているプロクシが有効になって、天気予報がみられた。よかった。うれしい。 他のスクリプトも、・CreateObject( "MSXML2.ServerXMLHTTP" ) ・CreateObject( "Microsoft.XMLHTTP" ) なんかしてるところを、CreateObject("WinHttp.WinHttpRequest.5") に書き換えたらうまくいくだろう。それにしても、最後の 5 ってなんだろう。 本当はxmlhttp.SetProxy()でプロキシ設定しようと思ったけど、必要なかったみたいね。 **プラグイン ***スライダーが滑らかに動かない時は 多分直面する機会があるのはボリューム操作だと思うのですが、スライダー系の操作が可能なプラグインでも、描画自体はクライアントの更新速度に左右されています。滑らかに感じるレベルまでクライアントの描画速度を上げてください。 **MeterMathを使ったアニメーション もともとは本家で折りたたみ&展開可能な設定ファイルの作成が登場した折に生み出されたテクニックの改変版。 オリジナルではCycleText.dllを使っていましたが、このdll公式に存在しないので(本家で検索すると出ては来ますが)、もっとメジャーなPluginPakに入っているMeterMathで再現。 バカテクの部類に入ると思いますが、歴史の闇に埋もれさせるには少々惜しい技術だと思うので軽く紹介。 MeterMathのサンプルにもありますが、設定で「メーター名+1」とすることで描画更新ごとに値が1増えるメーターが作れます。 これをプログレスバーにすることで、開始と同時に伸びるように見える背景として扱うというのが中核技術。 あとはそのメーターに通知機能を使い、アニメーション終了したぐらいの値にreloadを使って別のiniに復帰させるという形になります。 MeterMathの設定で「メーター名-1」とすることで描画更新ごとに値-1するメーターが作成できます。 これとメーターと負の数を合わせることで、閉じることも可能。 言葉だけだと説明が難しいので、一応サンプルも置いておきます。 サンプルではネタ元に敬意を表してプログレスバー使いましたが、別に通知機能組み合わせて画像ゴリゴリ動かすも良し。 単純に数値が増加するというだけなのに、アイデア次第でいろいろ使えると思います。 起動時に呼び出してスプラッシュ画面作ったり、Windows終了のリンククリックしたら呼び出してカウントダウン始めたり。 はっきり言ってSSに出ない部分なので楽しいのは当人だけなんですが、こういうバカギミック作るのが好きな人が他にいることを願って。 サンプルのような開閉はConfigRegionで簡単に出来るというのも廃れた原因かも。 ***PageScraperを使ってサイトに自動ログイン ログインが必要なページを利用する前にPageScraperの認証機能を動作させて、サイトをブラウザで開けば面倒なログイン手順が不要になります。 PageScraperのメーターはスタートアップに登録した構成ファイルに忍ばせておきましょう。 ***オートポップアップとオートクローズ -ニュースなどの情報が更新された時にポップアップで表示されて欲しいという時は、多重起動と通知機能の組み合わせで可能です。常に表示されているiniにメーターの追加で更新されたことを知りたいテキストファイルのメーター(文字列で構いません。ニュースならそのニュースの見出しや本文なんかでOK)を追加し、そのメーターに通知機能を設定し、「値が変更された時に」で「コマンドを実行する」で「client.exe i=xxxxxx reload」とします(xxxxxxは起動させたいインスタンス名)。 これで該当テキストが更新された時に自動でポップアップされるはずです。 -オートクローズはポップアップさせる情報のあるiniにMeterMathを使ってタイマーを作り、通知機能で任意の秒数経過した時にcloseコマンド送ってやればOKです。 メーターの追加→プラグインでMeterMathを追加し、実行する関数でExcuteMathを選択し設定で自身のメーター名+1とすれば、クライアントの更新間隔ごとに1ずつ増加するメーターの完成です。 あとはこのメーターに通知機能を設定して、「値になったら」で好きな時間を指定し(クライアントの更新時間が1000msなら60を指定すれば一分後に閉じます)、コマンドの実行でclient.exe i=xxxxxx closeとすれば自動で閉じるはず。 ちなみにテキストの更新が表示時間を上回ると、テキストが更新され続けた場合タイマーがリセットされ続けるので自動で閉じません。この場合ポップアップさせる時に送るコマンドからreload削ればきっちり指定間隔で消えると思います。 あと、通知機能はクライアントの更新間隔ごとに監視するようなので、極端に長い更新間隔取ってるiniに配置すると使い物にならんと思います。 -Webページの更新チェッカーはuziq氏のPluginPakに含まれるPageCheckがありますが、この方法だと別にWebページに拘らなくても使えます。再生中の曲が変更された時に数秒曲名出すとか(まぁこれもAMPIの機能で可能なんですけど…)。 ***特定のアプリケーションの起動/終了の監視 -そのものズバリのプラグインとしてKopplerというプラグインがあります。 あるいはFindTheTopProcessを利用して現在起動中のプロセス名を全て取得させ、値の監視で該当アプリケーションの名前を値に設定し、「値を含む時に」で監視させるという手段も。 **外部プログラム ***武蔵と通知機能 通知機能は武蔵に完全には実装されていません。 文字の置換のみは可能ですが、透過度や色の変更は不可能なので、どうしても武蔵クラスの綺麗なフォントで通知機能が使いたいという方はGDI++の導入を検討してみてください。 通知機能以外に垂直スクロールとか使えます。代わりに縁取りないです。あとワードラップで折り返す地点によっては化けます。上手く使い分けてください。 ちなみにGDI++で呼ばれたexeから呼ばれるdllにも適用されるので、IEの描画をそのまま利用しているためどうにもフォントが美しくないMiniBrowserでもフォントが綺麗になったりします。AlbumJacket+の歌詞表示で使用していて、どうにもフォントが気にくわない方は試してみるのもよいかと。 ***メーターからの返り値(%v)をクリップボードにコピー ネタ元は本家のCopy meter value to clipboard。以下簡単な訳。 http://www.steve.org.uk/Software/clipboard/ からCommand Line Clipboard Accessをダウンロードし、解凍して出てきたClipboard.exeを適当な場所に配置してパスを通します(面倒な方はC:\Windows\System32あたりへClipboard.exeをコピーしてください)。で、取得させたいメーターに適当な入力コントロールを設定し、リンク先に cmd.exe /C echo %v| clipboard - と記入します。以上です。指定したアクションでクリップボードに%vの内容がコピーされるはずです。 改行を含むものは取れないっぽいので注意。 ***Everest Ultimate Editionを使ったハードウェアの状況取得 本家の中で解説されているとおりですが一応。 ***Everest UltimateionをDLしてインストールし、起動します。 左上のFile→Preferencesといき、起動した設定画面で言語をJapaneseに変更しOKを押して日本語化します。 再度設定画面を開き、左のツリーからハードウェアモニタリング以下にある外部アプリケーションを選択し、右の画面でセンサーの値をWMIに描き込むのを有効にするにチェックを入れ、その下にある必要な項目にチェックを入れます。普通は温度やクーリングファン、電圧になると思います。 更新間隔は左のツリーのハードウェアモニタリングの下に更新間隔がありますのでそちらで設定してください。以上でEverest側の設定は終わりです。 Samurize側でメーターを追加していきます。いつも通りコンフィグエディタを起動し、メーターの追加でWMIを追加します。 情報タブに移動し、設定を変更をクリックします。設定画面が起動するので、 名前空間をroot\WMIに変更、ユーザー定義 Classにチェックを入れ、everest_sensorvaluesと入力します。他の欄は全てデフォルトのままです。 設定が完了するとインスタンスに項目がずらっと並びますので、必要な項目を選択し、プロパティでValueを選択すれば値を吐きます。以上です。 インスタンスは、頭にTがついてる項目がTemperature(温度)、Fがついている項目はFanの回転数、VがついているのがVoltage(電圧)となってます。 ***外部アプリとコマンドライン Samurizeのリンク機能には%vが使えます。ので、コマンドラインからファイルパスを渡して動作可能な外部アプリと、ファイルパスを出力するだけのスクリプトと組み合わせて面白いことが出来るかもしれません。 一例ですが、スライドショー系のスクリプトとコマンドラインからファイルパスを指定して壁紙を変更可能なアプリがあれば、壁紙チェンジャーが作れます。 この手の動作が可能なアプリは探せば結構ありますが、ここではGVを使ってみます。 GVをインストールし、スライドショー系スクリプトのメーターに入力コントロールを作成して、リンク先に "GV.exeのフルパス" "%v" /walln とすれば動くと思います。 (nは任意の数字が入ります。1=中央に表示、2=並べて表示、3=拡大して表示) まぁ壁紙チェンジャーの機能はRandomFilePathにもあるのでそんな意味があるとも思えませんが、こんなことも出来るよってことで。
**小技 新たに一項目設けるまでもないけど知ってると表現の幅が広がるかも…そんな小技を紹介する項です。 ある程度使い込んでみればすぐ気付くような小技から、その発想はなかったわという奇策、あるいは普段使わないけどこんな事も出来るよ的な玄人技まで、そんなもののデータベースとして機能すれば幸いです。 ちなみに本家にも細かいテクニックを紹介するフォーラムがありますので、多少なりとも英語が読める方は目を通すと新たな発見があるかも知れません。面白そうなテクニックは訳して紹介して欲しかったり。 #contents **クライアント ***別クライアントの描画優先順位 Samurizeを複数起動した際、基本的にあとから起動した方が描画優先順位が高いように出来ています(表示設定にもよりますが)。 これを応用したのがテクニックのフェード・アンド・オーバーレイ(仮)なのですが、同様の手法…「つまりクライアントの上に後から呼び出したクライアントを被せる」ことでランチャ的なクライアントから起動した際に、さも選択中のように項目の色を変えるというようなことも可能です。 +↓これをランチャとして right01.jpg +↓これを呼ばせることにより(要フォントの位置合わせ) right02.jpg +↓画面上ではこう見えるように right03.jpg 一つのiniにランチャ部分と情報部分を描画させて、丸ごと切り替えるという手もあります。どちらにも一長一短な部分がありますので、上手く使い分けてください。 ***カレンダーとBilder schra"gstellen (TurnImages.dll) Bilder schra"gstellen (TurnImages.dll)のエフェクト動作中はどんな設定をしていてもクライアントの描画速度が50msに強制変更されます。 カレンダーなんて普段は頻繁に描画更新する必要はないが、先月や今月にカレンダーの表示を変更したい時に困ってるという方は、これを利用して、切り替えボタンにTurnImagesを採用することでスムースに切り替え可能になります。 一応reloadを利用して別のiniに切り替えることも出来なくはないんですが、自分の環境ではタスクトレイのクライアントをクリックした瞬間エラー吐いて落ちました。もしかしたら環境次第かも知れませんので、チャレンジしたい方はどうぞ。 **メーター ***ヒストグラムが汚い ヒストグラムの幅が不揃いでみっともないなという方、メーターの幅を履歴数で割りきれる数を指定してください。構造的に1/2ドットとかねーです。 透過と錯覚を上手く使えば擬似的には可能なのかも知れませんが。 ***フェード(力づくで) 力業で解決することも結構多いSamurize。どうしても文字を儚くフェードさせたいんじゃー!という病んだ方は、該当位置を切り抜いて適当な画像編集ツールで徐々に透過させていき、それを目的のメーターの上から被せるという荒技があります。 台座があれば別ですが、基本的に壁紙ごとに作る必要があるので、わりとどうしようもないテクニックです。 -↓わかりづらいですが曲データの左右端がフェードっぽく見えてるといいな fade01.jpg -↓壁紙なくして二倍の図 fade02.jpg -↓即興ですが反射っぽく見えてるといいな fade03.jpg 一応TextFXでフォントの段階透過可能なんですが、例のように端っこだけちょこっとみたいなことは出来ないです。 壁紙の一部を加工して重ねてメータを変形させるというのは、わりとメジャーなテクニックです。どうしても角丸のプログレスバーが作りたいという人などはチャレンジしてみるのも一興かと思います。ただ汎用性には欠けますので、手間を惜しまないのであれば、DisplayPngFromDirやCustomProgressのような、メーターの値からpngを出力してくれるプラグインを使うか、あるいは通知機能と画像を組み合わせる手法で。 ***三色(以上)のグラデーション 通常プログレスバーで指定できるグラデーションは二色までですが、最小値0最大値50と最小値50最大値100のメーターに分割してそれぞれ色指定すれば三色使えます。もちろん細かく分割すればいくらでも増やせます。 Samurizeの仕様なのかどうなのかは知りませんが、二色のグラデはなぜか中央付近の明るさが落ちるので、幾つかに分割した方が鮮やかだったりします。 progress.jpg -上図上方は、緑→赤 の二色グラデーション -上図下方は、緑→黄色→赤 の三色グラデーション これに限らず同種のメーターで最大値最小値を変えて分割してそれぞれの色を変えるという単純なテクニック(ヒストグラムで80%を越えた部分だけ赤くするような)は、メータは一種に付一個というような固定観念に支配されていると気付きづらいかも知れません。 ***画面領域外にメーターを配置 何らかの理由、例えば半円のメーターを画面端にピッタリと配置したい場合、どうしてもメーターを画面外にはみ出させないとダメなのですが、通常単メーターを選択して画面外に配置することは出来ません。この場合直接座標を入力するか、複数のメーターを選択して動かすと画面外に追い出せるようになります。 ***ドライブ容量での選択 「ドライブ容量」のメーターでドライブを選択する際、CtrlやShiftを押しながら選択することで複数のドライブが選択可能です。全ドライブを合わせた使用状況などを出したい時はどうぞ。 ***タスクマネージャのようにグリッドスクロール ネタ元は本家のScrolling gridsで。正直これ考えた人、バカだと思います(褒め言葉)。 +まず普通にグラフを作ります。表示させるネタは何でもいいです。 +次にグラフの履歴数をメーターの幅に合わせます。 +新たにテキストメーターを追加します。横幅はグラフに合わせ、縦幅は後述の|ぐらいの幅で。 +「表示」タブのテキストボックスに| を大量に並べます。メーター幅からはみ出せばOKです。フォントサイズなどは適当に。 +そのまま「表示」タブの下方にある「テキストが範囲に収まらなければ・・・」まで進み、「スクロール」にチェック。スクロールタイプは「水平方向」、水平方向は「右から左」、「セパレーター」の「 | 」は削除し、スクロール間隔は「1000ミリ秒」とします。「一時停止」にチェックはしないでください。 +必要ならば、作成したテキストメーターをコピペして増やし、|がグラフと同じ高さになるように配置します。 +必要ならば、グラフィックの編集で適当に横棒を作り配置します。 以上で完成です。言葉にするとわかりづらいとは思いますが、要するに|をグリッドの縦ラインと見なし、テキストのスクロール機能でスクロールさせるだけですね。 動きが細かすぎて気にくわない人は履歴数を減らし、スクロール間隔をあわせてください。メーター幅160で履歴40とするならば、1000ミリ秒で4ドットスクロールということになりますので、テキスト側のスクロール間隔は250ミリとなります。 ***ネットワーク送受信速度の単位可変 ネットワーク送受信速度において、数値によって自動で単位が変化して欲しいという要望は本家フォーラムでも出ているようですが、制作者側では実装する気はない(もしくは優先度が低い)という回答がでています。 まぁ実際のところ力づくでも可能なので、一番需要が多そうなKB/sとMB/sを例に方法を書いておきます。 +まず普通に受信速度のメーターを作ります。 ++情報」タブで単位をBytesからKilobytesに変更します。 ++「表示」タブで透過度を0にします。 ++「一般」タブで「通知機能」にチェックを入れ、「通知リスト」に「追加」で監視する値を作ります。 ++「通知のタイミング」は「値を下回るとき」、値は「1024」、文字色は出したい色を選んでください。透過度はそのまま255です。 +もう一つ受信速度のメーターを作ります ++「情報」タブで単位をBytesからMegabytesに変更します。 ++「表示」タブで透過度を0にします。 ++「一般」タブで「通知機能」にチェックを入れ、「通知リスト」に「追加」で監視する値を二つ作ります。 +++通知のタイミングは「値を上回るとき」、値は「1」 、文字色は出したい色を選んでください。透過度はそのまま255です。 +++もう一つは「値になったとき」、値は「1」 、文字色は出したい色を選んでください。こちらも透過度はそのまま255です。 +で、出来た二つのメーターを重ねます。以上です。 Gigabytesも欲しいという人は、Megabytesのメーターをそのままコピーして単位をGigabytesに変更し、元のMagabytesのメーターの通知リストに監視する値をもう二つ追加して、「通知のタイミング」は -「値になったとき」で値に「1024」、透過度を0 -「値を上回るとき」で値に「1024」、透過度を0 としてください。 数値が1000越えると幅合わせがきついって人は、0.9MB/sと921.6KB/s監視させるといい感じかも知れません。 高速回線でメーターの上限値が高すぎてネットワーク送受信の値に幅があり、トップに合わせるとグラフが通常時ほとんど動かなくて寂しいという方も、これを応用して、最大値が違うグラフを幾つか重ねて、回線速度が規定のラインを越えたら表示を切り替える感じにするいいかも。 ***メーターと負の数 意外に知られていませんが(使い途がないともいう)、メーターの最大値/最小値には負の数も使用することが出来ます。 残念ながら最小値-100で最大値0と設定すると-100の時メーターが空になるという実に普通の挙動で、-100に向かってメーター増やしてくれないのかよと思うことも。 知ってると何かに使えるかも知れないので知識として。 ***演算処理と文字列 演算処理では数値以外にメーターの吐き出した文字列の合成をすることが可能になっています。以下簡単な設定。 メーターの一般タブにある演算処理にチェックを入れることで下方に演算の項目が現れます。そこの演算の設定を押すと現れる数式フォームの上部にあるラジオボタンで文字列結合を選択した後、合成したいメーターの名前なり追加したい文字列なりを+で繋いでいってください。%b差し挟むことで改行させることも出来ます。 ただ、コンフィグエディタ上でのテストは転ける時が多いので、クライアント上できちんと動くか確認した方が無難。 また、「文字列」のメーターだけは演算処理がグレーアウトして選択できないようになってます。 全ドライブ情報を一つのツールチップに纏めて出したい時や、改行で切られてるニュースを横一行に配置し、ティッカー風に横スクロールさせたい時など、意外と使い途は多いと思います。 ***科学演算の書式 ヘルプにもなく、ざっと見たところ本家のフォーラムにもなく、Excelなんかとは違う書式のようなので一応メモ代わりに。 例えば除算で余りを求めたい場合は演算式に a MOD b のように記述します(MODの前後には半角スペース必須)。これでaをbで割った時の余りが出力されます。 ***プログレスバーを簡単な背景として使う 適当なツールで描いちゃう方が速いって人も多いと思いますが。 適当な場所に100とだけ書かれたテキストファイルを作成し、コンフィグエディタのメーターの追加→テキストファイルでメーターを追加して、先に作成したテキストを指定します。その後一般タブで表示タイプをプログレスバーにすると、常に100%状態のプログレスバーができあがります。で、これを矩形画像として使います。通常の矩形画像と違い、グラデーションがかけられたり段階透過できたり、ちょっとしたメリットが。 progress2.jpg 同様に円グラフで半円とか変なのが作れたり。 ***アニメーションgifの表示 普通にグラフィックの編集→背景オブジェクトの追加→画像描画でアニメーションgifを追加しても動きません。この場合メーターの追加から文字列あたりの適当なメーターを作成し、表示タイプを画像にして目当てのアニメーションgifを追加してください。ループ回数なんかも設定できます。 ただし、本来アニメーションgifが持っているフレーム情報は反映されず、クライアントの表示更新間隔でパラパラ動くだけにとどまります。 ***横向きの▲を表示する テキストメータ等に任意の記号(▲▼等)を表示させたのち、縦書き用フォントを選択する(字体の選択で先頭に@の付いているもの)。 ***武蔵を使ったフォントの影と縁取り 武蔵 v0.1.6.5以降でアンチエイリアスのウェイトが設定出来るようになりました。 元々細めのフォントだと表示が掠れて見づらいという弱点をフォローするための設定追加だと思うのですが、ウェイトを大きめにとって完全に滲ませ、その上に通常のメーターを重ねることで、普通に作成するよりも効果的な影や縁取りが可能になります。特に縁取りは同系色の壁紙で沈んでしまう箇所なんかで効果的じゃないかと。 AA_Sample.jpg ***現在実行中のプロセス数 パフォーマンスモニタのメーターを作成して、パフォーマンスカウンタの選択でパフォーマンスオブジェクトをObjectsに変更し、Processesを選ぶことで表示されます。 **日付と時刻 ***時差機能 ネットで知り合った海外の知人と待ち合わせ時間決めてチャットするなどの状況でもない限り、使う状況はほとんどないとは思いますが、どうしても明日の日付が出したいという状況に陥った時、時差を使って1440分ずらして表示させることで解決します。 なんか一風変わった時計を作ろうとして、そうだ!時計をプログレスバーで表現するってのはどうだろう!というのはわりとありがちな思考のようですので、そういう時に役に立つかも知れません。 -↓右下の00:00が時差の調節で一時間ズレ。プログレスバーは分です zisa.jpg ちなみに設定でタイムゾーンを律儀に大阪、札幌、東京に合わせるとサマータイムが発動するので、サマータイムの習慣がない日本としては空白のまま使いましょう。 ***和暦 和暦を出したいという人は、日付/時刻のメーターの書式に「gg」で元号が、「ee」で年次が出せます。 月も和暦にあわせて睦月等で表示がしたい方は、おれはおれだ ◆SAGI2KFG6c氏のdayで設定すれば可能ですのでそちらをどうぞ。 ***デジタル時計のコロンを点滅させる 12:51みたいなデジタル時計の、真ん中のコロン(:)を秒で点滅させたいと思う人へ。元ネタは本家の[Easy] Clock: Blinking ':'。 1. 日付/時刻のテキストを追加し、書式で「z」を指定してミリ秒を出す。 2. 「表示」タブの「テキスト」を「:」とし、透過度を0に設定。 3. 次に「一般」タブで通知機能にチェックを入れ、通知のタイミングは「値を上回るとき」、値を「500」で、透過度を255に設定します。 4. 最後にプロジェクトのオプションで表示更新間隔を500ミリ秒に指定。 以上です ***カレンダーのtodayで画像を使う CCalendarやColorCalendarでカレンダーを作成する際、横あるいは縦型カレンダーは月が変わっても日の絶対位置は動かないというのを利用して、日付/時刻のメーターを使ってtodayに画像を使うという方法があります。 一日ならその日付の上に日付/時刻で書式ddを出力させたメーターを重ね、表示タイプ「画像」で、通知機能で01になった時画像を表示させるようにするわけですね。 以降監視する値を一個ずつずらして配置していきます。二日の上には監視02、三日の上には監視03… スクリプトの構造を理解してなくても可能なので楽ですが、月移動させてもまともに動作しないという弱点はあります。当月のみならあんまり気にしなくてもOK。 月が変わる時以外はスクリプト実行しなくても日付が変わると勝手に更新してくれるという利点も。 わかる人はスクリプトの出力を書き換えて(CCalendarならvar dfmt、ColorCalendarならname:"todaybg.txt"の設定)、適当な値を出力させて通知機能で画像出しちゃうと思いますが、まぁこんな事も出来るってことで。 こっちは応用すれば休日なんかにも画像が使えます。 **通知機能 ***タスクスケジューラ 普段あまり意識しない通知機能ですが、日付/時刻のメーターと組み合わせることでタスクスケジューラとして機能させることが可能になっています。 OS側にも搭載されている機能なのでこれ自体は別に珍しい物でもありませんが、Samurizeが動作してないと機能しないという点を利用して、コマンドラインオプションと連携させてSamurize関連の自動制御を行わせると便利かと思います。 一例として、カレンダーのように特定の時刻に更新させたいクライアントのリロードを仕込んでみるとか。 ***通知機能と文字列 通知機能を利用する時、選択した「通知タイミング」によっては「値」を要求されますが、値といっても数字以外の文字列を使用することが可能になっています。 例えば「日付/時刻」のメーターを追加し、「情報」タブの書式をdddにすると現在の曜日が日本語で出るわけですが、通知機能で「値になったとき」、値を「日」で、通知テキストを「Sun」とすると日曜日が英語表記になります。 もっとも例に挙げた機能はスクリプトのdayやWeekdayで実装されており、柔軟性もそちらの方が高いので、あくまで値に日本語を含む文字列を使えることの実証例程度に捕らえてください。 プレイヤーの再生状況を拾い、監視機能と通知画像を組み合わせて、状況がplayならばプレイヤー制御のアイコンを点灯させる…みたいな使い方も可能になります。 **スクリプト ***起動時のスクリプト更新 描画間隔を長目に取っていると、起動時にスクリプトが実行されても次の描画時間まで待たねば表示されません。 わりと不便ですが、実行させたいスクリプトを含むiniと表示用のiniを分割し、StartupEXやみやすたっぷのようなスタートアップを制御してくれるツールを使って、適当に起動遅延を噛ませて、スクリプトを含む側を先に起動させるといい感じになるんじゃないかと思います。 もちろん、テキスト排出型でないと使えません。 ***気象情報取得スクリプトなどで複数地域取得 複数地域の天気取得が可能なスクリプトはありますが、そうでないスクリプトでも複数地域取得する方法。 +スクリプトファイルを、取得したい地域の数だけScriptフォルダ内で複製する。(ファイル名は、拡張子の前に数字つけたりして) +それぞれのスクリプトの設定を変更する。(地域や出力先) +それらスクリプトをSamurizeに張る。 気象情報だけでなく、TV番組表やニュースなどでも同様です。 ***クリック時に音を再生したい ネタ元は本家フォーラムのPlay a Sound on Mouse-Down。 上記のトピック内でuziq氏がPlaySound.vbsを配布されていますので、それをC:\Program Files\Samurize\Scripts内に置き、該当メーターに入力コントロールを作成します。 リンク先はwscript.exe "C:\Program Files\Samurize\Scripts\PlaySound.vbs" "再生させたいwavファイルのパス"とし、アクションは左ボタンを押すあたりに設定します。 こうすることで左ボタンを押したときに指定したwavが再生されるようになります。 本命のリンクは左ボタンを放すに設定してください。 指定出来るのはwavのみです。 また、Windows標準のサウンドレコーダーを使った方法も記されていますが、これはいちいちサウンドレコーダーが起動するのであまり実用的でないと思います。 ***スクリプトのプロキシ設定 プロクシ通していると、天気予報サイトにアクセスすらできなくて泣いた。どうしてもプロクシ通して通信したいと思ったので、 jpWeatherR.vbsの595行目を書き換えた Set xmlhttp = CreateObject( "MSXML2.ServerXMLHTTP" ) ↓ Set xmlhttp = CreateObject("WinHttp.WinHttpRequest.5") そしたらブラウザで設定しているプロクシが有効になって、天気予報がみられた。よかった。うれしい。 他のスクリプトも、・CreateObject( "MSXML2.ServerXMLHTTP" ) ・CreateObject( "Microsoft.XMLHTTP" ) なんかしてるところを、CreateObject("WinHttp.WinHttpRequest.5") に書き換えたらうまくいくだろう。それにしても、最後の 5 ってなんだろう。 本当はxmlhttp.SetProxy()でプロキシ設定しようと思ったけど、必要なかったみたいね。 **プラグイン ***スライダーが滑らかに動かない時は 多分直面する機会があるのはボリューム操作だと思うのですが、スライダー系の操作が可能なプラグインでも、描画自体はクライアントの更新速度に左右されています。滑らかに感じるレベルまでクライアントの描画速度を上げてください。 **MeterMathを使ったアニメーション もともとは本家で折りたたみ&展開可能な設定ファイルの作成が登場した折に生み出されたテクニックの改変版。 オリジナルではCycleText.dllを使っていましたが、このdll公式に存在しないので(本家で検索すると出ては来ますが)、もっとメジャーなPluginPakに入っているMeterMathで再現。 バカテクの部類に入ると思いますが、歴史の闇に埋もれさせるには少々惜しい技術だと思うので軽く紹介。 MeterMathのサンプルにもありますが、設定で「メーター名+1」とすることで描画更新ごとに値が1増えるメーターが作れます。 これをプログレスバーにすることで、開始と同時に伸びるように見える背景として扱うというのが中核技術。 あとはそのメーターに通知機能を使い、アニメーション終了したぐらいの値にreloadを使って別のiniに復帰させるという形になります。 MeterMathの設定で「メーター名-1」とすることで描画更新ごとに値-1するメーターが作成できます。 これとメーターと負の数を合わせることで、閉じることも可能。 言葉だけだと説明が難しいので、一応サンプルも置いておきます。 サンプルではネタ元に敬意を表してプログレスバー使いましたが、別に通知機能組み合わせて画像ゴリゴリ動かすも良し。 単純に数値が増加するというだけなのに、アイデア次第でいろいろ使えると思います。 起動時に呼び出してスプラッシュ画面作ったり、Windows終了のリンククリックしたら呼び出してカウントダウン始めたり。 はっきり言ってSSに出ない部分なので楽しいのは当人だけなんですが、こういうバカギミック作るのが好きな人が他にいることを願って。 サンプルのような開閉はConfigRegionで簡単に出来るというのも廃れた原因かも。 ***PageScraperを使ってサイトに自動ログイン ログインが必要なページを利用する前にPageScraperの認証機能を動作させて、サイトをブラウザで開けば面倒なログイン手順が不要になります。 PageScraperのメーターはスタートアップに登録した構成ファイルに忍ばせておきましょう。 ***オートポップアップとオートクローズ -ニュースなどの情報が更新された時にポップアップで表示されて欲しいという時は、多重起動と通知機能の組み合わせで可能です。常に表示されているiniにメーターの追加で更新されたことを知りたいテキストファイルのメーター(文字列で構いません。ニュースならそのニュースの見出しや本文なんかでOK)を追加し、そのメーターに通知機能を設定し、「値が変更された時に」で「コマンドを実行する」で「client.exe i=xxxxxx reload」とします(xxxxxxは起動させたいインスタンス名)。 これで該当テキストが更新された時に自動でポップアップされるはずです。 -オートクローズはポップアップさせる情報のあるiniにMeterMathを使ってタイマーを作り、通知機能で任意の秒数経過した時にcloseコマンド送ってやればOKです。 メーターの追加→プラグインでMeterMathを追加し、実行する関数でExcuteMathを選択し設定で自身のメーター名+1とすれば、クライアントの更新間隔ごとに1ずつ増加するメーターの完成です。 あとはこのメーターに通知機能を設定して、「値になったら」で好きな時間を指定し(クライアントの更新時間が1000msなら60を指定すれば一分後に閉じます)、コマンドの実行でclient.exe i=xxxxxx closeとすれば自動で閉じるはず。 ちなみにテキストの更新が表示時間を上回ると、テキストが更新され続けた場合タイマーがリセットされ続けるので自動で閉じません。この場合ポップアップさせる時に送るコマンドからreload削ればきっちり指定間隔で消えると思います。 あと、通知機能はクライアントの更新間隔ごとに監視するようなので、極端に長い更新間隔取ってるiniに配置すると使い物にならんと思います。 -Webページの更新チェッカーはuziq氏のPluginPakに含まれるPageCheckがありますが、この方法だと別にWebページに拘らなくても使えます。再生中の曲が変更された時に数秒曲名出すとか(まぁこれもAMPIの機能で可能なんですけど…)。 ***特定のアプリケーションの起動/終了の監視 -そのものズバリのプラグインとしてKopplerというプラグインがあります。 あるいはFindTheTopProcessを利用して現在起動中のプロセス名を全て取得させ、値の監視で該当アプリケーションの名前を値に設定し、「値を含む時に」で監視させるという手段も。 **外部プログラム ***武蔵と通知機能 通知機能は武蔵に完全には実装されていません。 文字の置換のみは可能ですが、透過度や色の変更は不可能なので、どうしても武蔵クラスの綺麗なフォントで通知機能が使いたいという方はGDI++の導入を検討してみてください。 通知機能以外に垂直スクロールとか使えます。代わりに縁取りないです。あとワードラップで折り返す地点によっては化けます。上手く使い分けてください。 ちなみにGDI++で呼ばれたexeから呼ばれるdllにも適用されるので、IEの描画をそのまま利用しているためどうにもフォントが美しくないMiniBrowserでもフォントが綺麗になったりします。AlbumJacket+の歌詞表示で使用していて、どうにもフォントが気にくわない方は試してみるのもよいかと。 ***メーターからの返り値(%v)をクリップボードにコピー ネタ元は本家のCopy meter value to clipboard。以下簡単な訳。 http://www.steve.org.uk/Software/clipboard/ からCommand Line Clipboard Accessをダウンロードし、解凍して出てきたClipboard.exeを適当な場所に配置してパスを通します(面倒な方はC:\Windows\System32あたりへClipboard.exeをコピーしてください)。で、取得させたいメーターに適当な入力コントロールを設定し、リンク先に cmd.exe /C echo %v| clipboard - と記入します。以上です。指定したアクションでクリップボードに%vの内容がコピーされるはずです。 改行を含むものは取れないっぽいので注意。 ***Everest Ultimate Editionを使ったハードウェアの状況取得 本家の中で解説されているとおりですが一応。 ***Everest UltimateionをDLしてインストールし、起動します。 左上のFile→Preferencesといき、起動した設定画面で言語をJapaneseに変更しOKを押して日本語化します。 再度設定画面を開き、左のツリーからハードウェアモニタリング以下にある外部アプリケーションを選択し、右の画面でセンサーの値をWMIに描き込むのを有効にするにチェックを入れ、その下にある必要な項目にチェックを入れます。普通は温度やクーリングファン、電圧になると思います。 更新間隔は左のツリーのハードウェアモニタリングの下に更新間隔がありますのでそちらで設定してください。以上でEverest側の設定は終わりです。 Samurize側でメーターを追加していきます。いつも通りコンフィグエディタを起動し、メーターの追加でWMIを追加します。 情報タブに移動し、設定を変更をクリックします。設定画面が起動するので、 名前空間をroot\WMIに変更、ユーザー定義 Classにチェックを入れ、everest_sensorvaluesと入力します。他の欄は全てデフォルトのままです。 設定が完了するとインスタンスに項目がずらっと並びますので、必要な項目を選択し、プロパティでValueを選択すれば値を吐きます。以上です。 インスタンスは、頭にTがついてる項目がTemperature(温度)、Fがついている項目はFanの回転数、VがついているのがVoltage(電圧)となってます。 ***外部アプリとコマンドライン Samurizeのリンク機能には%vが使えます。ので、コマンドラインからファイルパスを渡して動作可能な外部アプリと、ファイルパスを出力するだけのスクリプトと組み合わせて面白いことが出来るかもしれません。 一例ですが、スライドショー系のスクリプトとコマンドラインからファイルパスを指定して壁紙を変更可能なアプリがあれば、壁紙チェンジャーが作れます。 この手の動作が可能なアプリは探せば結構ありますが、ここではGVを使ってみます。 GVをインストールし、スライドショー系スクリプトのメーターに入力コントロールを作成して、リンク先に "GV.exeのフルパス" "%v" /walln とすれば動くと思います。 (nは任意の数字が入ります。1=中央に表示、2=並べて表示、3=拡大して表示) まぁ壁紙チェンジャーの機能はRandomFilePathにもあるのでそんな意味があるとも思えませんが、こんなことも出来るよってことで。

表示オプション

横に並べて表示:
変化行の前後のみ表示:
ツールボックス

下から選んでください:

新しいページを作成する
ヘルプ / FAQ もご覧ください。