自動折り返しはマクロで?No.11035
Omi さん 02/01/20 09:49
 
メモ帳にある、書式>右端で折り返す のような機能は、
マクロで実現するしかないのでしょうか。

[ ]
RE:11035 自動折り返しはマクロで?No.11042
番頭++ さん 02/01/21 00:49
 
>メモ帳にある、書式>右端で折り返す のような機能は、
>マクロで実現するしかないのでしょうか。

コメントがつかないので、ふぉろーを ...

自動的におりかえせません、か ???
いまいち質問の意図が見えません ... <== ボケ by 丁稚++

//*1    a1.mac
    config "w81";
endmacro;

[ ]
RE:11042 自動折り返しはマクロで?No.11043
番頭++ さん 02/01/21 01:00
 
//*1 *** Macro for 「秀丸エディタ」 ***
//*1 【マクロ名】 KZ_Config2.mac - Ver. 03.04 - 1999/11/11
//*1  (C) Copyright 番頭++ (Bantou++). 1996 - 1999. All Rights Reserved.
//*1 【作者】 K.Nakatake / 番頭++ / E-mail:xxxxxxxx@nifty.ne.jp
//*1 ・このマクロは、フリーウェアです。
//*1 【機能】
//*1 ・CONFIG; の設定 - 簡易版
//*1 ・「ファイルタイプ別の設定」、「動作環境」を一時的に変更します。
//*1 ・自由に変更してご使用下さい !
//*1 ・このマクロは、.フリーウェア.です。
//*1 ・
//*1 【注意】
//*1 ・「秀丸エディタ」の Ver 3.01 以上で使用して下さい。
//*1    config "w250";  //  max. Ver. 2.29 まで
//*1    config "w1000"; //  max. Ver. 3.00 から
//*1 ・
//
    if( version < 301 ){    //  about   "w1000"
        message "すみません、version (3.01) のチェックを行なっています !";  
about;
        endmacroall;
    }

    $tbl_menu1[00] = "【 config の設定 】";
    $tbl_menu1[01] = "(&T) Tab 4 ";
    $tbl_menu1[02] = "(&8) Tab 8 ";
    $tbl_menu1[03] = "(&W) Width   81 ";
    $tbl_menu1[04] = "(&1) Width  100 ";
    $tbl_menu1[05] = "(&2) Width  200 ";
    $tbl_menu1[06] = "(&M) Width 1000 (max.) ";
    $tbl_menu1[07] = "(&N) Width  (20-1000) : " + str(width);
    $tbl_menu1[08] = "(&E) 動作環境  ";
    #tbl_menu1 = 08 + 1;
    mousemenuarray $tbl_menu1, #tbl_menu1;
    #menu = result - 1;
    if( #menu < 00 ){   //  [Esc]
        endmacro;
    } else if( #menu == 00 ){
        CONFIG; endmacro;
    } else if( #menu == 01 ){
        config "t4";
    } else if( #menu == 02 ){
        config "t8";
    } else if( #menu == 03 ){
        config "w81";
    } else if( #menu == 04 ){
        config "w100";
    } else if( #menu == 05 ){
        config "w200";
    } else if( #menu == 06 ){
//*5    config "w250";  //  max. Ver. 2.29 まで
        config "w1000"; //  max. Ver. 3.00 から
    } else if( #menu == 07 ){
        $wk1 = str(width);
        $wk2 = input("Type-in Width !  (20-1000) ",$wk1);
        if( result && $wk2 != "" ){
            config "w" + $wk2;
        } else {
            endmacro;
        }
    } else if( #menu == 08 ){
        ENV;    endmacro;
    } else {
        message "N/A";  endmacro;
    }
endmacro;
// end of macro.

[ ]
RE:11035 自動折り返しはマクロで?No.11044
きいろいまふらあ さん 02/01/21 01:35
 
>メモ帳にある、書式>右端で折り返す のような機能は、
>マクロで実現するしかないのでしょうか。

