emuera (1-8-2-4) | 2019-01-27 00:29 |
emuera - etc 関連ファイル (1-8-2-1) | 2015-11-04 01:04 |
emuera - source ソースコード (1-8-2-4) | 2019-01-27 00:32 |
末尾にアルファベット又は"+v1"等が付くバージョンは私家改造版の作者様による更新です。
私家改造版及びalpha, beta版は当サイトでは頒布していません。
最新版の更新履歴は最新の更新履歴を、
1.730~1.800までの更新履歴は1.800以前の更新履歴を、
1.700~1.730までの更新履歴は1.730以前の更新履歴を、
1.700以前の更新履歴は1.700以前の更新履歴を参照してください。
追加された命令などの詳細はEmueraの拡張書式を参照してください。
以下、私家改造版1822+v1に添付のreadmeより
・Emuera1822+v1 ○解析モード時のチェックファイルの判定のエンバグ修正 1821+v11の履歴表示行数のバグ修正による事故でした
以下、私家改造版1821+v11.1に添付のreadmeより
・Emuera1821+v11.1 ○REPEAT、FORの入れ子をエラー扱いから警告扱いに引き下げ 個人的にはエラーでもいいが、現実的にはこっちの方が妥当かなーとか思い返してみる ついでに警告文に無限ループの指摘を追加 ・Emuera1821+v11 ○履歴表示行数が設定を無視して10000行固定になっていたのを修正 何でこんな中途半端なことしてたのやら… ○#REFで定義された変数の想定仕様と内部挙動がかみあってないのを修正 内部挙動の問題なのでコーディング上の影響はないと信じたい ○v9,v9.1の追加警告まわりの色々tweak ちゃんとCOUNTの引数(定数の場合のみ)も見るように、eraMegaten母ちゃんあたりですごい誤爆してたので… 後、多重化で引っかかったREPEATやFORに対して対応なし警告がセットになってしまうので、それを出ないようにちょっといじった ・Emuera1821+v10 ○STRJOINが第1引数が~~NAMEのような定数文字列配列の場合豪快に例外吐くのを修正 この場合何が起こるか頭から抜けてた ○v9、9.1の変更部分で特定条件で例外が飛ぶのを修正 ただし、この例外が飛ぶ=その行がエラーを起こしている、なので、これが直ろうがその行は100%エラーです ・Emuera1821+v9.1 ○REPEATならびにCOUNTをループ変数にとるFORが多重になっている場合のエラー表示追加が引数をチェックしない場合豪快に例外吐くのを修正 うん、この設定のこと頭から抜け落ちてた ・Emuera1821+v9 ○PRINTBUTTON系ならびにPRINTPLAIN系が特定条件でSETCOLORを反映しない問題を修正 うん、これは設計が悪い、間違いなく悪い ○REPEATならびにCOUNTをループ変数にとるFORが多重になっている場合のエラー表示追加 関数跨ぎだけはさすがに無理です ・Emuera1821+v8 ○COPYCHARA、ADDCOPYCHARAがユーザー定義キャラクタ変数をコピーしない問題を修正 作った後に増えた部分だから、Emuの人の作業漏れの公算大? ・Emuera1821+v7.2 ○文字列配列の結合関数STRJOINの追加 書式:STRJOIN(<配列変数>{, <区切り文字列>, <配列添え字開始位置>, <配列添え字要素数>}) 内容:ツールチップの最大表示時間を[表示時間(ms)]に設定 引数:<配列変数>:結合した配列変数、キャラ変数を指定した場合エラーになるかも <区切り文字列>:結合のさいに要素間に加える文字列、他の言語の同一処理同様、省略時は","が自動的に適用されます(区切り文字が必要ない場合は""を与えてください) <配列添え字開始位置>、<配列添え字要素数>:指定した場合 配列添え字開始位置≦i<開始位置+配列添え字要素数 の範囲で結合する 後者を指定する場合、前者は省略不可 最初JOINにしようと思ったけど事故がありそうだからこうした ver7.1で引数仕様変更 ver7.2で数値配列に変数、区切り文字列の処理に問題があったので修正 ・Emuera1821+v6 ○SORTCHARAをユーザー定義変数で行うと例外チュドーンになるのを修正 このパターン想定しないコードで放置してたの、どこのEmuの人ですかー? ・Emuera1821+v5.2 ○@USERXXX系システム関数でREUSELASTLINEを利用したシステム内部処理渡しについて、 REUSELASTLINE命令の引数が空白でない場合、システム側メッセージの表示を行わないように変更 ただし、これを利用してスクリプト側でREUSELASTLINEを用いてメッセージを表示させたい場合、 システム内部処理とタイミングが異なる関係上、入力値の表示を自動でクリアできないため、 入力値の表示を消したい場合、REUSELASTLINEの前にCLEARLINE 1を行う必要があります。 ・Emuera1821+v5.1 ○v5の変更でSTRFORMの引数が文字列変数の場合の挙動がおかしくなったのを修正 引数チェックのタイミングで挙動が変わるのは非常によろしくない ○TOOLTIP_SETDURATIONが設定されているときのツールチップの表示位置のtweak マウスカーソルのやや下に表示されるように位置設定 ・Emuera1821+v5 ○STRFORMが正しく振る舞わないバグを修正 かなりクリティカルなバグというか、ここまで判明しなかったのが驚きというレベル ・Emuera1821+v4 ○一部命令のエラー時の表示がおかしいのを修正 コピペしたら文面修正を忘れないのは大事な作業ですよ? ○解析モード時はコンフィグによらず10000行までデータを保持するように 一部バリアントはこれでも収まらないが、これ以上はメモリ不足との兼ね合いが生じ始めるためさすがにこれで許してください ・Emuera1821+v3.1 ○命令TOOLTIP_SETDURATIONの挙動に関するtweak 表示命令の時間指定引数にwindows側の仕様でshortの最大値である32767より大きな値を渡すと無視されるようなので shortの最大値を超える場合は32767を引数とするように変更 ・Emuera1821+v3 ○ツールチップの表示時間を設定する命令TOOLTIP_SETDURATIONを追加 書式:TOOLTIP_SETDURATION [表示時間(ms)] 内容:ツールチップの最大表示時間を[表示時間(ms)]に設定 引数:[表示時間(ms)]:0以上の整数値 0の場合デフォルトの挙動になります、後タイマーの特性上極端に短い時間は想定通りに動かないかもねー ・Emuera1821+v2.1(テスト向け公開) ○再起動時、_fixed.configの変更に対して、コンフィグダイアログの固定状態が追随しないのを修正 ・Emuera1821+v2 ○PRINT系命令の大半がSKIPDISPを無視するという実装漏れを修正 CALLTRAIN使うとひどいことになりますね、はい ・Emuera1821+v1 ○1821+v2の修正がキャラクタ変数に適用されてないのを修正
以下、私家改造版1820+v4に添付のreadmeより
・Emuera1820+v4 ○1821のWin10対応移植してくれ、と言われたので、何をやったか予測して実装してみる ちなみに1821betaソースコードないので、ベタ移植なんてできるわけがなかった ・Emuera1820+v3 ○ログ出力がディレクトリ指定を無視するのを修正しつつ、実行場所以下のディレクトリにしか出力できないように変更 後者はどこに行ったかわからないようにするための予防措置 ・Emuera1820+v2 ○バイナリ型セーブデータと禁止変数でエラーが飛ぶのを修正できた…はず ・Emuera1820+v1 ○1819+v8の変更絡みでTIMESでOverFlowExceptionが飛んで来ることがあるのを修正 意外と面倒なキャストによる型変換の挙動 作業従事者:妊)|д゚)の中の人
以下、私家改造版1819+v12に添付のreadmeより
・Emuera1819+v12 ○定数配列と引数が定数のみで構成されたFINDELEMENT(LAST)関数を定数化するように変更 事故が起きたら笑いましょう ・Emuera1819+v11 ○空マクロに対してマクロ名の重複チェックが行われず、.Net例外にレッツゴーしちゃうことがあるのを修正 アーリーリターンは大事だけど、やりすぎ注意 ・Emuera1819+v10 ○互換性オプション「ユーザー関数の引数に自動的にTOSTRを補完する」の設定と挙動が反対になっていたのを修正 ・Emuera1819+v9 ○v3の修正がTINPUTで漏れてたのを修正 ・Emuera1819+v8 ○TIMESの計算が面倒な誤差に見舞われるのを修正 旧挙動は互換性オプションで設定することで再現できます ・Emuera1819+v7 ○ISTIMEOUTが死んでたくさいのでごねごね まったくきづかなんだ ○メニューバーに起動したEmueraのバージョンを表示するようにしてみた ○その他次バージョン向けのテストコード導入 Emuの人のレビューを何となく待ってみる ・Emuera1819+v6 ○HTML_PRINTのコメント分処理がバグってるのを修正 ・Emuera1819+v5.1 ○ENDSELECTでのネストチェックのコードがおかしくて内部エラーを吐くことがあるのを修正 ○v4での修正漏れ修正 ・Emuera1819+v4 ○1819でコードリロード時後の処理がおかしいことになっていたのを修正 完全にエンバグ、完全にやらかし ・Emuera1819+v3 ○1819でTINPUTSで空文字入力時に時間切れ時のデフォルト入力が代入されてしまっていたのを修正 まあ、実害はないだろうけど ・Emuera1819+v2 ○1819でTINPUT系の時間切れ時のボタン更新処理が消滅してひどいことになってたのを修正 ここは入力処理通らないから拾えないでしょ、って気づいてほしかった… ○システム関数判定処理のtypo修正 あまり実害はない ・Emuera1819+v1 ○エラーボタンのサクラエディタ用の引数が間違っていたのを修正 ○解析オプションで互換性チェックをいじらないように変更 作業従事者:妊)|д゚)の中の人
以下、私家改造版1818+v10に添付のreadmeより
・Emuera1818+v10 ○SETFONTで空文字を渡し、使用フォントを設定のデフォルトに戻した場合、GETFONT()関数が空文字を返すようになってしまうのを修正 ・Emuera1818+v9 ○COLOR_FROMRGB関数がそもそも動きようがない不具合を修正 なぜ今まで放置されてたって?誰も使ってないからさ… ○関数の引数重複を警告Lv1で投げるように変更 言われないと案外気づかないもの ・Emuera1818+v8 ○HTML_GETPRINTEDSTR()関数がSETCOLOR系命令とPRINT命令の組みあわせで色を変えて表示された文字列の色を認識しない問題の修正 TODOまで書いておいて実装忘れないでください、ほんと ・Emuera1818+v7 ○キャラクタ変数処理系命令がことごとく#DIM CHARADATA変数で例外レッツゴーな大問題を修正 うん、Emuの人完全にこれ失念してたでしょ? ・Emuera1818+v6 ○v2~v4以降の変更に関する細かいtweak ・Emuera1818+v5 ○マクロで「\e」が「\e\n」と同様の処理をするように変更 ・Emuera1818+v4 ○TINPUT系の短時間での繰り返しが環境によっては動作に支障を起こすのを修正 ・Emuera1818+v3 ○v2の修正が、条件によってハングを引き起こすのに対して、負荷軽減策を施してみた。 ・Emuera1818+v2 ○高負荷時のONEINPUT系の挙動に関するアドホックな修正 ・Emuera1818+v1 ○HTML_PRINT構文で大文字<BUTTON>が正常に認識されないバグを修正 ○一部警告をtweak 作業従事者:妊)|д゚)の中の人
以下、私家改造版1817+v2に添付のreadmeより
・Emuera1817+v2 ○Configのテキストエディタ関連づけのコマンドラインオプションにプリセットを追加 サクラエディタ、Terapad、EmEditorについては、exeファイルを指定しておいて、 使用するエディタをその下のドロップダウンリストから選択するだけで、 自動的にエラーの起きた行番号に飛ぶ形でエディタを開けるようになります。 他のエディタはこれまで同様テキストボックスに使用するコマンドラインオプションを書いてください (なお、プリセット対応するエディタはニーズに応じて追加する場合があります) ・Emuera1817+v1 ○Configの解析の項目にユーザー向けおよび開発者向けのプリセットをワンクリックで切り替えられるボタン追加 Emueraの起動時コード解析はしっかり行えば、それだけで基本的な文法エラーは網羅できるため、 開発者の方はコードを上げる前に開発者向けのプリセットで一回エラーが出ないか確認することを強く強く推奨します。 これだけで、簡単な文法エラーのせいで上げた後に修正して上げ直すことになる手間を省けますので… ・Emuera1816+v1 ○ONEINPUT系とマウスの組みあわせで理論上.Net例外を引き起こせうるのを修正 まず起こらないとは思うが、実際起きた事例からして、これ以外に原因が思いつかんという 作業従事者:妊)|д゚)の中の人
以下、私家改造版1809+v8.7に添付のreadmeより
・Emuera1809+v8.7 ○ONEINPUT系処理において、マウス入力に限り複数桁(文字列)を渡せる設定追加 書式:ONEINPUT系命令でマウスによる2文字以上の入力を許可する:(YES or NO) 内容:YESの場合、マウス入力の場合ONEINPUT系で2文字以上が選択されたときに先頭文字のみにカットしないようにする 注意:基本的には_fixed.configで設定することを前提にしているので設定UIからは触れないようにしてあります ○CALLTRAIN命令のフローをスクリプトから強制終了するSTOPCALLTRAIN追加 書式:STOPCALLTRAIN 内容:CALLTRAIN命令が動いている間に呼び出されると、その時点でCALLTRAINの処理を終了する それ以外の場合は何もしない ○↑の変更で挙動がおかしくなるところがあるのを修正 ○ARRAYCOPYの型チェックが悲しい事になってたので修正 ○一部の不正な構文が内部処理で.Net例外を引き起こすのを修正 ○RANDの引数なし及び定数0引数をパース時にエラーとして認識するように修正 ○イベント関数への#LOCALSIZEに関する警告処理のtweak ○コンフィグダイアログの一部数値設定の閾値を調整 数値によってはエラー投げたりするので ○ENDDATAが不必要にフロー系命令扱いになってたのを修正 ※家のPC環境更新の関係でVS2012EEでの作業となったため、ソリューションがそれ用になってます VS2010系ではそのままでは開けないと思われますが、slnファイルをVS2010用のそれに入れ替えたら案外開けるかも 誰かテストplz ・Emuera1809+v7.1 ○PRINTCの文字数を取得するPRINTCLENGTH追加 書式:PRINTCLENGTH() 内容:コンフィグのPRINTCの文字数の値を返す ○PRINTDATAの非表示、選択文字列返し版STRATA追加 書式:STRDATA <代入先文字列変数> DATA、DATAFORM、DATALIST~ENDATA ENDDATA 内容:DATA構文で指定された文字列からランダムで1つを返す DATALIST構文中のDATA系は改行文字で連結して返されます ○↑の変更に関して行ったコード整理でエンバグがあったので修正 ・Emuera1809+v6 ○TONEINPUT系絡みのエラー修正 v3の時点の変更が特定の条件で.Net例外を投げるのを修正 ○入力欄を空にする命令CLEARTEXTBOX追加 書式:CLEARTEXTBOX 内容:最下部の入力欄のテキストを全て消去する ・Emuera1809+v5.1 ○SPLITの若干高速化 もっと簡単に書けるところがあったので手入れしたらちょっと速くなった ○いくつかの式中関数のコードの手入れ INRANGEARRAYとかMAXARRAYとかMATCHあたりはもしかしたらちょっとだけ速くなったかも NOSAMESとALLSAMESあたりも速くなった ○他にも気になったコードの手入れ 探すと無駄な処理が起きてる場所は意外とありそう ・Emuera1809+v4 ○DRAWLINEで表示される文字列を取得する変数DRAWLINESTR追加 ○CUSTOMDRAWLINE、DRAWLINEFORMの表示文字列を取得する式中関数GETLINESTR追加 書式:GETLINESTR(<文字列>) 内容:引数文字列をCUSTOMDRAWLINE、DRAWLINEFORMに渡した時に表示される文字列を返す ☆注意・必ず読んでください☆ この変数及び式中関数が返す文字列の長さが「1行に表示できる文字列長」に対応することは『全く保証されません』 そう思い込んで処理を書いてうまく動かなくてもそれはEmueraのバグではありませんし、この件について当方は一切の責任を負いません ・Emuera1809+v3 内容: ○+v2で特定条件でnullrefしてしまうエンバグがあったので修正 ○TONEINPUT系の入力受付に関するtweak それまでにテキストボックスに入っていた内容を反映しないようにしてみた ・Emuera1809+v2 内容: ○TINPUT系がタイムアウトしたかをチェックする変数ISTIMEOUT追加 TINPUT系が呼び出された時に0に初期化され、タイムアウトすると1となります。 ○SPLITの分割要素数を代入する変数を第4引数で指定可能に ○全角数字で始まる関数名が関数名の規制対象外にも関わらず警告を受けてしまう問題を修正 ・Emuera1809+v1.1 内容: ○配列内の指定した範囲内の数値を持つ要素数を取得するINRANGEARRAY、INRANGECARRAY追加 書式:INRANGEARRAY([対象一次元数値配列変数], [範囲最小値]、[範囲最大値+1]{, [配列位置初値], [配列位置終値+1]}) 内容:最小値 <= 値 < 最大値をとる値を持つ配列中の要素の数を返す 書式:INRANGECARRAY([対象数値型キャラクタ配列変数], [範囲最小値]、[範囲最大値+1]{, [探索キャラ位置初値], [探索キャラ配列位置終値+1]}) 内容:キャラクタ配列変数について指定した配列をキャラクタで回して、要素、最小値 <= 値 < 最大値をとる値を持つ要素数を取得する ○CMATCH、MAXCARRAYについて、対象変数をキャラクタ二次元配列にも拡張 ○数値型変数の定義域最大値、最小値を返す定数__INT_MAX__、__INT_MIN__追加 作業従事者:妊)|д゚)の中の人
以下、私家改造版1808+v1に添付のreadmeより
・Emuera1808+v1 内容: ○GETPALAMLV、GETEXPLVの第1引数を通常数値を受け付けるように変更 ○文字列中の任意の文字数目の文字を取得する式中関数CHARATU追加 書式:CHARATU(<参照文字列>, [取得文字位置]) 内容:文字列の指定した位置の文字を取得する 処理系はユニコードとなります 作業従事者:妊)|д゚)の中の人
以下、私家改造版1807+v14に添付のreadmeより
・Emuera1807+v14 内容: ○ENCODETOUNIの式中関数版を追加 書式:ENCODETOUNI(<参照文字列>{, [対象文字位置]}) 内容:文字列の対象位置の文字をユニコードのコード値に変換して返す 位置は省略可でその場合は0(先頭)を対象とします ・Emuera1807+v13 内容: ○無頓着な配列コピー命令ARRAYCOPY実装 書式:ARRAYCOPY <コピー元変数名>, <コピー先変数名> 内容:コピー元変数の値をコピー先変数へコピーする 型変数は型が同じで次元数が同じである必要がある また、キャラクター変数には非対応 要素数が異なる場合はコピーできる分だけコピーする ○COLORBYNAME系命令のエラーハンドリング強化 ・Emuera1807+v12 内容: ○式中関数MONEYSTRの引数を拡張 書式:MONEYSTR([数値]{, [書式指定子]}) 内容:引数で与えられた数値に対して、設定されたお金の単位を付けた文字列を返す 単位の前置・後置も自動的に処理します 第2引数はTOSTR()関数と同様の数値の文字列化における変換書式指定子となります ・Emuera1807+v11 内容: ○式中関数VARSIZEの引数を拡張 書式:VARSIZE([対象変数名文字列]{, [次元数]}) 内容:配列の要素数を取得する 二次元配列などで2番目以降の要素数が欲しい時は第2引数で欲しい次元を指定(最初から順に0、1、2となる) ・Emuera1807+v10 内容: ○CSV○○系命令及びEXISTCSV命令の最後の引数を省略可能に 省略時は0(非SPキャラ)を指定したものと見なします ・Emuera1807+v9 内容: ○PRINTDATA系命令にDATA系行による表示データが与えられてない場合、例外を投げて落ちるのを修正 何もない場合は何もせずに次に進むように変更 ・Emuera1807+v8 内容: ○INPUT,ONEINPUT,INPUTS,ONEINPUTSに空入力時のデフォルト入力値を指定する引数を設定可能に ONEINPUTでは負の値を指定した場合、引数は無効となり、引数なしの場合と同じ挙動になります ONEINPUTに2桁以上の値を渡した場合、最初の桁が渡されます ONEINPUTSに空文字列を渡した場合、引数は無効となり、引数なしの場合と同じ挙動になります ONEINPUTSに2文字以上の文字列を渡した場合、最初の文字が渡されます ○Emuera1807+v7の変更でtypoがあったのを修正 ○コード例外表示の調整 たぶんこっちの方がわかりやすい…と思う ・Emuera1807+v7 内容: ○VARSIZEが特定の不正な構文に対し.Net例外を投げるのをハンドリング ○#行が不正な行の時に.Net例外が発生することがあるのをハンドリング ・Emuera1807+v6 内容: ○配列変数をソートするARRAYSORT実装 書式:ARRAYSORT [対象変数](, [ソート方式(FORWARD or BACK)], [開始インデックス], [対象要素数]) 内容:開始インデックスから対象要素数個の配列データをソートする FORWARDで昇順、BACKで降順 ○RETURNFORMに空文字列やスペースのみを渡すと.Net例外が投げられるのをハンドリングするようにした 構文解釈時のハンドリング不足 ○REDRAW 0の場合でも特定条件下で再描画が重なりちらつきが生じる場合があるのを修正 ・Emuera1807+v5 内容: ○コードからエラーを投げる命令THROW実装 書式:THROW [FORM構文] 内容:この行で強制的にエラーとし、引数に与えた文字列でエラー表示とする ○文字列を正規表現用にエスケープする式中関数ESCAPEを追加 書式:ESCAPE([文字列]) 内容:文字列が正規表現中で平文となるように、引数中の文字列の正規表現メタ文字をエスケープして返す ○与えられた数値が範囲内にあるかをチェックする式中関数INRANGE追加 書式:INRANGE([数値変数], [数値1], [数値2]) 内容:与えられた数値変数の値が[数値1]以上[数値2]以下であれば1を返し、そうでないから0を返す ○SETBIT, CLEARBIT, INVERTBITを任意数の引数に対応 書式:SETBIT <非定数数値変数>, <数値>*n ○SELECTCASE~CASE~CASEELSE~ENDSELECT構文内でのネストチェックを改良 CASE等が内部のIF等の閉じ忘れ等によるネストずれによってエラーが煩雑なことになるのを修正 また、IF~ENDIFがCASE等をまたいで閉じている場合も繋がってないものとしてエラーとして表示するように修正 ○実行中スクリプトエラー発生時に簡易関数呼び出しスタックを表示するように変更 エラーが起きた関数から順に呼び出し元の位置とそれがある関数名を再帰的に表示します ○起動時に定数の配列要素指定について、範囲チェックをできる限り行うように変更 ミス防止には役にたつかも ○STRLENS等内部ロケールに依存する処理等について、処理に使うロケールを拡張、選択可能に コンフィグダイアログのシステムタブ→ERBで使用する言語を選択すると、 STRLENS等ロケール依存の命令がその言語で動作します ハングル等非日本語ではない全角文字を前提としたバリアントが可能に 対応した言語 ・日本語(Shift-JIS、デフォルト) ・韓国語(ko-KR) ・簡体字中国語(zh-CN)(未テスト) ・繁体字中国語(zh-TW)(未テスト) 注:UI等は対応してません。そこらへんローカライズしてくれる人いたらありがたい ○GLOBAL.CSV、GLOBALS.CSVの中身がSAVESTRNAMEを参照してしまっているのを修正 ○1807+v4.2でdebug用に使ったコードが紛れ込んだままになっていたのを削除 注:圧縮形式を7zに変更しました 注:ソースコードで_Library/ShiftJisManager.cs→_Library/LangManager.csにファイル名変更 ・Emuera1807+v4.2 内容: ○TOINTに全角数字を渡すとエラーを投げるのを修正 報告どもです 全角数字は受け付けないもの0を返します。 ○文字列が数値として判断できるかを判定する式中関数ISNUMERICを追加 書式:ISNUMERIC([文字列]) 内容:文字列を数値としてパース可能か(TOINTで値を取れるか)を返す ・Emuera1807+v4.1 内容: ○ボタンにマウスの乗ってる時のフォントカラー設定を取得する式中関数GETFOCUSCOLOR追加 書式:GETFOCUSCOLOR() 内容:設定の「選択中文字色」の値を数値で取得(RGBに分けるのは各自でお願いします) ・Emuera1807+v4 内容: ○SOURCEとSOURCENAMEの配列要素数確認コードがおかしいのを修正 報告どもです ・Emuera1807+v3.1 内容: ○マルチディスプレイ環境下でのセカンダリ以降のディスプレイ上での最大化処理の問題修正 テスト環境もなしに勘で書いたコードが正解だったとは想定外にも程ががが ・Emuera1807+v3 内容: ○現在のALIGNMENTを取得するCURRENTALIGN()実装 返り値は、ALIGNMENT命令に渡す引数と同様(大文字) ○現在のREDRAW状態を取得するCURRENTREDRAW()実装 返り値は通常時は1、描画抑制時は0 ・Emuera1807+v2 内容: ○複数引数のRETURN、RETURNFORMでRESULT系を使うと、正しくない値が返る場合があるのを修正 ○TONEINPUTのデフォルト値に負の値を用いると二桁以上の値をわたせてしまうのを修正 ・Emuera1807+v1 内容: ○FINDELEMENT系が空文字列で誤動作する場合があるのを修正 作業従事者:妊)|д゚)の中の人
以下、私家改造版Emuera1806+v10.99に添付のreadmeより
内容: ○IF、SELECTCASEの若干の高速化 比率的には10%程度の高速化 ・Emuera1806+v10 内容: ○関数宣言の引数宣言部分に抜けがあるとエラーではなく.Netの例外が投げられるのを修正 ・Emuera1806+v9 内容: ○キャラ名称関係の文字列とNOの変換が正しく動作しないのを修正 なんでこんなコードになってるんだ、おい ・Emuera1806+v8 内容: ○設定の大文字小文字を無視するがONの時、名前に小文字混じりの式中関数へのCALLFORMFがエラーになる場合があるのを修正 ・Emuera1806+v7.99.1 内容: ○STRCOUNTの第2引数が正規表現として不正な場合のエラーハンドリングでできていないのを修正 ○命令の引数が多すぎる場合のエラーが正しくハンドリングできていないのを修正 ○非東アジア圏ロケールでTOHALF、TOFULLが、非日本語ロケールでPRINTK系が例外になるのを直せたと信じてみる ・Emuera1806+v7.99 内容: ○BARで表示される文字列と同じ文字列を取得する関数BARSTR実装 書式:BARSTR(<数値>, <数値>, <数値>) 内容:与えられた引数から同一引数のBAR命令で表示される文字列と同じ物を取得する ・Emuera1806+v7 内容: ○V5.99.5のコードに例外を投げる処理のところがあるのを修正 ・Emuera1806+v6.99 内容: ○式中関数の引数に無効な#DIM変数を与えると構文解釈時に例外になるのを修正 ・Emuera1806+v6 内容: ○5.99で生じたエラーハンドリング漏れを修正 ・Emuera1806+v5.99.4 内容: ○とろいことに定評のあるVARSETをまたもやさらに高速化 キャラ変数についても意地だけで頑張ってみた ・Emuera1806+v5.99.3 内容: ○_repalce.csvで指定した汚れ初期値の要素数が変数STAINの要素数より大きい場合例外を投げるのを修正 ・Emuera1806+v5.99.2 内容: ○式のパースで仕様上不必要な[]の対応関係を見ているのを修正 結局なかったことになった式中関数FORM呼び出しのためのコードの名残だよね、これ ・Emuera1806+v5.99.1 内容: ○タイトルに戻るときの内部処理の不具合を修正 LINECOUNTがリセットされていなかった ・Emuera1806+v5.99 内容: ○とろいことに定評のあるVARSETをさらに高速化 キャラ変数だけはボトルネックが他にあるのでどうしようもなかった ・Emuera1806+v5 内容: ○CDFLAGにVARSETすると、ISASSIの値が書き換わるのを修正 うん、悲しい事故なんだ ○とろいことに定評のあるVARSETの高速化 多少マシになった ・Emuera1806+v4 内容: ○TONEINPUT、TONEINPUTSがボタンを認識しないのを修正 ・Emuera1806+v3.99.1 内容: ○WAITANYKEYが右クリックやマクロでスキップされないのを修正 ○スキップ強制解除のWAIT命令FORCEWAIT追加 書式:FORCEWAIT 内容:WAITと同じだが、右クリック、マクロのスキップでスキップできず、 また、この命令に達した時点でスキップ状態は解除される ○TINPUT系列の命令の引数仕様変更 新書式:TINPUT系命令 <制限時間>, <時間切れ時の初期値>(, <表示するかのフラグ>, <時間切れ時の表示文字列>) 変更点:第4引数追加 時間切れ時の表示文字列を個別設定可能に 空文字列が与えられた場合はタイマーを消去して次の処理に行きます 第3引数省略可能に デフォ値は1、第4引数を使う場合は省略できません ○ONEINPUTSを空文字列受付可に変更 ・Emuera1806+v3.99 内容: ○キー入力待ち後自動実行命令WAITANYKEY追加 書式:WAITANYKEY 内容:キーの入力orマウスのクリックを待つ 押されると自動で次のコードの実行に移る 実質、WAITのONEINPUT版 ・Emuera1806+v3 内容: ○システムからの関数呼び出し先に#DIM DYNAMICな変数がある場合に、その変数にアクセスすると例外を吐くのを修正 ・Emuera1806+v2.99.4 内容: ○クリップボードダイアログがリソース不足等で開けないのがEmueraのエラーとなり、終了してしまうのを 例外をハンドリングしてエラーダイアログを出してプログラムを続行するようにしてみた ○クリップボードダイアログにショートカットキーCtrl+A実装 なぜかTextBoxに実装されてないのよね、これ ・Emuera1806+v2.99.3 内容: ○特定条件で背景色変更がしっかり反映されないバグが特定の設定でregressionするのを修正 ・Emuera1806+v2.99.2 内容: ○背景色変更処理とREDRAW系処理の親和性を向上 ・Emuera1806+v2.99.1 内容: ○背景色変更をテキストボックスにも反映するように変更 ○特定条件で背景色変更がしっかり反映されないのを修正 ・Emuera1806+v2.99 内容: ○背景色変更命令SETBGCOLOR、SETBGCOLORBYNAME追加 書式:SETBGCOLOR <R>, <G>, <B> or <24bit整数> SETBGCOLORBYNAME <色名> 内容:背景色を指定した色に変更 安全のため1度変更した後の0.2秒以内の呼び出しは0.2秒経過まで強制WAITになります ○背景色をデフォルトに戻す命令RESETBGCOLOR追加 書式:RESETBGCOLOR 内容:背景色をコンフィグで指定した色に戻す 注意点は上と同様 ○コンフィグ設定背景色取得関数GETDEFBGCOLOR()追加 書式:GETDEFBGCOLOR() 内容:コンフィグで指定した背景色の色を24bit整数で返す ・Emuera1806+v2 内容: ○WINAPI使用時、フォントの実高さ<1行の高さになると未描画領域が出現するのを修正 速度的には5%程度のregression、はてさて ○右クリックによるWAITスキップ状態の取得関数MOUSESKIP追加 書式:MOUSESKIP() 内容:右クリックが押されてWAITスキップの状態になっている場合1、そうでない場合0を返す マクロ処理時のスキップ中は0を返します マクロ処理のスキップと右クリックが競合した場合はマクロを優先し0を返します ○背景色取得関数GETBGCOLOR()追加 書式:GETBGCOLOR() 内容:背景色の色を24bit整数で返す ○コンフィグ設定のフォント色取得関数GETDEFCOLOR()追加 書式:GETDEFCOLOR() 内容:コンフィグで指定してフォント色を24bit整数で返す ・Emuera1806+v1 内容: ○ユーザー定義式中関数に対してCALLが通ってしまうregressionを修正 多分1756alpha時代からのregression ○FINDCHARAの引数に終値を追加 新書式:FINDCHARA(<見る変数>, <見る値>{, <検索初位置>, <検索終位置>}) 新内容:キャラクタ変数について、キャラクタ検索初位置<=i<検索終位置までについて指定した変数の値が条件に適合するキャラを探す 検索範囲がキャラクタ数の範囲を超える場合はエラーとなります ○FINDCHARA、FINDELEMENTの最終適合要素版FINDLASTCHARA、FINDLASTELEMENT実装 書式:FINDLASTCHARA(<見る変数>, <見る値>{, <検索初位置>, <検索終位置>}) FINDLASTELEMENT(<見る変数>, <見る値>{, <検索初位置>, <検索終位置>, <文字列の場合厳密一致か>}) 内容:FINDLASTCHARA キャラクタ変数について、キャラクタ数初位置<=i<終位置までについて指定した変数の値が条件に適合する最後のキャラを探す FINDLASTELEMENT 変数について、配列要素初位置<=i<終位置までについて指定した変数の値が条件に適合する最後の配列要素の位置を返す 作業従事者:妊)|д゚)の中の人
以下、私家改造版Emuera1805+v2.1に添付のreadmeより
・Emuera1805+v2.1 内容: ○FINDELEMENTがSTRを参照するとほぼ間違いなく例外投げるのを修正 STRの未定義領域はNullだったという事実 ・Emuera1805+v2 内容: ○配列中の特定要素位置取得関数FINDELEMENT追加 書式:FINDELEMENT(<一次元配列変数>, <検索対象(変数と同型)>, <検索初位置>, <検索終位置>, <厳密一致かのフラグ>) 内容:指定された配列要素の検索範囲に指定された要素があれば、その位置を返す 複数ある場合は最初にヒットしたものを返す 検索対象が文字列の場合正規表現を使えます 第5引数は文字列の場合のみ有効で、0であれば文字列の一部が一致でもOKとし、0以外であれば文字列と完全に一致した場合のみOKとします ヒットしない場合は-1を返します ・Emuera1805+v1 内容: ○非マクロ処理中の入力処理のdegradeを修正 作業従事者:妊)|д゚)の中の人
以下、私家改造版Emuera1803+v2.99.3に添付のreadmeより
・Emuera1803+v2.99 内容: ○VariableSize.csvの書式絡みの警告追加を余分な項の先頭が数字の場合に限定 必要性がありそうな場合に限ってみる ○式中関数の引数処理の一部がおかしいことになるのを修正 必要性がありそうな場合に限ってみる ・Emuera1803+v2.1 内容: ○1803+v2でマウス入力が事故って動かないのを修正 ひどい事故だった ・Emuera1803+v2 内容: ○マクロ等の複数入力処理中に別の入力が割り込み可能なのをできないように もしかしたら事故が起こるかもしれないので、その時は報告してください ○csvファイルにおける定義済み値の上書きに警告を出すように変更 ・Emuera1803+v1 内容: ○VariableSize.csvの書式絡みの警告追加 単に関係ない部分が無視されるってだけなのでLv0で ○式中関数MONEYSTR追加 書式:MONEYSTR(<数値or数値変数>) 内容:バリアントの設定にあわせてお金の単位を付けて、文字列として返す 作業従事者:妊)|д゚)の中の人
以下、私家改造版Emuera1803beta007+v2に添付のreadmeより
・Emuera1803beta007+v2 内容: ○警告表示に関するtweek 非イベント関数の多重定義に関する警告に不必要な改行があったのを削除 関数が呼び出されなかった場合の警告が「ファイル毎に一度のみ」の場合に警告が一切表示されないのを修正 ・Emuera1803beta007+v1 内容: ○#DIM(S) DYNAMICな変数が関数終了時に例外を投げるのを修正 どうしてこんなコードになっていた ・Emuera1803beta002+v3 内容: ○入力ログ周りのtweek ログを使った入力で例外が飛ぶ可能性があるのを修正 ついでに、入力ログ周りの仕様をeramakerとほぼ完全同一の処理に変更 ○ログファイル出力の文字コードをUnicodeに変更 最近はUnicode使ったバリアントも増えてきたので ・Emuera1803beta002+v2 内容: ○ログ出力の文字コードをユニコードに変更 主にUNICODE()で押し込んだ文字が化けないようにするための措置 ・Emuera1803beta002+v2 内容: ○VARSETとCVARSETがサボタージュを決め込んでいたのを粛正もとい修正 ・Emuera1803beta002+v1 内容: ○COPYCHARAの第2引数を省略可にし、省略時は自動的にキャラを追加するように仕様拡張 作業従事者:妊)|д゚)の中の人
以下、私家改造版Emuera1801+v8.5に添付のreadmeより
・Emuera1801+v8.5 内容: ○1800で未実装状態になっていた、#DIMの予約語関係の問題を修正 #DIM、#DIM DYNAMICにおいて既存の変数名の上書きは禁止されます ○TRY~LISTに対するENDLISTの不足に関するエラー表記がおかしい等があったのを修正 ○ウィンドウのハンドリングに関する雑多な手入れ 最大化時は移動できないようにし、最大化時に下のウィンドウの位置を反映するように変更 ○マクロ処理時に待ちが発生しないため、システム側のキューが処理されないのを修正 ○全変数の上限要素数を100万に制限 現実的にはこれぐらいあれば困らないはず ・Emuera1801+v8 内容: ○FORM構文対応型CUSTOMDRAWLINE命令:DRAWLINEFORM実装 書式:DRAWLINEFORM <FORM構文> 内容:構文で指定した文字列式を使って区切り行を表示 ○リッチテキストボックスがInsertキーで上書きモードにならないようにした eramakerに対するdegradeになるが、C#ではテキストボックス内のキャレットを変更する仕組みが存在しないため、 挿入モードと上書きモードの見た目による区別が不可能なため、上書きモードにならないようにして対応 ○INPUTS系を()を使ったキーマクロ式に対応させた(テスト中) 文字列として()を使いたい時はエスケープしてください ・Emuera1801+v7 内容: ○ONEINPUTにキーマクロ放り込んだ時の処理漏れを修正 ・Emuera1801+v6 内容: ○文字列三項演算子の第一項が空の場合例外を投げるのを修正(既存は0とみなしていたのでそれにあわせた) ○引数解析を行わない等、特定の条件を満たした上で再起動すると、再起動前に内部で生じていた警告が表示されてしまうのを修正 ・Emuera1801+v5 内容: ○ONEINPUTにキーマクロ放り込んだ時を考慮して入力処理の順序変更 ○ファイル解析時に呼び出されない関数の解析が行われないのを修正 ・Emuera1801+v4 内容: ○1800以降デリートキーが動作しない場合があるのを修正 ○ONEINPUT系にキーマクロを放り込めるようにテスト実装してみた ・Emuera1801+v3 内容: ○SETCOLORの引数が2個になってしまっている時に例外が投げられるのを修正 ・Emuera1801+v2 内容: ○システム側での入力待ちの時に、デバッグコマンドの@<変数名>で変数の値を表示させる時、 オプションの「大文字小文字の違いを無視する」が機能せず、小文字の変数名が解釈できないバグを修正 ○警告文からテキストエディタを開く処理がERB\の下にないERBファイルを解析モードで開いた場合を考慮していないのを修正 ・Emuera1801+v1 内容: ○#LATERと#SINGLEの両方を持つイベント関数でRETURN 1すると例外が投げられるのを修正 ○関数プリプロセッサのパース処理の警告を追加と処理を一部変更 作業従事者:妊)|д゚)の中の人
以下、私家改造版Emuera1800+v3に添付のreadmeより
・Emuera1800+v3 内容: ○式中関数の引数に同じ式中関数を与えた場合に挙動がおかしくなるのを修正 まさか、普通の呼び出しのパフォーマンスにほとんど影響しない範囲で手が入れられるとは思わなかった ・Emuera1800+v2 内容: ○STAINNAME実装+STAINの添え字を文字列配列要素対応 ○_replace.csvでRELATIONの初期値を設定可能に 書式:RELATIONの初期値, <初期値> なお、キャラクターデータの内部実装の関係上、 既存のセーブデータ中にすでに存在しているキャラには反映されませんのでご注意ください (新たにADDされるキャラクターには反映されます) ・Emuera1800+v1 内容: ○ITEMPRICEの添え字にITEM系同様の文字列配列要素を使えるようにした 作業従事者:妊)|д゚)の中の人
[PageInfo]
LastUpdate: 2019-01-27 16:46:56, ModifiedBy: minorshift
[Permissions]
view:all, edit:login users, delete/config:members