|
サポート外でしたか…。で、やるとすれば、あんな風になってしま
いますね…。
ただ、windowposxがプライマリモニタ以上の値(セカンダリモニタが、
プライマリモニタの右でも左でも)を得られるようになっていま
す。可能なら、setwindowposも、現行のcxscreen,cyscreenの値以上の
範囲もサポートして頂ければと…。
で、マルチモニタ環境で予想とおりに動くマクロとそうでない
マクロがあるので、どこが原因か、ザクッと調べてみました。
いろいろマクロへの要望を書きましたが、実際にマクロを使ってい
て、非常に不便だったわけです。
ただ、この掲示板上では「ただ、わぁ〜わぁ〜言っているだけ」
と怪訝されるのもアレですので、ウィンドウ系のマクロ文とキーワードを
ひととりチェックしてみました。(実行環境や条件を少しは変えて
色々動かしてみましたが、設定などでもっと色々な結果がでる可能
性もありますので、「ご参考までに…」ということでご勘弁をm(_ _)m
============================
■簡易調査したマクロ文
nexthidemaru,prevhidemaru,nexthidemaruicon,prevhidemaruicon,
nexttab,prevtab,restoredesktop,savedesktop,scrolllink,
split,splitswitch,
windowcascade,windowhorz,windowtiling,windowvert,windowlist,
compfile,alwaystopswitch,settabmode,settabgroup,settaborder,
setwindowsize,setwindowpos,showwindow,setmonitor
■動作に?なマクロ分
setwindowsize,setwindowpos,settabmodeの3個。
(1)setwindowsize
マルチモニタ環境で不具合。下記のマクロで
setwindowsize 20,10;
プライマリモニタの右にセカンダリがある場合は問題なし。
しかし、セカンダリモニタを左に位置した場合は、高さは正しく
制御されるが、幅が正しく制御できない。
これは一応「バグ」と認定できると思われますが…。
(2)setwindowpos
前の報告のように、プライマリモニタの見かけの画面以外には移動できない。
これは非常に不便です!(ただ、setwindowpos文と他の画面に関するキーワード
が秀丸内で共有しているのだろうと想像しますので、「残念!」とだけ言って
おくだけにしておきます…)
(3)settabmode
再現性がイマイチですが、「2つのファイルを開いた状態で同マクロ文を
一方の秀丸上で実行した場合、始めタブモードでない状態でsettabmode;」を
実行しても2つのグループに分かれてしまう(それぞれはタブモードになって
いる」症状が発生することがある。
(段組を変更する作業と平行した時に発生したようですが、再現性は特定で
きていません。一応、ご報告まで…)
※ set*系のマクロ文では少し興味深い動作が見られるようですが、現行の
ままのほうが、いろいろできて宜しいような感じがします…(^^;;;
=====================
■簡易調査したキーワード
hidemarucount,monitor,monitorcount,cxscreen,cyscreen,xworkarea,yworkarea,
cxworkarea,cyworkarea,windowcx,windowcy,windowposx,windowposy,
windowwidth,windowheight,splitstate,windowstate,windowstate2
■動作に?なキーワード
特になし。
ただ、monitor、windowposx等がセカンダリを認識しているのに、
cxscreen,cyscreen,xworkarea,yworkarea,cxworkarea,cyworkarea等は
プライマリの値になったままです。これはこれで「仕様です」とも
言えなくもないですが(と言うか、開発段階では、マルチモニタ環境
そのものを実質的に想定できなかった時代だったのかもしれません)、
セカンダリモニタの内部的な値を知るキーワードがあると、さらに便利
になると思われます。過去のOSとの兼ね合いもあろうかと思われますが
XPでは標準で装備されており、現状ではごく普通な環境だろうと思われ
ますので…。
>あるいは、DLLを作成して呼び出すか、です。
う〜ん、これは一応、「言っこなし」ということで…(^^;
ここが「C++自由自在」とかいう部屋であれば別ですが、一応、秀丸や
秀丸マクロがベースな場所ですので…。
そうでないと、あらゆる要望は「自分で勝手にCやC++を使って作れば…」
というような一言で、不毛な場ともなりかねませんので…。
|
|