2010-01-01から1年間の記事一覧

ffmpeg で H.264 エンコーディングの動画を作る

HTML5 のvideo要素で使えたり使えなかったりするH.264だが,使えるにこしたことはないと思い,ffmpegでエンコーディングしようとしてみた.少しコツが必要なので,メモしておく.

Debian で日本語 TeX 環境を構築するメモ

Debian で日本語 TeX 環境を構築するには,以下のような手順を踏めばよいようだ.

最強のコマンドライン グラフ プロット ツール

いちいち Gnuplot を起動してグラフを描画するのが面倒なので,コマンドラインから使える Gnuplot のラッパスクリプトを書いた.変化するデータファイルをリアルタイムにプロットするスクリプトも組み込んだ.とても使いやすいので紹介する.

STL コンテナの前方宣言:軽いヘッダファイルを作るには

STL (standard template library) コンテナを include すると,それなりにコストが掛かる(参考).このコストは,場合によっては「前方宣言 (forward declaration)」によって大幅に軽減できる.STL コンテナの場合,前方宣言が少々ややこしいので,まとめて…

Google Chrome が重いので RAMディスク を使って高速化!

Google Chrome がたまにすごく重くなる.ディスクアクセスが原因のようだ.そこでキャッシュ(消えても問題ないファイル群)~/.cache/google-chrome を RAMディスク /dev/shm 以下に移動したのだが,それでも改善されない.そこで,設定ファイル~/.config/go…

浮動小数点型変数は必ず初期化する

使用する・しないに関わらず,float, double, long double 型の変数は必ず初期化するポリシーで生きることにする.

はてなブックマークから Google Bookmarks に移行する!

これまではてブを使っていたのだが,検索したブックマークの編集ができないなどの不満があったので,Google Bookmarks へ移行を始めた.Delicious 経由でdel.icio.us to Google Bookmarksを使う方法だとうまくいかなかったので,ブックマークを移行するスク…

テンプレートの中でほかのテンプレートクラスのメンバ型を使う方法: typename や template の別の用法について

あるテンプレート関数(テンプレート型引数 T)で,例えば std::vector::iterator itr を定義しようとすると,コンパイルエラーとなる(std::vector::iterator が型であると認識されない).この場合 typename std::vector::iterator itr のように,前に typ…

任意に整数変数を初期化するテンプレートクラス

クラスや構造体のメンバ変数を初期化するには,コンストラクタに初期化リストを書かなければならない.が,宣言場所と離れてしまったり,同じ変数名を2度(宣言と初期化で)書く必要があって面倒くさかったりする.整数変数しか使えないが,メンバ変数を宣言…

テンプレートを汎用的な構造体に対して特殊化するには

template<typename T> function(const T&)のようなテンプレート関数があったとして,この実装を T が構造体の場合は変更したい(部分特殊化したい)とする.特定の構造体に対する特殊化なら話は簡単だが,本記事では汎用的な構造体に対する部分特殊化を扱う.この問題は</typename>…

Gmailの文字を大きくする

Gmailの文字が小さくて見にくい(英文は特に).ズームすると,全体のバランスが崩れてださい.Chrome や Firefox 限定だと思われるが,Stylish という拡張機能(アドオン)をインストールすれば,メッセージだけ文字を大きくできる.

Debian を Windows7 上の VMware にインストールする場合の設定まとめ

VMware のできはとてもよろしいので,新しいPCにインストールするのと同じ感覚で Debian をインストールすることができた.しかし,キーバインドの設定など,若干トラブったので,まとめる.

NVIDIAの新しいドライバを入れたらXが起動しなくなった

Debian で,NVIDIA のドライバを 190.53 → 195.36.15 にアップグレードしたら, NVRM: API mismatch: ...というエラーが出てXが起動しなくなった.環境は Debian squeeze/testing, GeForce 9800 GT.sudo update-initramfs -u を実行すると,解決した.

変化するデータファイルをリアルタイムにプロットするスクリプト

シミュレーションなどでデータをファイルに出力する際,リアルタイムにデータをプロットしたい場合がある.gnuplot を popen し,自動的に replot によって描画を更新する python スクリプトを作ってみた.

friend 属性を継承する

C++

C++ では,クラスを継承しても friend 属性は継承されない.継承させたい場合,どうするか?

コマンドライン辞書(改)

英辞郎 on the Webの仕様がちょっと変更されたので,コマンドライン辞書を改造した. 続きを読む(20080629の日記へ)

Debian/Linux でDVD(映画)を見るための設定

暗号化されたDVDをmplayerとかVLCで再生するとエラーが出る場合,libdvdread4, libdvdcss2 をインストールすると見られるようになる.

(英語)論文を書くための七つ道具

(主に英語)論文を書くために使っているツール,ウェブサイトを紹介.

最近の octave / liboctave インストール

ここ最近の octave / liboctave のインストール方法についてメモ.(Debian / Ubuntu) (追記@Feb.06,2010)共有ライブラリの指定について.

Debian で apt-cache 使ったら Abort する

Debian を lenny から squeeze にアップグレード後, apt-cache でパッケージを探すたびに Abort するようになった. apt-get clean でローカルのリポジトリをクリアすれば解決した.

LaTeX のコンパイルを自動化するスクリプト - ドラフト版のバージョン情報・タイムスタンプも

LaTeX のコンパイルを, jbibtex のコンパイルも含めて(自動的に判断される),自動化するスクリプトを書いた.また,昨日の記事 作成時刻やバージョン情報を PDF にスタンプする を使って,バージョン情報,リビジョン情報,タイムスタンプなどをドラフト…

作成時刻やバージョン情報を PDF にスタンプする

作成時刻やバージョン情報を PDF にスタンプするためのスクリプトを作った. LaTeX とか pdftk を使う.