/ 最近 .rdf 追記 設定 本棚

脳log[2005-06]



2005年06月01日 (水)

[本日の購入][]日日日 【狂乱家族日記】 壱さつめ

[本日の購入][]日日日 【アンダカの改造学】 I ネームレス・フェニックス

[本日の購入][雑誌]SFマガジン編集部 【SFが読みたい!】 2005年版

[本日の購入][マンガ]山本 小鉄子×乙一 【死にぞこないの青】

[本日の購入][マンガ]あずま ゆき 【ボクの番台さん】 1


2005年06月08日 (水)

[tDiary]プラグイン:compress.rb 手動バックアップ

@conf.data_path以下の日記データを圧縮・ファイル化する。


2005年06月14日 (火)

[tDiary]プラグイン:index_list.rb: 「最新」「月」表示に目次を。

細かいことは以前の日記に書いてあるので、ここではビャッとソースを引用。

# index_list.rb
#
# 「最新」「月」表示に対応した目次を表示。
# recent_listやtitle_listと違い日付のリンク先は日別表示でなくページ内。
# その為に、diary.rhtmlをいじって日付にアンカーを付ける必要がある。
# 骨格にrecent_list.rbを使用。
# [2005-06-15] tdiary-2.1.1 N日表示対応
# [2005-04-20] 月表示では昇順に。

