                         ViVi version 5.0.028
                             07-Jun-2011
                    Copyright (C) 2011 by N.Tsuda
                  mailto: ntsuda@master.email.ne.jp
                  http://http://twitter.com/vivisuke
                       http://vivi.dyndns.org/


■ 概要

ViVi は vi コマンドをサポートするテキストエディタです。
vi コマンドは、基本的に (n)vi 互換ですが、Ctrl + V 等 Windows標準キー
バインドと矛盾するものは Windows キー割り当てを優先しています（ViVi的
キーバインド）。


■ ライセンス

ViVi は有料のソフトウェアですが、verion 5.0.xxx だけは特別に無料で使用
できるフリーウェアです。
※ ver 5.1 or 6.0 以降は有料に戻ります。

ソースコードは http://sourceforge.jp/projects/vivi-50-free/ からゲット
でき、ライセンスは基本的にMITライセンスです。
ですので、不自由なGPLと違ってソースコードを自由に再利用可能です。
ただし、作者は不自由で使い勝手の悪いGPLが大嫌いなので、ソースコード
をGPL系のプロジェクトで再利用することを禁止します。

また、プロジェクトにはイラストファイルが含まれていますが、イラストは
MIT ライセンスではありません。
再利用したい場合は以下の著作権者に問い合せてください。
http://www.pixiv.net/member.php?id=220294


■ 開発モデル

ViVi は「頑固爺開発モデル」を採用しています。
これは開発に関わるすべてのことは作者の独断と偏見で決定する、という開発
モデルです。他の人の分析・意見は注意深く拝聴しますが、作者の意向と異な
る意見に従うということは一切ありません。


■ 謝辞

素敵なイラストの利用を許諾してくださった 桃色椿 さんに感謝しています。


■ SPR (Software Problem Report)

凡例：● Open, ◎ Fix&Close, ○ notFix&Close, etc

#SPR 状 優 Open     build Close    build type  概要
---- -- -- -------- ----- -------- ----- ----  ------------------------------------------------------------------
0001 ◎ B  11/04/02 0.000 11/04/02 0.001│ToDo│プロジェクト新規作成
0002 ◎ B  11/04/02 0.000 11/04/02 0.001│ToDo│OutputBar 実装
0003 ◎ B  11/04/03 0.000 11/04/03 0.001│ToDo│TextDocument クラス組み込み
	補足：View クラス導入がまだなので、とりあえず PlainTextEdit が TextDocument オブジェクトを保持するようにしておく
0004 ◎ C  11/04/03 0.000 11/05/25 0.025│問題│ドッキングバーの表示状態を保存・復帰するようにした方がよい
0005 ◎ B  11/04/03 0.000 11/04/03 0.001│ToDo│TextDocument の内容をとりあえず PlainTextEdit に表示するようにする
	詳細：スクロール無し、タブも考慮しない。単にブロック単位で文字列表示のみ
0006 ◎ B  11/04/03 0.000 11/04/03 0.001│ToDo│テキストカーソル表示
0007 ◎ B  11/04/03 0.000 11/04/08 0.001│ToDo│PlainTextEdit のマウスポインタをIビームに変更
0008 ◎ B  11/04/03 0.000 11/04/03 0.001│ToDo│文字挿入処理
0009 ◎ B  11/04/03 0.000 11/04/03 0.001│ToDo│BackSpace
0010 ◎ B  11/04/03 0.000 11/04/03 0.001│ToDo│Delete
0011 ◎ B  11/04/03 0.000 11/04/04 0.001│ToDo│アバウトダイアログ
0012 ◎ B  11/04/03 0.000 11/04/08 0.001│ToDo│IME 入力
	結果：とりあえず入力可能にした。様々な問題があるが、それらは別SPRとする
0013 ◎ B  11/04/04 0.000 11/04/04 0.001│ToDo│ペースト機能
0014 ◎ B  11/04/04 0.000 11/04/05 0.001│ToDo│垂直スクロールバーによるスクロール機能
0015 ◎ B  11/04/04 0.000 11/04/04 0.001│ToDo│ステータスバー表示
0016 ◎ B  11/04/04 0.000 11/04/04 0.001│ToDo│undo/redo
0017 ◎ B  11/04/04 0.000 11/04/05 0.001│問題│Tab があるとカーソル位置が不正になる
0018 ◎ B  11/04/05 0.000 11/04/05 0.001│ToDo│単体テスト機能追加
0019 ◎ B  11/04/05 0.000 11/04/05 0.001│ToDo│ベンチマーク機能追加
0020 ◎ B  11/04/05 0.000 11/04/05 0.001│ToDo│テキストカーソル位置を表示するよう自動スクロール
0021 ◎ B  11/04/05 0.000 11/04/05 0.001│ToDo│テストのために、とりあえず上下カーソル移動を実装しておく
0022 ◎ B  11/04/05 0.000 11/04/05 0.001│ToDo│フォント情報を参照し、表示位置を決める
0023 ◎ B  11/04/05 0.000 11/04/05 0.001│問題│Tab 挿入ができない
	原因：フォカース移動として処理されている？
0024 ◎ B  11/04/05 0.000 11/04/05 0.001│ToDo│Ctrl + Home
0025 ◎ B  11/04/05 0.000 11/04/07 0.001│ToDo│Ctrl + End
0026 ◎ B  11/04/05 0.000 11/04/09 0.002│ToDo│編集時に TextDocument::m_blockIndex, m_blockPosition を更新
0027 ◎ B  11/04/05 0.000 11/04/05 0.001│ToDo│行番号表示
0028 ◎ B  11/04/05 0.000 11/04/05 0.001│Rfct│blockIndex, blockPosition はひとつの構造体にした方がよい
0029 ◎ B  11/04/05 0.000 11/04/05 0.001│ToDo│[EOF] 表示
0030 ◎ B  11/04/05 0.000 11/04/10 0.002│ToDo│改行記号表示
0031 ◎ B  11/04/05 0.000 11/05/19 0.023│ToDo│全角空白記号表示
0032 ◎ B  11/04/05 0.000 11/04/10 0.002│ToDo│タブ記号表示
0033 ◎ C  11/04/05 0.000 11/04/10 0.002│問題│TextDocument::findBlockIndex() がブロックキャッシュを参照していない
0034 ◎ B  11/04/05 0.000 11/04/05 0.001│問題│垂直スクロールバーでスクロールしても行番号部分が再描画されない
0035 ◎ B  11/04/06 0.000 11/04/06 0.001│ToDo│ファイルオープン
0036 ◎ B  11/04/06 0.000 11/04/07 0.001│ToDo│MRUファイル機能
0037 ◎ B  11/04/06 0.000 11/04/06 0.001│問題│複数ファイルをオープンできない
0038 ◎ B  11/04/06 0.000 11/04/07 0.001│問題│ウィンドウをリサイズしてもスクロールバー情報が更新されない
0039 ◎ B  11/04/06 0.000 11/04/07 0.001│問題│ファイルオープン直後のスクロールバー情報が不正
0040 ◎ B  11/04/06 0.000 11/04/06 0.001│ToDo│Ctrl + マウスホイールによる拡大縮小
	結果：とりあえず実装。ただし、垂直スクロールバー情報が更新されない
