记一次被Atom合并的Pull Request

Atom是Github旗下开源的一款文本编辑器,直接竞争对手就是Sublime Text,由于后者闭源同时收费,导致Atom受到很多开源爱好者的追捧。在尝试Atom编辑器的过程中遇到一个特别不爽的问题,就是macOS下的Atom总是记不住之前打开的项目。四个月前的某一天心血来潮,就翻开Atom的源码,想一看究竟,这么明显的问题,难道有那么难解决吗?

先看看issues里面有没有人遇到同样的问题,一搜还真有这个issue

issue

这个问题其实之前有人解决过,但是解决的不够完美,在改变编辑器的焦点的时候当前窗口的状态才会被保存,而如果新加了一个目录进入Atom,然后不改变焦点直接退出Atom,下次再打开就不是最后一次状态了

issue-reason

那最后的解决方案就是在每次Atom的项目路径发生变化时就立即保存下来,于是就照猫画虎在Atom的源代码里添加了一个进程消息(我也不太懂CoffeeScript,只是会写点JavaScript),并提交了这个PR

solution

当然最后pull request能通过,主要的功劳还是国际友人@vovkasmunit test,这个才是最精华的部分(虽然我也看不太懂😄)

这次合并的代码会在Atom 1.14 Beta版中出现,并彻底解决macOS下Atom无法记住当前打开项目的问题

go-out

哈哈😄 开心!