有些人大概注定不能被别人当人看

虽然周围很多人都对他们有意见,但我不介意成为唯一一个公开说他们并被他们针对的人

从大一上半学期开始,就喜欢凌晨在走廊里或者开着宿舍门大闹,时间从0点到3点不定(0点前我就不算他们扰民了),时长不定但都比较长。由于我经常码代码到很晚,能清楚地听到,所以我经常去系群里说他们,偶尔也有人附和。于是我经常提醒他们做的不对还是我的错咯?要我去当面说是想干我咯?

所以这次我也不把它们当人看了(其实我们早就不把它们当人看了,不过都是私下里)

 

事发背景是端午节放假,很多人都已经回家去了。现在已经很晚了,但是某些人依然在宿舍走廊里闹。

先出现的两个人是出来吐槽的,为了内容的完整真实性我也截进去了。以下是完整的全程截图。

继续阅读

【Javascript】base32编解码

用javascript写了个base32的编解码函数

网站搬家到Vultr

经过一晚上和半个上午的折腾,网站搬家到vultr了。

虽然是用docker部署的,不过由于mysql镜像有问题,我花了不少时间来研究是哪里出问题了,结果最后换了个镜像版本就好了。

 

就conoha那样态度恶劣自高自大的服务商,真的是不能省心得用,既然大家都从conoha逃走了,那我也逃走吧。

现在把那只vps当做ss节点用了,坐等被封。

极路由HC5761A救砖日志

事情的起因是这样的,我想给我的极路由HC5761A刷其它固件,但是怕刷成砖,于是发现了有breed这种可以让路由器刷不死的东西,于是我去极路由的论坛找了找确实有每个极路由对应的breed,然后我下载了HC5761的breed,因为那里并没有HC5761A的。。然后按教程刷进去,变砖了。

 

 

一个灯也不亮了。。。。

然后买了一套比路由器还贵的装备来修这个路由器

 

好的接下来开始救砖日志。

继续阅读

上上个星期买了个显示器

买了个飞利浦BDM3270显示器,由于用得太爽直到今天才发现忘了发图。。。。

这是一个32吋的显示器,收到货之后发现这尺寸比我想象中的大多了。。。宿管看见那箱子差点不让我搬进来

然后上一张图,为了显得它大,拍了张整个船坞的照片

 

 

这张全是麻点颜色发黄的照片是用完全没什么琴梨用的iPhone 6 Plus拍的。

 

由于它实在太大,想要放进最底层的格子里的话就没法装支架底座了,现在是斜着塞进去的,下面搞了一鼠标垫剪成两块卡在两边,加了个键盘稍微撑一下。鼠标是买屏幕送的,一般情况下就不用Arc Touch了。

【node】让require搜索非当前文件路径的逐级路径

 

node的require函数有一个规则,就是参数是一个模块的名字的时候,它会从当前文件的目录开始,一级级往上级目录搜索node_modules文件夹以及里面对应名字的模块。

比如当前文件的目录是 /etc/miao/papapa/doge ,在这个文件里面有一个 require('jiajia') ,那么require就会在以下位置寻找 jiajia模块

 

但是我要在非当前文件路径逐级向上查找模块的话,就没法直接这样用require了。

但我又不想自己写循环来实现这个功能,于是我开始打node自带模块的主意,既然require有那样的特性,那就一定有处理逐级路径的函数,于是我开始读module模块的源码。在里面各种find变量,找到了 Module._nodeModulePaths 这个函数,它的功能就是把一个路径分析成逐级路径的数组了。

然后又各种find,找到了处理require路径数组的地方,发现它是module.paths,那么问题解决了,只要用 Module._nodeModulePaths 先把路径拆成逐级路径,然后和module.paths合并就可以了。

这么一来就达到了require搜索非当前文件路径的逐级路径效果。

要注意的是module是当前context的实例,所以对它的操作不影响其父模块以及子模块,在这里修改的module.paths和其它模块无关,也就是说在其它模块会失去这个效果,除非在其它地方也执行以上代码。

我已经尝试了修改process.env[‘NODE_PATH’],因为源码里初始化module.paths的代码中也用到了这个环境变量,但是直接修改并没有什么用,到了子模块里依然是原来的NODE_PATH。

不知有没有办法让这个效果作用到全局。

跨次元日常卖萌