致我所深爱着的世界

使用 VS Code 搭建适用于 ACM 练习的 C/C++ 开发环境

大学入学也快一个月了,总的来说,我过得很开心,不枉我花费一年的时间 高考复读。具体哪里令人开心呢?我觉得最主要的是,比起初高中,大学的时间分配更为自由。

中学时代,学生的时间基本都被学校安排得死死的:早上什么时间必须到校,然后开始早读、上午五节课下午三节课、晚读、晚自习,最后在规定的时间离校(住宿生还要在规定的时间就寝),可以自由分配的时间少得可怜,在某些管理严格的学校甚至连人身自由都要被限制。虽然学生们苦中作乐的摸鱼技巧也不容小觑,但考虑到升学的压力,如果在兴趣上分配的时间过多,很有可能就会像我去年一样落得个无法升学的尴尬境地。

而大学相对来说就没有那么多破规矩:有课就上,没课的话时间就随你安排,回寝室睡觉也好出门嗨皮也罢,突出一个爱干嘛干嘛。在这些闲暇时间里,有人选择加入社团以及各种各样的学生组织,有人寻欢作乐讴歌青春,有人一头扎进自己的兴趣爱好中,也有人选择当个快乐摸鱼侠无事一身轻。

而我就比较硬核了,我选择参加可能让我基本告别头发的 ACM 程序设计竞赛(不)。

> READ MORE...

WSL 配置指北:打造 Windows 最强命令行

在两年前的八月,Microsoft 正式发布了 Windows 10 Anniversary Update 周年更新(它还有着 RS1,Version 1607,Build 14393 等一大堆别名)。其中最让包括我在内的众多开发者感到兴奋的特性之一,就是 WSL(Windows Subsystem for Linux,当时还叫 Bash on Ubuntu on Windows)的正式加入。

在 Windows 上原生运行 Linux 可执行文件,牛逼疯了!

然而 Bug10 也不是浪得虚名,原本只提供给 Insider 的 WSL 在正式发布后依然问题多多(不仅 zsh、tmux 等工具无法使用,网络相关的操作更是一概欠奉,还有各种各样 奇妙的 BUG),基本没有可用性,我在尝鲜了一段时间后也不得不重回 Cygwin 的怀抱。不过好消息是,在之后的更新中,这些 BUG 都已被逐一消灭

经过了两年的发展,WSL 已经足够成熟,我也是时候完成这篇一咕再咕的博文了。

(开学在即,仓促成文,如有谬误,还请指正。)

get-wsl

> READ MORE...

添加 Notepad++ 至右键菜单的几种方法

作为一名即将开学的计算机系 准大学生,笔记本电脑总归是要有一台的。于是上星期我入手了 小米游戏本顶配版(i7-8750H + 16G + GTX 1066),最近正在重新折腾开发环境,这篇文章要解决的问题也是在此过程中出现的。

至于为什么要买小米的本子,主要是因为它的「游戏本性能 + 商务本外观」这一点正戳中我好球区。不过这几天使用下来,只能说缺点确实不少,有购买意愿的朋友需谨慎。在 Twitter 上搜索 小米游戏本 from:printempw 就能看到我发的吐槽简评,如果之后有时间的话也打算专门写篇评测(咕咕咕)。

> READ MORE...

命令行界面 (CLI)、终端 (Terminal)、Shell、TTY,傻傻分不清楚?

诸君,好久不见。

为什么突然想写这样一篇文章呢?其实是因为在最近计划发布的一篇关于 WSL (Windows Subsystem for Linux) 的博文中,我打算对终端模拟器、Shell 的选择与配置进行一些说明。不过对于刚接触 Linux 或者刚接触命令行界面的同学,可能会有些难以理解它们之间的区别(事实上我当初也是这样)。

虽然这个话题已是老生常谈,搜索一下应该也能找到大把的相关文章。不过难得提到了这方面,就趁此机会把我的理解写下来,一来看看我是不是真正理解了,二来看看我能不能把它们之间的区别讲得更加简明易懂。

> READ MORE...

近况报告:我的高复生活

好久不见。