0041 ◎ B  11/04/06 0.000 11/04/06 0.001│ToDo│new
0042 ● B  11/04/06 0.000               │ToDo│カレントファイルディレクトリに移動
0043 ◎ B  11/04/06 0.000 11/04/06 0.001│ToDo│Esc でカレントディレクトリをステータスバーに表示
0044 ◎ B  11/04/06 0.000 11/04/06 0.001│cln │BLOCK_HAS_OFFSET に関する部分は削除し、クリーンナップ
0045 ◎ B  11/04/07 0.000 11/04/07 0.001│Rfct│ブロック情報を渡す場合は TextBlockData を使用するように変更
0046 ◎ B  11/04/07 0.000 11/04/07 0.001│ToDo│Esc で現在カーソル情報、ブロックキャッシュ情報をステータスバーに表示
0047 ◎ B  11/04/07 0.000 11/04/07 0.001│ToDo│Shift + ←、→でテキスト選択
0048 ◎ B  11/04/07 0.000 11/04/07 0.001│ToDo│選択状態表示
	結果：とりあえずライトグレイで描画。後で色を変えよう
0049 ◎ B  11/04/07 0.000 11/04/07 0.001│問題│半角空白の次にカーソルがある場合に、カーソルが左にずれる
	結果：本件は治ったが、別件あり：SPR#0055
0050 ◎ B  11/04/07 0.000 11/04/07 0.001│ToDo│copy, cut
0051 ◎ B  11/04/07 0.000 11/04/07 0.001│ToDo│Home
	結果：とりあえず実装。先頭非空白文字へは移動しない。要別SPR登録
0052 ◎ B  11/04/07 0.000 11/04/07 0.001│ToDo│End
0053 ◎ B  11/04/07 0.000 11/04/10 0.002│ToDo│PageUp, PageDown
0054 ◎ B  11/04/07 0.000 11/04/07 0.001│Rfct│PlainTextEdit::keyPressEvent()カーソル移動処理部分：movePosition() コールを一箇所にする
0055 ◎ B  11/04/07 0.000 11/04/08 0.001│問題│途中に半角空白があるとカーソル位置がずれる
0056 ◎ B  11/04/07 0.000 11/04/07 0.001│問題│UTF-8データオフセットと文字数が混同されている
0057 ◎ B  11/04/07 0.000 11/04/07 0.001│問題│行数が10万を超えた場合は行番号エリアを広くした方がよい
0058 ◎ B  11/04/07 0.000 11/04/10 0.002│問題│改行挿入を行って、カーソルが画面下に移動しても、自動スクロールしない
0059 ◎ B  11/04/07 0.000 11/04/07 0.001│ToDo│Ctrl + A で全選択
0060 ◎ B  11/04/07 0.000 11/04/07 0.001│問題│垂直スクロールバー：ノブのサイズが大きい
0061 ◎ B  11/04/07 0.000 11/04/07 0.001│問題│undo/redo を行ったときに、カーソル位置が表示されるように自動スクロールしない
0062 ◎ B  11/04/07 0.000 11/04/10 0.002│ToDo│テキストカーソルブリンク
0063 ◎ B  11/04/08 0.000 11/04/08 0.001│ToDo│save
0064 ◎ B  11/04/08 0.000 11/04/08 0.001│問題│編集＆未保存文書をクローズしても、保存確認ダイアログが出ない
0065 ◎ B  11/04/08 0.000 11/04/08 0.001│ToDo│編集時に contentsChanged() シグナルをエミット
0066 ◎ B  11/04/08 0.000 11/04/08 0.001│ToDo│SaveAs
0067 ◎ B  11/04/08 0.000 11/04/08 0.001│ToDo│IME変換候補文字表示
0068 ◎ B  11/04/08 0.000 11/04/10 0.002│問題│IME変換候補一覧表示位置不正
0069 ◎ B  11/04/08 0.000 11/04/08 0.001│ToDo│マウスクリックでカーソル設定
0070 ◎ B  11/04/08 0.000 11/04/08 0.001│問題│「、」の直後のカーソルが左にずれる
0071 ◎ B  11/04/08 0.000 11/04/08 0.001│ToDo│マウスクリック＆ドラッグによる文字列選択
	結果：とりあえず実装。自動スクロールは未実装
0072 ◎ B  11/04/08 0.000 11/04/08 0.001│ToDo│Ctrl + ← → で単語単位移動
0073 ◎ B  11/04/08 0.000 11/04/08 0.001│問題│編集後にundoしてもモディファイ状態が元に戻らない
0074 ● B  11/04/08 0.000               │問題│↑↓でカラム位置が保存されない
	メモ：QFontMetrics が無いとx座標を計算できないので、TextCursor が QWidget へのポインタを保持する？
0075 ◎ C  11/04/08 0.000 11/04/13 0.004│問題│垂直スクロールバーのノブをドラッグして末尾移動しても、EOFが表示される様にスクロールしない
0076 ● C  11/04/08 0.000               │問題│IME変換中文字列はアンダーラインを表示した方がよい
0077 ◎ C  11/04/08 0.000 11/04/10 0.001│問題│初期状態から編集、undo 後に、redo を行ってもモディファイ状態にならない
0078 ◎ C  11/04/09 0.000 11/04/09 0.001│問題│Shift + Ctr + ←、→ が動作不良
0079 ◎ C  11/04/09 0.000 11/04/09 0.001│ToDo│マウスダブルクリックで単語単位選択
0080 ◎ C  11/04/09 0.001 11/04/09 0.002│問題│カーソルが CRLF 位置にいるときに、→ を押しても次の行にカーソル移動しない
0081 ◎ C  11/04/09 0.001 11/04/09 0.002│ToDo│Enter を押した場合は \n を挿入するようにしておく
0082 ◎ C  11/04/09 0.001 11/04/09 0.002│ToDo│CRLF/CR/LF の区別がつく改行記号をとりあえず表示
0083 ◎ C  11/04/09 0.001 11/04/09 0.002│ToDo│デバッグ用に TextDocument::m_blocks の値を表示するメニュー追加
0084 ◎ C  11/04/09 0.001 11/04/09 0.002│問題│改行挿入後のテキストカーソルの TextBlockData の値が不正
0085 ◎ C  11/04/10 0.001 11/04/10 0.002│Rfct│UndoMgr::m_items の型を std::vector<GVUndoItem> に変え、boost_pool の使用を止める
0086 ◎ C  11/04/10 0.001 11/04/10 0.002│ToDo│QtCreator minGW でビルド可能にする
0087 ◎ B  11/04/10 0.001 11/04/13 0.005│ToDo│Ctrl + Delete でカーソル位置単語末尾まで削除
0088 ◎ C  11/04/10 0.001 11/04/14 0.005│ToDo│Shift + Delete でカーソル位置から行末までを削除
0089 ◎ C  11/04/10 0.001 11/04/13 0.005│ToDo│Ctrl + BackSpace でカーソル位置から単語先頭まで削除
0090 ◎ C  11/04/10 0.001 11/04/14 0.005│ToDo│Shift + BackSpace でカーソル位置から行頭まで削除
0091 ○ C  11/04/10 0.001               │問題│2行目で文字挿入しても、ブロックキャッシュが2行目にならない
	結果：挿入行に設定されたあと、表示開始行に設定されていた
