稳的稳的,这次真是为了需求造轮子了。Hyper = Hexo + Typer.

接触到hexo是因为,hexo可以是一个前端博客生成器,直接生成一个前端静态页面,做到可以上传到github“个人页面”作为博客网站。

不过,毕竟是基于node的生成器,编写过程很geek。首先创建和预览甚至发布,依赖terminalnode。你要使用一个你喜欢的markdown编辑器,或者直接就在代码编辑器搞例如vscode。原来我也是用这个写博客。因为自带了terminal,直接创建了搞完直接上。后来生活逐渐好点,用的 iterm2 + zsh 之后,编辑器改用了Typora。然而关于这段的话,我上一篇搞electron+vue+webpack2+TypeScript什么体验 已经讲得够多了,所以不赘述了。

但是现在,可能生活会更好了…

为什么?

这是个electron + Typescript + vue的产物。也就是首先它是桌面应用了,由于electron意味着它可能可以跨平台。不过我没有想过…所以现在是 MacOS 版本。

为什么想起写这个,原因就两点

  • 原来的方式太过于繁琐,甚至感觉不到自己是在写博客。
  • 对计算机理解和操作都不是顺畅的人会带来很多麻烦。

博客博客,文字记录自己的生活或者技术探讨。多少写手或者说喜欢分享的人,喜欢hexo又不会用没办法用。当分享被技术限制之后,那么写文章也就不是专注于文章了。(比如我写文章也一直很跳,跟性格有关吧)

所以我才想要实现这么个东西,实际上在早之前就已经打算了,当时前端太菜。也不知道electron是什么东西。还是个swift新教徒的时候。有想过用MacOS 原生的方式去做这个东西,后来放弃了,原因还是因为技术上的问题。

这次实现这个东西的时候,巧了,跟@Ahonn几乎不约而同的想到了一起。他也说他很早就想做了,不过大神不是因为技术原因,而是开坑不填工期延后…

不过他的实现方式是不同的,他想使用cljs去实现这个东西。我为了求稳,还有还是熟悉一下TypeScript作为脚本使用的感觉,用了这么套技术栈。

Ahonn的项目地址是这个:ahonn / hexdit。利益相关的话:还是算关系挺好的校友吧…

怎么用?

不搞事情,不吹牛逼,这次为了 装逼 测试一下软件大概“正常使用”有没有什么问题。所以这次我这篇文章完完全全使用Hyper创建、编写、保存、修改,甚至我等下生成发布也直接用这个。

确实,这才像在写博客。

我甚至都不怕被你看!

(因为编辑器的样式还有预览的样式还没上,所以现在看起来还是很丑的,不过测试功能嘛,我等下还会用其他编辑器看)

但不管怎么说!就是好看!简就是美!甚至还有点少女心!

在首屏直接载入整个博客程序文件夹之后,就会到达这个界面,左边是显示你当前博客程序里面的文章(名字我都不怕给你看,这名字最后会显示到网址上!),文章列表上面三个按钮分别是 “创建”,“预览”,“生成/发布”。每一个文章名称前面一个“绿色的勾”是提醒你,当前这篇文章是可见的。没错文章可以是隐藏的,这在hexo的文档上有提到,source文件夹中不会上传文件名前带’_'的文件。所以自然可以过滤“草稿”和“不想发布”的文章。所以隐藏的文章会显示一个红色的叉。

点击想编辑的文章之后,其实会有动画回馈,但是不会常驻高亮。然后右边会跳出目前文章的内容以及一些编辑文章会用到的功能。实际上我应该做一个当前编辑文件高亮的!

右边编辑区中第一个“笔样子”的图标我是放着玩的…一些测试的工作会挂在上面当starter。然后保存和删除这个应该能看懂。右边有个开关,这个开关就是作为**“选择当前文章是否隐藏”**的作用。当然如果是off状态的话就是显示了,默认也是显示的。最右边的“X”就是关闭当前编辑区咯。

下面一整个编辑区,写文章可以用,不过markdown了,应该熟悉的是不会用到的吧,可能会用到两个功能:一个是全屏编辑,一个是分屏编辑。噢插入表格也可以有,markdown的表格真是蛋疼。

另外还给对hexo不熟悉的写手准备了一个大功能。

那就是简易设置了!漂不漂亮我不敢说!反正我就喜欢清静的感觉,看看Nlvi!是不是还有一股禅意!

截图的信息是我在做测试的时候,我当前导入的是当时用来测试主题功能的一个示例博客,官方提供的。毕竟不敢把自己的博客导入进去,万一弄瞎了不就真瞎了…

就我遇到的很多情况看,还是会有刚接触前端或者刚接触hexo的人不知道hexo的配置文件应该是怎么弄的。虽然我在hexo-theme-Nlvi里面写到:如果主题有使用问题的话,你可以提ISSUE,或者直接到知乎上锤我!

但事实上,很多给我知乎发私信的同学,问的都基本不是主题使用的问题,反而是博客本身的使用问题。所以我重新整理了博客配置文件,并把一些比较重要的,必须要的功能作为一张设置界面出来,这样就方便使用了。只要这张填的满,按道理说博客的显示和发布就没问题了。

而且这张设置界面就这么多内容,在地址设置下面也就多了一个“文章代码是否高亮”和“部署地址”。这样而已。然后就可以保存完事。

由于还是在测试和进一步编写。所以一些难看的目前用不到的我都display:none了,所以看不到完整设置。

初来乍到,第一次写这种软件,还是有很多问题的。如果你看到问题了还希望你能帮我指正。我也是想服务一下社区,给喜欢但是不会用的人一点帮助。

是什么?

其实介绍文章按正常来说到上面就结束了。这也是为什么 “是什么 -> 为什么 -> 怎么做”反而是这种顺序。

关于是什么,应该很多人都不愿意去关心了,这里是我想记录的一些心得和学习遇到的坑。