Grep開始位置に戻りたいNo.09423
Suezo さん 17/04/13 17:18
 
いつも便利に使用させてもらっています。

Grep開始位置に戻ることはできないでしょうか?
バックタグジャンプの履歴に含んで戻れればベストなんですが。

別件でダイレクトタグジャンプの飛び先一覧で絞り込みのGrep要望を
したのですが、実装されるかわからないので、
ダイレクトタグジャンプで複数ヒットにより飛び先一覧が表示され、
キャンセルしたら、「Class名 + "::" + 関数名」でGrepし、
1個だけヒットしたら、自動でジャンプするマクロを作りました。
結構がんばって作ったんですが、先には進めるけど元の位置に戻れませんでした。

以上、よろしくお願いします。

[ ]
RE:09423 Grep開始位置に戻りたいNo.09424
秀丸担当 さん 17/04/14 09:29
 

バックタグジャンプのための戻り先を明示的に指定するという方法は無いです。
以前からネタとしてあったのですが、やっていませんでした。
あったほうがいいと思います。
現在の位置をバックタグジャンプの位置として覚える、savebacktagjumpのよう
な文を追加したいと思います。

[ ]
RE:09424 Grep開始位置に戻りたいNo.09425
Suezo さん 17/04/14 10:12
 
>現在の位置をバックタグジャンプの位置として覚える、savebacktagjumpのよう
>な文を追加したいと思います。

よろしくお願いします。

[ ]
RE:09424 Grep開始位置に戻りたいNo.09432
Suezo さん 17/04/20 16:21
 
>現在の位置をバックタグジャンプの位置として覚える、savebacktagjumpのよう
>な文を追加したいと思います。

Ver8.71 Beta12 でマクロに組み込み、動作することを確認しました。

バックタグジャンプの仕様についての質問ですが、
戻り先のファイルがなくなっていた場合はそこで終了するのが仕様でしょうか?
下記のマクロ(既存マクロにsavebacktagjumpを追加しただけ)では
動作しなかったので。(exitを消去したら動作しました。)

*** マクロの途中から ***

savebacktagjump; // バックタグジャンプの戻り先記憶
grep $str4, "*.cpp", ".", outputsingle; // 単一でGrep実行
if(result == 1){ // 1つだけヒット
  tagjump;
  prevtab;
  exit;     // Grep画面を閉じる(終了)
  nexttab;
}

************************

バックタグジャンプを実行して、ファイルがなかった場合、
もう1つ前に戻るようにしてほしいです。
仕様だった場合、オプションでの追加を希望します。

以上、よろしくお願いします。

[ ]
RE:09432 Grep開始位置に戻りたいNo.09435
秀丸担当 さん 17/04/20 17:33
 

バックタグジャンプで、ジャンプ先の秀丸エディタが既に閉じている場合は、そ
こでバックタグジャンプは終わりで、それ以上先に進めないという仕様になって
います。
不都合が無ければ一個飛ばしてもいいと思いますが、呼び元と思ってジャンプし
たら呼び元じゃないということが起こり得るので、期待しないことになってしま
うかもしれません。
オプションかbacktagjumpのパラメータか何らかの方法があったらいいというこ
とで、今後の参考にさせていただきます。

[ ]
RE:09435 Grep開始位置に戻りたいNo.09436
Suezo さん 17/04/20 18:00
 
>オプションかbacktagjumpのパラメータか何らかの方法があったらいいというこ
>とで、今後の参考にさせていただきます。

固定タブが1つ増えるだけなので、特認作業に支障はありません。
気がむいたら実装してください。
savebacktagjumpの機能が実装されただけでかなり便利になりました。

以上、よろしくお願いします。

[ ]