0092 ◎ C  11/04/10 0.001 11/04/10 0.002│問題│PageDown 押下に Ctrl + End を押しても、EOF が表示されるようにカーソル移動しない
0093 ◎ C  11/04/10 0.001 11/04/10 0.002│問題│カーソル移動直後にカーソルが表示されない。ブリンクタイマーをリスタートすべき
0094 ◎ C  11/04/10 0.001 11/04/14 0.005│ToDo│検索ダイアログをとりあえず作成
0095 ◎ C  11/04/10 0.001 11/04/20 0.008│ToDo│置換ダイアログをとりあえず作成
0096 ◎ C  11/04/11 0.001 11/04/11 0.002│ToDo│View 用の ViewTextCursor をとりあえず導入（折り返し処理は後で実装）
0097 ◎ C  11/04/12 0.001 11/04/12 0.002│Rfct│ViewTextCursor は TextCursor の派生クラスとする
0098 ◎ C  11/04/12 0.001 11/04/12 0.002│Rfct│ビュークラス名を PlainTextEdit から TextView に変更
0099 ◎ C  11/04/12 0.001 11/04/12 0.002│ToDo│TextCursor の上下移動はオフセット値を保存するようにしておく
0100 ◎ C  11/04/12 0.001 11/04/12 0.003│ToDo│単体テストに失敗した結果からタグジャンプ可能にする
0101 ◎ C  11/04/12 0.002 11/04/12 0.003│問題│ファイルオープン状態で、MRUファイルからファイルオープンしても別ウィンドウが開かない
0102 ◎ C  11/04/12 0.002 11/04/12 0.003│ToDo│起動直後のウィンドウタイトルを ViVi 5.0.xxx にする
0103 ◎ A  11/04/12 0.002 11/04/12 0.003│問題│環境によっては SJIS ファイルをオープン、保存するとクラッシュする
0104 ◎ C  11/04/12 0.003 11/04/12 0.004│ToDo│デフォルトエンコーディングは QTextCodec::codecForLocale() とする
0105 ◎ C  11/04/13 0.003 11/04/13 0.004│ToDo│フォント選択ダイアログ（全ビュー共通）をとりあえず実装しておく
0106 ◎ C  11/04/13 0.003 11/04/13 0.004│問題│マウスホイールでフォントサイズを変更した場合は、ステータスバーにサイズ表示した方がよい
0107 ◎ C  11/04/13 0.003 11/04/13 0.004│ToDo│ベンチマークテスト中はカーソルを変更した方がよい
0108 ◎ C  11/04/13 0.003 11/04/13 0.004│ToDo│"XYZ"→"Abcde"、"Abcde"→"XYZ"全置換ベンチマーク
0109 ◎ C  11/04/13 0.003 11/04/13 0.004│問題│文書の最後の方で、行単位選択して Copy 後, Paste を繰り返すと結果が不正になった
	原因：改行が CRLF の場合、2文字なのに、カーソル移動では1文字とみなしているため
0110 ◎ C  11/04/13 0.003 11/04/13 0.004│問題│文書の最後の方で、行単位選択して Copy, Paste 後、undo すると文書先頭にスクロールしてしまった。
0111 ◎ C  11/04/13 0.003 11/04/13 0.004│ToDo│undo/redo 出来ない場合に undo/redo すると、カーソルが文書先頭に移動してしまう
0112 ◎ C  11/04/13 0.003 11/04/14 0.005│問題│検索ダイアログ：タイトルを tr("Find Dialog") に変更
0113 ◎ C  11/04/14 0.004 11/04/14 0.005│問題│Delete で1文字削除し、Undo したときに、カーソルが消した文字の直後に設定される。文字位置に設定されるべき
0114 ◎ C  11/04/14 0.004 11/04/14 0.005│ToDo│検索ダイアログ：大文字小文字同一視オプション追加
0115 ◎ C  11/04/14 0.004 11/04/14 0.005│問題│選択状態で削除を行った後 Undo した場合は、選択状態に復帰した方がよい
0116 ◎ C  11/04/14 0.004 11/04/14 0.005│ToDo│検索ダイアログ：検索方向オプション追加
0117 ◎ C  11/04/14 0.004 11/04/14 0.005│ToDo│検索ダイアログ：【検索＆クローズ】ボタン
0118 ◎ C  11/04/14 0.004 11/04/14 0.005│ToDo│検索ダイアログ：【キャンセル】ボタン
0119 ◎ C  11/04/14 0.004 11/04/17 0.006│ToDo│次検索メニュー・ツールバー・ショートカットキー（F3）
0120 ◎ C  11/04/14 0.004 11/04/17 0.006│ToDo│前検索メニュー・ツールバー・ショートカットキー（Shift + F3）
	結果：とりあえず実装。検索オプションの取り扱いについては別SPRとする
0121 ◎ C  11/04/14 0.004 11/04/17 0.006│ToDo│検索文字列履歴
0122 ◎ C  11/04/14 0.004 11/04/14 0.005│問題│マウスクリックした瞬間にテキストカーソルが表示されない。
0123 ◎ C  11/04/14 0.004 11/04/17 0.006│ToDo│Ctrl + F3 でカーソル位置単語検索
0124 ◎ C  11/04/15 0.005 11/04/15 0.006│ToDo│TextView::m_blocks を構築する buildBlocks をとりあえず実装してみる
0125 ◎ C  11/04/16 0.005 11/04/18 0.007│ToDo│IME文字入力がマルチカーソルに対応していない
0126 ◎ C  11/04/17 0.005 11/04/17 0.006│ToDo│検索文字列を QSettings に保存
0127 ◎ C  11/04/17 0.005 11/04/17 0.006│ToDo│検索ダイアログ：ドロップダウンで検索履歴参照可能に
0128 ◎ C  11/04/18 0.005 11/04/18 0.006│問題│検索・置換ダイアログ：検索・置換文字列入力エリアは横方向を優先的に拡大
0129 ◎ C  11/04/18 0.005 11/04/25 0.010│問題│単体テスト・ベンチマーク等を実行した場合は、アウトプットを強制表示
0130 ◎ C  11/04/18 0.005 11/04/18 0.006│ToDo│副カーソルとメインカーソルが重なっている場合は、副カーソルを削除
0131 ◎ C  11/04/18 0.005 11/04/18 0.006│問題│副カーソルが同一行に複数あっても、最初のひとつだけしか表示されない
0132 ◎ C  11/04/18 0.005 11/04/18 0.006│問題│マルチカーソル状態で文字入力された文字が一度に undo されない
0133 ◎ C  11/04/18 0.006 11/04/18 0.007│問題│マルチカーソル状態で文字入力後 undo するとカーソル位置が不正になる
0134 ◎ C  11/04/18 0.006 11/04/18 0.007│ToDo│Delete, BackSpace マルチカーソル対応
	結果：ソースが重複してるので、後でクリーンナップ。Ctrl + Delete などはマルチカーソル対応しないこととする
0135 ◎ C  11/04/18 0.006 11/04/19 0.007│ToDo│置換ダイアログ：findNext, findPrev
0136 ◎ C  11/04/19 0.006 11/04/19 0.007│ToDo│置換ダイアログ：【置換＆検索】
0137 ◎ C  11/04/19 0.006 11/04/19 0.007│ToDo│置換ダイアログ：【Undo】【Redo】
0138 ◎ C  11/04/19 0.006 11/04/19 0.007│ToDo│置換ダイアログ：【全置換】
	結果：とりあえず実装。いろいろ問題があるので別SPR登録する
