2009/09/21

7zでファイル内容/ファイル名の暗号化

zipとかだとファイル内容の暗号化はできるが、ファイル名の暗号化はできない。
でも7zだと出来る!!ので便利。7z書庫だとarchive header encryptionがサポートされているので書庫の中のファイル名も隠せるようになっている。見せたくない物はファイル名も見せたくないので。。ww
使い方はパスワードをpasswordとすると、
7z a -l -ppassword foo -mhe=on -mx=5 file1 file2 file3
で可能。これでfoo.7zが無事作成される。
個々のオプションの意味は
aがarchiveにファイルを加える
-l はsymlinkが指しているファイルを格納
-mhe=onはheader encryptionをon
-mx=5は圧縮レベル、0が無圧縮、9が最高
ちなみにzipとは違いディレクトリを格納するときも'-r'オプションは必要ない。

2009/09/20

FirefoxのエディタをEmacsに

Firefoxのカスタマイズ用ファイルにはprefs.jsとuser.jsがあって、起動すると
デフォルトの設定の読み込み -> prefs.js読み込み -> user.js読み込み
の順で設定が読まれるそうである。デフォルトの状態ではuser.jsは存在しないが自分でuser.jsを作れば上記の理由でそこに書かれた設定が最優先で反映されるそうである。

書き方は普通と同じ
user_pref("キー",値);
で良いそうだ。よってuser.jsに
// ソース表示用にEmacsを使う
user_pref("view_source.editor.external", true);
user_pref("view_source.editor.path","/usr/bin/emacs");
と書けばCtrl+Uとかでページソースを見るときにEmacsで見れるようになる。

2009/09/12

gnome-mount

USBフラッシュメモリや音楽プレーヤーなどをマウントする際に
今までは/etc/fstabに
 #/dev/sdb1        /mnt/usb0    auto        user,noauto,rw    0 0
みたいに書いて使っていたが、デスクトップ環境にGNOMEを使っているのでgnome-mountを使うことにした。gnome-panel上のDisk mount appletがマウス操作できて便利で、それと統一しようと思ってマウントの方法を変えてみた。

/etc/fstabの#/dev/sdb1とかの記述を全部消して、
gnome-mount -td /dev/sdb1 とかすればマウントできる。
/media以下にマウントポイントを自動で作成してくれる。
gnome-umount -td /dev/sdb1 でアンマウント。

この方法でやるのは初めてだけど結構楽でいい感じだと思った。
Xが立ち上がってなくても使えるので便利。

2009/09/10

ThinkpadのTrackpointをDebianで使う

そろそろ入力関係の設定をxorg.confからhal/fdiに移行することにした。

現在Thinkpad X60を使っているのだが、Trackpointが正しく使えるようにする際に入力関係の設定をhal/fdi以下に書き込む必要 がある。
ノートPC上の中ボタンを押しながらトラックポイントを動かすことでスクロールが出来るのだが、これがないと非常に使いにくい。が、デフォルトでは使えないので自分で設定する必要がある。

/etc/hal/fdi/polycy/trackpoint.fdi
というファイルを以下の内容で作成する。
 <?xml version="1.0" encoding="UTF-8"?> <!-- -*- SGML -*- -->

<match key="info.product" string="TPPS/2 IBM TrackPoint">
 <merge key="input.x11_options.EmulateWheel" type="string">true</merge>
 <merge key="input.x11_options.EmulateWheelButton" type="string">2</merge>
 <merge key="input.x11_options.YAxisMapping" type="string">4 5</merge>
 <merge key="input.x11_options.Emulate3Buttons" type="string">true</merge>
 <merge key="input.x11_options.EmulateWheelTimeout" type="string">200</merge>
 <merge key="input.x11_options.XAxisMapping" type="string">6 7</merge>
</match>

こうしてhaldとXを再起動すれば使えるようになっていたので一安心。

2009/09/03

MP5 Playerとffmpeg

先日MP5 PlayerというiPod touchのパチモンみたいな物を買った。
タッチパネルが感圧式で感度が結構悪めだが、押し方と押す位置のコツを覚えれば
このMP5 Playerかなりイケてると思う。
音楽再生中にわりと微小な雑音が入ることがあるが、基本的に周囲の雑音が大きい場所でしか使わないのでほとんど気にならない。

