Safari4がダウンロード可能ですね
実は目玉機能として、HTML5への正式対応がありますね。
実はAppleのSafariのサイト自体もかなり駆け足気味にHTML5で作成されていたりします。
自分はHTML5の評価すべきところは評価しつつ、XHTML2.0の方が好きなのですが結局の所HTML5の方が本流といわざるを得ない状況になってきましたね
投稿者 baban 2009/06/15 at 21:46
静止画M@Dを中心にMMDとか、ニコマスを楽しんで気になったことを書き綴っているサイトです、Web新技術投入したがりなのでブラウザは最新版推奨です
実は目玉機能として、HTML5への正式対応がありますね。
実はAppleのSafariのサイト自体もかなり駆け足気味にHTML5で作成されていたりします。
自分はHTML5の評価すべきところは評価しつつ、XHTML2.0の方が好きなのですが結局の所HTML5の方が本流といわざるを得ない状況になってきましたね
投稿者 baban 2009/06/15 at 21:46
鳩山大臣が辞任されました…
法務大臣時代には、死刑反対論もある中粛々と死刑執行の判子を押していったり、誰かの声では無く己の信じる信念に対して働くヘタレの兄とは間逆を行く政治家でしたのに…
正直行って、信念押し通して辞表たたきつけるなんていう、前後のやり取りの格好よさが異常!
惜しい人を下ろしたとしか言いようが無い・・・
投稿者 baban 2009/06/12 at 22:59
萌ディタはファイルの種類毎に、色分けを切り替える機能がある。
これの機能のおかげでHTML編集のときはHTMLの色分け、JavaScriptの場合はJavaScriptの機能の呼び出しができたりする。
HTMLならHTMLのための拡張子クラスを使えばよいので、ショートカットも自由自在に作れる。
しかし、PHPやJavaScriptの場合は、作成したショートカットが有効に働かない。
なぜかというと、PHPやJavaScriptの場合は、HTMLの内部に埋め込むのでHTMLの拡張子クラスのショートカットを呼び出そうとするためである。
これを回避するためには、萌ディタで定義しているinvoke関数を使用します。
invoke(arg, classname, methodname)
となっており、例えば、jscriptのコンプリートリストを呼び出したいときは
invoke(arg, 'jscript', 'onCompleteRequest');
とやってやるとJavaScriptで自動補完を実行することが出来る。
しかし、htmlの場合、関連するモノがphpやjavascript以外にもvbscriptやsmartyのテンプレート、ASPのvb.netのコード。これにrubyのerb等幅広く存在する
これらのすべてに対応するためにコードを埋め込むのは現実的ではない
そのため、一度文法の遷移状態を調べてから、そこに飛ばしてやるのが適切である
具体的には次の様なコードが望ましいと考える。
var ls = App.Caret.LexState;
if( this.name!=ls.Name ) return invoke(arg, ls.State, methodname );
この様に記述することで、LexStateから現在キーがある範囲がjscriptなのかvbscriptなのかを判別できるので
ls.Stateで拡張子クラスの名前に従って処理を呼び出せる。
実際には、これをすべてのメソッドに対して埋め込んでいけば、対応可能なのであろうが、拡張子クラスの数が多いと、それも面倒くさい。
そのため、拡張子クラスの継承関係を利用する。
萌ディタの拡張子クラスは親に当たるクラスを指定することで継承関係を実現できる。具体的なイメージは萌ディタの「むずかしい設定」ダイアログを出すと良く分かる
そして、子供のクラスにメソッドが存在しない場合、継承関係を遡って親のクラスを呼び出そうとする。
こうすることで、エディターとしての基礎的な機能は親のクラスだけに記述して、子に当たるクラスで派生機能のみを書けば良い様にしている。
そのため、できるだけ簡単に遷移状態に適したショートカットを呼び出したいときには親元の
のどちらかに、次の様に記述する。
f.onKeyQuestion = function(arg, classname, methodname){こうすることで、Ctrl+?のショートカットの機能をどの拡張子クラスでも便利に呼び出せる。
(本当は公式でこう記述しておくべきだと個人的に思います)
ただ、気を付けておかないといけないのは一度こう記述した以上は、そのメソッドでは親クラスをinvokeしないこと。
そうしないと、親クラスが子クラスを呼んで、その子クラスが親クラスを呼んで、という無限ループになって萌ディタが停止する。
使う側にも一定の責任を求めるエディタさんなのである。(だから弄りがいもあるのですが・・・
投稿者 baban 2009/06/07 at 21:41
日が近づいてきたのでぺたんこ
私も一応チャットくらいは参加しようかと…。
もうすっかり、オールドタイプというよりは、サイトを維持しているやつらの中では最古参だったり、活動らしい活動もしていないですけどね。
ただ、最近の新作不足、というよりは界隈自体の壊死と呼ぶに等しい状況はなんとかしないといけないのではと強く感じます。
投稿者 baban 2009/06/04 at 22:14
おそらく、システムのピラミッドの下の部分は、エキスパートシステムで上の部分で総合的に判断するところがオリジナルなのだと思います。
きちんと推論をさせようとするとこれだけのパワーが必要なのだという一例かな…
投稿者 baban 2009/05/30 at 22:23
というわけで観念して、この子に付いていってあげようと言うことで、
萌ディタ Perl 用拡張子クラスを下敷きにして、perlの拡張子クラスを書き足していました。
基本改造モノなので、期間限定で転がしておきます。
というわけで、よく弄っていると幾つか見えてくるモノが増えてくるわけで、まずヒアドキュメントの色分けが厳しい!
正直、これは致命傷といえるでしょう!
PHPの場合は、ヒアドキュメントの終了が
「終了文字列;」
としているため、最後のセミコロン(;)を拾えば問題ない、所が結構あるのですが、今回の場合はそうはいかない。
正直、速度と実装の可能性のバランスをきちんと取っているのですが、今後回避のための根本的な方法を考えないといけません。
(まぁ、他の色分け可能なエディタも結構いい加減な実装しているんですがね! PHPエディタと名乗りながらHTML部分が色分けされないとか! JavaScriptで'foo\'bar'とか書くとbar'が色分けされていないエディタとか! )
あとは、遷移状態の管理が主に数字なのがちょっと不満。実際に分かりにくいので!
まぁ、数字である以上範囲の管理が楽な部分はありますけどね!
投稿者 baban 2009/05/24 at 21:37