「foobar2000」忘備録、Playlist View編。

「Playlist View」って書くと何のことか分からん。
「Playlist View」は「Columns Playlist」のことです。カスタマイズ画面では右下で一覧表示されているプレイリストが該当します。

プレイリストと言えばこういう一覧表示ですよね。
画像クリックで元の大きさの画像が見られます。

アルバムで纏まっているのは、見やすいしとても便利ですね。しかし他のソート方法で抽出したファイルをプレイリスト化すると、いちいちアルバム名で纏める必要はなくなるわけです。寧ろそれが邪魔に感じる時もある。
そんな時に欲しいのが一覧表示のプレイリスト。というわけで、「EsPlaylist」と切り替えて使えるよう、設置してみました。

初心者が一から作るのは難しいので、まずは自分が使いたい状態に近い設定ファイル (.fcs)を手に入れ、流用して下さい。
場所はこちらから。

Columns UI 解説 - foobar2000 Wiki

コンポーネントの設定/Columns UI - foobar2000 Wiki*

上記リンクの「Columns UI のインストール」という部分にリンク先があります。国内・海外含め色々ありますが、今回は私が利用した「itunes1.fcs」を前提に話を進めます。

まずはPreferences→Display→Columns UI→「Main」タブのFCS Importingにある「Import 」ボタンをクリック、使いたいfcsファイルを選択し、ソフト内に設定を反映させましょう。

Playlist view 解説 - foobar2000 Wiki

コンポーネントの設定/Columns UI/Playlist View - foobar2000 Wiki*

はっきり言って、上記の解説ページを見るのが一番です。設定の英語部分も日本語で説明が付けられていますし、そもそも人様のfcsファイルを流用した時点である程度は使えますしね。

例によって忘備録ということで、それでも何かしら書き残していきたいと思います。でも本当に書く事がない……。

何はともあれ、画面にカラムが表示されているかと思います。そうじゃない方はPreferences→Display→Columns UI→Playlist Viewの「General」タブから、「Display column titles」にチェックを入れて下さい。

まずはカラムの上で右クリックして、「Auto-sizeing columns」のチェックを外しましょう。Preferences→Display→Columns UI→Playlist Viewの「General」タブから、「Auto-size columns to use all space」のチェックを外すのでも構いません。同じ設定なので。

これを外すことにより、カラムの幅を自己調節できるようになります。お好きなカラム幅を求めて弄ってみて下さい。終わったら再びチェックを戻しましょう。別に戻さなくてもそんなに困りませんけどね。

カスタマイズ画面ではこのカラム表示を消していますが、表示させておいた方が便利です。「Enable sorting using column titles」にチェックを入れておけば、カラムの部分を押すことにより、押したカラムの種類(アルバム名とか歌手名とか)でソートしてくれます。
なので私も最近は表示させていたりする……。

Playlist View「General」
画像クリックで元の大きさの画像が見られます。

Playlist Viewの「General」タブにある「Action to perform when middle clicking on playlist item」を「Remove track playlist」にしていますが、これは「EsPlaylist」でもミドルクリックを同じ設定にしているので、統一しておけばうっかりミスが減るかもしれないと思ったからです。

全体的に黒々しいのを求めているので、細かい事は後回しにして先に色や文字の設定を終わらせてしまいます。大体のコンポーネントはPreferences→Display→Columns UI→「Colours and Fonts」で文字の大きさや色を決められるので、「Columns Playlist」を選択し、設定しましょう。

しかしそれで終わると思ったら大間違いです。何だか上手く色が変更されていない……そんな時はここを見てみましょう。

Playlist View「Globals」
画像クリックで元の大きさの画像が見られます。

この部分に色の設定がされている筈です。要はプレイリストの色をどうにかしたいなら、ここを弄れってことです。

// --- Define colours ---
// Text
$set_global(cTxtStd,$rgb(255,255,255))
$set_global(cTxtSel,$rgb(255,255,255))

// Background
$set_global(cBgStd,$rgb(0,0,0))
$set_global(cBgSel,$rgb(100,0,0))
$set_global(cBgAlt,$rgb(0,0,0))

// Frames
$set_global(cFrmStd,$rgb(255,255.255))

Preferences→Display→Columns UI→Playlist View、「Globals」タブの「Variables」部分です。これだけだと意味がよく分かりませんが、「Style」の記述を見て下さい。

$set_style(text,
$get_global(cTxtStd),$get_global(cTxtSel))

$set_style(back,
$ifequal($mod(%_playlist_number%,2),0,$get_global(cBgStd),$get_global(cBgAlt)),$get_global(cBgSel))

「Variables」で変数の宣言をし、それを使い「Style」で設定を行なっているわけです。

$set_globalが$puts(name,value)

$get_globalが$get(name)

こう考えれば今まで記述されたものとそう変わらない感じですね。分からないのは$rgb辺りでしょうか? title formatting referenceによると、

