sambaの文字コード

大分長いことemacsも使ってきたけど、今日初めてemacsで日本語ファイル名をつけられることに気がついた。 いまさらだけど、いまさらだけにびっくりだ。

ただ単にファイル名を指定するときにミニバッファで ctrl+| を2回叩けばそれでミニバッファに日本語が入る。

なんでいままで出来ないと思い込んでたのか謎だ。


ctrl+s でやる検索では日本語が入らないので、ファイルから日本語の文字列を検索することはできないので、それが出来たらなぁという気はする。 まぁ migemo インストールすれば出来るようになるので、それいれればいいだけの話なんだけど。
普通にportsもあるし、あとでいれとこ。


emacsで日本語ファイル名をつけた場合、FreeBSD だとそのフィアル名はやっぱり EUC になる。 で、自分のサーバは samba いれて Windows からもファイルサーバとしてみれるようにしているんだけど、samba の方では FreeBSD 側のファイルの文字コード(unix charset) が CP932 の S-JIS になってる。 samba ももうバージョン1になるかならないかという頃から使ってるし、なんで最初から samba文字コードEUC にしなかったのかは、バグがあったのか、そうしかできなかったのか、参考にしたマニュアルがそうしてたからか、自分が知らなかっただけなのか、もう記憶の彼方。
これ書いてて思い出したけど、sambaのバージョンが2になった頃に、その辺の不整合直そうと思いながら、ディスク容量がないしということであきらめたような記憶が…


今回は emacs で日本語ファイル名が可能という事が分かったというか、気がついたので今度こそそこらへんの不整合を整理することを決意。 しばらくサーバの日本語ファイル名がおかしくなったりならなかったりします。 利用している人はご注意。


移動のテンポラリ用に500Gのハードディスク1発くらい買うかな、最近えらい安くなってるし。
とかおもってたらsmbchartoolなるものを発見。 どうやらファイルの文字コードなんかを一括して変換してくれるものらしい。 まぁ考えればそーいうツールがあってもいいだろうしね。
とりあえずこれで挑戦。