Skip to content

Instantly share code, notes, and snippets.

View supersheep's full-sized avatar

Spud Hsu supersheep

View GitHub Profile

今年国内首届Swift大会在北京举行,Swift是苹果2014年7月推出的新编程语言,从许多现代语言中吸收了不少非常棒的特性。

北京这次完全是坊间出于技术交流与分享的热情组织起来的非盈利性会议,请到了来自国内外的多位技术大咖,有同学戏称是iOS界网红见面会,总之非常难得。

议程结束不久,趁着还热乎,在此先与大家分享一下。回头官方放出视频和Keynotes再做补充。

Programming with Structs

by Chris Eidhof

wget http://spud.in/tools/phantomjs-1.9.2-linux-x86_64.tar.bz2
tar -xvjpf phantomjs-1.9.2-linux-x86_64.tar.bz2
cd phantomjs-1.9.2-linux-x86_64
sudo ln -sf `pwd`/bin/phantomjs /usr/local/bin/phantomjs
cd -
git clone git://github.com/n1k0/casperjs.git
cd casperjs
sudo ln -sf `pwd`/bin/casperjs /usr/local/bin/casperjs
cd -
wget https://raw2.github.com/supersheep/Edward/master/main.js -O capture.js

Git ssh config

嘛,最近 github 间歇式被墙,尼玛一到晚上加班的时候就给我抽风啊,完全没法干活了。

所以稍微整理了一下 ssh 设置。

首先,你还是需要一台国外的可以 ssh 的机器,或者 ssh 帐号的,否则,下面就不用看了 =。=

步骤

@supersheep
supersheep / exhaustion
Created June 30, 2013 03:50
Exhaustive listing words
function anyequal(arr){
return arr.some(function(ei,i){
return arr.some(function(ej,j){return ej==ei && i!=j});
});
return res;
}
function getmax(wlen,len){
var max = (wlen-1).toString(wlen);
var maxarr = [];
@supersheep
supersheep / mkdirSync
Created March 9, 2013 08:56
mkdir sync as `mkdir -p`
function isDirectory(file){
return fs.existsSync(file) && fs.statSync(file).isDirectory();
};
function mkdirSync(dir){
if(!isDirectory(dir)){
var SPLITTER = path.sep,
splits = dir.split(SPLITTER),
directory_stack = [],
last,
@supersheep
supersheep / parallel
Created March 6, 2013 03:35
async like parallel
function Parallel(tasks,alldone){
var count = tasks.length;
var results = new Array(count);
var finished = 0;
function done(result,i){
results[i]=result;
finished++;
if(finished==count){
alldone(results);
};
function(resschema,body,type){
var result,schema;
if(!resschema){
return {ok:false,msg:"no response schema"};
}
if(!body){
return {ok:false,msg:"no body"};
}
function (req, res, next) {
var url,reqdata;
if(!req.xhr){next();}
url = urlmod.parse(req.url).pathname;
reqdata = {
get : req.query,
post : req.body,
header: req.headers
};
@supersheep
supersheep / iframeMap
Created January 26, 2013 13:13
iframeMapAccessor
(function(win,DP){
// 适配mootools与neuron框架创建元素方法
function create(tag){
if(DP.DOM){
return DP.DOM.create(tag).el(0)
}else{
return new Element(tag);
}
}
@supersheep
supersheep / clipString
Created January 20, 2013 12:51
截字
// 非常偷懒的假设中文字符集为两个字符长度,别的都是一个
function clipString(str,length){
var strArr = str.split("");
var result = [];
for(var i=0;chr=strArr[i];i++){
if(/[\u0391-\uFFE5]/.test(chr)){
length -= 2;
}else{
length -= 1;
}