0139 ◎ C  11/04/19 0.006 11/04/19 0.007│ToDo│マルチカーソル：選択状態表示
0140 ◎ C  11/04/19 0.006 11/04/19 0.007│ToDo│マルチカーソル状態でTabを押した場合は、選択文字列をローテイト
0141 ◎ C  11/04/19 0.006 11/04/19 0.007│問題│BackSpace が動作不良
0142 ◎ C  11/04/19 0.006 11/04/20 0.008│問題│行末の単語を複数選択し Tab を押して入れ替えると、副カーソル位置が不正になる場合がある
0143 ● C  11/04/20 0.007               │ToDo│マルチカーソル自動テスト：選択状態無・有、同一行・複数行、選択が行内・複数行範囲
0144 ◎ C  11/04/20 0.007 11/04/22 0.009│ToDo│単体・自動テスト：テスト項目をメニューで選択可能にする
0145 ◎ C  11/04/20 0.007 11/04/20 0.008│問題│置換ダイアログ：【全置換】後のundoが一度にundoされない
0146 ◎ C  11/04/20 0.007 11/04/20 0.008│問題│マルチカーソル：Delete が動作不良
0147 ◎ C  11/04/20 0.007 11/04/20 0.008│問題│マルチカーソル：選択状態での文字挿入が動作不良
0148 ◎ C  11/04/20 0.007 11/04/20 0.008│問題│マルチカーソル：副カーソルの選択範囲が複数行にまたがっていると、２行目以降が選択表示されない
0149 ◎ C  11/04/20 0.007 11/04/20 0.008│ToDo│置換ダイアログを開いた時は副カーソルをクリアした方がよい
0150 ◎ C  11/04/20 0.008 11/04/20 0.009│ToDo│検索ダイアログ：検索文字列入力エリア幅はデフォルトでもっと広い方がよい。
0151 ◎ C  11/04/21 0.008 11/04/21 0.009│問題│GVUndoMgr::doundo() の引数型が uint（32bit固定）になっている。index_t（x64 では64bit）にすべき。
0152 ◎ C  11/04/21 0.008 11/04/21 0.009│ToDo│boost の格納ディレクトリは /usr/boost とする
0153 ◎ C  11/04/21 0.008 11/04/21 0.009│問題│buf += text[ix] がマックではエラーになる
0154 ◎ C  11/04/21 0.008 11/04/21 0.009│ToDo│ビューメニューに「右端で折り返し」追加
0155 ◎ C  11/04/21 0.008 11/04/24 0.010│ToDo│表示範囲のみ折り返し表示
	結果：とりあえず実装。未コーディングによる問題が山のようにあるが、別SPRとする
0156 ◎ C  11/04/21 0.008 11/04/21 0.009│問題│置換を繰り返した後、undo を繰り返すと画面表示が乱れる
	原因：undo処理する場所より先にキャッシュがあると、キャッシュ内容が不正になってしまう
0157 ◎ C  11/04/21 0.008 11/04/21 0.009│問題│置換文字列履歴が機能していない
0158 ◎ C  11/04/21 0.008 11/04/26 0.010│ToDo│まずは TextView::buildViewLines(TextBlock, int wd, int ht) の単体テスト・実装
0159 ◎ C  11/04/22 0.008 11/04/22 0.009│問題│マルチカーソル：複数選択状態で Ctrl + X を押しても、選択箇所が全て削除されない
0160 ◎ C  11/04/22 0.008 11/04/22 0.009│ToDo│マルチカーソル：複数選択状態で Ctrl + C を押しても、選択箇所が全てクリップボードにコピーされない
	補足：とりあえず、文字列をひとつに連結してクリップボードにコピーするという仕様にしておく
0161 ◎ C  11/04/22 0.008 11/04/22 0.009│ToDo│クラス名を DocXXX, ViewXXX に変更
0162 ◎ C  11/04/24 0.009 11/04/24 0.010│問題│行番号表示が折り返し表示に対応していない
0163 ◎ C  11/04/24 0.009 11/04/24 0.010│問題│折り返しモードの時にIビームテキストカーソルが複数表示される
0164 ◎ C  11/04/24 0.009 11/04/24 0.010│問題│折り返し表示時：[EOF]表示位置が不正になる
0165 ◎ C  11/04/24 0.009 11/04/24 0.010│問題│（非折り返しモードでも）カーソルキーによるカーソル移動が動作不良
0166 ◎ C  11/04/24 0.009 11/04/26 0.011│問題│折り返し表示時：↓で２行目以降に移動したときにテキストカーソル表示位置が不正になる
0167 ◎ C  11/04/24 0.009 11/05/05 0.012│ToDo│TextView::findBlockData() 単体テスト・コーディング
0168 ◎ C  11/04/25 0.009 11/05/19      │ToDo│ベンチマーク項目：メニューで選択可能にする
0169 ◎ C  11/04/25 0.009 11/04/25 0.010│問題│垂直スクロールを行っても行番号部分がスクロールしない
0170 ◎ C  11/04/25 0.009 11/04/25 0.010│問題│タブがあると、長い行のラインブレイク位置が不正になる
0171 ◎ C  11/04/25 0.009 11/04/25 0.010│問題│カーソルが折り返された行の２行目以降にあるとき、表示位置不正
0172 ◎ C  11/04/26 0.010 11/04/26 0.011│問題│折り返し位置がぎりぎりすぎる。少し余裕をもたせた方がよい
0173 ◎ C  11/04/26 0.010 11/04/26 0.011│ToDo│暫定的に、折り返し処理は全体を一度に行うようにする
0174 ◎ C  11/04/26 0.010 11/04/26 0.011│問題│上下カーソル移動が折り返しモードに対応していない
0175 ◎ C  11/04/26 0.010 11/04/26 0.011│問題│マウスクリックによるカーソル設定が折り返しモードに対応していない
0176 ◎ C  11/04/26 0.010 11/04/26 0.011│ToDo│TextView::yToTextBlock() の型を ViewBlock に変更
0177 ◎ C  11/04/26 0.010 11/04/26 0.011│問題│選択状態表示が折り返しモードに対応していない
0178 ◎ C  11/04/26 0.010 11/04/26 0.011│ToDo│折り返しモードかどうかを保存・復帰
0179 ◎ C  11/04/26 0.010 11/04/26 0.011│ToDo│折り返しモードの時、カーソル移動で自動スクロールしない
0180 ◎ C  11/04/26 0.010 11/04/26 0.011│Rfct│xToOffset() は勘違いするので、xToCharCount() に変更
0181 ◎ C  11/04/27 0.010 11/04/27 0.011│問題│折り返しモード：Ctrl + End で最終行にジャンプしても、最終行が表示されるよう自動スクロールしない
0182 ◎ C  11/04/27 0.010 11/04/27 0.011│ToDo│折り返しモード：編集時の行情報更新
0183 ◎ C  11/04/27 0.010 11/04/27 0.011│問題│検索ダイアログ：検索文字列入力エリアに履歴文字列がある場合は、全体を選択しておいた方がよい。
0184 ◎ C  11/04/27 0.010 11/04/27 0.011│問題│折り返しモードでファイルオープンすると、1行目が表示されない
0185 ◎ C  11/04/27 0.010 11/04/27 0.011│問題│折り返しモードで次の行まで文字を挿入した時、カーソルが次の行に移動しない
0186 ◎ C  11/04/27 0.010 11/04/27 0.011│問題│折り返しモード：ウィンドウをリサイズして行数が変わると、カーソル位置が不正になる
0187 ◎ C  11/04/27 0.010 11/04/28 0.012│問題│折り返しモード：カーソル位置に文字を挿入し続けていくと、そのうち画面が乱れる
0188 ◎ C  11/04/27 0.010 11/05/05 0.013│問題│折り返しモード：Home, End が表示行単位移動しない
0189 ◎ C  11/04/28 0.011 11/04/28 0.012│問題│折り返しモード：新規文書の最初から文字を連続挿入していくと、ウィンドウ幅を超えても折り返しされない
0190 ◎ C  11/04/28 0.011 11/04/28 0.012│ToDo│折り返しモード：強制改行の場所には "<" を表示
0191 ◎ C  11/04/28 0.011 11/04/28 0.012│Rfct│TextView::buildBlocks() はレイアウト幅を引数に取らず、viewport() 幅から計算するように変更
0192 ◎ C  11/04/28 0.011 11/04/28 0.012│問題│折り返しモード：新規状態から２行になるまで文字入力し、カーソルを先頭に移動し文字入力すると、カーソルが２行目に表示される
0193 ◎ C  11/04/28 0.011 11/04/28 0.012│問題│折り返しモード：文字を削除すると [EOF] 表示位置が不正になることがある
0194 ◎ C  11/04/28 0.011 11/04/28 0.012│問題│折り返しモード：新規状態から文字列＋改行を入力し、改行を削除すると表示が不正になる
0195 ◎ C  11/04/28 0.011 11/04/28 0.012│問題│折り返しモード：新規状態から、（文書先頭に移動して改行挿入）を３回繰り返すと画面表示が不正になる
0196 ◎ C  11/04/28 0.011 11/04/28 0.012│問題│折り返しモード：垂直スクロールすると行番号の値が不正になる場合がある
0197 ◎ C  11/04/28 0.011 11/05/03 0.012│問題│折り返しモード：途中に文字がある状態から、（文書先頭に移動して改行挿入）を繰り返すと画面表示が不正になる場合がある
0198 ◎ C  11/04/28 0.011 11/04/28 0.012│問題│tags ジャンプ：ドキュメント行番号ではなく表示行番号でジャンプしている
0199 ◎ C  11/04/29 0.011 11/04/29 0.012│ToDo│再レイアウト範囲を取得するメソッドをコーディング・単体テスト
0200 ◎ C  11/04/29 0.011 11/05/21 0.024│問題│カーソル行強調機能が無いので、カーソルがある行がすぐにわからない
	補足：アンダーライン表示
