----------------------------------------------------------------------------
fileMV 更新、メモなど
----------------------------------------------------------------------------
ファイラ(おもに あふ や explorer など)の動作を参考に。
tabasaFTPから作り変え。
直接の動機は、mp3録音機器から長すぎるファイル(カセットから録音状態にして放置)
の先頭だけコピーするために。ファイラを作ろうと思ったのではないです。
そのうちに「あふ」を見つけて、クローンのような方向性になっています。
(でも使い込んでもいないので、気ままに自分の欲しい機能を入れてるかな。2007/11)
ver.目安としては、3つ目の数字はバグフィックス、4つ目は内部書き換え(処理を関数化とか小さい改変)のみです。
名前は、ファイル移動用に作ったのでとりあえずfileMV。
! .. 検討課題
済 .. 修正済み
予定 .. そんな気分
2007/4/4 ver.0.00
2007/4/5 ver.0.14.2 複数ファイルコピー、削除
( LVS_SINGLESELあるなし、FindFirstFile、FindNextFileで一個ずつ処理。
ver.0.15.0 タブで移動、エンターで実行など、キー操作
ver.0.16.0 長さ指定でコピー
ver.0.17.0 %指定で先頭部分コピー(50%などと記入)
ver.0.18.0 改行キーの処理改善
ver.0.19.0 グループ保存
ver.0.20.0 空容量表示
2007/4/11 ver.0.20.1 左右入れ替え
! 現状、シングルタスクなのでコピーなど終わるまでいじれない
ver.0.25.0 キー設定
ver.0.26.0 起動時に左画面にフォーカス。
! マウスで選択時の動作が一部変?
ver.0.27.2 ↑多分修正
ver.0.28.1 同じ名前で同じフォルダにカット(いちおう元のファイルは".$$$"をつけて残る)
0.29 幅変更
0.30 送るメニュー(c:\windows\sendto\,フォルダ変更できない)
0.32 コマンド登録
([command]1=notepad %s,などとしてAlt+1で実行、まだまだ…とりあえずファイル名だけ使用)
リスト高さ1/2(最小以上) に変更
起動時のサイズ、幅(初期ファイルのwx)が0ならwinデフォルトに修正
( 公開版 )
0.33 shift+右クリックで検索メニュー
(該当アイテムだけをリスト表示、ワイルドカード(?*)使用)
0.34 *検索*
(現在のリストで指定文字列を検索し選択状態にする、ワイルドカードなし)
0.342 コマンドラインで$P(パス)$F(ファイル)の使用を追加
0.35 ファイル名比較して同じ物を選択。選択の反転。
いらないソース削除
$O(逆窓パス),$L(左パス),$R(右パス)追加
! ソートが逆窓適用になるときがある?
0.351 キー設定リスト添付
0.36
キー入力項目ほぼメニュー項目に追いつく(もう少し効率あげる方法は)
! メニュー見づらい
コマンド登録(手動)は400個までに
! とはいえ呼び出しはとりあえず番号指定なのでやりにくい
色変えた、みんなが好きそうな怪しげな黒…
! 微妙に中途半端 余白が。ちらつきも。
! リストに触ってからキー操作有効、そうでないときが分かりにくい
0.361.1 左右入れ替えのあとのソートが逆画面なのを修正
0.361.2 ログ設定
0.362.0 ヘッダ消す、ソートをキー入力で項目に拡張子追加
! 「逆窓と同じフォルダ」でソート逆窓になる
! ドライブ表示の文字列 >済
! エンターで実行しない場合がある ShellExecute引数? >済?
0.363.0 拡張子で色(ひとつ)
0.363.1 「右クリック>送る」のパス修正
! 遅くなっていくなあ
コマンドでwindowsの環境変数を使用可(%Temp%などど)
フォルダ欄、タブキーで下位フォルダを入力(いまいち不完全)
D&D受け入れ片方、フォルダのみ
マウスの乗ったほうにフォーカスを移すモード
(filemv.iniに [setting] mousemv=TRUE )
! 2Gあたりからマイナス表示になる
! リスト下のほうなど上書きしないからか消えない
0.37 zip32j.dllを使った圧縮。"zip -r nn.zip namae"(nnは選択最初のファイル名)でいっこずつ追加
! 1Gほど圧縮テスト500Mずつ2つになってしまったなぜ?
中間ファイルを.zipに変えれば解凍は出来た
! icon 表示切り替えがうまくない
! list幅操作うまくいかない
! 予定:D&Dぽいこと。クリックメニュー切り替え(済)。フォルダ、選択以外などリストから外す操作。
! 登録変数(済)。
0.372 unlha32.dllを使った圧縮。"a nn.lzh -x1r2a2 namae"(nnは選択最初のファイル名)でいっこずつ追加
! 予定:exe,batなど実行まえに警告(on,off)しようか
エディタで開くばあいデフォルトのを使うように変更
独自変数、環境変数と同じ書式。 (%変数名%)
filemv.ini に
[env]
hensu=置き換え文字列
などと追加。%は付けない。変数名は多分漢字とかでもいい。
優先順位
独自変数 > win環境変数 > $Fなど ( > %s,ファイル名に置き換え。これはやめるかも)
! コマンド、終わらないと戻ってこない。system()->ShellExecute()に変えた
フォルダ入力欄、フォルダじゃなさそうなときはコマンドとして実行、変数も有効
コマンド、空白処理
0.376
unlha32.dllを使った解凍。
ファイルサイズ(マイナス表示を)とりあえず4Gまで表示するよう修正(%d>%u)、ソートもitoa>itof
フォルダをdropで「開く」の処理修正。「コピー」にするほうがいいか。
bmp 表示。続けて bmp だとうまくいかない(済)
jpg 表示(susie plug-in 'ifjpeg.spi' を起動フォルダに)
jpg 拡大。領域計算雑なのでバグなのでやめようか
spiファイルをドロップでそのパスをiniに記録(使うのは現在はifjpeg.spiだけ)
フォーカスの移動、ESCキーで [ list > edit > file-edit ] のループに変更。
表示していないときもフォーカスはある、画像表示のときもlist,edit,file-editのどれかに。そこがわかりずらい
titileにパス表示。
! 選択状態の動作(色)がおかしくなった >済
予定:入力実行コマンドを記録?(済)
フォルダと拡張子設定してあればspi探して表示。毎回調べるのは能率悪いか
! 画像表示は微妙に縮尺計算が
消去しないので、前の画像に重ね書き。変えるかも
最初に開くフォルダを修正
0.383 vbmp3.dll を使ってmp3,wav の再生(Shift + Enter)。Shift + Enter かエスケープで停止。
履歴にコマンドも残す。入力欄Ctrl+←で履歴表示
予定:「履歴「his」で履歴をリスト表示?フォルダ移動の利便どうにか
「key」でキー設定リスト表示とか。
ドライブ利用率円グラフ。履歴欄、「C+.」でインクリメンタル・サーチ?
名前むふにするとか
入力欄を消す(リストのみ)モード
mp3、ヘッダを読んで時間指定で長さ計算してコピーとか
0.39
入力欄、「?...」で検索+選択
0.41
fenrirのinstant.iniに準じたコマンド置き換え(/n > notepad くらいしかテストはしてない)
パス情報もすでにあるもの検索して利用するのもいいかもな、などと考える
タイトルバー消すモード。
mp3など音声、vbmp3.dllなくてもmciで再生。
mciで映像再生。シフト+エンターで設定拡張子のもの再生。(設定しなくてもメニューで強制できる)
ウィンドウ内部で再生と思ったが(command系関数)、表示しない場合があり(サイズ変えたりすると表示したり)わからず断念。
外部ウィンドウを開く(string系関数を使用)。
コマンド入力と自動検索、バッファ処理ミスでの不具合修正。(一文字入力のたびにコマンドバッファ書き換えたため)
比較:サイズ、日付の違うものを選択。(分かりにくい)
! 起動が遅い
! 画像描画、内部仮想ビューに描いてコピーと思ったがうまくいかず断念中。
! 仮想リストビューというのを使うと速いらしいが書換え量気になり保留中。
入力欄に his:R his:L (あるいは Ctrl + (Shift+) H )で履歴リスト表示
予定:選択の合計サイズ
0.421
shift+M 右クリックメニュー切り替え.(マウスだけでの操作向け)表示はちょっと変
! Ctrl+UP/Down の動作を SetKeyboardState で(選択の切り替えしないよう)変えようとしたが駄目。
やり方を全面的に変えないと無理か、キー割り当て変更の一貫性がなくなる。
(リストビューの操作はいじっていないため。)
0.422 右クリックメニューの表示を早く。
! 選択を解除するのはどうにもならないかなあ。Ctrl使えばいいんですが(リストビューの仕様)。
画像表示オフ(デフォルト)での動作、Shift+Enter で表示。拡張子はjpg,bmpのみ、とりあえず変えられない。
! というのは、拡張子判定しようとして失敗、眠いので(?)保留中。あいかわらず描画手抜きで変なところもありつつ。
実行(メニュー)
マウスのみで複数選択するため、Control-Keyを押した状態にするメニュー。同じメニューまたは左Controlで解除。
0.43
フォルダ名入力、補完
(現在のフォルダ d:\abc の場合、 d:\abc\de と入れタブキーを押すとdeで始まるサブフォルダ候補を表示。Enterで移動、Esc またはフォーカス移動で解除)
( Shift+Tab で逆向きにと思ったが簡単ではなさそなので保留)
予定:履歴に実行したファイルも入れる?
0.44
マウスジェスチャ 「R←:戻る」「R→:進む」 (始点終点のみで判断)
0.45
マウスジェスチャ、「R↑↓:編集/再生/表示」「R↓←:実行」「R↑:上のフォルダに移動」 追加(判断方法を変更)
(いまのとこ機能は固定.感度にぶい?大きめに動かすといいかも)
ファイル名に空白があるとき再生できないのを修正(""で囲う)
0.464
キー設定ファイルないときも読み込むせいで起動が遅かったのを修正(usbで1分)
読み込みルーチンも変えた(ないときはスキップ)
! 名前変更できない不具合
! ジェスチャ、斜め作ってみたが難しいのでまだオフ
2007/5/18
0.47
マウスジェスチャ、カスタマイズ(いちおう)対応。filemv.iniに
[mouseTrans]
DUD=40107
などとエディタで追加。動作コマンドの長さは10とかでも多分動く。
上の場合は動作コマンド「右クリック下上下」をメニューの「IDM_DirEDIT_SW」に置き換える。
対応は source の resource.h を参照。値が40000〜60000の間にない場合は無視される。
filemv.iniの書換えはソフトを終了してから行ってください。
(ソース解析できないと設定も無理だな…)
ジェスチャ実行中はステータスバーに「DU..」などと表示されます。音も出すといいかな。
0.472
アドレス欄に「mouse:」でマウスジェスチャ設定リスト。
メニューを選び、右クリックメニュー>編集でジェスチャ文字列(DRDRなど)を指定。
( D:下、R:右、U:上、L:左 )
RRR(右、すこし左、右、すこし左、右:あるいは長さ判定)なども出来るようにしようか
いまいち
0.48
タブ化。連動しない部分もあり。保存はまだ。
0.481
タブ、保存(メニュー>窓グループ>現在の状態を保存)。二画面優先なので分かりにくい面も。
マウスジェスチャ、デフォルトでオンにした。(終了時にオン・オフ保存)
0.482
マウスジェスチャ、斜め判定改善して追加。デフォルトではオフ。
0.483
マウスジェスチャ、軌跡を表示。
0.486
マウスジェスチャ、デフォルトでオンになってなかったのを修正。
斜めも誤判定減ったので、デフォルトでオン。
回転の向きは色は変えるがまだジェスチャでの使用は考え中.
ジェスチャはあまり動きが遅いといまのところ反応しない。
(判定で色が変わるので色を目安にしてください)
! 履歴リスト表示でバグ?(クリックで落ちる場合あり)
ジェスチャ、小さい丸(上げ下げの長さと距離で判定)でマルチラインのテスト。
仕様(仮):マウスボタン上げで'X'、次の下げまで判定休止
ジェスチャ用文字列バッファ1000、ポイント保存バッファは10000に。なんとなく。2分ぐらいはもつ?
(ループさせればいいが、なんとなくしていない)
予定:キーを設定表示に加える
ジェスチャの文字は Up Down Left Right HidariUe MigiUe(下は小文字)の頭文字、変えるかも
予定:ESCでジェスチャ解除 マルチも解除。
座標の前にメッセージの数。
リストの外に行っても線を描く?
(まう筋つかってみた。便利。設定のない動きはスルーして(元のソフトにメッセージ)くれればいいんだけどそうもいかないのか。)
右下に座標表示した。見た目以外あんまり意味はないか。
基点座標を(0,0)表示にした。
外部からドラッグされたファイルのコピー(ひとつ)
ドラッグの処理は現在次のどれか。
ファイルコピー、
フォルダならフォルダ移動、
ファイルがspiならSuziePlugInフォルダに設定
0.489.1
新規作成でのエラー(ダイアログ呼び出し時の引数変更によるもの)修正など細かい修正
交点はまだ作業中というか使うのやめるかな
回転数を使おうか。(右回り3.5回分とか)
座標表示欄には「データ番号:x、y」、ジェスチャ終了時は「データ数:文字数、参考数値(交点)」。
音声再生(mci)の終了していた場合の処理を修正
-----------------------
なんとなく一息
しばらくは小さい修正か
0.50
ルートの上に仮想メイン(ドライブ一覧と履歴などの特殊フォルダ一覧)を追加
(ドライブのルート表示のときに上に移動すると表示)
mouse:ではメニューに対応するキーも表示、とりあえず表示するだけ
例:sca+Q ... Shift + Ctrl + Alt + Q
xFF ... キーの16進数表示 (0xFF=10進数で255)
右クリックメニューをいじりたいが内部的に保留、タブまわりも難しそうで保留
タブないところをダブルクリックで新規タブ開く
予定: 右窓実行ファイル選択、左窓データファイル選択>実行、のメニュー
ドラッグ&ドロップでファイルのあるフォルダを開く選択肢(ファイルの場合、いまはコピー)
-----------------------
2007/11
0.51
簡易表示、改行コード LF,CR でも改行するように。適当
0.51.1
右クリックメニューにmenuを出すメニュー(自分で忘れたので)
予定:memoモード付けようか。保存しなくても抜けたら自動で保存。
あるいは改行で保存とか。修正では新しいファイルに保存。
古いものは捨てない、ノートのような感じ?
戻るのはページをめくるように。ファイル名は1,2,3...とか。
あるいは巻紙。
0.52.0
memoモード付けてみた。
F12、ESC で切り替え。文書簡易表示画面の全画面の
ときとメモのときの違いがないので分かりにくい。
(タイトルにはmemoと表示)
モード切替かソフト終了のときに変更があれば保存。
編集できるサイズは30kbyteまで。
パス、ファイル名はとりあえず手動でiniファイルを編集してください。
部分コピー、キャンセル時のリロードをしない。
右再読み込みが出来ないのを修正。
現在のモードが分からない場合は ESC でフォーカスを移動するといいです。
0.52.2
vol? 改行修正
Ctrl+Alt+UP ウィンドウ構成変更、Ctrl+Alt+Down の逆。
0.52.3
リストモードと全画面簡易表示モードを ESC で切り替える。
! フォルダ選択で簡易表示きりかえてしまう
0.52.4
menu > file > 新しいメモ 。
現在のメモを連番でリネーム。
memofile=memo-.txt の場合は memo-_000.txt,memo-_001.txt,.. と増えていく。
最新は memo-.txt のまま。
0.52.5
memoモードで、メモと同じフォルダに key.log.txt を取る(memoに加えた文字すべて)
0.52.6
memoモード調整。消し忘れてたメッセージダイアログ。
保存失敗の時は画面消さないようにした。いまいち不安定か。
key.log.txt のほうは追加モードなので予備として。
Ctrl+Rクリック でとりあえずファイルメニュー。
Shift+Rクリック でサブ・メニュー(menuオン/オフ)
困った時はESCキー、という方向で。
! キャレットを最後に
0.52.7
簡易編集画面、先頭に$>abcd の時 Ctrl+S で memoのフォルダに abcd.txt を作り保存、$.abcd なら現在のフォルダに。いまいち。
0.52.71
ファイルをドロップした時、コピー・キャンセルならフォルダへ移動。
0.52.8
フォルダ名入力のフォーカスがタブ、リストと連動していなかったのを修正。まだちょっと。
大幅に書き直さないと自分でもややこしい。
フォルダ名入力欄でShift+ENTER でEXPLORER で開く。
0.53.00
$.filename を簡易編集画面の先頭に表示。
先頭行を変えなければ Ctrl+S で上書きになるので注意。バックアップは現状ではなしです。
大きいファイルには対応しません。edit classを使用しているだけなので。
0.53.01
保存は win標準(Shift-JIS、改行:CR+LF) になっています。
0.53.2
フォルダ入力欄、/でメインに移動
! 簡易表示読み込みがおかしいものがある、 先頭が 0x0a のもの?
0.53.2
簡易表示、ほぼ修正。
0.53.4
clip:nameでhis:を表示するバグ修正。
! clipにコピーできなくなっている。フォーカスが他のソフトから戻った後の動作が左右ちぐはぐ。
0.54.0
メニュー>設定>左をtreeとする
左リストのフォルダをクリックすると右の窓で開くモードを追加。
0.54.1
tree mode, どちらのリストでも効くように変更。トグルスイッチ
tree表示はしないから名前がよくない
0.54.2
tree mode, フォルダを開くきっかけを「選択」から「左ダブルクリック」に変更。逆窓はスイッチ連動のほうがいいか保留。
右リスト用メニュー(いまは実際はカレントリスト用)の再読み込み部おかしくなったので修正(currentを使う。内部の話)。
まだ窓の「左、右」と「選択、非選択」が混乱しているコードあり。
0.54.3
マウスゼスチャ登録ウィンドウで空の文字列でOKを押したとき、登録してしまう(=>右クリックだけで実行する設定になる)のを修正。(命令を無効にする)
0.55.0
マウスゼスチャ,色を変更できるようにした。filemv.iniに書く。赤緑青がRGB(255,255,255)の形式で設定される。
例
[setting]
mousecolor=on
(略)
[mousecolor]
0_R=10
0_G=20
0_B=30
1_R=10
1_G=120
1_B=30
(略)
14_R=210
14_G=20
14_B=30
0.55.1
コマンド入力改良。単体の場合%%でくくらなくてもいいように。
firefoxなどと登録してあればfolder名入力欄に入力してエンターで実行。
0.56.0
folder入力欄に「ff=c:\..\firefox.exe」の形で入力してコマンド変数を設定出来るようにした。
コマンド変数のリスト表示メニュー。
0.57.a.0
Lua 組み込みテスト。lua.lua は起動フォルダに置く。サイズが大きくなってしまう。当たり前。
0.57.dll.1
lua 関連をdllにした。
menu>ver.>luatesで、
ファイル名をlua.luaで変換してdialog表示するテストだけ。
lua.luaを書き換えればすぐ変更、実行できる。
現在は、luaファイルは同じフォルダに置かなければ呼び出せない。
luaの文法などについては http://wikiwiki.jp/lua/ などを参照。
lua 関連をビルドするには http://hammm.dw.land.to/lua/ の lua-5.1.3-mbenc.zip が必要。
lua本家のものでは試していない。
DLLと切り離したバージョンでは、実行時に動的リンクなので必要ない。
lua.luaとmoflua.dllなど、lua関連はなくても本体は動くようにする方向。
libのビルド関係はこちらに書いた > http://lua.g.hatena.ne.jp/hatecha/?word=%2a%5bvc%2b%2b%5d
--------- todo
前回終了時のtabで起動
保存時の改行をもとのと同じにする
$R.filenameで右に保存とか。
Ctrl+S 保存、拡張子をみて新しい時だけは注意を表示
$.full-path, pathつきならそのパスに保存
文字コード処理
バイナリの16進表示、書き込み、
タブを閉じるメニュー
窓グループ、消すメニュー。保存方法かえる?
オープンソース ----------------------------------------------
再配布、改変等、自由です。