def index_list(date_format = nil, show_title = true)
	if(@mode == 'latest')
		limit = @conf.latest_limit;
	elsif(@mode == 'month')
		limit = 31;
	else
		return '';
	end
	date_format ||= @date_format;
	latest_start_ymd = @date.strftime('%Y%m%d');
	result = %Q[<ul class="index-list">\n];
	b = lambda {|ymd|
		next if(@mode == 'latest' && latest_start_ymd < ymd);
		break if(limit <= 0);
		diary = @diaries[ymd];
		next unless(diary.visible?);

		result << %Q[\t<li><a href="##{ymd}">#{diary.date.strftime(date_format)}</a>];
		if(show_title && diary.title)
			result << %Q[ #{diary.title}];
		end
		result << %Q[\n\t\t<ul class="index-list-item">\n];
		i = 1;
		if(!@plugin_files.grep(/\/category.rb$/).empty? && diary.categorizable?)
			diary.each_section{|section|
				result << "\t\t<li>";
				result << section.categories.collect{|c| category_anchor("#{c}")}.join;
				result << ' '+section.stripped_subtitle_to_html if(section.stripped_subtitle);
				result << "</li>\n";
				i += 1;
			}
		else
			diary.each_section{|section|
				if(section.subtitle)
					result << %Q[\t\t<li>#{section.subtitle_to_html}</li>\n];
				end
				i += 1;
			}
		end
		result << "\t\t</ul>\n\t</li>\n";
		limit -= 1;
	}
	begin
		@diaries.keys.sort.send( (@mode=='latest' ? :reverse_each : :each), &b);
	rescue LocalJumpError # <- break
		# Procオブジェクトで breakは使えないのだろうけど
		# それをブロックとして渡してるんやからエラーにせんでもええやん。> ruby-1.8.2
	end
	result << "<ul>";
	return apply_plugin(result);
end

2005年06月16日 (木)

[]日向まさみち 【本格推理委員会】

俺ってミステリ読みのスキルZEROなのな。

ヒントはあったのだよ。学年にたった一人の転校生とか、八重歯とか、八重歯とか、八重歯とか。

Ruby(1.8.2)メモ: break, next, yield

 メソッドに(ブロックとして)渡したProcオブジェクトで breakすると LocalJumpError。

[1].each{ break }

は無問題。

f = proc { break }
[1].each(&f)

in `each': break from proc-closure (LocalJumpError)

となる。差別だよ。撤廃撤廃。[ruby-dev:12070]。orz

状況によって Array#eachと Array#reverse_eachを使い分けたくて、でも処理内容は一緒だからブロックを使いまわそうとして、予め Procオブジェクトにしておいたら上記のエラーに遭遇した、と。

 nextはブロックを終わらせるが breakはブロックを呼び出したメソッドを終わらせる。

def hoge(&block)
  puts 'hoge start'
  yield
  puts 'hoge end'
end
hoge { puts 'next'; next }
hoge { puts 'break'; break }

これ↑の実行結果はこう↓なる。

hoge start
next
hoge end
hoge start
break

ブロックで breakすると、hogeの yieldより後ろが実行されてない。

def hoge(&block)
  puts 'hoge start'
  begin
    yield
  ensure
    puts 'hoge end'
  end
end
hoge { puts 'next'; next }
hoge { puts 'break'; break }

こう↑すると勝手に実行をスキップされない。

hoge start
next
hoge end
hoge start
break
hoge end

yieldの呼び出しには注意が必要だったのだな。

 ブロックの中でうっかり returnを使ってしまって LocalJumpErrorを食らった時は代わりに nextを使う。(ruby1.7以降)

そういうことです。補足はありません。


2005年06月22日 (水)

[読んだ][] 東野 圭吾 【変身】

脳移植により他人の脳片を埋め込まれた男が変わっていく。それを自分で自覚しているところに残酷さがある。記憶の中の自分と現在の自分の考え方・性格・能力が移植の前後で滑らかにつながっていないから、自分の記憶が他人の記憶に思えたり(1)、現在の自分が自分でなく思えてくる(2)*

主人公・成瀬純一の言葉

生きているというのは、単に呼吸しているとか、心臓が動いているとかってことじゃない。脳波が出ているってことでもない。それは足跡を残すってことなんだ。後ろにある足跡を見て、たしかに自分がつけたものだとわかるのが、生きているということなんだ。だけど今の俺は、かつて自分が残してきたはずの足跡を見ても、それが自分のものだとはどうしても思えない。二十年以上生きてきたはずの成瀬純一は、もうどこにもいないんだ (p.p.236-237)

それに対する堂元博士の言葉

君は昔自分がつけたはずの足跡が、自分のものでなくなったという。しかしそれでもいいではないか。(略)。だが彼ら(注・老人)はやがて自分の足跡がどこにあるのかも、自分が足跡をつけたという事実さえ忘れてしまうという状態になる。(p.p.260-261)

他人事じゃあないんだよね。脳移植はなくても自分が自分でなくなる恐怖ってのは長寿とセットになって誰にでも降りかかってくるんよね。

* (1)と(2)では自分の依って立つものが違うんだけど一体どっちが「自分」なんでしょうね。成瀬純一は記憶の方が本来の自分だと「知って」たわけだけど、それを隠されると……。


2005年06月24日 (金)

[本日の購入][マンガ]小林 尽 【School Rumble】 9

沢近と八雲に加えて、花井の「美コちゃん」発言で周防と花井も面白いことに。

[本日の購入][マンガ]長沢 智×今野 緒雪 【マリア様がみてる】 4

[本日の購入][マンガ]永田 正実 【恋愛カタログ】 29

[本日の購入][マンガ]畑 健二郎 【ハヤテのごとく!】 2

[本日の購入][マンガ]鈴木 央 【僕と君の間に】 2

[本日の購入][マンガ]木尾 士目 【げんしけん】 6 特装版(同人誌付き)

同人誌のメンツを見て特装版の購入決定。付録とはいえ、プロだけあって中身も読めるものだった(<-素直に面白かったって書け!)。

[本日の購入][マンガ]荒木 飛呂彦 【STEEL BALL RUN】 3

[本日の購入][マンガ]荒木 飛呂彦 【STEEL BALL RUN】 4

[本日の購入][]桜坂 洋 【スラムオンライン】

[本日の購入][]新城 カズマ 【サマー/タイム/トラベラー】 1

[本日の購入][]冲方 丁 【マルドゥック・スクランブル】 The Third Exhaust—排気

[本日の購入][]東野 圭吾 【片想い】

[本日の購入][]清水 マリコ 【君の嘘、伝説の君】

[本日の購入][雑誌]【ファウスト】 vol.1

[本日の購入][]フロイド・E・ブルーム他 【新・脳の探検】 上

宿題だからね。

[本日の購入][雑誌]【コミック RIN】 Vol.7

[本日の購入][マンガ]稍 日向 【隣の巫女さんは皆笑う】

「やや ひなた」と読むみたい。ATOKでちゃんと変換できる。どういう意味の字だ?

[本日の購入][マンガ]みずき えいむ 【MIX UP】

コミックRINで見かけるので買ってみた。

[本日の購入][マンガ]玉置 勉強 【となりのお姉さん】

[本日の購入][マンガ]玉置 勉強 【メロドラマティック】


2005年06月26日 (日) HYUNDAI, LGでは TOEIC800未満は足切りだって。世界を相手にする企業は違うね。

最終更新: 2009-11-19T03:57+0900

結果は

耳: 310 (62%)、読: 375 (75%) でした。括弧内は各500点満点とした時の得点率。順位は上から 25.7%。会場で 4人捕まえたらその内 1人は自分より上だったってこと。

やっぱりネックはリスニングだった。今回のテストの全体平均(310.5)を 0.5ポイント下回ってる。偏差値50を割るなんてありえない。英語を聞く機会がそもそも日常に存在しないのだから無理もないが。映画は吹き替えより字幕に限るといいつつも、その映画を見ないのだからね。唯一ともいえる英語を耳にする機会はかくして消える。

解き終わっての予想はそれぞれ 55% 75%だったから、リスニングでは勘がそこそこ当たってたということ。

[本日の購入][マンガ]美樹本 晴彦 【Ecole du Ciel】 6

面白いんだけどわかりにくく感じるのはガンダムの知識が皆無なせいだろうか。Zガンダムとか見たくなってきた。

[本日の購入][]清水 マリコ 【ネペンテス】

[本日の購入][]上遠野 浩平 【殺竜事件】

ファウストVol.5は上遠野 浩平 特集だったので読んでみたくなった。


2005年06月27日 (月)

[本日の購入][マンガ]水兵 きき 【みかにハラスメント】

近所の(SFマガジンを置いてない)本屋で発見。4刷目でした。アマゾンでは期待し過ぎで期待外れだったとかも言われてるけど、自分は容赦ない突き抜けっぷりが期待以上だったのでそういう人が何を期待していたのか不思議。ベクトルの向きが違ったんじゃないの?


2005年06月28日 (火)

[本日の購入][]ミッチェル・M・ワールドロップ 【複雑系】


2005年06月29日 (水)

[本日の購入][マンガ] 空知 英秋 【銀魂】 6


2005年06月30日 (木)

[本日の購入][雑誌]【SFマガジン】 8月号

日記とか blogを読むときは書き手が気になるものなので

about(かなりやっつけ気味)を書いてみたものの、書いてる間じゅう こんなやり方じゃダメだと(脳内)警告が出る。

  • doctypeとか<html>とか<meta>とか<body>とかヘッダ・フッタとかの定型部分をコピペするのは無駄。共通部分は共通のソースを共有するのがいろいろと便利。SSIとかCGIを使おう。
  • 毎回タグリファレンスを参照してValidなHTMLを書くのは面倒。HTMLより高級で簡素な言語(Wikiとか)を使おう。
  • 更新の手間は少なければ少ないほど良い。ブラウザで更新できるようにしよう。

今更なことを幾つも挙げてみたけれど結論は最初から出ていて、(共通部分埋め込みの為に)プラグインが使えて、(迷子のページとか迷子の訪問者が出ないように)ディレクトリを掘って自由にページを配置できる Wikiを探そうと思っている。Perlは触りたくないし、PHPはここ(SAKURA Internet レンタルサーバ/ライトプラン)では使えないので、特に Rubyで書かれたものを。

探すとか言いつつやはり最初から Hikiが頭にあったりする。プラグインは使えるし、ディレクトリは多分カテゴリで代用できる。