Case insensitive auto-complete in OSX Terminal

November 23, 2018

在 Mac OSX 终端里面由于默认 Home 下面的文件夹都是大写开头,如 Downloads / Desktop 等,cd 的时候比较烦。解决方法:

$ echo "set completion-ignore-case On" >> ~/.inputrc

然后重启终端即可。

使用 Puppeteer 自动输入京东滑动验证码

November 5, 2018

京东网页端登录有时候需要输入滑动验证码,就像这样:

jd-verify

在做自动签到脚本的时候遇到这个很不舒服,如果不处理的话就只能每次弹出浏览器手动登录,因此稍微研究了下。下面是一个非常简单,但成功率很高(达到80%)的自动识别并输入方案,使用 puppeteer 实现。

总体思路:通过图像特征识别出滑块缺口的位置,然后通过模拟用户点击将滑块拖动到该处。

Read more »

React node starter

October 10, 2018

出于某种需求搭建了一个非常简单的、基于 React / Node / Express / MongoDB 的 starter 工程:wxsms/react-node-starter,旨在简化小型或中小型项目开发流程,关注实际业务开发。

目前所实现的内容有:

  • 前后端完全分离
  • 热重载
  • 用户注册、登录

麻雀虽小,五脏俱全。下面记录搭建过程。

Read more »

Unicode substring

September 6, 2018

最近遇到一个问题:在做字符串截取操作时,如果字符串中包含了 emoji 字符(一个表情占多个 unicode 字符),而碰巧又把它截断了,程序会出错。在 ReactNative App 下的具体表现就是崩溃。由于以前做的是网页比较多,基本没有输入表情字符的案例,而在手机上就不一样了,因此这个问题还是第一次发现。

比如说:

'😋Emoji😋'.substring(0, 2) // 😋

因此,如果对这个字符串做 substring(0, 1) 操作,就会截取到一个未知字符。

Read more »

失望

August 8, 2018

今年的 TI 本子到目前为止已经充了 ¥850 左右,770 级。

  • 不朽 1 没有开到极其珍稀(PA),其它齐全
  • 不朽 2 齐全,一件极其珍稀(黑鸟)
  • 不朽 3 没有开到极其珍稀(巫医),其它齐全
  • 宝瓶 1 一轮,一件稀有额外(术士)
  • 宝瓶 2 一轮,一件稀有额外(大屁股)

战绩可以说非常不尽人意。虽然中途 V 社承认自己失误(被迫?)发了一次补偿,但依然没我。

现在每周就肝肝幽穴风云,肝肝代币,箱子开了马上又是一次轮回,感觉除了中看不中用的等级以外什么都没留下。想要的东西永远开不到,除了失望以外说不出别的感受来。

今天中午又开了一个箱子,依然是熟悉的啥都没有,突然就觉得好累,有点不想肝了。人生啊。

Gitlab CI Setup

July 19, 2018

Gitlab 有一套内置的 CI 系统,相比集成 Jenkins 来说更加方便一些,用法也稍为简单。以下是搭建过程。

前置准备:须要准备一台用来跑 CI 任务的机器(可以是 Mac / Linux / Windows 之一)。

Read more »

中国药神

July 9, 2018

《我不是药神》是一部好电影。

影片最打动我的一段,是小吕请勇哥去他家吃饭的那几分钟。这些小人物倾家荡产,拼了命地活着,到底只不过就是为了一些「小事」而已。不然何苦呢?得了绝症的小吕幸福吗?从某个角度看,他非常幸福:有一个至死都不离不弃的爱人,还有一个至少到现在为止都健健康康的孩子。但生活就是这样残酷。

吃不起特效药的人,去抗议药厂卖天价药,对于不幸的患者来说,我命都快没了,管你是对是错呢?影片故意刻画了一个近乎反派立场的药厂,是不得已而为之,但我们要记住:真正对人类社会的发展做出贡献的是药厂。它卖天价药,卖任何价格,都没有问题,你永远不知道药厂为了第一片药付出了多少。至于吃不起,那是你的问题。就像影片说的一样:穷病,没法治。

影片从「病」这个角度,揭露出了绝大部分人生活在这个社会上的一些无奈。除非你有钱到刘强东这种程度,否则这个世界上总有你付不起的代价,这一刻是公平的。

这部电影好就好在,它选取了一个能够引发共鸣,但又值得深思的角度,同时把故事给讲好了。其实真的不难,真心希望它能够赚一笔大的,让大家以后都有样学样,多拍点有营养的东西。

PS. 毕导可以出来点评一下了,我猜这绝对又是境外势力的阴谋?

Simplest Wechat Client on Linux

June 11, 2018

微信没有为 Linux 提供桌面客户端,可用的替代方式有:

  1. 使用网页版微信
  2. 使用第三方客户端,如 electronic-wechat
  3. 自己动手,将网页版微信封装为桌面应用程序

但是每种方式都有不尽人意的地方。网页版总是嵌入在浏览器中,用起来不太方便;第三方客户端安全性无法保证;自己做一个客户端又太麻烦。

然而,实际上还有一种更简单的方式:通过 Chrome 将网页直接转化为桌面应用。

步骤:

  1. 使用 Chrome 打开网页版微信
  2. 右上角设置,More tools -> Create shortcut...
  3. 然后就可以在 Chrome Apps 中找到微信了

通过此方式创建的 Apps 同时拥有桌面应用的表现以及网页版的功能,并且可以将它固定到 Dock 栏,以及独立于浏览器运行,只能用「完美」两个字形容。

除微信外,其它缺少 Linux 客户端但有网页客户端的应用亦可如法炮制,如有道云笔记等。

React Native Text Inline Image

May 30, 2018

原文地址(需科学上网):medium.com

RN 版本:0.49

图文混排(在文字中插入图片,并保持正确换行)是客户端普遍的需求,但在 RN 中它有一点问题,具体表现在 Android 平台下图片显得异常的小,并且相同系统不同设备之间的表现也不尽一样,而 ios 则表现正常。

Read more »

Thoughts of ReactNative

April 27, 2018

使用 ReactNative 开发半年有余,本文是作为一些简单的感想。

官网简介:

Build native mobile apps using JavaScript and React.

简约,不简单。看着很牛逼,但实际用起来总是差了点意思。

总而言之:帮你节省时间的同时,隐藏着无处不在的坑。

Read more »