メモ帳で言うところの「右端で折り返す」、すなわち、ウィンドウの大きさを変
えると自動的に折り返し桁数が変わるという機能は、秀丸の場合、マクロを使っ
ても実現することはできません。

現在のウィンドウサイズに合わせて折り返し桁数を変更するマクロ、というもの
は作れますが、このマクロ自体は人為的に起動してやらなければなりません。つ
まり、ウィンドウのサイズを変えたときに自動的にこのマクロを起動させる仕組
みがないということです。

ちょっと見方を変えれば「ウィンドウサイズを変えて、折り返し桁数もそれに合
わせる」というマクロも作れなくはありません。これならば、(ウィンドウサイ
ズの変更をこのマクロを介して行う限りにおいて)ウィンドウサイズの変更と折
り返し桁数の変更を同期させることができます(当たり前ですけど)。

折り返し桁数を常にウィンドウ幅に追従させるような機能、欲しいですね。
既に存在するいくつかのオプション設定との整合性を保つのにちょっと頭を使う
必要がありそうですけど。

[ ]
RE:11035 自動折り返しはマクロで?No.11047
ませま さん 02/01/21 03:00
 
Omiさんの
2002/01/20のメッセージ:
「hidesoft.2:11035| 自動折り返しはマクロで?」 に返信
>メモ帳にある、書式>右端で折り返す のような機能は、
>マクロで実現するしかないのでしょうか。

メモ帳は消してしまったのでどんな機能だったかよく覚えてない
けど,まず,折り返し文字数はファイルタイプごとに設定可能で,

[その他(O)]-[ファイルタイプ別の設定(C)]-[全般]-[折り返し文字数(W)]

で設定できます.このとき,Alt + J でウィンドウ幅に
あわせることができます.

同じファイルタイプでも,ウィンドウ幅を何故かころころ変更し,
それにあわせて折り返し文字数をアクティブに変更したい,という
のであれば標準の操作では無理(のはず)です.

ただ,こんなときは「現在のウィンドウ幅を取得して,
それにあわせて折り返し文字数を変更するマクロ」を作ったら
いいと思います.

生意気に僕がちょっと作ってみました

//--- ( B E G I N ) ---
config "w" + str(windowwidth - 2);
//saveconfig;
endmacro;
//--- (   E N D   ) ---

秀丸の 3.14β5 では動いてるけど,バージョン依存のコマンド
使ってると思うので注意が必要です.
2行目の saveconfig を有効にすると設定を保存しちゃいます.

どうしてもアクティブに変更したいのならウィンドウサイズの
変更ごとマクロでやらないとダメと思います.

[ ]
RE:11043 自動折り返しはマクロで?No.11050
Omi さん 02/01/21 13:57
 
番頭++ さん ありがとうございます。

質問の意図は、まずウィンドウの幅を狭くも広くにも変え、
その中に納まるように自動で折り返す機能です。

>//*1 【マクロ名】 KZ_Config2.mac - Ver. 03.04 - 1999/11/11
>//*1  (C) Copyright 番頭++ (Bantou++)

って、イメージにぴったりじゃないけど、
かえって使いやすそうです、早速に設定しました。
感謝です <(_ _)>

[ ]
RE:11044 自動折り返しはマクロで?No.11051
Omi さん 02/01/21 14:09
 
きいろいまふらあ さん ありがとうございます。

>折り返し桁数を常にウィンドウ幅に追従させるような機能、欲しいですね。

ねぇ、そうでしょう。

この機能がないので、Wzエディタを使っていたくらいですもん。

でも、使い始めた鶴亀メールの分かりやすさがとても気に入ったので、秀丸に統一す
ることにしました。

みなさん、ご指導をお願いします。

ひまを見つけては過去ログを見ていますが、大仕事ですねこれは。

[ ]
RE:11047 自動折り返しはマクロで?No.11052
Omi さん 02/01/21 14:23
 
