The blog🏡
这篇博客会记录这个小破博客的搭建过程,和这个过程中,小菜鸡的成长过程。不知道能更新多久呢~
Tools
首先要学习使用搭建的工具及其内在联系,理清楚其中的工作结构,把大致的框架梳理明白,再深入学习,来一步步完善和巩固
gitpage
支持Jekyll实在太棒了,在本地将配置文件和博客文件写好后,就可以直接上传到github
仓库中,在远端下按照配置文件,选择对应的版本和依赖,就可以自动生成静态网页的文件夹(所以一般将Jekyll在本地生成的_site
放到.gitignore
中,让在远端自动部署),一般工作流程:
本地写好配置文件、博文 -- git --> 源文件推送到远端 -- git page提供的引擎和域名 --> 编译、部署网页
|
|
|--------> 本地使用Jekyll生成网页文件夹(可以实时修改观察效果)
Git Page
这一部分比较简单,其实只是GitHub上的一个仓库,可以被用来部署静态网页,随着代码的更新来自动重新部署,并且有一个免费的域名
ps:静态网页和动态网页
-
静态网页:
纯粹的
HTML
格式,没有后台数据库、不含程序和不可交互的网页 -
动态网页:
基本的
HTML
语法规范与PHP
、Java
、python
等程序语言、数据库等多种技术的融合,可以动态、交互式的管理网站,可以根据不同需求,生成不同的内容
Jekyll
这一部分就非常陌生了,是第一次接触,并且之前甚至也没有接触过很多的web
编程,需要慢慢啃官方的文件,还有其他大牛们写的技术贴,一点点学习了
首先,jekyll
是一个简单的博客形态的静态站点生产机器,有一个模板目录,通过比如markdown
的转换器和Liquid
渲染器转化成一个完整的可发布的静态网站
Jekyll
为html
的生成提供了导入模板的机会,使用include,layout和front-master
,完成对待实现页面的参数的设置,以及和其它模板页面的继承、包含关系,如:
#---
在两行三横线中
设置参数
#---
{#% include的内容 #%}
{#{想要插入的内容}#}
(防止引擎识别front master和{}
的标志,使用#
隔开)
Liquid
Liquid
Logically control
因为该模板语言,与Jekyll
已基本绑定,在该工程中,几乎全部用到了该语言,做有关的处理
代码本身支持两种标签类型:
-
{ { content } }
输出内容到页面 -
``
每个逻辑控制的代码块结束后,必须跟一个表示结束的声明
Filter
基本语法:内容
UPPERCASE
= UPPERCASE
Blog
Head
任何包含YAML
头信息的文件,都会在jekyll
中,被当作一个特殊的文件来处理,可以在当中设置预定义的变量,甚至是自己定义的变量
变量名称 | 描述 |
---|---|
layout |
如果设置的话,会指定使用该模板文件。指定模板文件时候不需要文件扩展名。模板文件必须放在 _layouts 目录下。 |
permalink |
如果你需要让你发布的博客的 URL 地址不同于默认值 /year/month/day/title.html ,那你就设置这个变量,然后变量值就会作为最终的 URL 地址。 |
published |
如果你不想在站点生成后展示某篇特定的博文,那么就设置(该博文的)该变量为 false。 |
Contents
创建文章的目录
在引用一些图片和其它的资源时,可以在工程的根目录下创建一个文件夹,将下载好的图片或其它资源放到该文件夹中,使用site.url
变量来引用:
the picture followed:
![picture](https://dimshimmer.github.io/assets/screenshot.jpg)
代码高亮的小实验
char*p = (char*)& anything;
int i = 5;
while(i--) tranverse_the_byte(p[i]);
Construction
首先要安装ruby
,对应的包管理文件gem
,依赖管理工具bundler
和jekyll
-
Ruby
官网下载安装Ruby
:使用对应操作系统的安装包即可
Windows下安装,最后会提示配置
MSYS2
的内容,为便于使用,安装全部的tool chain
即可 -
安装
gem
:将下载好的压缩包文件解压,在解压出的文件夹下 ,使用
shell
或命令行执行:$ ruby setup.rb
安装
gem
-
使用
gem
安装bundler
和jekyll
执行命令:
$ gem install bundler $ gem install jekyll -v 3.8.5
虽然
jekyll
的版已经更新到了4.0
以上,但实际使用起来,会在依赖上出现很多问题,而jekyll 3.8.5
是非常稳定的版本,在实际使用出现了依赖的问题时,也卸载了原来的4.3.1
,重新安装了3.8.5
:$ gem uninstall jekyll -v 4.3.1
安装好以后,就可以使用
jekyll
,在本地自动生成一些默认的基础配置文件下一步就需要理解其中的语法,慢慢调整其中的语法,来调整文件结构,最后达到调整网站结构的效果
目前已经实现的是:
搭建好了基本的框架:博文分类,页面跳转
博文内部:显示目录结构,创建时间
Next Step
目前在博客里想要记录的内容主要有三个部分:
- 搭建博客网站的过程
- 结合
Linux kernel
的源码,学习操作系统的笔记 - CTF的学习过程
下一步的工作:
- 修改模板文件,为创建不同的
collection
,提供统一的模板 - 为文章添加摘要,显示在对应类型文章索引的标题旁边
- 添加作者信息,显示不同内容的贡献作者和引用来源
- 将文章目录从头部固定,变为悬浮到文章左侧
- 修改网页模板中的图标
To be continued~