この日記にはツッコミを入れられます。 ツッコミを入れたい日付をクリックすると、フォームが現れます。
xreaでtDiaryを使う方法はxrea.com で tDiary を使う方法やインストールメモやXREA + tDiary + Namazuをどうぞ。
torne対応と書いてあるものは高かったので、他のテレビだったかHDDレコーダーだったかに対応と書いてある安い1.5TBのUSB HDDを買ってみたが、そのまま問題なく使えた。 FAT32だったら何でも良さそうな感じがした。
http://ja.wikipedia.org/wiki/File_Allocation_Table によるとFAT32だと1ファイルのサイズ制限が4GiBより1バイト少ないらしいので、それを超える時間の録画をどうしているのかが気になった。
るりま用の rd-mode の設定の http://github.com/znz/dot-emacs/blob/master/init.el.d/50rd-mode.el を含めて emacs23 用に作り直している途中の emacs の設定を github においた。
http://redmine.ruby-lang.org/issues/show/2727 の件。 gdb の watch を使ってメモリが書き換えられてしまうところを追ってみたけど、さっぱり参考にならなかった。 gcc 4.4.1 だけじゃなくて Ubuntu 10.04 (beta) や sid の gcc 4.4.3 でも再現するようなので、gcc 側に報告した方が良さそうだけど、どこに言えばいいんだろう? 報告しやすいところにするなら debian の gcc パッケージに BTS になりそうだけど。
% gdb --args ./miniruby -e 'catch(:foo){throw :foo}'
GNU gdb (GDB) 7.0-ubuntu
Copyright (C) 2009 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "i486-linux-gnu".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from /home/kazu/build/ruby/ruby_1_9_1/ruby/miniruby...done.
(gdb) b rb_f_catch
Breakpoint 1 at 0x8167be7: file /home/kazu/wc/ruby/branches/ruby_1_9_1/vm_eval.c, line 1238.
(gdb) r
Starting program: /home/kazu/build/ruby/ruby_1_9_1/ruby/miniruby -e catch\(:foo\)\{throw\ :foo\}
[Thread debugging using libthread_db enabled]
[New Thread 0xb7c00b70 (LWP 23992)]
Breakpoint 1, rb_f_catch (argc=1, argv=0xb7c01024)
at /home/kazu/wc/ruby/branches/ruby_1_9_1/vm_eval.c:1238
1238 {
(gdb) watch *&th
Hardware watchpoint 2: *&th
(gdb) c
Continuing.
Hardware watchpoint 2: *&th
Old value = (rb_thread_t *) 0xb7e723ae
New value = (rb_thread_t *) 0x81c7758
rb_f_catch (argc=1, argv=0xb7c01024)
at /home/kazu/wc/ruby/branches/ruby_1_9_1/vm_eval.c:1243
1243 rb_control_frame_t *saved_cfp = th->cfp;
(gdb)
Continuing.
Hardware watchpoint 2: *&th
Old value = (rb_thread_t *) 0x81c7758
New value = (rb_thread_t *) 0xb7c80f8d
check_block (argc=1, argv=0xb7c01024)
at /home/kazu/wc/ruby/branches/ruby_1_9_1/vm.c:538
538 if (blockptr == 0) {
(gdb)
Continuing.
Hardware watchpoint 2: *&th
Old value = (rb_thread_t *) 0xb7c80f8d
New value = (rb_thread_t *) 0xffffffff
0x0816809c in vm_yield_setup_block_args (argc=1, argv=0xb7c01024)
at /home/kazu/wc/ruby/branches/ruby_1_9_1/vm_insnhelper.c:802
802 if (iseq->arg_rest == -1 && iseq->arg_opts == 0) {
(gdb)
Continuing.
Program received signal SIGSEGV, Segmentation fault.
0x08167f46 in rb_f_catch (argc=1, argv=0xb7c01024)
at /home/kazu/wc/ruby/branches/ruby_1_9_1/vm_eval.c:1258
1258 else if (state == TAG_THROW && RNODE(th->errinfo)->u1.value == tag) {
(gdb)
「charset=iso-2022-jp」なのにiso-2022-jpにない文字を使っているというよくある問題。
いわゆる機種依存文字については http://nijino.homelinux.net/emacs/emacs23-ja.html の設定を使うことで文字化けしなくなったが、 http://redmine.ruby-lang.org/issues/show/3161 で送られてきた http://www.fdiary.net/ml/ruby-reference-manual/msg/2137 が化けてしまう (本文中の「〜」が「ESC $(D"7」になるのと Subject が「帳」とフォントに対応する文字がないとき(?)の四角になる)。
http://github.com/znz/dot-emacs/blob/master/init.el.d/20japanese.el (該当部分は下にもコピー) のように CP50220 に JIS X 0212 対応をしたオレオレコーディングシステムを追加して使うようにしたら、本文の方は化けなくなったが、Subject の方は化けたままだった。
(define-coding-system 'cp50220+jisx0212
"CP50220 (Microsoft iso-2022-jp for mail) + JIS X 0212"
:coding-type 'iso-2022
:mnemonic ?J
:designation [(ascii japanese-jisx0208-1978 japanese-jisx0208
japanese-jisx0212 ; 追加
latin-jisx0201 katakana-jisx0201)
nil nil nil]
:flags '(short ascii-at-eol ascii-at-cntl 7-bit designation)
:charset-list '(ascii japanese-jisx0208
japanese-jisx0212 ; 追加
japanese-jisx0208-1978 latin-jisx0201
katakana-jisx0201)
:decode-translation-table '(cp51932-decode japanese-ucs-jis-to-cp932-map)
:encode-translation-table '(cp50220-jisx0201-katakana-to-zenkaku
cp51932-encode japanese-ucs-cp932-to-jis-map))
;; SEMI
(eval-after-load "mcs-20"
'(when (coding-system-p 'cp50220+jisx0212)
(add-to-list 'mime-charset-coding-system-alist
'(iso-2022-jp . cp50220+jisx0212))))
化ける Subject 部分の元は以下の通り。
Subject: [ruby-reference-manual:2137] [Bug #3161] @sse =?iso-2022-jp?B?GyRCJEchVkQiKEIkcjsyPkghIyFXJE8bKEI=?= =?iso-2022-jp?B?GyRCSVRNVxsoQg==?=
紫ログ:【雑】tarとかunzipとかでアーカイブファイルのURLを直接指定したい - livedoor Blog(ブログ) を見て、勝手に置き換えられるのは嫌だなあと思って、タブの補完の前に URL だったらダウンロードするコマンドラインを挟むものを作ってみた。
動作としては
という感じにしてみた。
download-or-expand-or-complete () {
local url
local -a words
words=("${(@Q)${(z)BUFFER}}")
if [[ "$words[-1]" == (http|https|ftp):* ]]; then
url="$words[-1]"
words[-1]=$url:t
BUFFER="$words"
zle push-line
BUFFER="wget $url"
else
zle expand-or-complete
fi
}
zle -N download-or-expand-or-complete
bindkey '^I' download-or-expand-or-complete
すでにバージョン管理下にあるものはディレクトリごと指定すれば問題なく svn commit 出来るが、 svn add はすでに管理下になっているディレクトリを指定してその中のファイルを追加は出来なくて困っていた。
とりあえず libsvn-ruby1.8 を使って以下のようにしたら追加できた。
% irb -r irb/completion
irb(main):001:0> require 'svn/client'
=> true
irb(main):002:0> ctx = Svn::Client::Context.new
=> #<Svn::Ext::Client::Svn_client_ctx_t:0x7f50d403e9a0>
irb(main):003:0> ctx.add("foo@bar", false)
=> nil
irb(main):004:0>
その後 twitter で「foo@bar@」のように指定すれば良いと教えてもらった。 他の操作でも同様に末尾に「@」をつければ出来た。
% svn add foo@bar svn: 警告: 'foo' が見つかりません % svn add foo@bar@ A foo@bar %
今回も参加した。
最近買った MacBook Pro の設定がほとんど出来ていなかったので、そっちに気を取られて、あんまり聞いていないこともあったけど。