ませま さん ありがとうございます。

頂いたマクロを参考にして、切り替えボタンを作りました。

//* ウィンドウの幅と、最大の幅に、交互に替える
#adjust = 6;
//  文字が隠れてしまうのを防ぐ
//  プロポーショナルフォントなら 1;
if ( width > 999 ){
  config "w" + str(windowwidth - #adjust );
}
else {
  config "w1000";
}
endmacro;

当分これで、がまんします。その内きっと秀まるおさんが、

□ 自動で折り返す(O)

みたいな項目を作ってくれることでしょう。
よろしくお願い致します。<m(_ _)m>

[ ]
RE:11052 自動折り返しはマクロで?No.11053
Omi さん 02/01/21 14:43
 
追記

//  プロポーショナルフォントなら 1;
ではなく、
//  行番号表示がされていないなら 1;
でした。


[ ]
RE:11053 自動折り返しはマクロで?No.11054
Omi さん 02/01/21 15:44
 
再追記
>
if ( linenostate ){ #adjust = 6; } else { #adjust = 1; }

がいいですね。

[ ]
RE:11052 自動折り返しはマクロで?No.11057
秀丸担当 さん 02/01/21 18:59
 
>当分これで、がまんします。その内きっと秀まるおさんが、
>
>□ 自動で折り返す(O)
>
>みたいな項目を作ってくれることでしょう。
>よろしくお願い致します。<m(_ _)m>

自動で折り返してほしいという要望は、以前からよく頂いていますが、
内部的な都合により、大きなファイルを扱うと非常に遅くなってしま
うため、やっていませんでした。
なんとかできないか検討してみます。

[ ]
RE:11057 自動折り返しはマクロで?No.11058
Omi さん 02/01/21 19:48
 

やったーヽ(^。^)ノ

秀丸担当 さま おねがいしまーす。

[ ]
RE:11043 自動折り返しはマクロで?No.11061
Omi さん 02/01/22 07:19
 
番頭++さん  教えてください

ファイルタイプ別の設定が、CONFIG;
動作環境が、ENV;
キー割り当てや、
コマンド一覧は、何ですか。

[ ]
RE:11061 自動折り返しはマクロで?No.11063
番頭++ さん 02/01/22 07:37
 
>ファイルタイプ別の設定が、CONFIG;
>動作環境が、ENV;
>キー割り当てや、
>コマンド一覧は、何ですか。

keyassign;//キー割り当て
コマンド一覧も在りますが、
マクロで起動しても意味がない、有効ではないと、記憶に在ります。

なにせ、最近は秀丸から離れていましたので、ボケております。
Ver. 3.00 レベルのマクロのトークン一覧があるので、ご自分で探してください。

http://homepage2.nifty.com/bantou_pp/KBANTOU/KZHMJ304Beta/KZ_Doc1/KZHM_Token
1.txt
http://homepage2.nifty.com/bantou_pp/KBANTOU/KZHMJ304Beta/KZ_Doc1/KZHM_Token
1.csv

[ ]
RE:11063 自動折り返しはマクロで?No.11064
Omi さん 02/01/22 08:30
 

番頭++さん ありがとうございます。

研究してみます。

[ ]
RE:11054 自動折り返しはマクロで?No.11065
Omi さん 02/01/22 12:27
 
再再追記です。 前のマクロだと、最初だけ、
ウィンドウを狭くしたのに逆に折り返し幅を広くしてしまいます。

みなさんすいませんねぇ、以下でどうでしょうねぇ。

//* 折り返し幅 切り替え
// ウィンドウが狭くされていれば折り返し幅にし、
//そうでなければ、大きな幅にする

#adjust = 0;
if ( linenostate ) #adjust = 5;

#W_width = 160;
if ( windowwidth - #adjust < width ){
  #W_width = windowwidth - #adjust -1;
}

config "w"+str( #W_width );

endmacro;

[ ]