嵌入式Hacker (es-hacker)

Embedded bsp developer enjoys thinking and hacking opensource and develop boards(NanoPi, LicheePi, RPi...)

0%

小站的诞生

一、缘起

前天闲着无聊的时候,逛了一下hackaday,发现一个由2个国内的小伙伴发起的 PiSugar 项目很受欢迎,于是我就跟进了解了一下。

PiSugar 引起了我的兴趣

参考链接:

个人看法:

  • 精美的 Raspberry Pi zero 电源模块 + 开源的电源管理程序
  • 优秀的产品

对我造成了什么影响?

头脑里冒出几个想法:

  • 我能不能用 Pi 折腾点东西?
  • 我能不能给 Pi 折腾点东西?
  • 为什么不现在就开始折腾?
  • 我应该需要一个网站来记录和分享我的进步吧?

定下这么大的目标我能实现吗?不用担心太多,先走最最最简单的那一步:

  • 搭建一个相关的网站
    如果最最最简单的那一步都比较困难,那就再继续分解这个步骤。




二、小站的诞生

我需要一个域名

早上跑步的时候想到了几个域名:

  • pimate ?
  • pibuddy ?

都被人注册了,下午跟同事聊天的时候提了这个事,发现 pihacker 也不错,花了5分钟注册下来了。

购买域名

  • 访问namesilo: https://www.namesilo.com
  • 填写个人信息,非常宽松,跟 godaddy 相比好太多;
  • 下单,支付宝支付。

人生中的第一个域名就到手了~

如何生成网站的内容?

我的需求:

  • 静态页面: 能有文字 + 图片即可;
  • markdown 编写
  • 文章可分类
  • 简洁美观

同事推荐我用 hexo, 那就先用着咯,我这个人就是有啥用啥…不讲究!

如何安装hexo?

参考链接:

什么是hexo ?

  • Hexo 是一个快速、简洁且高效的博客框架。Hexo 使用 Markdown(或其他渲染引擎)解析文章,在几秒内,即可利用靓丽的主题生成静态网页。

  • 安装命令:

    1
    $ 自行 install Node.js / Git
    2
    $ npm install hexo-cli -g
    3
    $ hexo init 
    4
    ...
    5
    INFO  Start blogging with Hexo!

到这里,hexo就算安装完毕了,已经具备用 hexo 来写文章的环境了!
这时,我可以夸张地对别人说:我的网站即将准备好啦!由于没有文章,目前里面一个页面都没有….

配置hexo

如何配置服务器 ?

  • 在 github 上新建一个名为你的用户名.github.io 的仓库,假设你的 github用户名是 yourname,那么你就新建 yourname.github.io 的仓库。

  • 后面通过:

    1
    http://yourname.github.io

    就可以访问到自己的hexo 博客了。

  • 配置hexo部署目的地:

    1
    $ vi hexo/_config.yml
    2
    # Deployment
    3
    ## Docs: https://hexo.io/docs/deployment.html
    4
    deploy:
    5
      type: git
    6
      repo: https://github.com/yourname/yourname.github.io
    7
      branch: master

如何换主题 ?

  • 选用:https://muse.theme-next.org
    设置部署目的地:
    1
    $ cd hexo
    2
    $ git clone https://github.com/theme-next/hexo-theme-next themes/next
  • 设置主题:
    1
    $ vi hexo/_config.yml
    2
    ## Themes: https://hexo.io/themes/
    3
    theme: next

如何使用hexo写文章?

  • 最基本的操作:
    1
    $ hexo new "文章标题"   # 创建markdown文件
    2
    $ hexo clean
    3
    $ hexo generate     # 将markdowan转换为html
    4
    $ hexo deploy       # 将html等网站文件部署到github服务器(http://yourname.github.io)

为我的网站绑定域名

  1. 访问https://www.namesilo.com
  2. domain manager -> Manage DNS for this domain
  3. Apply github Template
  4. 些许修改,最终如下:




三、更多设置[不断更新中…]

如何让首页只显示摘要?

  1. 主题的_config.yml中设置:

    1
    excerpt_description: true
  2. 在文章的头部添加description,例如:

    1
    ---
    2
    title: Test demo
    3
    date: 2020-02-23 22:55:10
    4
    description: 这是显示在首页的概述,正文内容均会被隐藏。
    5
    ---
  3. 还有另一种方法,需要截断的地方加入:

    1
    <!--more-->

如何添加打赏功能?

  1. 先生成微信和支付宝二维码,将图片放在themes/next/source/images下
  2. 配置_config.yml
    1
    reward_settings:
    2
      # If true, reward will be displayed in every article by default.
    3
      enable: true
    4
      animation: false
    5
      #comment: Donate comment here.

如何在多台 PC 上使用hexo?

我想了3种方案:

  1. 网盘同步整个 hexo 目录;
  2. Docker;
  3. Git;

目前我采用的是Git的方式,直接将整个hexo目录init 成一个repo,主题作为submodule,推送到Github上。

将文章保存为草稿

  1. 传统建立文章方式

一般我们都会使用 hexo new title 来建立文章,这种建立方法会将新文章建立在 source/_posts 目录下,当使用 hexo generate 编译 markdown 文件时,会将其 HTML 结果编译在 public 目录下,之后 hexo deploy 将会把 public 目录下所有文章部署到 GitHub,这是我们熟悉的 Hexo 流程。

  1. 建立文章草稿

    1
    $ hexo new draft <title>
  2. 将草稿发布为正式文章

    1
    hexo P <filename>

    其中 <filename> 为不包含 md 后缀的文章名称。它的原理只是将文章从 source/_drafts 移动到 source/_posts 而已。

若日后想将正式文章转为为草稿,只需手动将文章从 source/_posts 目录移动到 source/_drafts 目录即可。




四、总结

  • 原来现在搭一个网站那么容易;
  • 感谢Hexo;
  • 感谢Github;
  • 一个想法的诞生几乎不消耗任何精力和成本,所以再好的想法都是廉价的,只有持续付出努力才能让想法变得有价值,我能坚持下去吗?我也不知道~
这是一篇有趣的文章吗?

欢迎关注我的其它发布渠道