0201 ◎ C  11/04/29 0.011 11/04/29 0.012│ToDo│LaidoutBlocksMgr 導入
0202 ◎ C  11/04/29 0.011 11/04/30 0.012│ToDo│LaidoutBlock クラス宣言・実装・単体テスト
0203 ◎ C  11/04/30 0.011 11/04/30 0.012│Rfct│block = block.next() を ++block に変更
0204 ◎ C  11/04/30 0.011 11/05/01 0.012│ToDo│LaidoutBlock 組み込み
0205 ◎ C  11/04/30 0.011 11/04/30 0.012│ToDo│LaidoutBlocksMgr::begin(), end() 追加
0206 ◎ C  11/04/30 0.011 11/04/30 0.012│ToDo│LaidoutBlocksMgr::findBlockByNumber() 追加
0207 ◎ C  11/04/30 0.011 11/04/30 0.012│ToDo│LaidoutBlock::operator--() 追加
0208 ◎ C  11/04/30 0.011 11/05/01 0.012│ToDo│LaidoutBlocksMgr:ドキュメント・ビューブロック番号相互変換メソッド
0209 ◎ C  11/05/01 0.011 11/05/03 0.012│ToDo│LaidoutBlocksMgr のデータ構造を最も単純な gap_vactor<size_t> に変える
0210 ◯ C  11/05/02 0.011               │ToDo│LAZY_LAYOUT マクロ追加
0211 ◎ C  11/05/03 0.011 11/05/03 0.012│ToDo│レイアウト処理ベンチマーク
0212 ◎ C  11/05/03 0.011 11/05/03 0.012│ToDo│TextView::reLayoutBlocks() の第2引数を、位置ではなくドキュメントブロック番号に変える
0213 ◎ C  11/05/03 0.011 11/05/03 0.012│ToDo│レイアウト幅はビューポート幅を直接参照するのではなく、メンバ変数を参照するようにする
0214 ◎ C  11/05/03 0.011 11/05/05 0.013│問題│レイアウトモード：マルチカーソル状態（複数改行）で改行挿入を行うと画面が乱れる
0215 ◯ C  11/05/03 0.011               │ToDo│findBlock()：後ろからたどる場合は end() ではなく lastBlock() からたどるようにする
	結果：isValid() でチェックしてるのでおｋ。
