一场因为使用 Git Submodule 引发的血案

前略
今天继续对 Blog 进行一些更新,上午先是将目前暂挂于 Github Page 的本博客链接上了自定义域名,但是这样一来就不能强制启用 HTTPS 让我略感不爽,有空解决之。
中午的时候突然冒出来的念头:把 Blog 的主题用 Git Submodule 来进行管理,原因也是用这种形式管理非常适合 Hexo 的结构,遂动手。

我的 _config.yml 中是将 public_dir 挂在 Hexo 目录之外,所以不用动它。而原本就在的 themes/hexo-theme-typescript 已经是一个 Git Repo 了,先将它之中的改动 push 上去,然后删了它。

将原本 themes 文件夹中的内容清空后,我同时删除了该文件夹,这也是之后二十分钟让我不知道错在何处的原因。

删去 themes 文件夹之后我们来添加 submodule, 命令很简单,一句 git submodule add就可以搞定,然后会自动帮你 clone 下来并且在根目录下生成 .gitmodules 保存 submodule 信息。

搞定之后尝试跑跑看有没有问题,hexo g 之后发现警告信息:”No Layout: index.html”. 我心想,不对啊,文件没缺啊,你怎么就找不到 Index 的 Layout 信息了呢?首先想到的是,Git 的 Submodule 是不是用了某种 link, 以至于 hexo 读不到这个文件夹的内容,于是用 ls 查看之,ls 告诉我 theme 和 hexo-theme-typescript 都是实打实的文件夹而不是软链接,百思不得其解,Google 之,发现这个警告代表的文件百分之百是由于文件缺失。然而我的文件都在啊,没缺啊,就认为是 submodule 的问题,参考了别人的 hexo 用 submodule 方式管理的文章之后,我突然想到,会不会是原本文件目录是 “themes” 而我建 submodule 时候用的是 “theme”, 缺了个 ‘s’ 导致的文件缺失呢?于是我新建了一个文件夹跑了一下 hexo init 看看文件目录结构,果不其然,用的确实是 “themes”, 重新把 submodule 建好,用对文件夹名字,运行 hexo s, 打开本地页面,熟悉的主页终于回来了。

>>endl;

GBF2Weibo 开发记

上周末和这周头上都一直在写那个 GBF 自动发 PO 到微博的工具(github),到目前为止也就实现了一半,后半部分自动发 PO 的功能因为新浪的限制,已经没办法做到以前 FaWave 那种形式的发送微博了。我的想法是绕路,通过在 weibo.com, 也就是网页版微博中插脚本,实现将文本插入到发送框,同时图片也插入进去,然后模拟点击发送按钮。上周日下午研究了一小时的微博首页,文本插入到发送框和模拟点击发送是能够做到的,但是就是不知道如何插入图片。在这里我又产生了一种绕路想法,就是模拟 Ctrl + C/V 的键盘操作来进行复制粘贴工作,然后,坑了。

写这玩意儿的过程中,因为需要自己获取当前的 RaidCode, 也就是那个八位参战码。GBF 页面加载完存在一个 “stage” object, 其中 .pJsnData.twitter.battle_id 就是我需要的码。那么就需要将这个码传递出来,而 Chrome 对于 Extension 是有非常严格的限制的,Extension 的 Content Script 和 Extension 本体是处于不同的沙盒之内的,所以就不能直接用 var raidCode = stage.pJsnData.twitter.battle_id 这种形式,而是要通过 Chrome 的 Message Passing API 来传递信息。苦学了好几天的消息传递都不能达到目的的时候,我想起来 Viramate 提供了外部获取数据的 API, 那我直接调用 API 来得到整理过的信息不是更方便吗?说是这么说,看了半天源码之后发现它没提供现成的 RaidCode 直接返回,发邮件询问作者之后得知,原来有提供战场数据的返回,但没有直接的 RaidCode 返回,不过已经能满足我的需求了。

其实作者在说明文档中有写这个 API, 但他写返回内容的时候写了”a bunch of shit”,所以我当时看文档的时候也就忽视掉了这个 API.

有了现成的数据源,我只需要将其解析就行了。随后遇到了一些奇奇怪怪的小问题,大部分都是新手常见问题,值得一提的是,JS 的执行时间点与其在页面里的加载位置有关系,比如说,放在<head>里的要比<body>中的早执行(表意可能有问题)。

文本生成成功了,那么就是 Boss 图片的问题了。这里又出现了新的问题,GBF 这么多 Boss, 我一个个去下图片写信息要花太多时间。于是想到 GBF RaidFinder 有提供 Boss 数据导出的 json, 那么我写一个从这个 json 中获取信息并自动下载图片的程序来自动化不就行了。请出我们的 Visual Studio 和 C#.

自动化程序的大体思路是这样的:读 json 产生对象数组 -> 数组排序去重 -> 将原数组数据根据自己需求导入自己定义的对象数组中 -> 读自己定义的对象数组中的图片 URL 并进行下载。

在写排序的时候发现自己把以前学过的排序算法都忘记了,使劲回忆了不少时间才写出了一个冒泡排序。然后是去重的问题,我并没有学习过去重算法,Google 之,众说纷纭,我选择了一个使用 List 的方案,最后以一句精简的 Lambda: if (list.Exists(x=>x.Name_EN==_mb.Name_EN) == false){ list.Add(_mb); }搞定之。现在想来原理很简单,一个条件判断——“如果 List 中不存在同名(对象属性)对象,则添加之。

