From: Minero Aoki Date: 2000-05-01T22:51:21+09:00 Subject: [ruby-list:22224] text buffer あおきです。 テキストバッファを作りました。 単に String の拡張みたいな StringBuffer と、マルチバイト文字を認識する TextBuffer で、ともに実装は gapped buffer です。 特徴。以下のようなことができます。 buf = TextBuffer.new m = buf.new_mark m.insert 'abc' * 100 m.forward 100 m2 = buf.new_mark m2.forward 102 m[ m2 ] # m から m2 まで ('bc') m2[ m ] # これも m から m2 まで ('bc') m[ m2 + 3 ] # m から m2 の 3 文字先まで m2.forward 5 # 5 文字前へ移動 m.delete( m2 ) # m から m2 まで削除 m.move_to buf.head # buf.head (バッファ先頭) に移動 buf[ buf.head, buf.tail ] # バッファ全体 (== to_s) また、TextBuffer のほうは改行を自動認識し、\n \r\n \r のすべてを (同時に)一文字の改行文字として扱います。 以上宣伝でした。 RAA かぼくのサイト(http://www1.u-netsurf.ne.jp/~brew/mine/)からどうぞ。 ------------------------------------------------------------------- あおきみねろう