2009年1月26日月曜日

Windows用ソフト

基本
  • Firefox
  • Vim
  • QTTabbar
マルチメディア
  • foobar2000
  • Qonoha / Media Player Classic
  • ffdshow
  • Exact Audio Copy
  • FLAC Encoder
  • Helix MP3 Encoder - LAMEより速い
  • MP3Gain
  • MP3tag - MP3以外にも多くのフォーマットに対応
システム セキュリティ その他
  • Visual C++ Express
  • MinGW
  • Dropbox - シェルと統合するオンラインストレージ

2009年1月24日土曜日

foobar2000をWineで動作させる

Ubuntu Intrepid、Wine(1.0.1-0ubuntu2)を前提に書いている。
Wineをaptでインストールする。
sudo aptitude install wine
EXEアイコンのダブルクリックで起動するには、NucleusでWineに関連付けする。
foobar2000 最新版(0.9.6)をダウンロードする。
http://www.foobar2000.org/
インストーラを起動し、Portable Installを選択して疑似ドライブ内に展開する。Wineを信頼するなら、Full Installationでインストールしても良いかもしれない。
そのまま起動しても、Default UIなら一応動作するし、Columns UIでも既定なら問題ない。素晴らしい。ただ、ジャケット画像が歪だったり、イコライザダイアログを開いたら固まったりする。流石にPanel Stack SplitterやELPlaylistあたりは動作しないようだ。WineはDLL毎にエミュレートするようだが、問題のあるDLLは「本物」を使うことも可能である。Windowsからgdiplus.dllを持ってきて、foobar2000のディレクトリに配置し、winecfg->ライブラリからgdiplus.dllをNative->Built-inの順に設定する。Windowsには複数のgdiplus.dllがあったが、試して動作するものを選んだ。これで上記の問題は解決される。
Wineでは、フォントにビットマップが埋めこまれている場合、そちらを優先して使うようで、どうにもフォントが汚い。これは自分でビルドするしか解決方法が無いらしいのでパスした。代わりにビットマップの入っていないフォントを使うしかないが、レンダリングが綺麗でない。レンダはfreetypレンダリングeとは別なのだろうか。更に標準のテーマも野暮である。これはwinecfgでXPの.msstylesファイルを読ませるとある程度Windowsに近くなる。Vistaは知らん。
何だかんだで快適に動作するのでこれで良し。

配列とポインタ

配列
メモリ上に、1要素が型のサイズである連続領域を作成。
規格より、要素は必ず連続領域にあることが保証されている。
配列の識別子だけ書くと、配列の実体への参照(配列そのもの)を指す。
多次元配列も、結局は、型サイズの一次元配列として扱う。
式中の配列への参照は、例外を除き、その型の先頭要素へのポインタに成り下がる。
要素数は、定数しか認められていない(動的確保は不可能である)。
ポインタ
アドレスを格納し、型でサイズを表わす。
間接参照演算子*を付加すると、ポインタの指す先への参照となる。
ポインタに加算すると型のサイズだけ増える。
int array[M][N];
array[A][B] は *(*(array + A) + B) と結果的に同等である。
但し(0 <= A < M)&&(0 <= B < N)ってことで^^;
  1. 2次元配列とはいえ、結局int[N]型で要素数Mの一次元配列と考える。
  2. そうなるとarrayは、int[N]型配列の参照(そのもの、配列全体、要素全部)である。
  3. int[N]型配列の参照は、その型の先頭要素へのポインタに成り下がるから、すぐint[N]*型ポインタとなる。
  4. int[N]*型ポインタにAを加算する。
  5. int[N]*型ポインタの参照は、int[N]型の変数の実体である。
  6. そういえばint[N]型の変数は、int型で要素数Nの配列だったね。
  7. int型配列への参照は、その型の先頭要素へのポインタに成り下がるから、すぐint*型ポインタとなる。
  8. int*型ポインタにBを加算する。
  9. int*型ポインタの参照は、int型の変数の実体である。おめでとう。
あー、解かったときすごいすっきりした。C Language FAQ、ありがとう。 てか、頼むから本に書いていてくれ。K&Rには書いてあるのか?

Firefox 拡張一覧

必須

  • Tab Mix Plus - 高機能タブブラウジング
  • FireGestures - 新鋭の軽量マウスジェスチャ
  • XUL/Migemo - Migemo検索
  • bbs2chreader - 2chブラウザ
  • テキストリンク - URI文字列をダブルクリックで開ける
  • セッションマネージャ - セッションを自動保存する

次点

  • Speed Dial - Operaのスピードダイアル
  • Extended Statusbar - Operaのステータスバー
  • Download Statusbar - ステータスバーに収まるダウンロードマネージャ
  • Adblock Plus - 広告を軽減する
  • Firebug - 高機能Web開発ツール
  • Flagfox - ロケーションバーに接続先の国旗を表示する
どうもUbuntuではSpeed DialはGMailと相性が悪いようだ。

Firefoxの検索バーを日本仕様にする

Ubuntuでは既定で検索エンジンに米国のサイトが登録されている。google.comとgoogle.co.jpを頻繁に併用するとき、検索エンジンが米国版になったりして鬱陶しい。Mozillaから定義ファイルが落とせるようだが、Googleは同梱済みといってダウンロードできない。解決策を以下に示す。
  1. Firefoxのバイナリをダウンロードし、解凍する
  2. アーカイブ内、searhplugins配下のファイルを/usr/lib/firefox-addons/searchplugins/に移動する
  3. XMLファイルを適宜編集する

GNOME 外観構築メモ

GTK

  • Clearlooks-Colors
  • Murrine-Colors(要Murrine SVGエンジン)
  • Shiki-Colors
  • SoftWhite
  • Black-Diamond

Metacityのウィンドウデコレータ

Emeraldと排反
  • Clearlooks-Colors
  • Murrine-Colors
  • Shiki-Colors

Emeraldウィンドウデコレータ

Metacityのそれと排反
  • Shiki-Colors
  • Clear-euh

GNOME アイコン

  • GNOME-Colors
  • KDE4 Oxygenstyle
  • Vibrant
  • Meliae

壁紙

  • The Inspiration Gallary