snippet.el いれた
を見て便利そうなので導入。
elisp よくわかんねーので、psgml-mode
と cperl-mode
で動かしたかっただけなのにものすごい時間かかった。。
; snippet.el
(require 'snippet)
(require 'psgml)
(snippet-with-abbrev-table 'xml-mode-abbrev-table
("ahref" . "<a href=\"$${url}\" title=\"$${title}\">$${title}</a>"))
(defvar cperl-mode-abbrev-table nil
"Abbrev table in use in CPerl mode.")
(define-abbrev-table 'cperl-mode-abbrev-table ())
(snippet-with-abbrev-table 'cperl-mode-abbrev-table
("formy" . "for my $${item} ($${items}) {\n}")
("cataction" . "sub $${fn} :$${attribute} {\n$>my ($self, $c) = @_;\n}"))
こんなんでいけた。
psgmlのxml-modeは普通にやったら xml-mode-abbrev-table
なんてねーよっておこられるので、先に (require 'psgml)
しておいたらいけた。
cperl-mode も同じ方法でやろうとしたらなんかエラーになったのでソース見たら、cperl-mode-abbrev-table
がすでに定義されてあったら cperl-mode 側では上書きしないっぽい感じになっていたのでてけとうに定義してやったらいけた。うむ、よくわからん。
まぁつかえたからいいや的な。
あとはabbrev-tableふやすだけ~。
そういえば
今日誕生日。
26歳。うわー
MochiKitをAS3で
package MochiKit { public class Base { public static function bind(f, obj, ...args) { return function() { return f.apply(obj, args.concat(arguments)) }; }
public static function update(self, ...args) {
if (self === null) {
self = {};
}
for (var i = 1; i < args.length; i++) {
var o = args[i];
if (typeof(o) != "undefined" && o !== null) {
for (var k in o) {
self[k] = o[k];
}
}
}
return self;
}
}
}
bindとupdateだけだけどw
なんかAS3は_globalなくなってグローバル関数上書きどうやるかわかんねーし、ビルドインクラスにメソッド追加する方法もよくわかんないのでこんなのかいてやってみる試み。
使うときは import MochiKit.Base; したらあとは
var m = MochiKit.Base;
m.bind(...)
とかもてきったーにはおなじみの使い方できる。
誰か暇な人が全移植してくれはしないだろうか。
width="0" height="0" な Flash だとネット接続できない @ Linux Flash Player 9
これずっとわかんなかったんだけど、今日やっと原因を発見した。
なんだそういうことだったのね。MTASCのバグかPlayerのバグか何かかと思っていて放置してた。
MTASC上でのLoadVars, XMLSocket、Flex2 Builder上でのURLLoaderでうごかないの確認。
ちなみにWindowsやOSXだと問題ない。
Flashタグでは1pxなどと適当に指定しておいて、CSSでそれをくくっているdivを0pxに指定したらOKっぽい。