秀丸エディタ管理(タブ編)(Ver8.31対応版)
目次− 秀丸エディタ管理(タブ編)
 タブモードのときは、下記の文などを使うことができます。

settabmode   タブモード(ウィンドウ一覧のタブ)切り替え(文)

tabmode   タブモードの状態(値)

settabgroup   タブを分離/移動(文)

tabgroup   グループID(値)

tabgrouporder   グループの順番(値)

settaborder   タブの順番変更(文)

taborder   タブの順番(値)

tabtotal   グループ内のタブの個数(値)

tabgrouptotal   グループの個数(値)

gettabhandle   各グループ・各タブのウィンドウハンドルの取得(関数)

getcurrenttab   各グループの選択されているタブの取得(関数)

 これらは、tabmodeキーワードで、タブモードであるかどうかを判断してから使ってください。
 tabmodeでないときに使うと期待される動作をしません。

 参照:秀丸エディタ管理
使い方の例(グループをループするには)
#i = 0;
while( #i < tabgrouptotal ) {
    #handle = getcurrenttab( true, #i );//または #handle = gettabhandle( true, #i, 0 );
        :
    //#handleを使った処理
        :
    #i = #i + 1;
}

使い方の例(グループ内のタブをループするには)
#i = 0;
while( #i < tabtotal ) {
    #handle = gettabhandle( true, 0, #i );
        :
    //#handleを使った処理
        :
    #i = #i + 1;
}

使い方の例(全てループ(グループ順・タブ順に))
 settabgroupなどを使うとグループの順番が崩れるのでこのループは使えないので注意してください。
#i = 0;
while( #i < tabgrouptotal ) {
    #grouptop = gettabhandle( true, #i, 0 );
    #j = 0;
    while( #j < tabtotal[#grouptop] ) {
        #handle = gettabhandle( true, #i, #j );
            :
       //#handleを使った処理
           :
       #j = #j + 1;
    }
    #i = #i + 1;
}

使い方の例(次のグループ・前のグループの取得)
//次のグループ
#next = getcurrenttab( true, 1 );
//または #next = gettabhandle( true, 1, 0 );

//前のグループ
#prev = getcurrenttab( true, tabgrouptotal -1 );
//または #prev = gettabhandle( true, tabgrouptotal -1, 0 );

使い方の例(次のタブ・前のタブの取得)
//次のタブ
#nTabOrder = taborder[getcurrenttab( true, 0 )] + 1;
if( #nTabOrder >= tabtotal ) #nTabOrder = 0;
#next = gettabhandle( true, 0, #nTabOrder );

//前のタブ
#nTabOrder = taborder[getcurrenttab( true, 0 )] - 1;
if( #nTabOrder < 0 ) #nTabOrder = tabtotal - 1;
#prev = gettabhandle( true, 0, #nTabOrder );

使い方の例(グループID←→ウィンドウハンドル 変換)
//グループID→ウィンドウハンドル
#handle = getcurrenttab( false, #nGroupID );

//ウィンドウハンドル→グループID
#nGroupID = tabgroup[#handle]

使い方の例(グループ順番←→ウィンドウハンドル 変換)
//グループ順番→ウィンドウハンドル
#handle = getcurrenttab( true, #nGroupOrder );

//ウィンドウハンドル→グループ順番
#nGroupOrder = tabgrouporder[#handle]

使い方の例(グループ順番←→グループID 変換)
//グループ順番→グループID
#handle = getcurrenttab( true, #nGroupOrder );
#nGroupID = tabgroup[#handle]

//グループID→グループ順番
#handle = getcurrenttab( false, #nGroupID );
#nGroupOrder = tabgrouporder[#handle]

戻る