容量は内蔵Flashメモリが2GでSDHCカードで+8Gにできる。値段は3999円で
かなりお得だと思った。

ビデオも見れるのでせっかくなのでこれ用にffmpegで変換することにした。
一応MP5 PLAYER USER MANUALが付いてきたのでそれを見ると
オーディオはMP3やFLAC、ビデオはaviやmp4,flvが対応しているようだった。

じゃあコンテナはaviかmp4にすればいいかと思って実際のビデオコーデックが何に対応しているかを
色々実験して調べてみたら、mpeg4は大丈夫だった。
mpeg4とmp3でいくかと思ってmp4コンテナに入れたらビデオは再生できたが、なぜか音が出なかった。
じゃあaviにするか。。という事でaviにしたら全く問題ありませんでしたw。

画質的にも問題なさそう。別にこのデバイスでそんな高画質を追求したいわけじゃないし。

つまり
ffmpeg -i file.mp4 -vcodec mpeg4 -acodec libmp3lame file.avi
でいけた。

コンテナは自動的にfile.aviの拡張子からaviにしてくれる。
video bitrateは-b。デフォルトは200k。
audio bitrateはデフォルトで64kなので128kにしたい場合は-ab 128kとする。
フレームレート変更は-r,サイズ変更は-s wxhでいける。アスペクト比は-aspect。
今回はオリジナルと同サイズでいいため何も指定しなかった。

いつ壊れるかは分からないが、今はこれでかなり満足しています。

2009/09/02

Firefoxのメニューバーの高さ変更

Firefoxのメニューバーの高さが高すぎると思ったので変更した。
後で見返せるよう書いておく。

chrome/userChrome.cssに
/*メニューバーの高さを変える*/
#toolbar-menubar {
max-height: 18px !important;
}
と書くだけ。

2009/09/01

geditの行間を開ける&キーバインド

以前のブログにも書いたことあるけど移行したのでもう一度書く(備忘録的な意味で)。
geditはいつからか (割と最近だった) キーバインド (Ctrl-K、Ctrl-dなどEmacs的によく使うものを含む) をソースコード内でハードコードしてて、その割り当てられた関数のせいで非常に使いにくいことになってましたw。

なのでそれを消して、ついでにAA作成の際に2chでの表示と同じようになるよう行間を1px開けるパッチを以前書きました。ただしgtkでは'Y'や'y'など一部の文字の幅が1px異なることに注意。こちらの原因は調べてません。。

diff -ur gedit-2.26.0/gedit/gedit-view.c gedit-2.26.0-my/gedit/gedit-view.c
--- gedit-2.26.0/gedit/gedit-view.c    2009-03-03 01:16:24.000000000 +0900
+++ gedit-2.26.0-my/gedit/gedit-view.c    2009-05-04 10:11:54.475660359 +0900
@@ -270,7 +270,7 @@
     binding_set = gtk_binding_set_by_class (klass);
     
     gtk_binding_entry_add_signal (binding_set,
-                      GDK_k,
+                      GDK_r,
                       GDK_CONTROL_MASK,
                       "start_interactive_search", 0);
         
@@ -280,16 +280,16 @@
                       "start_interactive_goto_line", 0);
     
     gtk_binding_entry_add_signal (binding_set,
-                      GDK_k,
+                      GDK_r,
                       GDK_CONTROL_MASK | GDK_SHIFT_MASK,
                       "reset_searched_text", 0);

-    gtk_binding_entry_add_signal (binding_set, 
+/*    gtk_binding_entry_add_signal (binding_set, 
                       GDK_d, 
                       GDK_CONTROL_MASK,
                       "delete_from_cursor", 2,
                       G_TYPE_ENUM, GTK_DELETE_PARAGRAPHS,
-                      G_TYPE_INT, 1);
+                      G_TYPE_INT, 1);*/
 } 
 static gboolean
@@ -355,6 +355,8 @@
     
     view->priv = GEDIT_VIEW_GET_PRIVATE (view);

+    gtk_text_view_set_pixels_below_lines(GTK_TEXT_VIEW(view),1);
+
     /*
      *  Set tab, fonts, wrap mode, colors, etc. according
      *  to preferences

gedit-1px-below-line-and-keybind.patchとでもして当てる。
やっぱAA作るならLinux + Compizでgedit透過だわ。。。