当你正在阅读这篇文章时,你应该很难想象,一位半年多没有写过博客的老鸽是以怎样复杂的心情打出这些文字的。由于我实在是太久没有正经写过文章了,对文字的感觉也未免生疏,所以这篇近况报告可能会写得像流水账一样又臭又长。你就把本文想象成是一位老年人博主重拾博客更新前的康复训练,以温暖的目光看下去吧。

> READ MORE...

如何将现有 git 仓库中的子目录分离为独立仓库并保留其提交历史

这几天想要把一个 git 仓库中已经存在的一个子文件夹独立成一个新的 git 仓库,并且保留之前关于此文件夹的所有提交历史。不过我对 git 并没有这么精通,只好上网搜索之。可能是因为我关键词抓得不准,搜了好一会儿才找到可行的方案,所以写篇博文记录一下。

另外,在 git 里这种掌控历史的感觉真的很棒。XD

> READ MORE...

Windows Update 出现错误 0x800703ed 可能的解决方法

HAIDOMO,这里是年终总结拖了两个月还没写完,上一篇博文发布于去年十月份的某鸽系博主 DESU。其实 2018 年的第一篇博文原定应该是 2017 年的年度总结的,但是由于各种各样的原因,那篇文章到现在还没写完咕咕咕。

最近几天正好遇到了如标题所述的「Windows Update 自动更新时出现错误 0x800703ed」的状况,在网上搜索许久,最后历经千辛万苦才终于定位到了问题的根源。特此记录,希望能帮到后来人。

> READ MORE...

使用 Travis CI 自动部署 Hexo 博客

之前(六月份高考完后)我把博客引擎由 Ghost 换成了静态博客生成器 Hexo,并且只使用了自带的 Git Deployment 来手动部署生成好的静态博客文件到服务器上。虽然不像动态博客程序那样可以随时随地更新博客,但是想到马上就要上大学了,之后手头都会有电脑,所以更新博客也不算那么麻烦。

但是实在是人算不如天算,浙江这一届新高考改革是结结实实地把我坑了一把。二段线以上一段线未满这样中途半端的分数让人在填志愿时着实是犯难 —— 这次浙江几乎普遍出现「一段考生抢以往的二本中好学校,二段考生抢三本学校」这样神秘的情况。思来想去最后把心一横,决定去再读一年高四。后来全省高考录取情况出来后,也证实了我当时复读的决定也不是不合理的(譬如当时上了新浪微博热门话题的「浙江滑档大学」等)。

关于复读的话题就先放一放吧,毕竟现在的时间确实是有些紧,可能得等到寒假时才能好好地写一篇近况报告以及关于高四生活的事情了,非常遗憾。

回到正题,因为我输得透彻滚去读高四了,所以自然不可能每次都有配置完好的操作环境让我手动发博文 + 部署(虽然我也不见得有时间写什么博文)。在这样的前提条件下,一个 Hexo 博客的自动部署(持续集成)系统就显得非常有必要了。

> READ MORE...

又是一种 Minecraft 外置登录解决方案:自行实现 Yggdrasil API

最近给 Blessing Skin 写了个插件,利用皮肤站本身的账号系统实现了 Yggdrasil API(就是 Mojang 的登录 API),然后配合 authlib-injector 这个项目将启动器(基于 Java 编写的支持正版登录的启动器都行)、Minecraft 游戏、Minecraft 服务端中的 Mojang Yggdrasil API 地址给替换成了自己实现的第三方 Yggdrasil API 地址(字节码替换),从而实现了与正版登录功能几乎完全相同的账户鉴权系统。

通俗地讲,就是我把 Mojang 的正版登录 API 给【劫持】成自己的啦,所以可以像登录正版那样直接用皮肤站的邮箱和密码登录游戏(还支持 Mojang 都不支持的多用户选择哦)。这种外置登录系统的实现应该可以说是比市面上的软件都要完善(毕竟可以直接利用 Minecraft 本身自带的鉴权模块),因此写一篇博文介绍一下这些实现之间的不同之处,顺带记录一下实现 Yggdrasil API 时踩到的坑,算是抛砖引玉了。

注意:本文不适合小白及问题解决能力弱的人群阅读。

感觉我明明好久没玩 MC 了,要玩也都是玩正版服务器,但是却一直在搞这些盗版服用的东西,我真是舍己为人造福大众普惠众生啊(不

> READ MORE...