JavaScript Advent Calendar 2011 (Node.js/WebSocketsコース) : ATNDã®25æ¥ç®ã§ããã¡ãªã¼ã¯ãªã¹ãã¹ï¼ï¼
â¦ã¨ãããã¨ã§npm xmas
ã§ãã
npm ã¯Node.jsã®v0.6.3ãããããæ¨æºæ·»ä»ããã¦ã¾ãããå¤ãã®ãµãã³ãã³ããç¨æããã¦ãã¦ãnpm help
ã§ä¸è¦§ãããã¨ãã§ãã¾ãã
$ npm help Usage: npm <command> where <command> is one of: adduser, apihelp, author, bin, bugs, c, cache, completion, config, deprecate, docs, edit, explore, faq, find, get, help, help-search, home, i, info, init, install, la, link, list, ll, ln, ls, outdated, owner, pack, prefix, prune, publish, r, rb, rebuild, remove, restart, rm, root, run-script, s, se, search, set, show, star, start, stop, submodule, tag, test, un, uninstall, unlink, unpublish, unstar, up, update, version, view, whoami npm <cmd> -h quick help on <cmd> npm -l display full usage info npm faq commonly asked questions npm help <term> search for help on <term> npm help npm involved overview Specify configs in the ini-formatted file: /Users/sugyan/.npmrc or on the command line via: npm <command> --key value Config info can be viewed via: npm help config [email protected] /Users/sugyan/.nodebrew/node/v0.6.6/lib/node_modules/npm
ãããããããã¹ã¦ã¨ããããã§ããªããé ãã³ãã³ãçã«npm xmas
ã¨ãã使ããããã¾ãã
ã¯ããã¯ãªã¹ãã¹ããªã¼ãç¾ãã¾ããã
npmのgithubレポジトリãè¦ãéããnpm/lib/xmas.js
ã¯å»å¹´ã®12/23ã«è¿½å ããã¦ãã¾ããã
https://github.com/isaacs/npm/commits/master/lib/xmas.js
ã¨ããããã§ãä¸å¹´åã®å¤ããã¿ã§ãããã¿ã¾ããã
ã¨ããã§ãã®ã¯ãªã¹ãã¹ããªã¼ããã¸ãã¯ã®ã¡ã¤ã³ã®é¨å*1ã¯
;(function T (H) { for (var i = 0; i < H; i ++) w(" ") w(x+"\033[33m"+s+"\n") var M = H * 2 - 1 for (L = 1; L <= H; L ++) { var O = L * 2 - 2 var S = (M - O) / 2 for (var i = 0; i < S; i ++) w(" ") w(x+"\033[32m"+f) for (var i = 0; i < O; i ++) w( "\033["+oc[Math.floor(Math.random()*oc.length)]+"m"+ o[Math.floor(Math.random() * o.length)] ) w(x+"\033[32m"+b+"\n") } w(" ") for (var i = 1; i < H; i ++) w("\033[32m"+l) w("| "+x+" |") for (var i = 1; i < H; i ++) w("\033[32m"+l) if (H > 10) { w("\n ") for (var i = 1; i < H; i ++) w(" ") w("| "+x+" |") for (var i = 1; i < H; i ++) w(" ") } })(20)
ã¨ãªã£ã¦ãã¦ãé¢æ°T
ã¯å¼æ°H
ãåãåã£ã¦å¯å¤ã®ãµã¤ãºãæç»ã§ããããã«ä½ããã¦ããã®ã§ãããå¼ã³åºããå¼æ°ã«20
ã¨åºå®å¤ã渡ãã¦ãã¦ãçµå±ãã®ãµã¤ãºã®ãã®ããä½ãã¾ãããã¡ãã£ã¨å¿ä½ç¡ãã§ããã
ã¨ãããã¨ã§æè§ãªã®ã§ã³ãã³ãå¼æ°ã§ãµã¤ãºãæå®åºæ¥ãããã«ãã¦ã¿ã¾ããã
https://github.com/sugyan/npm/commit/ab9fb8f69d4cc7e61dac85ff52d9898862fe89eb
ããã§ã
ã¡ã£ã¡ããããªã¼ã
ãã£ããããªã¼ã
ä½ãã¡ããã¾ããï¼
npm loves you Happy Xmas, Noders!
*1: ã¡ãªã¿ã«ãã®é¨åãPerlã§å®è£ ãããã®ãåå¹´ã»ã©åã«æ¸ãã¾ããã(http://d.hatena.ne.jp/sugyan/20110608/1307460864) Rubyçã@kwappaãããä½ã£ã¦ããã¾ããã(http://randd.kwappa.net/2011/12/24/404)