情報
概要
ソースを最適化します。
具体的にはこんな変化があります。(↑が変化前 ↓が変化後)
「てすてす」
(『てすてす』)
「あいうえお{変数A}かきくけこ」。
(『あいうえお』&(変数A)&『かきくけこ』)。
これの作成にあたってfujiさんの
★ソース高速HTML化を参考にさせて頂きました。
というかほとんど流用です。ごめんなさい。
解説
ほげほげ=「hoge
ほげ
ホゲ」。
A=システム時間。
100000回
親回数=回数
TEMP=「{母艦パス}てすてす{ほげほげ[0]}」。
もし、回数%1000=0ならば母艦のタイトルは回数。
A=システム時間-A。
「最適化前 {A}」を表示。
A=システム時間。
100000回
親回数=回数
TEMP=母艦パス&「てすてす」&ほげほげ[0]。
もし、回数%1000=0ならば母艦のタイトルは回数。
A=システム時間-A。
「最適化後 」&Aを表示。
引数
ソース:ソース本文(≠.nakoへの絶対パス)
返り値
最適化されたソース
サンプルプログラム
A=(「.nako」のファイル選択)を開く。
A=Aをソース最適化。
Aを言う。
//本体
●ソース最適化(ソースを|ソースの)
'定数
文字列色は"#000080"
# CR=CHR(13)
//「"”『``{{・/*##//'’※
囲み文字=`「
"
”
`&"『
`
`"&`
{
{
/*
・
#
#
//
'
’
※`
閉じ文字=`」"”`&"』``"&`}}`#*/
囲み文字数=要素数(囲み文字)。
最初部分=「」
(ソース!=『』)の間
最小文字数=文字数(ソース)
番号=-1
囲み文字を反復
ソースで対象が何文字目。
もし、(それ<最小文字数)かつ(それ>0)なら
最小文字数=それ。
番号=回数-1
次囲み文字=対象。
#関数を探す
「●{~}■{~}*」を反復
ソースを"^\t* * *{対象}"で正規表現マッチ。
それ=それ\0。
もし、(それ<>「」)かつ(何文字目(ソース,それ)<最小文字数)なら
番号=囲み文字数+回数-1
次囲み文字=対象。
#次の囲み文字を言う。
もし、番号=-1なら、抜ける。#囲み文字が見つからなかった場合。
ソースの次囲み文字までを切り取る。
最初部分=最初部分&それ。
#囲み文字に応じて切り取り
もし、番号<=9ならば
もし、番号<=8ならば、
もし、番号=8ならば
次閉じ文字="*/"
違えば
次閉じ文字=MID(閉じ文字,番号+1,1)
違えば、
もし、(何文字目(ソース," "))<(何文字目(ソース,改行))ならば
次閉じ文字=" "
違えば
次閉じ文字=改行。
違えば、次閉じ文字=改行
もし、次閉じ文字=改行なら、
ソースの改行までを切り取る。
切り取り部分=「{次囲み文字}{それ}」
ソース=改行&ソース
違えば、
ソースの次閉じ文字までを切り取る。
切り取り部分=「{次囲み文字}{それ}{次閉じ文字}」。
もし、番号<6なら
//ここから文字列
文字列判定=切り取り部分の1から1文字抜き出す。
もし、(文字列判定=『「』)ならば
切り取り部分=切り取り部分の『{』を`』&(`に置換。
切り取り部分=切り取り部分の『}』を`)&『`に置換。
切り取り部分=切り取り部分の『{』を`』&(`に置換。
切り取り部分=切り取り部分の『}』を`)&『`に置換。
切り取り部分の1から1文字削除。切り取り部分=`(『`&切り取り部分。
切り取り部分から1文字右端削除。切り取り部分=切り取り部分&`』)`。
切り取り部分=切り取り部分の`&『』&`を空に置換。
切り取り部分=切り取り部分の`『』&`を空に置換。
切り取り部分=切り取り部分の`&『』`を空に置換。
もし、(切り取り部分の1から2文字抜き出す=「((」)かつ(切り取り部分から2文字右部分=「))」)ならば
切り取り部分の1から1文字削除。切り取り部分から1文字右端削除。
もし、(文字列判定=『"』)ならば
切り取り部分=切り取り部分の『{』を『`&(』に置換。
切り取り部分=切り取り部分の『}』を『)&`』に置換。
切り取り部分=切り取り部分の『{』を『`&(』に置換。
切り取り部分=切り取り部分の『}』を『)&`』に置換。
切り取り部分の1から1文字削除。切り取り部分=『(`』&切り取り部分。
切り取り部分から1文字右端削除。切り取り部分=切り取り部分&『`)』。
切り取り部分=切り取り部分の『&``&』を空に置換。
切り取り部分=切り取り部分の『``&』を空に置換。
切り取り部分=切り取り部分の『``&』を空に置換。
もし、(切り取り部分の1から2文字抜き出す=「((」)かつ(切り取り部分から2文字右部分=「))」)ならば
切り取り部分の1から1文字削除。切り取り部分から1文字右端削除。
最初部分=最初部分&切り取り部分。
完成文=最初部分&ソース。
完成文を戻す。
最終更新:2010年01月21日 18:27