Skip to content

Instantly share code, notes, and snippets.

View leaysgur's full-sized avatar
🫖

Yuji Sugiura leaysgur

🫖
View GitHub Profile
@leaysgur
leaysgur / isEmptyObject.js
Created January 6, 2015 04:51
isEmptyObject
function isEmptyObject(obj) {
var p;
for (p in obj) {
return false;
}
return true;
}
@leaysgur
leaysgur / removeAllElmExceptOne.js
Created February 5, 2015 03:07
removeAllElmExceptOne
var parentNode = document.body,
childNodes = parentNode.childNodes,
node;
while (1) {
// 1つを残して全部消す
if (childNodes.length === 1) {
break;
}
// 基本は先頭
@leaysgur
leaysgur / impulseResponse.js
Created March 9, 2015 09:09
impulseResponse
// var audioContext = new AudioContext();
function impulseResponse( duration, decay, reverse ) {
var sampleRate = audioContext.sampleRate;
var length = sampleRate * duration;
var impulse = audioContext.createBuffer(2, length, sampleRate);
var impulseL = impulse.getChannelData(0);
var impulseR = impulse.getChannelData(1);
if (!decay)
@leaysgur
leaysgur / shibutsuta.js
Created June 8, 2015 07:05
ShibuyaTSUTAYA在庫検索
(function() {
var isItemPage = location.pathname.split('/')[1] === 'item';
if (isItemPage) {
var hasParam = location.search.length !== 0;
var addParam = hasParam ? '&storeId=2312' : '?storeId=2312';
location.replace(location.href + addParam);
}
}());
(function(f){if(typeof exports==="object"&&typeof module!=="undefined"){module.exports=f()}else if(typeof define==="function"&&define.amd){define([],f)}else{var g;if(typeof window!=="undefined"){g=window}else if(typeof global!=="undefined"){g=global}else if(typeof self!=="undefined"){g=self}else{g=this}g.mqtt = f()}})(function(){var define,module,exports;return (function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o<r.length;o++)s(r[o]);return s})({1:[function(require,module,exports){
},{}],2:[function(require,module,exports){
arguments[4][1][0].apply(exports,arguments)
},{"dup":1}],3:[function(require,module,exports){
/*!
* The buffer module from node.js, fo
@leaysgur
leaysgur / mobxStore.js
Created September 20, 2016 13:56
More better mobx way?
const Model = require('Model');
class Store {
constructor() {
extendObservable(this, {
items: asFlat([]), // wanna make this Array<Model>
})
}
fooFunc(someData) {
@leaysgur
leaysgur / mute-twitter2yorufukuro.js
Last active March 22, 2017 11:31
Web版Twitterのミュートのリストページで実行すると、夜フクロウのミュート設定に貼れるやつが取れる
($$('.js-stream-item').map(li => li.querySelector('.username > b').textContent).join(','))
@leaysgur
leaysgur / getProtoMethodNames.js
Created October 1, 2016 14:51
自身のプロトタイプに生えてるメソッドを列挙する。
/**
* 自身のプロトタイプに生えてるメソッドを列挙する。
*
* @param instance: Class<T> - 対象のクラスのインスタンス
* @return Array<string> - メソッド名の配列
*
*/
const getProtoMethodNames = (instance) => {
const proto = Object.getPrototypeOf(instance);
return Object.getOwnPropertyNames(proto)
@leaysgur
leaysgur / .babelrc
Created January 25, 2017 10:36
Webpack v2 x React settings
{
"presets": [
["es2015", { "modules": false }],
"latest",
"react"
]
}
@leaysgur
leaysgur / toggle_bt.sh
Created February 1, 2017 02:48
Toggle Bluetooth power status.
#!/bin/sh
#
# BluetoothのON/OFFをtoggle実行するスクリプト
#
# http://brewformulas.org/Blueutil に依存してます。
#
cur=($(blueutil power))
if [ "$cur" -eq "1" ]