                        qvi version 0.010
                             06-Mar-2011
                    Copyright (C) 2011 by N.Tsuda
                  mailto: ntsuda@master.email.ne.jp
                       http://vivi.dyndns.org/


■ 概要

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

ソースコードは http://sourceforge.jp/projects/qvi からゲットできます。

■ SPR (Software Problem Report)

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

#SPR 状 優 Open     build Close    build  type  概要
---- -- -- -------- ----- -------- -----  ----  ------------------------------------------------------------------
0001 ◎ B  11/02/24 0.000 11/02/24 0.000│ToDo│w をコーディング
0002 ● C  11/02/24 0.000               │問題│起動直後にドックウィジットが正しく表示されない
0003 ● B  11/02/24 0.000               │ToDo│ex コマンド履歴参照：文字入力がある場合は、それとマッチするもののみを表示
0004 ◎ C  11/02/24 0.000 11/02/24 0.000│ToDo│アウトプットからタグジャンプ可能にする。for 自動テストでエラーが発生した場合
0005 ◎ C  11/02/24 0.000 11/02/24 0.000│問題│行が折り返している場合に、行番号G が正しく動作しない
0006 ◎ C  11/02/25 0.000 11/02/25 0.000│問題│自動テスト："ifoo" で "foo" が挿入されない
0007 ◎ C  11/02/25 0.000 11/02/25 0.000│ToDo│自動テスト：0x[0-9a-f]+ で16進数を指定可能にする
0008 ◎ C  11/02/25 0.000 11/02/25 0.000│問題│タグジャンプ：ファイルがオープンされていない場合に、指定行にカーソル移動しない
0009 ◎ C  11/02/25 0.000 11/02/25 0.000│Rfct│doViCommand(QChar&) の中でコマンドモード・挿入モード分岐を行うように修正
0010 ◎ C  11/02/25 0.000 11/02/25 0.000│ToDo│自動テスト：失敗した場合は、期待値・実際の値を表示した方がよい
0011 ◎ C  11/02/25 0.000 11/02/25 0.000│問題│i 挿入を2回行い、. を実行すると文字列が2回挿入される
0012 ◎ C  11/02/25 0.000 11/02/25 0.000│ToDo│自動テスト：/ or ? で検索テスト
0013 ◎ C  11/02/25 0.000 11/02/25 0.000│ToDo│自動テスト：# をコメント文字に
0014 ◎ C  11/02/26 0.000 11/02/26 0.000│問題│自動テスト終了時メッセージが直ぐに表示されない場合がある（再現率高）
	対処：QPlainText の viewport()->repaint() で強制再描画した。update() ではうまく行かなかった。
0015 ◎ C  11/02/26 0.000 11/02/28 0.000│ToDo│j k コマンド：カラム位置保存
0016 ◎ C  11/02/26 0.000 11/02/26 0.000│問題│数値i文字列 Esc で、文字列が数値回数挿入されない
0017 ◎ C  11/02/26 0.000 11/02/26 0.000│問題│数値o文字列 Esc で、数値回数改行されない
0018 ◎ C  11/02/26 0.000 11/02/26 0.000│ToDo│d<move> 実装
	結果：おおむね実装した。問題があれば別項目を登録する
0019 ◎ C  11/02/26 0.000 11/02/26 0.000│ToDo│:cls でアウトプットをクリア
0020 ● D  11/02/26 0.000               │ToDo│（モードレスな）コマンド補完ダイアログ
0021 ● C  11/02/26 0.000               │問題│[EOF] 表示位置が下にずれている
0022 ◎ C  11/02/26 0.000 11/02/26 0.000│ToDo│:cd <dir> で<dir>移動、:cd でホームディレクトリ移動
0023 ◎ C  11/02/26 0.000 11/03/04 0.000│ToDo│ファイルオープン時：文字コードを判定し、UTF16に変換して読み込む
	結果：BOM付き UTF-8, UTF-16LE, UTF-16BE と、SJIS のみサポートした。残りは別項目とする
0024 ◎ C  11/02/26 0.000 11/02/26 0.000│問題│行末の単語を dw で削除すると、改行まで削除されてしまう
0025 ◎ C  11/02/26 0.000 11/02/26 0.000│問題│de を実行すると単語末尾の文字が削除されない
0026 ● C  11/02/27 0.000               │問題│選択状態が表示されない
0027 ◎ C  11/02/27 0.000 11/02/27 0.000│ToDo│Cut/Copy/Paste アクションをメニュー・ツールバーに配置
0028 ● C  11/02/27 0.000               │問題│編集・未保存状態でビューを閉じても、保存確認ダイアログが出ない
0029 ◎ C  11/02/27 0.000 11/02/27 0.000│問題│d} d{ dH dM dL dG が行単位で削除されない
0030 ◎ C  11/02/27 0.000 11/02/27 0.000│ToDo│:set font=<値> の場合、<値>が数値ならばサイズ、それ以外ならばフォント名とみなす
0031 ● C  11/02/27 0.000               │問題│cw テキスト Esc の直後に undo しても、一度で元に戻らない
0032 ◎ C  11/02/27 0.000 11/02/27 0.000│問題│c$ を実行した時点でカーソルが改行位置にない
0033 ◎ C  11/02/28 0.000 11/02/28 0.000│Rfct│viカーソル移動関数群をクラス化する
	結果：とりあえずクラス化した。まだ全部の機能を実装したわけではない
0034 ◎ C  11/02/28 0.000 11/03/01 0.000│問題│折り返し行があるとき、j k で正しい行に移動しない
0035 ● C  11/03/03 0.000               │問題│表示フォントにより、全角空白の [] 表示が重なる場合があるので、矩形を自前描画した方がよい
0036 ◎ C  11/03/03 0.000 11/03/04 0.000│ToDo│テストスクリプトファイルの文字コード判定を行うようにする
0037 ◎ C  11/03/03 0.000 11/03/04 0.000│ToDo│テストスクリプト実行時に Qt バージョンを表示
0038 ◎ C  11/03/04 0.000 11/03/04 0.000│問題│:e <ファイル名> でファイルをオープン時、カーソルが１行目に設定されない。
0039 ◎ C  11/03/04 0.000 11/03/04 0.000│ToDo│ファイルメニューに MRU 一覧表示
0040 ● C  11/03/05 0.000               │ToDo│オープンファイルディレクトリに移動
0041 ◎ C  11/03/05 0.000 11/03/05 0.000│問題│ツールバー・メニューの undo/redo が有効にならない
0042 ● C  11/03/05 0.000               │問題│

