Skip to content

Instantly share code, notes, and snippets.

View ledsun's full-sized avatar

shigeru.nakajima ledsun

View GitHub Profile
@ledsun
ledsun / ObservableValue
Created December 10, 2014 06:28
EventEmitter付きのオブジェクトコンテナ
var EventEmitter = require('events').EventEmitter;
module.exports = function(initial) {
var value = initial,
emitter = new EventEmitter(),
get = function() {
return value;
},
set = function(newValue) {
if (value === newValue) return;
@ledsun
ledsun / gist:ee9ba8c1f4302c305627
Created January 13, 2015 10:26
Decode kinesis data
function(record) {
var encodedPayload = record.kinesis.data,
payload = new Buffer(encodedPayload, 'base64').toString('ascii')
return payload
}
<script src="http://wzrd.in/standalone/dom-delegate@latest"></script>
<script>
document.addEventListener("DOMContentLoaded", function() {
domDelegate(document.body).on('click', 'button', handleButtonClicks)
document.body.innerHTML = '<button>buton</button>'
})
function handleButtonClicks(event) {
console.log('click', event)
}
@ledsun
ledsun / gist:d21f62ab23aab6b6a9e0
Created March 9, 2015 01:56
mocha --require espower-babel/guess
> mocha --require espower-babel/guess
/Users/shigerunakajima/fusion_bluster/src/google-calendar-button/event.js:1
(function (exports, require, module, __filename, __dirname) { import dateAdder
^^^^^^
SyntaxError: Unexpected reserved word
at Module._compile (module.js:439:25)
at Module._extensions..js (module.js:474:10)
at Object.extensions..js (/Users/shigerunakajima/fusion_bluster/node_modules/espower-babel/index.js:20:13)
@ledsun
ledsun / form_auto_save.js
Last active August 29, 2015 14:17
formの変更内容をlocalStrageにリアルタイム保存
let of = require('observable-form'),
form = document.querySelector('form'),
o = of(form)
o.on('change', (e) => {
let j = o.toJSON()
console.log('change', j)
let str = JSON.stringify(j)
localStorage.setItem('abc', str)
@ledsun
ledsun / index.js
Created May 11, 2015 07:16
event-streamのサンプル
import es from 'event-stream';
let value = 0;
es.readable((count, callback) => {
if (!count) // なぜ何回も呼ばれるのか?
document.querySelector('button').addEventListener('click', e => callback(null, e))
}).pipe(es.map((data, callback) => {
value++;
callback(null, value)
@ledsun
ledsun / index.js
Created August 11, 2015 01:48
esprimaでES6 moduleをパース
import esprima from 'esprima'
const source = `
import {
ActionTransform
}
from 'action-stream'
import {
actionType, target
}
from '../const'
{
"env": {
"plugins": [
"babel-plugin-espower"
],
"production": {
"plugins": [
"babel-plugin-unassert"
]
}
var JSHINT = require('jshint').JSHINT
var source = [
'function goo() {}',
'foo = 3;'
];
var options = {
undef: true
};
var predef = {
@ledsun
ledsun / ClickOnceReInstall.vbs
Created October 14, 2011 09:55
ClickOnece-ReInstaller
Option Explicit
''インストールパス
const INSTALL_PATH = "http://hoge.example.com/oreoreApply/ClickOneceSample.application"
'' アンインストールコマンドの入っているレジストリ
const REGISTRY_PATH = "Software\Microsoft\Windows\CurrentVersion\Uninstall"
'' 処理
UnInstallAll()