对了,C# 中还有个设计就是对象数组申明之后需要进行每个数组元素的初始化即创建对象,不然会运行时报错。

感叹一句,C# 是真的方便实用,MS 已经几乎给好了你所有需要的轮子,你只需要将这些东西拼起来,自己写点胶水就可以了。对于一个 Windows 平台上的小工具来说,C# 是特别方便的。

大体上这整一套开始有实用的代码写入是周日下午,最后写完半成品是在周一晚上,第一次写一个“能用”的小玩意儿还是很开心的。

>>endl;

Hello,World.\n

想自己架个 Blog 好几个月了,开始用了 Jekyll,在 Windows 上做本地生成不太方便,扔远程机器上有时候自己会忘记目录结构也很麻烦。

很早就听说过几个著名的博客框架,什么 WordPress, Ghost, Hexo, Jekyll. 最后我还是选择了 Hexo, 原因有几个:

  • 我需要静态文件
  • 我得看得懂
  • 可以在 Windows 平台上进行静态文件生成
  • 简洁

那么最后试用了一下 Hexo, 感觉不错,Windows 上跑的挺欢快,主题也挺多,修改起来自己也看得懂点。

还是要感谢 Node.js 这玩意儿

那么架好了,写些什么呢?

上上礼拜刚 Uninstall 了 PUBG, 给自己的理由是挂太多了不想玩,其实主要的一点是一开游戏一晚上就没了,大学时间已经不多了,还是多留给学各种各样的东西。

所以上礼拜写了 GBF2Weibo 这个半成品,学了点 JavaScript. 同时因为需要,写了个 C# 小工具来进行 Boss 数据的转化,具体过程写在之后的文章。

想了想,开篇文确实没什么能多说的,我就只能鞭策自己以后把玩游戏的时间多用来学习,没事的时候多写点文字随便记录一下,大概这也是我把 Blog 的 Title 设置为“随写”的原因吧。

>>endl;

深夜亂寫

之前突發奇想「我可能骨子裏是個江南人」,這幾天思索的越多越發覺得這句話用來形容自己還是不會錯的。

父親也是那種頭腦聰明過人從小展露出來然後到了高中不想努力了。我也是呢。

寒假里他跟我吐露了很多他高中畢業之後找工作時候碰到的苦難。

像我們所在的階級沒有人是能不通過自己努力就能得到一份「安穩的工作」的。

他曾在工地當過工人,做過搬運工,在烈日下面。

可能是家族基因,在做自己不願意的事情的時候會努力地去擺脫這個境地吧。

要麽是放棄掉要麽是朝著更好的去拼個命。

他抓住了機會,拿到了一份「安穩的工作」,將近三十年沒換過。

實話說,三十年了也沒怎麽混出頭是另外的人就覺得自己挺失敗的吧。

但我覺得,可能他也這麽認爲,這麽活著挺不錯的。

家庭的中年危機已經解決了,兒子也往外跑出去了沒幾年就要自己獨立了。

本來就很懶散的生活著現在可能能更舒服了吧。

何謂「閑適」,可能就是這樣子的吧。

我的性格的形成因素里,有他很大的影響,再者就是環境了。

刻意保持的孑然一身,沒啥將才,也衹會幹點事情,幫點小忙,還有擺脫不掉的「市井氣」和「貪圖小利」的性格。偶爾也會興致勃勃地區幹點讓自己收穫滿足感的事情。再者就是嗜書如命。

上大學開始就一直在研究自己的家鄉,到底是怎麽樣的呢,用現在的目光來看。

當年晉南渡之時,把整個正統的中原士族文化都帶到這塊土地上來了,一直流傳到今天,仍然在這片土地上的人們的骨子裏保存著。

從中古時代開始處於那塊平原上的人們就一直活得不錯,作爲華夏大地可能是長久以來一直保持著的最富裕的地區,沒有多少人會放棄優渥的條件去別的地方發展,直到近代海洋文化的興起。然而老的思想卻根深蒂固,老人對於別的地區的看法基本上都不入眼,除了北上廣這類大城市。西南地區最大的省會在他們眼裏也不過是個「蠻夷之地」罷了。

睏了,日後在寫。

The Last of 2015. The End of the Middle of 2010s.

还是老样子 这人在发神经

想想看整个15年 也就那样过来了

三年前看着高中的大门三年后看着大学的大门 还不如高中的大呢

比较让自己满意的 也就是来到了成都 这个当初想去的五个城市之一

记得去年大概也是这时候吧 我大概是和同学一起跑去网吧

从此开始了我高三连续一个月在网吧晚自修的记录

没怎么用功过 混了三年上了个二本

这就是我对整个高中生活的评价

没什么好回顾的 直到最后一学年我才最后确定了自己为人处世的风格

看的越多对人就越失望

我一直都是那么一个孤独的人

也就是到快年末了才发现自己一直缺的都不是什么所谓的”彼女”

只不过是身边没有能说一切东西的朋友罢了

还好 算是找了这类朋友吧

这个垃圾世界还是老样子

这个垃圾国家还是老样子

没必要去一味的迎合别人 会有观念冲突是非常正常的事情

也没必要去把自身的喜好强加于别人身上

今年认识了中舒 沙皮 呆

足够了

感谢对我的容忍

感谢对我的照顾

还有那个小群的你们

还好所有和我一起欢笑过的朋友

ありがとうございます