Skip to content

Instantly share code, notes, and snippets.

@nanha
nanha / gist:992438
Created May 26, 2011 02:42
gmail bookmarklet
javascript:(function(){m='http://mail.google.com/mail/?ui=1&view=cm&fs=1&tf=1&to=nanhap@gmail.com&su='+encodeURIComponent(document.title)+'&body='+encodeURIComponent(document.location);w=window.open(m,'addwindow','status=no,toolbar=no,width=575,height=545,resizable=yes');setTimeout(function(){w.focus();}, 250);})();
@nanha
nanha / gist:992575
Created May 26, 2011 04:53
JSONp using closure
var jsonp = {
callbackCounter: 0,
fetch: function(url, callback) {
var fn = 'JSONPCallback_' + this.callbackCounter++;
window[fn] = this.evalJSONP(callback);
url = url.replace('=JSONPCallback', '=' + fn);
var scriptTag = document.createElement('SCRIPT');
scriptTag.src = url;
@nanha
nanha / node.js express logger
Created July 5, 2011 00:49
node.js express middleware 중에서 logger를 사용하여 실제 파일로 logging 하는 방법
/**
* express 처음에 init 하시면 app.js 를 비롯하여 여러 디렉토리가 생기는데
* logs 디렉토리에 아무것도 안남는다고 의문을 가지신 분에게 도움이 될거 같습니다.
* connect의 middleware logger 는 기본이 stdout 으로 출력하고 있었네요.
* http://senchalabs.github.com/connect/middleware-logger.html
* manual을 살펴보니 stream options 이 있었군요.
* 한번 생각나서 fs core module의 createWriteStream 을 사용하여 해봤더니 잘되네요.
* 다른 방법도 있으신분은 알려주세요
*/
var fs = require('fs'),
@nanha
nanha / gist:1148532
Created August 16, 2011 06:28
git config
[user]
name = nanha park
email = nanhap@gmail.com
[color]
diff = auto
status = auto
branch = auto
ui = true
[alias]
co = checkout
@nanha
nanha / gist:1308185
Created October 24, 2011 01:33 — forked from rogerdudler/gist:1156361
redis usage in node.js
// load redis client
var r = require('redis').createClient();
// set data for key
r.set('key', data);
// add data to key (list)
r.lpush('key', data);
// trim list to specific length
@nanha
nanha / gist:1342401
Created November 6, 2011 03:06
[node.js socket.io] Namespace+Room기반 메신저 플젝 진행중. 1:1 대화중 서로 대화 요청시 대화창은 1개만 떠야한다. !!
/**
* 1:1채팅중에 참여중인 namespace+room 목록
■ 요구조건
- 서로의 대화명을 클릭시 메신저 창이 따로 보여지면 안됨.
- 자신이 대화중인지를 클라이언트 혹은 서버에서 판단할 필요있음.
■ 해결방법
- sessionid를 공유변수로 설정할려 했으나, socket.io lib 에 뭔가 있을거 같은 생각. ㅋ
- https://github.com/LearnBoost/socket.io/blob/master/lib/manager.js 에 많은 정보가 들어있음.
@nanha
nanha / gist:1366025
Created November 15, 2011 03:12
async programming: parallel 패턴...
/**
* parallel execute
* 결과
1321326610687
1321326610687
1321326610687
[1, 2, 3]
async
-------------------------------
@nanha
nanha / gist:1366203
Created November 15, 2011 05:00
Async Programming Combo
function Combo(callback) {
this.callback = callback;
this.items = 0;
this.results = [];
}
Combo.prototype = {
add: function () {
var self = this,
id = this.items;