これだけのスクリプトを作りたいのですがNo.02059
mega2000 さん 02/05/20 05:50
 
次の2つの処理をさせたいのです。

表示桁数は改行コードがこなければ半角100文字で
改行させたい。

改行された行頭に「012」がきた時だけその3文字を捨てて
4文字目が行頭になるようにさせたい。
(文中の「012」はこの処理に当てはまらない)


私には無理みたいなので教えてください。
(ここを見ろというポインタでも)


[ ]
RE:02059 これだけのスクリプトを作りたいNo.02060
秀まるお2 さん 02/05/20 17:35
 
 秀Termのスクリプトは手作業による送受信を自動化することを目的としています。
通信ソフトのスクリプトやマクロ類はみなそのような目的のことしか出来ません。

 受信したデータを整形して画面(秀Termの画面)に表示させることは、スクリプト
ではあまり出来ません。writebuffer文を使えば画面に追加で書き込むことは出来ま
すが、例えばホスト側が送ってきた文字列の一部を除去したり、一定の法則で改行を
入れるようなことは不可能だと思います。

[ ]
RE:02059 これだけのスクリプトを作りたNo.02061
範子 さん 02/05/20 22:58
 

;できないこともないですが、秀Termの画面は80文字固定なので
;100文字で改行しても、どうなのかと思います。
;ログの内容には影響を与えません。
;加工した内容を保存するには、ストックファイルを利用してください
display off;本来の表示を消します

getline @line;改行までを変数に入れます
;1023文字より長くなることが
;あるんでしょうか
;その場合はうまく動きません
;代わりにgetcharを使ってください
beginloop
while( @line != "")
#output = part( @line,0, 100);先頭から100文字切り出します
;2バイト文字の途中だろうと切ります
@line= part( @line,100,1024);切り出した残りを格納します
message "@line = "+@line
if( part(#output,0,3) == "012");先頭が"012"なら1度だけ除きます
#output = part(#output,3,1024)
endif;
writebuffer2 #output +"^M^J";行末に改行コードを表示します
endwhile
getline @line
endloop
;                             Νογικο

[ ]
RE:02061 これだけのスクリプトを作りたNo.02062
範子 さん 02/05/20 23:58
 
;タブが落ちて、デバッグ用のコードが残ってたのでやり直します。

display off                             ;本来の表示を消します
getline @line                           ;改行までを変数に入れます
                                        ;1023文字より長くなることが
                                        ;あるんでしょうか
                                        ;その場合はうまく動きません
                                        ;代わりにgetcharを使ってください
beginloop
    while( @line != "")
        #output = part( @line,0, 100)   ;先頭から100文字切り出します
                                        ;2バイト文字の途中だろうと切ります
        @line= part( @line,100,1024)    ;切り出した残りを格納します
        if( part(#output,0,3) == "012")     ;先頭が"012"なら1度だけ除きます
            #output = part(#output,3,1024)
        endif
        writebuffer2 #output +"^M^J"    ;行末に改行コードを表示します
    endwhile
    getline @line
endloop

[ ]
RE:02062 これだけのスクリプトを作りたNo.02063
mega2000 さん 02/05/21 04:47
 
秀まるお2さん、範子さん

コメントありがとうございます。

格納して頭3文字での一致判定、
そして、その際の4文字以降を表示させる
なんて、説明されるとまさにその通りと
納得してしまいました。

あと、本件については半角100文字以内に
必ず改行コードが送られてきます。

[ ]