2011-01-01から1年間の記事一覧
Jxck's OutPut - Node.js の環境管理(version manager) について。 #nodejs_jpnvmってそんな難しいことしてないので自分が使いやすいのを書けばいいんじゃないかと思って書いてみた。 node package manager · GitHubperlだったらまあほとんどのサーバーに入…
express2.5からexpressコマンドでプロジェクトつくると./routesってディレクトリにルーティングが書かれるようになってる。規模が大きくなるほど煩雑になるので、ルーティングのファイルは分けたほうがいいと思うけど、これでも個人的にはやや微妙。 var exp…
やってみた。Travice CIにログインしたら自分のGithubのプロジェクトが一覧で出るのでCIしたいプロジェクトをONにする。んでgithubのプロジェクトに.travis.ymlおいてpushするだけ。超簡単。 http://travis-ci.org/#!/hokaccha/node-chain-tiny.travis.ymlは…
ほしかったので追加。eachはforEachのObject版。waitはjsdeferredのwaitとほぼ同じ(引数はms)こんな感じ。 var chain = require('chain-tiny'); // each chain(function(next) { next(null, { foo: 'bar', hoge: 'fuga'}); }) .each(function(key, val, ne…
こんな感じでいいんだろうか function concatBuffer(bufs) { var len = bufs.reduce(function(a, b) { return a.length + b.length }) , buf = new Buffer(len) , start = 0; bufs.forEach(function(chunk) { chunk.copy(buf, start, 0); start += chunk.len…
0.6がリリースされたんでリリースしてるモジュールを対応させた。chain-tinyは大丈夫だったけどconfyとdata-sectionがテストこけてたので修正した。https://github.com/hokaccha/node-confy/commit/2bb4efab77c87ffd6c395c77d00b7890542d0630 process.ENVは…
gitlab立ち上げるけどプロジェクトつくるところでgitosisのエラーになって延々はまった。最終的に慣れないrubyのソース読んだ。https://github.com/gitlabhq/gitlabhq/blob/23187d60c4eb3eb2d51459ab18fd16da9caa5b58/lib/gitosis.rb#L29最初間違えてsudoで…
どのブラウザで今サポートされてるかちゃんと調べてないけどchrome15ではサポートされてる。input[type=text]とかchangeイベントだとフォーカス外れないとイベント発火しないし、keyupイベントとかだとマウスで貼り付けとかやったときイベント発火しない。あ…
document.querySelector("textarea").addEventListener("keydown", function(e) { if (e.keyCode === 9) { e.preventDefault(); var elem = e.target; var val = elem.value; var pos = elem.selectionStart; elem.value = val.substr(0, pos) + '\t' + val.…
正規表現にマッチさせるときにメタ文字があるとエラるので var foo = 'hoge(fuga'; 'hoge(fuga'.match( new RegExp(foo) ); // error こうすといいらしい。 var foo = 'hoge(fuga'.replace(/\W/g,'\\$&'); 'hoge(fuga'.match( new RegExp(foo) ); // ok
isuueあがってた https://github.com/LearnBoost/mongoose/issues/519Stringのカラムなら空文字とかにすればいいんだけど、ObjectIdとかにしてると詰む。unsetできないし空文字いれようとするとInvalid ObjectIdとかでエラるし。一度セットしたObjectIdの値…
lessけっこういいんだけどエラーハンドリングがイマイチで困る。@importでファイルがなかった場合process.exit()しちゃう。オーマイガ。 https://github.com/cloudhead/less.js/blob/198f7c9d96c1f70bb800afdd7bda5f2ce0e9d2b1/lib/less/index.js#L115-116pa…
https://github.com/hokaccha/node-chain-tiny配列かハッシュを受け取って並列に処理して全部終わったら次に進む。nextに渡したのがresultsで受け取れる。まあ普通です。 var r = []; chain.parallel({ foo: function(next) { setTimeout(function() { r.pus…
0.16からextendsがサポートされたみたい。あとmixinとかincludeとかも0.13からサポートされてるみたい。expressのjadeのexsampleもextends使ったのになってる。 https://github.com/visionmedia/express/commit/a4aed5f51a2798b258efcbde89b55097f46e520blay…
CSSのanimationsで始まりと終わりの位置を決めるプロパティらしい。これ知らんかった。 http://dev.w3.org/csswg/css3-animations/#the-animation-fill-mode-property-
TJが書いてた。便利。 https://gist.github.com/1288766メソッドに色つけてパスでソートしてみた。 https://gist.github.com/1288919app.all('hoge') があったとき破綻するw
lessでこれがエラる。 @import "http://fonts.googleapis.com/css?family=Smythe"; file 'http://fonts.googleapis.com/css?family=Smythe.less' wasn't found..lessか.cssで終わらないやつに勝手に.lessってつけてないよっていわれる。issueにあがって直っ…
connectのmiddlewareつくって、なんか途中でレスポンスが切れてておかしいなと思ってたら、こうなってた。 res.writeHead(200, { 'Content-Length': str.length }); lengthだとマルチバイトも1とカウントするのでマルチバイトが入ってた場合にlengthが合わな…
<div> <div>foo</div> <p>bar</p> </div> こんなのを { div: { div: 'foo', p: 'bar' } } こんな感じにしたい。jQueryプラグインで書いてみた。 http://jsfiddle.net/hokaccha/syEH2/今回は属性は必要なかったんでめんどいし無視した。あとこういうのもうまくいかない <p>hoge<span>fuga</span>piyo</p>
https://github.com/hokaccha/node-chain-tinyflowコントロール系のモジュール。flowコントロール系はnpmで探せば腐るほどあるのにも関わらずなんで書いたかというと、自分で書いて動作をちゃんと理解したかったからというのが最初の動機。書いてみると結構…
ようはDBの接続と切断をしたいんだけど、テスト全体の最初と最後になんか処理するみたいのはできんのかな。nodeunit.testCase()のsetUpとtearDownは一回のテスト毎に実行されるから毎回接続/切断してるとテストの速度が落ちるんだよなあ。 module.exports = …
デフォルトのmaxAgeは14400000なんだけど、なんかすごく長いように見えてmsなんで実は4時間だった。
connectの2系がリリースされた。結構インターフェース変わってるっぽい。あと気を付けないといけないのがnpmにもあがってて、nodeのバージョンの依存が >= 0.5.0 すでにこういう問題が起きてる。 https://github.com/kcbanner/connect-mongo/issues/11これpa…
https://github.com/fjakobs/async.js async.map(['file1','file2','file3'], fs.stat, function(err, results){ // results is now an array of stats for each file }); ぱっと見fs.statのところがわからんかったけど、まず素直に書くとこう。 async.map([…
db.foo.find().pretty()でできた。
GitHub - davglass/express-session-mongo: MongoDB session storage for ExpressJS これ使おうと思ったら this._db = new Db( dbName, server, { native_parser:true }); ってハードコードしてあって強制的にmongodbのBSONのネイティブパーサー使わないとい…
気晴らしに書いた。npmには上げてない。 GitHub - hokaccha/node-connect-external-sass: node-connect middleware for sass. using external ruby sass command.sassを動的にコンパイルするconnectのミドルウェア。node版のsassは微妙なんでこの際思い切っ…
expressとconnectウォッチしてて、ずっとmasterしか見てなかったけど、どうやらmasterは開発ブランチだということが最近わかった。connectのインターフェースがやたら変わってるんだけど、npmにリリースされてるのは前のインターフェースだということに気づ…
https://github.com/languages こんなんあるのね。github上ではjsが今のところ一位らしい
npmにアップするときは.npmignoreに書いたファイルは除外される。書くの忘れててconfyに.vimrc.projectとかいう恥ずかしいファイルが上がってた。内容どうするかだけど、他の人の見てみると.git*とかtest/とかが多いかな。testをnpmignoreするかどうかが迷い…