今度はPAR2形式に問題が、、、
ずいぶん長く考えているが仕方ない。
ここに問題があるといろいろな箇所に影響するから。
今まではPAR3形式を中心に考えてきたが、こちらは問題ないと思う。
今度はPAR2形式で問題が見つかった。
次のような場合だ。
---------------------------
*2:へろへろ冒険記
マスターコード
00000000 00000000
主人公
HP最大
00000000 00000000
MP最大
00000000 00000000
二人目
HP最大
00000000 00000000
MP最大
00000000 00000000
---------------------------
今の仕様ではこれを解析すると、
---------------------------
●へろへろ冒険記
・マスターコード
・主人公
・HP最大
・MP最大
・二人目
・HP最大
・MP最大
---------------------------
となってしまう。
'*^:'マークがないためなのだが、このマークは普通掲示板などで公開されているコードには付いているはずがない。
フォルダー毎に*^:マークを付加するのも大変だ。
そのため、マークを付けなくてもサブフォルダーを作らないモードが必要になる。
そこでタイトルオプションにsubfolder属性を追加することにする。
subfolder=no
とすることで先ほどのコードも正しく解釈できるようになる。
問題はデフォルトをyesにするかnoにするかだが、ファイルを楽にした方がいいと思うので、yesをデフォルトにする。
掲示板などに書かれたコードを取り込むには、どのみちコードパーサーのようなものが必要になるので、そこで属性を追加する。
また、掲示板のコードをファイルに書く場合、タイトル属性に1行追加するだけなので、それほど苦にはならないだろう。
そうそう、もうひとつ仕様変更。
現在は、コード行は行頭の空白などを認めていないが、これを認めようと思う。
認めていなかったのは誤解釈を避けるため、なるべく厳しくしたのためだ。
一番ありそうなのは、
00000000 00000000
というコード名の場合、コード行とコード名の区別が付かない。
このような場合、先頭に空白でも追加してもらう気でいたが、こんなコード名はまずないだろうし、あったとしたら、
'00000000 00000000'
とでもしてもらえば済む話だ。
それより、行頭の空白を許可するメリットの方が大きい。
先ほどのコードも、
---------------------------
*2:へろへろ冒険記
マスターコード
00000000 00000000
主人公
HP最大
00000000 00000000
MP最大
00000000 00000000
二人目
HP最大
00000000 00000000
MP最大
00000000 00000000
---------------------------
と、ネストして記述できるようになる。
こっちの方が間違いなく見やすい。
認めるのは、半角空白、全角空白、タブとする。
今度こそ、プログラムできるかもしれない。
だけど、解析した後にどうしようかな。
暗号化して表示するようにでもしておくか。
ここに問題があるといろいろな箇所に影響するから。
今まではPAR3形式を中心に考えてきたが、こちらは問題ないと思う。
今度はPAR2形式で問題が見つかった。
次のような場合だ。
---------------------------
*2:へろへろ冒険記
マスターコード
00000000 00000000
主人公
HP最大
00000000 00000000
MP最大
00000000 00000000
二人目
HP最大
00000000 00000000
MP最大
00000000 00000000
---------------------------
今の仕様ではこれを解析すると、
---------------------------
●へろへろ冒険記
・マスターコード
・主人公
・HP最大
・MP最大
・二人目
・HP最大
・MP最大
---------------------------
となってしまう。
'*^:'マークがないためなのだが、このマークは普通掲示板などで公開されているコードには付いているはずがない。
フォルダー毎に*^:マークを付加するのも大変だ。
そのため、マークを付けなくてもサブフォルダーを作らないモードが必要になる。
そこでタイトルオプションにsubfolder属性を追加することにする。
subfolder=no
とすることで先ほどのコードも正しく解釈できるようになる。
問題はデフォルトをyesにするかnoにするかだが、ファイルを楽にした方がいいと思うので、yesをデフォルトにする。
掲示板などに書かれたコードを取り込むには、どのみちコードパーサーのようなものが必要になるので、そこで属性を追加する。
また、掲示板のコードをファイルに書く場合、タイトル属性に1行追加するだけなので、それほど苦にはならないだろう。
そうそう、もうひとつ仕様変更。
現在は、コード行は行頭の空白などを認めていないが、これを認めようと思う。
認めていなかったのは誤解釈を避けるため、なるべく厳しくしたのためだ。
一番ありそうなのは、
00000000 00000000
というコード名の場合、コード行とコード名の区別が付かない。
このような場合、先頭に空白でも追加してもらう気でいたが、こんなコード名はまずないだろうし、あったとしたら、
'00000000 00000000'
とでもしてもらえば済む話だ。
それより、行頭の空白を許可するメリットの方が大きい。
先ほどのコードも、
---------------------------
*2:へろへろ冒険記
マスターコード
00000000 00000000
主人公
HP最大
00000000 00000000
MP最大
00000000 00000000
二人目
HP最大
00000000 00000000
MP最大
00000000 00000000
---------------------------
と、ネストして記述できるようになる。
こっちの方が間違いなく見やすい。
認めるのは、半角空白、全角空白、タブとする。
今度こそ、プログラムできるかもしれない。
だけど、解析した後にどうしようかな。
暗号化して表示するようにでもしておくか。
Comments