2009-08 / 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
今日は川崎のヨドバシでいろいろ買ってきました。
SATAIIケーブル ストッパー付 片側Lコネクタ PSD30BK
SATAIIケーブル ストッパー付 片側Lコネクタ PSD30BL
オウルテック シリアルATA2ケーブル30cmブラック OWL-CBSATA-SLU30(BK)
まずは SATA II ケーブル 3 本。これらは仕事で使います。先月、Samba
サーバ用に買った 2 台の内蔵 1TB HDD を接続するケーブルです。同じも
のが 3 つなかったので、色や種類が違う 3 本を買いました。1 本は予備
です。
↓先月買った内蔵 1TB HDD
ずいぶん前に壊れたきり夏はエアコンだけで過ごしていました。扇風機と
エアコンのコンボはかなり涼しいので、ずっと買おうと思っていたのです。
一番シンプルで一番安いものを選びました。ヨドバシのポイントを使った
ら、お代は¥0でした。:^)
??? おかしいなあ。買うつもりじゃなかったのにw
実家に帰った時に、暇をつぶせそうです。
twittering-mode には、C-c C-l で「λかわいいよλ」と投稿できる、
よく分からない機能がある。たいてい間違って投稿されるのだと思う。w
まあ、OFF にすればいいんだけどね。
よく分からない機能ではあるけど、実際に使ってみるとハングルのような
文字が投稿されてしまう。前から気づいていたんだけど、急に思い立って
調べてみることにした。
まず、Emacs23 で再現し、Emacs22 では再現しないことが分かった。
twittering-update-lambda() の
"\xd34b\xd22b\xd26f\xd224\xd224\xd268\xd34b" を評価すると、以下のよ
うに結果が異なる。
Emacs22
Emacs23
"λ" の上にカーソルを置いて、"C-u C-x =" で文字コードを調べたところ、
Emacs22 は #xd34b で、Emacs23 は #x3bb だった。
mule-ja-2009:09607 で聞いてみたところ、Emacs23 では内部文字コードは
UNICODE になったとのこと。じゃあ Emacs22 はなんだろうと思ってググっ
てみたら、以下の変換式らしいと分かった。
0xc000 + JIS上位バイト*128 + JIS下位バイト
http://www.dennougedougakkai-ndd.org/~delmonta/emacs/27.html
"λ" は JIS コードでは 0x264b、UNICODE(UTF-16) では 0x03bb 。
このことから、Emacs23 の内部文字コードが UNICODE である裏付けが取れた。
では "λ" の JIS コード 0x264b を、Emacs22 の変換式に当てはめてみようか。
0xc000 + (0x26 * 0x80) + 0x4b = 0xd34b
前述の Emacs22 の変換式に間違いはなさそうだ。
さらに半田さんが mule-ja-2009:09610 で Emacs22 の内部文字コードにつ
いて、正確な情報を提供してくれた。すごいなあ。
Emacs22 と Emacs23 の内部文字コードは異なる。"\xd34b" のような表記
をするときは、(>= emacs-major-version 23) 等で切り分ける必要があり
そう。twittering-update-jojo() も化けるので、修正する必要あり。
"C-u C-x =" で一文字ずつ内部文字コードを調べるのは非効率なので、ま
とめて変換できるコードを作りました。もっと良い方法はあると思います。
(let ((str "λかわいいよλ") (str2 "") code) (with-temp-buffer (insert str) (goto-char (point-min)) (while (> (point-max) (point)) (setq code (char-after (point))) (setq str2 (concat str2 (if (>= code 128) (format "#x%x" code) (buffer-substring-no-properties (point) (+ (point) 1))))) (forward-char 1))) str2)
Emacs23 では上記の場合、"#x3bb#x304b#x308f#x3044#x3044#x3088#x3bb"
が得られ、"#" を全て "\" に変換し評価すると、"λかわいいよλ" にな
るはず。最初から "\x3bb" といった出力は出来ないのかなあ。
2009-08 / 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31