Hexo使用记录
基础使用
使用 npm
完成 Hexo
的安装。
> $ npm install -g hexo-cli
安装 Hexo
完成后,请执行下列命令,Hexo
将会在指定文件夹中新建所需要的文件。
> $ hexo init
> $ cd
> $ npm install
安装Sitemap
插件
npm install hexo-generator-sitemap --save
安装RSS
插件
npm install hexo-generator-feed --save
安装在浏览器上编写markdown插件,访问地址 http://localhost:4000/admin/
npm install hexo-admin --save
安装支持LaTeX
插件 hexo-math
npm install hexo-math --save
新版本需要修改_config.yml
文件
math:
engine: 'mathjax'
mathjax:
src: "//cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML"
config:
tex2jax:
inlineMath: [ ['$','$'], ["\\(","\\)"] ]
skipTags: ['script', 'noscript', 'style', 'textarea', 'pre', 'code']
processEscapes: true
TeX:
equationNumbers:
autoNumber: "AMS"
LaTeX
语法
archive页面分页设置
https://github.com/iissnan/hexo-theme-next/issues/30
https://github.com/hexojs/hexo-generator-archive
_config.yml
文件中的配置,这个配置控制所有的分页配置,包括首页、归档页、tag 分类页面。
per_page: 10
如果我们想对上面三个页面做独立的配置,需要安装插件进行功能支持。
hexo-generator-index
hexo-generator-archive
hexo-generator-tag
npm install hexo-generator-archive --save
npm install hexo-generator-index --save
npm install hexo-generator-tag --save
对应的 _config.yml
文件中添加如下配置
index_generator:
per_page: 5
archive_generator:
per_page: 20 ## 为 0 时表示不分页全展示
yearly: true ## 按年生成归档
monthly: true ## 按月生成归档
tag_generator:
per_page: 10
单引号显示异常
用的英文单引号,比如 'Welcome' to Hexo! ,显示在浏览器中就变成了‘Welcome’ to Hexo! ,单引号变成中文的了。
如果用的是
marked renderer
的话,可以试试看关掉smartypants
?
marked:
smartypants: false
修改 _config.yml
文件.
marked:
gfm: true
pedantic: false
sanitize: false
tables: true
breaks: true
smartLists: true
smartypants: true
modifyAnchors: ''
autolink: true
gfm
- 使用GitHub
风格的markdown
pedantic
- Conform to obscure parts of markdown.pl as much as possible. Don't fix any of the original markdown bugs or poor behavior.sanitize
- 忽略已输入的任何 HTML。tables
- Enable GFM tables. This option requires the gfm option to be true.breaks
- Enable GFM line breaks. This option requires the gfm option to be true.smartLists
- Use smarter list behavior than the original markdown.smartypants
- Use "smart" typograhic punctuation for things like quotes and dashes.modifyAnchors
- Use for transform anchorIds. if 1 to lowerCase and if 2 to upperCase.autolink
- Enable autolink for URLs. E.g.http://hexo.io
will become<a href="http://hexo.io">http://hexo.io</a>
.
br 标签过多问题
marked:
gfm: true
breaks: false
https://github.com/hexojs/hexo/issues/1388#issuecomment-171513200
会影响到普通文本,单个回车不会换行
123
qwe
渲染结果:123 qwe
预览草稿
如果你希望强行预览草稿,更改配置文件 _config.yml
:
render_drafts: true
或者如下方式启动 server
:
$ hexo server --drafts
创建一篇新文章
$ hexo new [layout] <title>
在命令中指定文章的布局(layout
),默认为 post
。
默认布局:post
、page
和 draft
。
通过 publish
命令将草稿移动到 source/_posts
文件夹。
$ hexo publish [layout] <title>
转义反引号
最外层连续两个反引号。
git archive master --format=zip > `git describe master`.zip
更换引用样式
<blockquote style="margin-top: 1em;margin-bottom: 1em;padding: 15px 15px 15px 1rem;color: rgb(129, 145, 152);border-left-width: 6px;border-left-color: rgb(220, 230, 240);background: rgb(242, 247, 251);font-family: -webkit-body;font-style: normal;"><ol style="margin-top: 0em;margin-bottom: 0em;">
<li><span>内容1</span></li>
<li><span>内容2</span></li>
<li><span>内容3</span></li>
</ol></blockquote>
- 内容1
- 内容2
- 内容3
TypeError: Cannot set property 'lastIndex' of undefined
解决方法:
在配置文件 _config.yml
中将 highlight
选项中的 auto_detect
设为 false
ERROR Deployer not found: git
解决方法:
npm install hexo-deployer-git --save
博客加密功能
安装
npm install --save hexo-blog-encrypt
在 themes 下的 _config.yml
中启用该插件:
# Security
encrypt: # hexo-blog-encrypt
enable: true
然后在你的文章的头部添加上对应的字段,如 password, abstract, message
---
title: Hello World
date: 2016-03-30 21:18:02
password: mikemessi
abstract: Something was encrypted, please enter password to read.
message: Welcome to my blog, please enter password to read.
---
Hexo 置顶及排序问题
重装了一次电脑,.md 文件通过 git 备份了,还原回来的时候,md 的创建时间都是一样的,所以文章列表就按照文章标题排序了。
安装插件命令: npm install hexo-generator-topindex --save
或者:
修改hexo的js代码
直接上操作,修改node_modules/hexo-generator-index/lib/generator.js
'use strict';
var pagination = require('hexo-pagination');
module.exports = function(locals){
var config = this.config;
var posts = locals.posts;
posts.data = posts.data.sort(function(a, b) {
if(a.top && b.top) { // 两篇文章top都有定义
if(a.top == b.top) return b.date - a.date; // 若top值一样则按照文章日期降序排
else return b.top - a.top; // 否则按照top值降序排
}
else if(a.top && !b.top) { // 以下是只有一篇文章top有定义,那么将有top的排在前面(这里用异或操作居然不行233)
return -1;
}
else if(!a.top && b.top) {
return 1;
}
else return b.date - a.date; // 都没定义按照文章日期降序排
});
var paginationDir = config.pagination_dir || 'page';
return pagination('', posts, {
perPage: config.index_generator.per_page,
layout: ['index', 'archive'],
format: paginationDir + '/%d/',
data: {
__index: true
}
});
};
设置置顶
给需要置顶的文章加入 top 参数,如下
---
title: 每天一个linux命令
date: 2017-01-23 11:41:48
top: 1
categories:
- 运维
tags:
- linux命令
---
如果存在多个置顶文章,top 后的参数越大,越靠前。
转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 bin07280@qq.com
文章标题:Hexo使用记录
文章字数:1.4k
本文作者:Bin
发布时间:2017-09-13, 16:07:14
最后更新:2019-11-16, 19:22:48
原始链接:http://coolview.github.io/2017/09/13/Hexo%E4%BD%BF%E7%94%A8%E8%AE%B0%E5%BD%95/版权声明: "署名-非商用-相同方式共享 4.0" 转载请保留原文链接及作者。