0216 ◎ C  11/05/03 0.011 11/05/03 0.012│問題│新規文書で改行を挿入しても、カーソルが2行目に移動しない
0217 ◎ C  11/05/03 0.011 11/05/03 0.012│問題│折り返しモード：新規文書の先頭から文字を入力して行き2行になった状態で文字入力すると画面が乱れる。
0218 ◎ C  11/05/03 0.011 11/05/04 0.012│問題│折り返しモード：新規文書の先頭からIME文字入力を行うと、画面が乱れる
0219 ● C  11/05/03 0.011               │ToDo│折り返しモード：undo/redo 時は編集範囲のみ再レイアウトする
0220 ◎ C  11/05/04 0.011 11/05/04 0.012│問題│折り返しモード：新規文書の先頭からIMEで“あ”を入力を2回行うと画面が乱れる
0221 ◎ C  11/05/04 0.011 11/05/04 0.012│問題│新規文書の先頭からIMEで“あ”を入力後、改行を挿入すると画面が乱れる
0222 ◎ C  11/05/05 0.012 11/05/05 0.013│ToDo│Ctrl + ↑、↓ はマルチカーソル移動とする
0223 ◎ C  11/05/05 0.012 11/05/05 0.013│ToDo│全選択実行時にはマルチカーソルをリセットした方がよい
0224 ◎ C  11/05/05 0.012 11/05/05 0.013│問題│ファイルオープン直後から↓で下移動すると、1カラム目以外に移動する場合がある
0225 ◎ C  11/05/05 0.012 11/05/05 0.013│問題│折り返しモード：新規状態から折り返すまで a を多数入力、改行を入力し、IMEをONにして文字を入力しようとすると、表示２行目の aaa…a に下線が表示される。
0226 ◎ C  11/05/05 0.012 11/05/05 0.013│ToDo│ブロッククラスに nextBlockPosition() を追加
0227 ◎ C  11/05/05 0.012 11/05/05 0.013│問題│非折り返しモード：新規状態から改行を挿入し、↑で上移動すると、カーソル表示位置不正
0228 ◎ C  11/05/05 0.012 11/05/05 0.013│問題│非折り返しモード：３行文字入力し、先頭３行にマルチカーソルを設定し、Delete を押すと、カーソル位置が不正になる
0229 ◎ C  11/05/05 0.012 11/05/05 0.013│問題│折り返しモード：４行文字入力し、先頭４行にマルチカーソルを設定し、Delete を押すと、表示不良になる
0230 ◎ C  11/05/05 0.013 11/05/05 0.014│ToDo│LaidoutBlocksMgr：レイアウト済み行数をメンバ変数に持ち、レイアウト途中の状態を可能にする
0231 ◎ C  11/05/05 0.013 11/05/05 0.014│ToDo│レイアウト行数を指定可能で、次のレイアウト指令をイベントキューに積む LaidoutBlocksMgr::buildBlocks() 追加
0232 ◎ C  11/05/06 0.013 11/05/08 0.014│ToDo│ステータスバーにコマンドラインエリアを追加
0233 ◎ C  11/05/06 0.013 11/05/08 0.014│ToDo│vi エンジンクラス追加
0234 ● C  11/05/06 0.013               │問題│ウィンドウリサイズを行っても表示開始行が変化しないようにすべき
0235 ◯ C  11/05/07 0.013               │問題│置換ダイアログで置換を行うと、結果が不正になる。
0236 ◎ C  11/05/08 0.013 11/05/08 0.014│問題│行内で文字選択した状態で検索・置換ダイアログを開いた場合は、被選択文字列を検索候補にした方がよい
0237 ◎ C  11/05/08 0.013 11/05/08 0.014│問題│検索ダイアログ：検索方向オプションを廃止し、置換ダイアログ同様に検索方向ごとに検索ボタンを配置した方がよい
0238 ◎ D  11/05/08 0.013 11/05/19 0.023│問題│検索ダイアログ：大文字小文字検索オプションはラジオボタンの方がよい
0239 ◎ C  11/05/08 0.013 11/05/08 0.014│問題│連続する単語をマルチカーソル選択できない
0240 ◎ C  11/05/08 0.013 11/05/08 0.014│問題│単語先頭文字をダブルクリックすると、その前の単語が選択されてしまう
0241 ◎ C  11/05/08 0.013 11/05/08 0.014│問題│マルチカーソル：複数単語を選択し Tab で置換すると、選択範囲が不正になる
0242 ◎ C  11/05/08 0.013 11/05/08 0.014│ToDo│Esc でコマンドモードに、i で挿入モードに遷移可能にする
0243 ◎ C  11/05/08 0.013 11/05/09 0.015│ToDo│コマンドモード時カーソルは文字幅＆高さ半分に
0244 ● C  11/05/08 0.013               │問題│折り返しモード：複数選択してTabで置換すると表示が乱れる
0245 ◎ C  11/05/09 0.014 11/05/09 0.015│問題│vi コマンド：undo/redo が効かない
0246 ◎ C  11/05/09 0.014 11/05/09 0.015│問題│vi コマンド：h j k l が効かない
	結果：とりあえず対処した。が、j k が折り返しに対応していないという問題あり。