$rgb(r,g,b)

「選択していないテキストの色を設定する」となっています。色の操作をする為のTF記述らしい?

一つずつ色を変更して調べてみると、

$set_global(cTxtStd,$rgb(255,255,255))
・通常のテキスト色。

$set_global(cTxtSel,$rgb(255,255,255))
・選択時のテキスト色。

$set_global(cBgSel,$rgb(100,0,0))
・選択時の背景色。

$set_global(cBgStd,$rgb(0,0,0))
・通常の背景色1。

$set_global(cBgAlt,$rgb(0,0,0))
・通常の背景色2。

通常の背景色は二種類用意されています。これはトラック毎に交互に色を変える為のものです。「$set_global(cFrmStd,$rgb(255,255.255))」に関しては、何処に使うのか最後まで分かりませんでした。フレーム? 何処の?

$set_style(text,$get_global(cTxtStd),$get_global(cTxtSel))

見た感じテキスト色の設定なんだと思います。もうここら辺は訳が分かりません。勘でそうなのだと判断する。

$set_style(back,$ifequal($mod(%_playlist_number%,2),0,$get_global(cBgStd),$get_global(cBgAlt)),$get_global(cBgSel))

これは……背景色の設定でいいのか?

$ifequal($mod(%_playlist_number%,2),0,$get_global(cBgStd),$get_global(cBgAlt)),

この部分が通常の背景色を設定している部分みたいですけど、TF記述で訳が分かりませんね。

$ifequal(n1,n2,then,else)
・n1とn2を比較、同値ならthenで演算して値を返す。違う場合はelseの演算を行い、値を返す。

つまり「$mod(%_playlist_number%,2)」と「0」を比べ、同じなら「$get_global(cBgStd)」の色、違うなら「$get_global(cBgAlt)」の色にしろってことです。

じゃあ「$mod(%_playlist_number%,2)」は何だろう?

%playlist_number%
・プレイリストのインデックス番号。

$mod(a,b)
・aをbで割った余りを返す。bが0ならaを返す。

例えば番号が16だとしたら16割る2で8、余りは0。代入される数値は0です。故に使われる色は「$get_global(cBgStd)」。17なら2で割り切れないわけですから、0以外の数値となり、故に使われるのは「$get_global(cBgAlt)」。
そう、偶数・奇数で色分けする為の式なのです。だから通常の背景色が二つあったんですね。

色設定も決まったら、カラムの表示です。
カラムの上で右クリックすると、現在どれが表示され、どれが非表示になっているのかが分かります。ここで簡易的な表示・非表示が可能です。

表示したい物を追加したりという細かい部分は、Preferences→Display→Columns UI→Playlist View→「Columns」で行います。
下の画面を御覧下さい。

Column details「Options」
画像クリックで元の大きさの画像が見られます。

左に「Column」という欄があり、カラムで表示できる情報が並んでいます。設定を変えたい場合はここから変えたい情報を選び、横の「Column details」で変更することができます。

カラムの上で右クリックする以外に、この「Show Column」のチェックの有無で表示・非表示が切り替え可能です。それとカラムの上で右クリック→「Edit this column」で、そのカラムの設定画面が呼び出せます。

「Title」はカラムに表示される名前です。「Width」は幅、「Alignment」は中央寄せなどのテキストの位置設定。「size Width」に関してはよく分かりません。設定しなくても特に問題はないです。

「Linked meta field」、ここは「Allow mouse activated inline editing mode」有効時に編集できる箇所……らしい。「Playlist Filters」はどのプレイリストに適用させるかを設定するものです。普通は「Show on all Playlists」でいいんではないでしょうか。

「Column details」の「Options」タブの隣に「scripts」タブがありますよね?

Column details「scripts」
画像クリックで元の大きさの画像が見られます。

上の画面の「Display」、ここがプレイリストに表示される部分の指定です。隣にある「Style」や「Sort」は、カラム独自の設定をしたい場合に入力する部分です。「Style」や「Sort」は「Display」とは違い、上の各チェックボタンにチェックを入れないと設定が反映されません。

「#」はプレイリストの順番を表示する部分なのですが、「Display」にはこう書き込まれています。

$num(%_playlist_number%,$len(%_playlist_total%))

……困った時はあれですね。 title formatting referenceで調べてみましょう。

$num(n,len)
・整数nをlenの数だけ桁取り(10進法で)。

%playlist_number%
・プレイリストのインデックス番号。

$len(a)
・文字列aの長さを返す。

%_playlist_total%
・プレイリストの項目数。

これは「プレイリストの番号を、項目分だけ桁取りする」式です。「わざわざそんな式を入れなくても」と思うかもしれません。私もそんな風に思っていました。しかしです!

