ブラウザ枠のウォッチNo.40650
(-L-) さん 23/06/21 08:43
 
という機能がついていることに気が付きました。
今の仕様と、もうひとつのモードがあると良いと思いました。
今の仕様は生成物に更新があるとリロードとのこと。
もうひとつは、今編集中の(そのブラウザ枠の隣で開いている)ファイルに更新があ
るとリロードです。

なので、個別ブラウザ枠だけの機能になるのかもしれませんが、生成物が標準出力的
なもの(生成物がファイルではない)ケースもあるので、この仕様もほしいところで
す。
例)CGIのソースファイル(hogehoge.cgi)を編集しているが、ブラウザ枠にはhttp
デーモン経由でのhttp://localhost/hogehoge.cgiで表示しているケースなど。

[ ]
RE:40650 ブラウザ枠のウォッチNo.40652
秀丸担当 さん 23/06/21 09:41
 
localhostのウォッチはそのままでは確かにできないです。
ブラウザ枠のウォッチは、file: のときのみになっています。
一応現状でもそれに合ったマクロを作れば可能ではありますが、面倒だと思います。
単純に、直接的な繋がりが見えなくてもファイルが更新されたらブラウザ枠も更新と
いう手段があってもいいかもしれません。
また検討します。

[ ]
RE:40652 ブラウザ枠のウォッチNo.40653
こみやんま さん 23/06/21 10:18
 
そういえば、ライブラリに以前アップした HmMarkdownSimpleSerer を作る際に思っ
ていたのですが、

実際にファイルを更新した(というか変化した)というのが
意外とマクロ上でもjs上でもやりにくいんですよね。

「編集ペインの中身が更新されている」とかではなく、
ファイルの監視(ファイルwatcher)ですねぇ。

今だと比較的込み入った監視なら .NET系でwatcher使う、
単純に編集中のファイルだけだとしても、FileSystemObject みたいに
なっちゃいますかねぇ。

マクロの existfile あたりを非同期にして、更新日時
や作成日時を取れるフラグ付けたり?


[ ]
RE:40652 ブラウザ枠のウォッチNo.40654
(-L-) さん 23/06/21 10:38
 
>単純に、直接的な繋がりが見えなくてもファイルが更新されたらブラウザ枠も更新
>という手段があってもいいかもしれません。
>また検討します。

ウォッチは単純に、リロードボタンを毎回押すのが面倒くさいという話かと。
リロードは頻繁すぎなければ頻繁にあって良いかと。
(リロードされた際にスクロール位置が変動しないのが最高に良いですが。)

という感じで考えると、実際に更新されていようがされていなかろうが、秀丸エディ
タでファイル保存イベントが発生したらリロードする。くらいのノリでも良いのだろ
うと個人的には思っています。

[ ]
RE:40653 ブラウザ枠のウォッチNo.40662
秀丸担当 さん 23/06/21 18:12
 
実際のファイルの更新状態は、確かにマクロで受動的にイベントのような形で知るこ
とはできないです。
やるとしたら定期的にチェックするか、DLLやCOMということになると思います。
あるいは標準入出力のコンソールアプリとしてPowerShellで作るとstdioの非同期で
イベントで知ることはできる気もしますが、けっこう大がかりです。

実際のファイルの更新でなくてもよければ、自動起動マクロの保存時の実行だったり、
最近のバージョンではkeyhookでCtrl+Sを置き換えたりとかも考えられます。

それよりただ更新を一緒にできればいいというだけの話だと思うので、[上書き保存]
をCtrl+S、[ブラウザ枠を更新]コマンドをCtrl+Shift+Sとか連続で実行しやすくする
のが手っ取り早いと思います。
マクロでするなら、以下のような2文でいいのかもしれません。
save;
refreshbrowserpane;

[ ]