---
id: 6ed69ec2-56f1-49f9-8e92-908cc0f5d7c3
slug: september-october
title: 九月与十月
summary: ""
status: published
tags: []
cover: ""
version: 1
slug_source: manual
slug_locked: true
published_at: "2023-10-12T06:33:02+08:00"
created_at: "2023-10-12T06:33:02+08:00"
updated_at: "2026-01-07T18:11:54+08:00"
---

这个月继续完善 rustic-pages ，这个项目是八月的时候发起的，十月我对它进行了一次重构，目前已经基本完成，代码并没有进行什么模块的拆分，因为我还没完全吃透 rust ，随意套用一些模式会出现意想不到的问题。

因为 rust 的特性，引用借用这些很严格，所以在 0.1.4 以前的版本中，我并没有使用生命周期，所以这不可避免得导致了解析和生成的缓慢，但这仍然是可以接受的。在重构之前，我对 rust 的生命周期理解得还不充分，在拆分模块之后，代码几乎无法正确运行，同时依赖的包也无法自动解析这类的引用类型，我想我在学习 rust 的时候必然是缺失了一些知识，我对数据类型的了解还不够充分。

但是这是一个长期的项目，文档编写的工作也十分繁琐，前期的需求文档已经不足以支持我继续开发了，很多新的特性也在我脑子里蹦出来，我需要更多的时间去完成这些工作。但是目前的我最缺少的就是时间，我仍在准备研究生考试，加之我最近打算弄一个软件著作，时间上总是有些不够呢。

---

不同于之前的观念，维护一个项目是有趣的，将脑海里的新特性实现于代码之中，这确实很有成就感。

当然了，其实我应该多加入一些方便用户使用的脚本或者功能，事实上，目前的版本只能是将 sources 里的 markdown 源文件渲染到 public 里，但是没有实现类似与 Hexo 中的 deploy 指令，这涉及到一些 git 操作，我目前还是不太了解，虽然我在我自己博客中实现了这一脚本，但是我不确定如果这个脚本在其他电脑中会出现些什么。

```bash
#!/bin/bash

current_datetime=$(date +"%Y-%m-%d %H:%M:%S")
TEMP_DIR=$(mktemp -d)
cp -r public/* "$TEMP_DIR"
cd "$TEMP_DIR"
git init

git add .
git commit -m "Update: $current_datetime"
git remote add origin "git@github.com:fengyarnom/fengyarnom.github.io.git"
git push -f origin "master:gh-pages"
# 清理临时目录
cd ..
rm -rf "$TEMP_DIR"

```