私は「Custom Database」で聴いた回数の情報を保存させているんですが、それをこれで表示させ、カラムでのソートを掛けてみると、何故か上手くソートできません。その原因が、上記の「わざわざそんな式を使う」べき最大の理由、「桁」なのです。
どうやら同じ桁でないと、きちんとソートできないみたいなんですよ。試してみた私が言うから間違いない。

8
9
10

これだと駄目で、

08
09
10

これなら同じ桁として扱われ上手くいく。そういうことです。

回数の表示も桁数を揃えて表示してやれば問題ないわけですから、

[$num(%PLAY_COUNT_CD%,3)]

とし、三桁表示に統一してみました。流石に三桁あれば充分でしょう。寧ろ二桁でもいい気がします。これでソートする時も大丈夫!

次は「#」下にある、謎の空白部分です。「Title」が空白なのでカラム名には何も表示されていませんが、「Display」には入力されており、プレイリストで表示されるようになっています。

$if(%isplaying%,♪)

%isplaying%
・ファイルが再生中は1を返し、それ以外は何も返さない。

つまり「再生中なら♪を表示する」となっています。

それ以外で特筆するべきところは、「Rating」でしょうか。「Display」にはこう書いてあります。

$repeat($rgb(255,255,0,255,255,0)★,%RATING_CD%)$repeat($rgb(255,255,255,255,255,255)☆,$sub(5,%RATING_CD%))

「Track info mod」でも出てきたTF記述が再びです。しかも何かよく分からない感じに記述が増えています。

$repeat(a,n)
・文字列aをn回繰り返す。

これが二回も使われています。しかも

$rgb(r,g,b)
・選択していないテキストの色を設定する。

が入り込んできま……あれ? でも何か違いますね。

$rgb(r1,g1,b1,r2,g2,b2)
・選択していないテキストの色を設定する。
・r1、g1、b1(選択されていないテキスト)
・r2、g2、b2(選択されたテキスト)

どうやらこちらの式みたいです。似てるけどちょっと違う?

$repeat($rgb(255,255,0,255,255,0)★,%RATING_CD%)
$repeat($rgb(255,255,255,255,255,255)☆,$sub(5,%RATING_CD%))

一行だと分かり難いので、まずは二つに分解してみました。上が「★」の表示、下が「☆」の表示です。似ているようで所々が違いますね。
上は黄色い★を「%RATING_CD%」分だけ表示するのに対し、下は白い☆を「$sub(5,%RATING_CD%)」分だけ表示します。

$sub(a,b)
・aからbを引く。

5を「%RATING_CD%」分だけ引いた数の☆を表示しているわけですが、二つの式が並んでいることがポイントなんですね。最初に「%RATING_CD%」分だけ黄色い★が表示され、残りの部分は「$sub(5,%RATING_CD%)」で導き出した数値の☆を置く。これだとRating情報が入っていない場合、☆が五つ並びます。

別に「$repeat($rgb(255,255,0,255,255,0)★,%RATING_CD%)」だけで良い気もしないでもない。これも又、自己満足……。

最後は「Artist」と「Album」にの「Sort」に関してです。普通なら特に設定する必要はないのですが、「Custom Database」の回で私は「読み方」を入れる変数を作っていました。
それもこれも「真のあいうえお順」を目指してです。

「scripts」タブでまず「Use custom sort script」にチェックを入れ、「Sort」タブを選択、「Artist」なら「%ARTIST_INFO_CD%」、「Album」なら「%ALBUM_INFO_CD%」を入力します。

これでカラム名の部分をポチっと押してソートすると、「真のあいうえお順」でソートされます。しかも「Sort」の部分に入力しているので、表示の方は「Artist」であり「Album」のまま。
このような「Custom Database」無双、まだまだ続きますよ!



今日はここまで。
関連記事

Comment

(編集・削除用)
管理者にだけ表示を許可

Trackback

URL
http://dejiseikatu.blog77.fc2.com/tb.php/52-9176a322
この記事にトラックバック(FC2Blog User)

サイト内検索

月別アーカイブ

07  02  11  10  05  04  03  02  12  11  10  07  06  05  04  03  02  01  12  10  09  08  07  06  05  04  03  02  01  12  11  10  09  08  07  06  05  04  03  02  01  12  11  10  09  08  07  06  05  04  03  02  01  12  11  10 

スピーカー。

利用してる所とか。

ネットで買い物するなら。



ここで古本買ってます。 ブックオフオンライン

QRコード

QR

FC2カウンター

プロフィール

番頭はん

Author:番頭はん
腐女子なのに時々それを忘れる駄目オタク。
一日に二杯の珈琲を与えないと、目に見えて機嫌が悪くなる。
このサイトについて

ランキングに参加中。

人気ブログランキングへ

メールで連絡を取りたい方はこちらからどうぞ。

Amazon検索

カテゴリ

ユーザータグ

お世話になってます。



リンクシェア アフィリエイト紹介プログラム

最新コメント

最新トラックバック

Copyright © 番頭はん