[ 新規に投稿する ]

割り当てによってスクリプトが異なる動作をするNo.09784
ももきち さん 22/01/15 20:27 [ コメントを投稿する ]
  例えば、以下のスクリプトを「T」キーに割り当てて実行すると、新規タブで「BBB」フォルダを開いた後に上のフォルダに移動します。
結果的に、「AAA」フォルダを開いたタブが1つ増えた状態になります -> 想定通りの動作
------
Open( "C:\\AAA\\BBB", 1);
Command("1つ上のフォルダへ");
------

このスクリプトを、「Ctrl+T」キーに割り当てて実行すると、新規タブで「BBB」フォルダを開き、さらに新規タブで「AAA」フォルダを開きます。
結果的に、「BBB」と「AAA」フォルダを開いたタブが2つ増えた状態になります -> 想定と違う動作

同じスクリプトが割り当てたキーによって、異なる動作をしてしまいます。
[ ]
RE:09784 割り当てによってスクリプトが異なる動作をするNo.09789
秀丸担当 さん 22/01/17 10:20 [ コメントを投稿する ]
  バグ情報ありがとうございます。
たしかにそうなることが確認できました。
「新規タブ等」のキーの組み合わせが影響していました。
スクリプトの場合は影響しないように修正させていただきます。
[ ]
RE:09789 割り当てによってスクリプトが異なる動作をするNo.09811
ももきち さん 22/01/24 20:33 [ コメントを投稿する ]
  V1.72にて修正されていることを確認しました。
ご対応有難うございました。

本題の内容とは話が反れてしまうのですが、「根本のデスクトップ」にいる時に、
以下のスクリプトを実行すると、「ユーザーごとのデスクトップ」を起点にタブを開き、1つ上のフォルダが開きます。
------
 var str = GetDirectory();
 Open( str, 1);
Command("1つ上のフォルダへ");
------
結果的に、スクリプトを繰り返し実行すると
「根本のデスクトップ」→「ユーザーごとのデスクトップ」→「根本のデスクトップ」→…
を繰り返す動作になってしまいます。

そこで質問なのですが、マウス操作では「新しいタブ」から「根本のデスクトップ」を開くことはできるようですが、
スクリプト上から「根本のデスクトップ」を開くことはできますでしょうか。
[ ]
RE:09811 割り当てによってスクリプトが異なる動作をするNo.09812
秀丸担当 さん 22/01/25 11:14 [ コメントを投稿する ]
  GetDirectoryで取得できるのはパスだけで、ツリー上の位置を表す情報を得ることはできないです。
ツリー上の位置を表せる、コマンドラインにも渡せる「:*」から始まる書き方もあるのですが、これは内部的な書き方で、スクリプトで取得したり開いたりはできないです。
スクリプトで取得する方法も検討しようと思います。

スクリプトで無理矢理根本のデスクトップに行くとしたら、あらかじめ登録したブックマークを開くか、フォルダツリーを開いた状態でCommand("ツリーHomeキー");とするしかなさそうです。
[ ]
RE:09812 割り当てによってスクリプトが異なる動作をするNo.09821
ももきち さん 22/01/27 22:05 [ コメントを投稿する ]
  V1.74β1にて、ご対応有難うございます。
ただ、ツリー上の位置を表せる「:*」の書き方というのがよく分からなくて教えて下さい。
根本のデスクトップの書き方を調べるのに、フォルダ移動がなくなるまで「1つ上のフォルダへ」を実行した後、以下のスクリプトで確認してみました。
Echo(GetDirectory(1));
すると、「:*」が表示されたので、
Open( ":*");
Echo(GetDirectory(1));
と実行してみると、「:*0000」が表示されます。
「:*」と「:*0000」は、違うものを表すのでしょうか?
[ ]
RE:09821 割り当てによってスクリプトが異なる動作をするNo.09823
秀丸担当 さん 22/01/28 09:44 [ コメントを投稿する ]
  「:*」と「:*0000」は一応同じで、デスクトップの根本の同じ場所を指すようになります。
ただ「:*」の場合は、内部的なことですが、メモリ確保するサイズがゼロになって何かしら不安定要素になるかもしれないので、そのあたり安全なように対策していきます。
[ ]
RE:09823 割り当てによってスクリプトが異なる動作をするNo.09825
ももきち さん 22/01/28 13:06 [ コメントを投稿する ]
  Opneで「:*」や「:*0000」を指定して開いたフォルダでは、1階層上のフォルダに移動することができるように見えるので気になりました。
「:*」や「:*0000」で移動した直後は、コントロールパネルが表示されていますが、1階層上に上がる(?)と、コントロール消えるので、何か違いがあるのかと思った次第です。
[ ]
RE:09825 割り当てによってスクリプトが異なる動作をするNo.09840
ももきち さん 22/02/12 20:08 [ コメントを投稿する ]
  注目バーから「根本のデスクトップ」を選択した場合も同様ですが、Open( ":*");を実行すると、コントロールパネルが2つあるデスクトップが表示されます。
さらに、このデスクトップ表示から、1つ上の階層に移動することができます。これは仕様ということで宜しかったでしょうか?
[ ]
RE:09840 割り当てによってスクリプトが異なる動作をするNo.09842
秀丸担当 さん 22/02/14 10:01 [ コメントを投稿する ]
  確かにそういう動作になっていることが確認できました。
どちらも違いない動作になるべきで、同じになるように修正します。
[ ]
RE:09842 割り当てによってスクリプトが異なる動作をするNo.09865
ももきち さん 22/02/20 16:24 [ コメントを投稿する ]
  V1.74β3にて、根本のデスクトップ移動してもコントロールパネルが2つ表示されなくなっていることを確認しました。
いろいろと対応有難うございました。
[ ]

[ 新規に投稿する ]