0247 ◎ C  11/05/09 0.014 11/05/09 0.015│問題│カーソルが改行位置にあるとき、カーソルが表示されない
0248 ◎ C  11/05/09 0.014 11/05/09 0.015│問題│$ で改行位置に移動してしまう
0249 ◎ C  11/05/09 0.014 11/05/09 0.015│問題│挿入モードで文字挿入したあと、カーソルが挿入文字直後に移動しない
0250 ◎ C  11/05/09 0.014 11/05/09 0.015│問題│Enter で次の行に移動しない
0251 ◎ C  11/05/09 0.014 11/05/09 0.015│問題│o, O が動作しない
0252 ◎ C  11/05/09 0.014 11/05/09 0.015│問題│x u x を実行すると画面表示が乱れる＠非折り返しモード
0253 ● C  11/05/09 0.014               │問題│TextDocument::erase() で findBlock() しているのはパフォーマンス的に問題
0254 ● C  11/05/09 0.014               │問題│ステータスバーテキスト表示時にコマンドライン入力エリアが非表示にならない
0255 ◎ C  11/05/09 0.014 11/05/09 0.015│問題│ex モードで Enter を押しても、ex モードが終了しない
0256 ◎ C  11/05/09 0.014 11/05/09 0.015│問題│:q が動作しない
0257 ◎ C  11/05/09 0.015 11/05/09 0.016│問題│:e が動作しない
0258 ◎ C  11/05/09 0.015 11/05/09 0.016│問題│:行番号 Enter が動作しない
0259 ◎ C  11/05/09 0.015 11/05/09 0.016│問題│b が動作不良
0260 ◎ C  11/05/09 0.015 11/05/14 0.020│問題│選択状態で c を実行した時に、選択範囲編集にならない
0261 ◎ C  11/05/09 0.015 11/05/10 0.016│問題│J が動作不良
0262 ◎ C  11/05/09 0.015 11/05/09 0.016│問題│N で文書先頭方向に再検索すると、前の行に移動しない
0263 ◎ C  11/05/09 0.015 11/05/09 0.016│ToDo│マルチカーソル移動は Ctrl + Alt + ←↓↑→ にしておく
0264 ◎ C  11/05/09 0.015 11/05/09 0.016│問題│Esc でマルチカーソルが解除されない
0265 ◎ C  11/05/09 0.015 11/05/09 0.016│問題│マルチカーソル状態で文字挿入しても、副カーソル位置に文字挿入されない
0266 ◎ C  11/05/10 0.015 11/05/10 0.017│問題│L M が動作不良
0267 ◎ C  11/05/10 0.015 11/05/13 0.019│問題│r文字後の .(repeat a command) が動作不良
0268 ◎ C  11/05/10 0.015 11/05/14 0.020│問題│選択状態で s を実行した時に、選択範囲編集にならない
0269 ◎ C  11/05/10 0.015 11/05/10 0.017│問題│選択状態で d, x, X を実行した時に、選択範囲削除にならない
0270 ◎ C  11/05/10 0.015 11/05/10 0.016│問題│} { が動作不良
0271 ◎ C  11/05/10 0.015 11/05/10 0.016│問題│C, D が動作不良
0272 ◎ C  11/05/10 0.015 11/05/10 0.017│問題│:test<Enter> でテストファイル選択可能にした方がよい
0273 ◎ C  11/05/10 0.015 11/05/14 0.020│問題│選択状態で y を実行した時に、選択範囲がyankされない
0274 ◎ C  11/05/10 0.016 11/05/10 0.017│問題│^F ^B ^D ^U ^Y ^E が動作しない
0275 ◎ C  11/05/10 0.016 11/05/10 0.017│問題│マルチカーソルで複数選択して Tab を押しても、ローテイトされない
0276 ◎ C  11/05/10 0.016 11/05/10 0.017│問題│Esc で選択状態が解除されない
0277 ◎ C  11/05/10 0.016 11/05/10 0.017│問題│ex モード：↑↓でコマンド履歴を呼び出せない
0278 ◎ C  11/05/10 0.016 11/05/14 0.020│問題│自動テストを実行するとアサーションが発生した
0279 ◎ C  11/05/10 0.016 11/05/10 0.017│ToDo│テストスクリプト：".end" があった場合は、そこでテストを終了する
0280 ◎ C  11/05/10 0.016 11/05/10 0.017│問題│自動テスト：テキストの比較時に改行を削除していない
0280 ◎ C  11/05/10 0.016 11/05/11 0.017│問題│$ 実行後 j k で行移動した時、行末にカーソル移動しない
0281 ● C  11/05/10 0.016               │Rfct│moveCursor(ViewCursor &cur,...) は廃止して、ViewCursor::movePosition() に一本化
0282 ◎ C  11/05/11 0.016 11/05/11 0.017│問題│インクルードファイル名の大文字小文字が一致してなくてビルドできない＠Linux
0283 ◎ C  11/05/11 0.016 11/05/11 0.017│問題│マルチカーソル状態での Delete が動作不良
0284 ◎ C  11/05/11 0.016 11/05/11 0.017│問題│:cls が動作しない
0285 ◎ C  11/05/11 0.016 11/05/14 0.020│問題│vi 自動テストを2回実行すると、2回目にテスト失敗が大量に出る
0286 ◎ C  11/05/12 0.017 11/05/12 0.018│問題│w で次の行に移動しない
0287 ◎ C  11/05/12 0.017 11/05/12 0.018│問題│b：ひらがな文字列の途中でストップしてしまう
0288 ◎ C  11/05/12 0.017 11/05/12 0.018│問題│折り返しモード：o を実行するとアサーションが発生した
0289 ◎ C  11/05/12 0.017 11/05/12 0.018│問題│Ctrl + ←→ で単語単位移動したとき、改行位置でストップしない
0290 ◎ C  11/05/12 0.017 11/05/12 0.018│問題│e：次の行に移動しない
0291 ◎ C  11/05/12 0.017 11/05/12 0.018│問題│w：連続する改行をスキップしない
0292 ◎ C  11/05/12 0.017 11/05/12 0.018│問題│W：連続する改行をスキップしない
0293 ◎ C  11/05/12 0.017 11/05/12 0.018│問題│B：連続する改行をスキップしない
0294 ◎ C  11/05/12 0.017 11/05/12 0.018│問題│A：改行位置にカーソル移動しない
0295 ◎ C  11/05/12 0.017 11/05/12 0.018│問題│E：動作不良
0296 ◎ C  11/05/12 0.018 11/05/13 0.019│問題│o：オープンされた行にカーソル移動しない
0297 ◎ C  11/05/12 0.018 11/05/13 0.019│ToDo│Enter を入力したときの改行種別（CRLF/CR/LF）をファイルの改行種別に合わせる
0298 ◎ C  11/05/13 0.018 11/05/15 0.021│ToDo│:set [no]linebreak 追加
0299 ◎ C  11/05/13 0.018 11/05/13 0.019│問題│Cコマンド実行時のカーソル位置不正 
0300 ◎ C  11/05/13 0.018 11/05/13 0.019│問題│コマンドモードでは自動的にIME OFFにした方がよい＠windows
0301 ◎ C  11/05/13 0.018 11/05/13 0.019│問題│/regexp が動作不良
0302 ◎ C  11/05/13 0.018 11/05/13 0.019│問題│cc：行編集が動作不良
0303 ● C  11/05/13 0.018               │問題│& が実装されていない
0304 ◎ C  11/05/13 0.018 11/05/13 0.019│問題│上書きモード時カーソルが文字サイズにならない
0305 ◎ C  11/05/13 0.018 11/05/13 0.019│問題│上書きモードで文字入力しても文字が置換されず単に挿入されてしまう
0306 ◎ C  11/05/13 0.018 11/05/13 0.019│問題│/検索：正規表現入力中に↑↓で履歴が呼び出せない
0307 ◯ C  11/05/14 0.019               │問題│ywP を実行すると画面が乱れた＠非レイアウトモード
	結果：再現しなくなったのでクローズ 11/05/17
0308 ◎ C  11/05/14 0.019 11/05/17 0.022│問題│R文字列<Esc> 後の .(repeat a command) が効かない
0309 ◎ C  11/05/14 0.019 11/05/15 0.021│問題│S文字列<Esc> 後、1回の undo で元の状態に戻らない
0310 ◎ C  11/05/14 0.019 11/05/14 0.020│問題│viコマンド自動テスト：=y x が文字数でなくバイト数で比較されている
0311 ◎ C  11/05/14 0.019 11/05/14 0.020│問題│gg：最初の非空白文字位置にジャンプしない
0312 ◎ C  11/05/14 0.019 11/05/14 0.020│問題│行番号G：最初の非空白文字位置にジャンプしない
0313 ◎ C  11/05/14 0.019 11/05/14 0.020│問題│J が動作不良
0314 ◎ C  11/05/14 0.019 11/05/14 0.020│問題│EOF行が画面内にあるときに L が動作不良
0315 ◎ C  11/05/14 0.019 11/05/14 0.021│問題│連続する文字挿入後の undo が1文字ごとに undo される
	補足：オプションで 1文字ごと、行ごと、全体を選択可能にする？
	結果：とりあえず行単位にした
0316 ● C  11/05/14 0.020               │問題│yankした文字数・行数をステータスバーに表示すべき
0317 ◎ C  11/05/15 0.020 11/05/15 0.021│Rfct│GVUndoMgr に TextDocument へのポインタ追加し、メソッド引数指定は無くす
0318 ◎ C  11/05/15 0.020 11/05/15 0.021│問題│x で改行が削除可能
0319 ◎ C  11/05/15 0.020 11/05/17 0.022│問題│折り返しモードで vi 自動テストを実行すると失敗が出まくる
0320 ◎ C  11/05/15 0.020 11/05/15 0.021│問題│:set を実行しても結果がアウトプットに表示されない
0321 ◎ C  11/05/15 0.020 11/05/15 0.021│問題│c<move> 後に u しても、１回で元に戻らない
0322 ◎ C  11/05/15 0.020 11/05/17 0.022│問題│R文字列<Esc> の繰り返し回数が効かない場合がある
	原因：Shift を押した時点で m_redoRecording が false に設定されていた
0323 ◎ C  11/05/15 0.020 11/05/15 0.021│ToDo│z<Enter> 実装
0324 ◎ C  11/05/15 0.020 11/05/15 0.021│問題│vi コマンドで x s c 等を実行後 u した場合は削除範囲を選択しない方がよい
0325 ◎ C  11/05/15 0.020 11/05/15 0.021│問題│X u した時に、カーソルが元の位置に戻らない
0326 ◎ C  11/05/16 0.021 11/05/16 0.022│問題│折り返しモード（:set linebreak）でテストを実行すると、カーソル位置が正しいのに失敗と判定される
0326 ◎ C  11/05/16 0.021 11/05/17 0.022│問題│折り返しモード（:set linebreak）でテストを実行すると、画面表示が乱れる
	画面ショット：{{SPR0326.png}}
	メモ：最初の挿入時に LaidoutBlocksMgr::m_laidoutDocBlockCount が０なのに、-1 している
0327 ◎ C  11/05/17 0.021 11/05/18 0.022│問題│画面２行目以降のテキストが半文字右にずれることがある
	画面ショット：{{SPR0327.png}}
	メモ：テスト実行後にテストファイルを開いて先頭に１文字挿入すると、再現することが多い
	メモ：テスト実行後かどうかは関係ない。自動テストスクリプトで常に再現する
	メモ：テキストに Tab が含まれていると再現するっぽい
0328 ◎ C  11/05/17 0.021 11/05/17 0.022│問題│R文字列<Esc>後にuしても１回で元の状態に戻らない
0329 ● C  11/05/17 0.021               │問題│iで文字列挿入時にカーソル移動した場合は、それ以降の文字列は.(repeat)対象にしない方がよい
0330 ◎ C  11/05/17 0.021 11/05/17 0.022│問題│Esc 押下時、ステータスバーにキャッシュの値が表示されない（for Debug）
	結果：ステータスバーではなくアウトプットに表示するようにした＠デバッグビルドのみ
0331 ◎ C  11/05/17 0.021 11/05/17 0.022│問題│:s/before/after の after で \t、\r、\n が効かない
0332 ◎ C  11/05/18 0.021 11/05/18 0.022│問題│改行部分を超えて R で置換を行うと、その後の u 1回で元に戻らない
0333 ◎ C  11/05/18 0.021 11/05/18 0.022│問題│i や a で連続する箇所に文字挿入すると、1回の u で元の状態に戻ってしまう。
0334 ◎ C  11/05/18 0.022 11/05/18 0.023│問題│:e! が効かない
0335 ◎ C  11/05/18 0.022 11/05/18 0.023│問題│test-1.tst を開き、68行目の最後の文字を削除すると表示が乱れる＠非折り返しモード
0336 ◎ C  11/05/19 0.022 11/05/19 0.023│問題│DocBlock::operator--() が実装されていない
0337 ◎ C  11/05/19 0.022 11/05/19 0.023│問題│IMEで全角空白を入力し、その直後にIME文字入力すると、先に入力した全角空白が上書きされてしまう
0338 ● C  11/05/19 0.022               │問題│折り返しモード：置換ダイアログで【置換＆検索】を繰り返していくと、マッチするものがなくなった時に表示が乱れる
0339 ◎ C  11/05/19 0.022 11/05/19 0.023│問題│検索ダイアログ："app" が検索履歴にあるとき "App" を検索しようとしても "app" で検索されてしまう
0340 ◎ C  11/05/19 0.022 11/05/19 0.023│問題│検索ダイアログ：↑方向検索で英大小文字区別が効かない
0341 ◎ C  11/05/19 0.022 11/05/19 0.023│問題│検索ダイアログ：「小文字のみ検索時：英大小文字同一視」オプション追加
0342 ◎ C  11/05/19 0.022 11/05/19 0.023│ToDo│置換ダイアログ：大文字小文字オプションをラジオボタン化
0343 ● C  11/05/19 0.023               │ToDo│検索マッチ文字列を強調表示
0344 ◎ C  11/05/19 0.023 11/05/19 0.024│問題│「あa」行で :s/a/A を実行すると結果が不正になる
0345 ◎ C  11/05/19 0.023 11/05/19 0.024│問題│「あああ」行の最後の文字にカーソルがある状態で a を押したとき、カーソルが改行位置に移動しない
0346 ◎ C  11/05/20 0.023 11/05/20 0.024│問題│/検索した文字列が検索履歴に追加されない
0347 ◎ C  11/05/20 0.023 11/05/20 0.024│問題│検索・置換ダイアログ：大文字小文字オプションが保存・復帰されない
0348 ● C  11/05/20 0.023               │問題│/$ が動作不良
0349 ◎ C  11/05/20 0.023 11/05/20 0.024│ToDo│検索・置換ダイアログ：「正規表現検索」オプション追加
0350 ◎ C  11/05/20 0.023 11/05/20 0.024│ToDo│moveCursorFind(ViewCursor &cur, ...) にループオプション追加
0351 ● C  11/05/20 0.023               │問題│置換ダイアログ：「正規表現検索」ON の場合に置換が動作不良
0352 ◎ C  11/05/21 0.023 11/05/21 0.024│問題│文字化けする場合があるようなので単体テストのメッセージは全て英語にしておく
0353 ● C  11/05/23 0.023               │問題│折り返しモード：テスト失敗行からのタグジャンプ：行番号のところにジャンプしない
0354 ◎ C  11/05/24 0.024 11/05/24 0.025│問題│「あaあaあa」のように、日本語が混じった行で /a 後の n が動作不良
0355 ◎ C  11/05/24 0.024 11/05/24 0.025│問題│「あaあaあa（改行）」だけがある状態で /a した後、最初のaで N を実行しても最後の a に移動しない
0356 ◎ C  11/05/26 0.024 11/05/26 0.025│問題│マルチカーソル状態で文字挿入しても、主カーソル位置にしか文字挿入されない
0357 ◎ C  11/05/26 0.024 11/05/26 0.025│ToDo│gh gj gk gl で現在カーソル位置を副カーソルにし、新しい位置をメインカーソルにする
0358 ◎ C  11/05/27 0.025 11/05/28 0.026│ToDo│Settings メニューに「vi サポート」を追加
0359 ● C  11/05/27 0.025               │ToDo│入力コマンドをテロップ表示するドックウィンドウ追加
0360 ◎ C  11/05/28 0.025 11/05/28 0.026│問題│アウトプットがフローティング状態で、エラー行をダブルクリックしてタグジャンプした時に、メインウィンドウがアクティブにならない
0361 ◎ C  11/05/28 0.025 11/05/28 0.026│問題│同じMRUファイルを複数回選択すると、そのつどメインウィンドウが作られる
	補足：findMainWindow() が正しく動作してないみたい
0362 ● C  11/05/28 0.025               │問題│/\r を実行すると行末に移動するが、n で次の行末に移動しない
0363 ● C  11/05/28 0.025               │問題│/\n を実行すると改行位置に移動してしまう（CRLF改行の場合）
0364 ◎ C  11/05/28 0.025 11/05/29 0.026│問題│ダブルクリックで単語選択後、マウスドラッグした場合は、単語単位で選択した方がよい
0365 ◎ C  11/05/28 0.025 11/05/29 0.026│問題│マルチバイト文字がある行での、単語単位選択後ドラッグが動作不良
0366 ● C  11/05/28 0.025               │問題│マウスドラッグによる選択時、ウィンドウ上下端から外に出ても自動スクロールしない
0367 ◎ C  11/05/31 0.025 11/05/31 0.026│問題│折り返しモード：view.blockCount() の返す値が不正になる（単体テスト）
	原因：m_laidoutDocBlockCount の値が不正
0368 ◎ C  11/06/05 0.026 11/06/05 0.027│ToDo│m<英小文字> でカーソル位置をマーク
0369 ◎ C  11/06/05 0.026 11/06/05 0.027│ToDo│'<英小文字> でマーク行に移動
0370 ◎ C  11/06/05 0.026 11/06/05 0.027│ToDo│`<英小文字> でマーク位置に移動
0371 ◎ C  11/06/05 0.026 11/06/05 0.027│ToDo│編集時マーク位置更新
0372 ◎ C  11/06/05 0.026 11/06/05 0.027│ToDo│undo/redo 時のマーク位置更新
0373 ◎ C  11/06/06 0.027 11/06/06 0.028│ToDo│TextView → ViEngne のインクルード依存性を無くす
0374 ◎ C  11/06/06 0.027 11/06/06 0.028│ToDo│"<英小文字> で名前付きヤンクバッファ
0375 ◎ C  11/06/06 0.027 11/06/06 0.028│問題│コマンドモード時のカーソルが文字下半分にならない
0376 ◎ C  11/06/06 0.027 11/06/06 0.028│問題│Esc を押しても直ぐにカーソル形状が変化しない
0377 ● C  11/06/07 0.027               │ToDo│
