diff --git a/README.md b/README.md index a39b4fa34bc2175579804d4a2790d4cf3101b9e4..9885a99640c9f42368b73cea7fb4e524801b6b1c 100644 --- a/README.md +++ b/README.md @@ -1,228 +1,5 @@ -# meoBlog +# Hikari -是一个会meo meo叫的博客系统。 +Hikari是一个博客框架。 - -``` - _ _ - _ __ ___ ___ ___ | |__ | | ___ __ _ -| '_ ` _ \ / _ \/ _ \ | '_ \| |/ _ \ / _` | -| | | | | | \__/ (_) | | |_) | | (_) | (_| | -|_| |_| |_|\___|\___/ |_.__/|_|\___/ \__, | - |___/ -``` -## 基础使用 - -### 安装并快速开始 - -在安装前,你需要先准备好必要的环境。 - -> php 7.4 + -> ->composer 1.9.1 + - -接下来开始安装项目。 - -- 访问[github](https://github.com/xtzero/meoBlog)的`main`分支,或[gitee](https://gitee.com/xtzero/meoBlog)的`master`分支,克隆项目到本地。 - -```shell script -$ git clone https://gitee.com/xtzero/meoBlog.git -//或 git clone https://github.com/xtzero/meoBlog.git -``` - -- 使用composer安装依赖。 - -```shell script -$ composer install -vvv -``` - -- 使用`meo`命令生成页面,开启服务。 - -```shell script -$ php meo s - -[Sun Jan 17 20:18:29 2021] PHP 7.4.1 Development Server (http://localhost:8888) started -``` - -- 点击控制台显示的地址,访问页面。 - -http://localhost:8888 - -> 文档约定 -> ->在本文档中,使用`/Volumes/proj/meoBlog`当做项目的根目录。 -> ->在本文档中,`$`表示终端提示符,`$`后是执行的命令,后面的行则是命令执行之后的回显。 -> ->在本文档中,会使用`[name]`来包含一个可选参数,使用``来包含一个必选参数。中间的单词请根据上下文或单词本身的意义来解读。 - -### 新建文章 - -使用`meo`命令可以为你新建文章 - -```shell script -$ php meo new post [post_name] -Create file success: /Volumes/proj/meoBlog/Sources/Posts/template/index.md -``` - -根据控制台输出可见,新建的markdown文档已经生成好了。你可以编辑`/Volumes/proj/meoBlog/Sources/Posts/[post_name]/index.md`来编写新的文章。 - -有关于文章内容的编辑问题,且等介绍完新建页面之后叙述。 - -### 新建页面 - -在`meo-blog`中,页面是独立于文章之外的独立页面,不会显示在文章列表页面中。 - -和新建文章一样,你也可以使用`meo`命令来新建页面。 - -```shell script -$ php meo new page [page_name] -Create file success: /Volumes/proj/meoBlog/Sources/Pages/page1/index.md -``` - -你可以编辑`/Volumes/proj/meoBlog/Sources/Pages/[page_name]/index.md`来编写新页面的内容。 - -### 编写文章和页面内容 - -使用`meo new`命令新建的文章或页面,都会有如下默认内容: -```html - -``` - -这部分叫做文章/页面的**注释部分**,使用html注释语法包含。默认模板只能解析到`title`和`datetime`,如果想要解析更多内容,可以通过重写模板来实现。 - -其中,`[default_title]`会被当成文章/页面标题,显示在内容页的顶部;`[create_datetime]`会被当成文章/页面的新建时间,放在标题下面。 - -对于文章,文章列表页会显示标题和创建日期,并且会按照创建日期排序。 - -除了注释部分,其余都是正文部分。正文支持`markdown`语法,使用[SegmentFault/HyperDown](https://github.com/SegmentFault/HyperDown)进行解析。除此之外,还支持传统的html语法。也就是说你可以在正文部分通过写html标签来实现更多定制功能。 - -### 生成静态页 - -使用如下`meo`命令来生成静态页。 - -```shell script -$ php meo b -... -Clean dist path finish -Load theme from path: /Volumes/proj/meoBlog/Templates/ -... -See at /Volumes/proj/meoBlog/Dist -``` - -生成的静态页内容是项目路径下的`Dist`目录,你可以直接访问文件来查看页面效果。 - -### 访问页面 - -你可以使用`meo`命令来生成静态页并开启php开发服务器来查看页面效果。 - -```shell script -$ php meo s -Started develop server: http://localhost:8888 -You can use 'php meo b' in another terminal to rebuild dist files! -``` - -访问显示的地址,可以查看生成的结果。 - -> `php meo s`命令还未支持实时刷新,但你可以另外开启一个终端,使用`php meo b`来重新生成静态文件。用这种方式不需要重新执行`php meo s`也能看到新的结果。 - -### 发布 - -你可以将`Dist`路径完整复制到服务器目录,或将网站根路径指向`Dist`目录的位置,即可发布你的网站。 - -## 高级 - -### 配置 - -配置文件是`/env.php`,你可以编辑你的个性化配置。 - -|配置项|解释| -|:--:|:--:| -|title|网站主标题| -|subtitle|网站副标题| -|develop_server_host|开发服务地址| -|develop_server_port|开发服务端口| - -在开发中,任何位置都可以通过访问`ENV`来使用`env.php`中的值。例如 - -```php -// 取网站主标题 -$title = ENV['title']; -``` - -### 全局变量 - -全局变量都在`/meo`中定义。`/meo`是一个php文件,为了命令简洁,所以省略了用户名。这样做才可以使用`php meo `来执行操作。 - -|全局变量|解释| -|:--:|:--:| -|ENV|`/env.php`返回的数组| -|THEME_CONFIG|主题配置,通常是`/Templates/_config.php`| -|ROOT_DIR|项目根目录| -|DIST_DIR|静态文件目录,通常是`/Dist`| -|SOURCES_DIR|源文件目录,通常是`/Sources`| -|POST_DIR|文章源文件目录,通常是`/Sources/Pages`| -|PAGE_DIR|页面源文件目录,通常是`/Sources/Pages`| -|THEME_BASE_DIR|模板根目录,通常是`/Templates`| - -### `meo`命令 - -你可以使用`php meo help`来查看所有支持的`meo`命令。 -```shell script -$ php meo h - -Welcome to use meo blog! -This is a blog system written by a white cat's father! - -Usage: php meo \ -Here are all of commands: - -- php meo help | h: Get help(just like you now!) -- php meo new \ \: Create a new post -- php meo build | b: Build static files -- php meo serve | s: Start develop server, and check page render when file change -- php meo clean | c: Clean static files and db file - -If you want join us, visit https://gitee.com/xtzero/meoBlog. - -Enjoy yourself~ -``` - -除此之外,你可以定制自己的`meo`命令来实现一些自定义操作。自定义命令写在`/Cmd`中,一个命令文件以大驼峰命名,需要以`Cmd.php`结尾。类名与文件名相同,而且需要实现`Lib\Base\BaseCmd`接口。例如: - -```php -Template`命名,且类名和文件名相同,且实现自接口`Lib\Base\BaseTemplate`。 - -对于`meo-blog`,默认模板里包含Archives、Index、Page、Post,这四个模板在模板的配置文件`/Templates/_config.php`中配置了渲染顺序,在执行`php meo b`时,`meo`会按照`/Templates/_config.php`中配置的顺序依次调用模板下的`render`方法来执行渲染。 - -如果需要更改渲染逻辑,或是开发新的模板,先在`Templates`里写好渲染逻辑,再在`/Templates/_config.php`中配置渲染顺序即可。 - - -### features - -> 这里写的是一些准备要做的事 +[Gitee](https://gitee.com/xtzero/hikari) diff --git a/composer.json b/composer.json index 915da1dbd087fb1fada684ab0e5d0606dfee18c3..9649da12f95f7c11447f0332a79963285cd4452f 100644 --- a/composer.json +++ b/composer.json @@ -1,6 +1,6 @@ { - "name": "xt/meo-blog", - "description": "a meo blog", + "name": "xt/hikari", + "description": "hikari blog", "license": "MIT", "authors": [ {