UPDATE 2019.5.28

不好意思我又换了个新主题ARIA啦。。。这回没有个人定制了

前言

如果您曾经来过我的博客,就会发现我的个人博客(https://rye-catcher.github.io/),抛弃了Next主题换了个更简洁的主题,这个主题叫BlueLake,基于Hexo-Maupassant主题定制,您如果感兴趣可以到这里了解详情:https://github.com/chaooo/hexo-theme-BlueLake

但是为了让这个主题适应一个OIer的作风,我0前端经验只能靠F12和网上博客与问答以及丰富的瞎搞经验魔改了一些配置,在此做一些记录,可能有些幼稚请谅解,以便对这个主题同样感兴趣但不知道从何下手的OIer或其他人能改出自己想要的效果.

开启本地搜索(个人认为这个json本地搜索非常好用)等github文档里已经有的操作就不再赘述了,这里假设您已经有了Hexo搭建博客经验,以及更改基本配置的姿势水平,如果您没有,建议您可以先按照网上一大堆Next入门教程搭建一个Next主题的博客

然而一开始不小心npm了一些奇奇怪怪的插件(可能是jade版本不兼容)导致博客崩了,于是重装了一遍,续了不少时间,因此建议除非你足够大佬知道自己在做什么,魔改博客前务必保留备份

配置Mathjax

这个主题有个比较鬼畜的地方就是它本身是在layout/_partial中是有Mathjax文件的,但是并没有在配置中加载相关配置,于是我与Maupassant对比文件,同时感谢一位大佬的博客:http://wudaijun.com/2017/12/hexo-with-mathjax/,成功让博文渲染Mathjax

首先我在BlueLake目录_config配置文件下加入这段代码,来开启Mathjax

mathjax:
enable: true
per_page: true
cdn: //cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.1/MathJax.js?config=TeX-AMS-MML_HTMLorMML

结果并没有发生什么,然后在博客指引下更改_partial/after_footer.jade,发现并没有问题,有

if page.mathjax
include mathjax.jade

然后与Maupassant主题文件夹对比,发现layout/Index.jade中少了一句话,在include _partial/paginator下加一句include _partial/mathjax 就好了,但是jade对缩进极为严格,一定要与前面一句话的缩进一致

然后hexo clean ,hexo g,hexo s,就发现已经渲染了数学公式了

创建新页面

像之前的Next主题下博客一样,我还是保留了留言板,结果留言板加载出来居然和"关于"页面效果一样也加载了我的个人信息?!这个看起来很别扭,我研究了layout/page.jade之后想吐槽这个作者真是偷懒,直接把每个类型为page的界面都加载了个人信息,就是这些:

.author-page
a.photo(href="javascript:;")
img(src='#{theme.about.photo_url}')
.author
p
i.fa.fa-user name:
| #{config.author}
each item in theme.about.items
p
i(class="fa fa-" + item.label) #{item.label}:
a(href=item.url,target="_blank")= item.title

咋搞呢,我们在layout目录下再创立一个jade文件page_233.jade或其他名字的玩意,把page.jade中的代码复制进去,然后去掉上述关于个人信息的代码就行了,注意缩进

然后把新页面(e.g 留言版)的front-matter(这是啥?https://hexo.io/zh-cn/docs/front-matter.html)

中加上layout: page_233(就是刚刚那个玩意的名字)

这时候套路操作一波后,发现那个新页面就没了作者信息了

修改代码高亮

这个主题的代码高亮真是无力吐槽,在source/css中找到了一个叫highlight.jade的玩意,感觉就是配置代码高亮的,于是用F12和RGB颜色参照表魔改一番,想改成VScode那种很舒服的风格,结果虽然不尽人意,但是比之前的不知道高到哪去了

这里有一份我的配置(包括下面的背景图片和标题配置在style.css/styl中)使用方法:https://github.com/Rye-Catcher/BlueLake-OI-HighLight-Style

怎么修改呢?F12大法好,F12你觉得不好的地方,可以直接线上修改来看看效果,然后到/source/css/highlight.styl和/public/css/highlight.css中运用耐心和ctrl+F5找到对应的代码进行修改

颜色编码对照:https://www.114la.com/other/rgb.htm

背景图片设置

感觉背景并不是很好看,修改后尺寸感人而且不会随屏幕滚动,咋办?还是F12,找到背景配置是在/source/css/style.styl中,通过F12中的信息ctrl+F5找到background相关代码,修改即可

修改哪些参数?参考了这篇博客https://blog.csdn.net/m0_38099607/article/details/71122165

在style.styl找到这么一大段话:

body
font-family: "Source Code Pro", Tahoma, "Helvetica Neue", Helvetica, "Hiragino Sans GB", "Microsoft YaHei Light", "Microsoft YaHei", "Source Han Sans CN", "WenQuanYi Micro Hei", Arial, sans-serif
-webkit-font-smoothing: antialiased
-moz-osx-font-smoothing: grayscale
font-size: 14px
color: #333
width:100%
height:100%
background: #D8E2EB url(../img/bg.jpg) no-repeat
background-attachment: fixed //这里在你的文件中应该是没有的
background-size: 100%

实际上你把下面background部分改成上述代码这样就好了

注意别忘了在public/css/sytle.css中也要修改

如果你要我现成的(和上面链接一样):https://github.com/Rye-Catcher/BlueLake-OI-HighLight-Style

LOGO字体设置

一开始LOGO字体(也就是左上方你大写的名字)默认是宋体,感觉有点老气,怎么修改呢?F12

发现还是在style.styl中

ctrl+F5找到LOGO,就是这么一大段话:

#logo
font: bold 42px/1.2 "Comic Sans MS"//"宋体"
white-space nowrap
color: #FFF
text-shadow: 1px 3px 6px #113f6e

然后像我那么改就好了(注意public/css/style.css中也要改),当然你也可以换成你喜欢的字体

如果你要想我现成的:https://github.com/Rye-Catcher/BlueLake-OI-HighLight-Style

本地搜索配置

你会发现默认的本地搜索是会把你的关键字放到文章内容去匹配的,这样结果会非常多,如果我们只希望匹配标题和标签的话,在主文件夹(不是主题内)_config文件中本地搜索配置(如果你没有说明你还没配置,看BlueLake文档)改成像我这样就好了

#self-search
jsonContent:
meta: false
pages: false
posts:
title: true //标题
date: true //日期
path: true //路径
text: false //文本内容
raw: false
content: false
slug: false
updated: false
comments: false
link: false
permalink: false
excerpt: false
categories: false
tags: true //标签

后记

本来想搞个像Next主题一样的标签页,但是我对前端一无所知,不知道哪位大佬可来帮我QAQ

准备pull request

Hexo折腾记--小白修改新主题的更多相关文章

  1. Hexo折腾记

    如果时间可以静止,我希望就停在此刻. 前言 博主之前也有折腾wordpress和jekyll可对于一个前端er来说,wordpress让人没法尽兴,因为不知道该如何添加自己的代码.而jekyll就太麻 ...

  2. Atom编辑器折腾记

    http://blog.csdn.net/bomess/article/category/3202419/2 Atom编辑器折腾记_(1)介绍下载安装 Atom编辑器折腾记_(2)基础了解使用 Ato ...

  3. 开源介绍·新款简约、实用与大气的Hexo新主题:BMW

    这是一个简约.大气.实用的Hexo新主题:BMW

  4. hexo修改Next主题的样式

    Next主题默认对超链接只有下划线样式,很容易被忽略,就想着怎么修改下 主题样式是在\hexoBlog\themes\next\source\css,这里面保存了Muse,Mist和Pisces三个主 ...

  5. 斐讯N1折腾记

    斐讯N1折腾记:运行 Linux 及优化  2018-06-23  37条评论  4,445次阅读  11人点赞 最后更新时间:2019年03月10日 咳咳咳,上篇教程教大家给斐讯 N1 降级并且刷了 ...

  6. 修改Coney主题之侧边栏移位

    title: 修改Coney主题之侧边栏移位 date: 2014-12-15 18:09:54 categories: Hexo tags: [hexo,css] --- Coney是一个非常漂亮的 ...

  7. Hexo博客搭建以及Next主题美化的经验之谈

    这并不是一篇博客搭建教程.内容主要包含个人对于Hexo博客搭建的心得,Next6.0主题美化的部分建议,以及摘录一些各种用于博客搭建的link. 在博客园3年6个月,确实也学到了很多,博客园也是目前为 ...

  8. Hexo博客Next v7.X 主题升级,美化警示录

    本文转载于:Hexo博客Next v7.X 主题升级,美化警示录丨奥怪的小栈 前言 经历了好几天(懒癌晚期懒得数了)的与主题升级斗争后,我终于完成基本上完成了next主题的升级!升到了V7.3!哈哈哈 ...

  9. Linux下使用 github+hexo 搭建个人博客07-next主题接入搜索和站点管理

    这是搭建个人博客系统系列文章的最后一篇,如果你是从第一篇一路跟下来的,那么恭喜你,即将完成整个博客网站的搭建.OK,话不多说,开始我们的收官之战. 不知你想过没有,如果我们的文章少,一眼看完整个目录, ...

随机推荐

  1. Oracle常用操作表结构的语句

    首先,一起来认识几个单词. alter (改变) rename(重命名) column(柱子,用来表示列) modify(修改) comment on (评论) truncate (删减,截断) 1. ...

  2. Xshell查看日志

    查询日志命令(复制后鼠标右键粘贴): tail  -1000f /mnt/logs/SMFManagement/SMFManagement_info.log

  3. oracle赋予一个用户具有查询另一个用户所有表数据

    一  以需要被查询的用户登录oracle(假如为A)   B为要查询A用户下的表的用户 二  执行查询语句: select 'grant select on A.'|| tname ||' to  B ...

  4. SpringBoot 部署到Linux开机自启动和运行

    前文 SpringBoot是一个强大的微服务框架,通常都是打包项目成Jar包,并部署到服务器上,本文以Linux服务器部署为主 开机自启动 博文:<https://www.cnblogs.com ...

  5. SQL语法介绍

    一.Select 查询 语法: mysql> help selectName: 'SELECT'Description:Syntax:SELECT [ALL | DISTINCT | DISTI ...

  6. 一百三十六:CMS系统之发布帖子后台逻辑

    模型 class PostModel(db.Model): __tablename__ = 'post' id = db.Column(db.Integer, primary_key=True, au ...

  7. MyISAM与InnoDB之间的区别

    区别: 1. InnoDB支持事务,MyISAM不支持,对于InnoDB每一条SQL语言都默认封装成事务,自动提交,这样会影响速度,所以最好把多条SQL语言放在begin和commit之间,组成一个事 ...

  8. Centos7 系统更改apache默认网站目录(解决You don't have permission to access / on this server问题)

    当我们在Centos7中配置好Apache时,发现apache默认解析目录是在 /var/www/html,也就是说当访问服务器 IP 或者本地 localhost 时, 默认定位到这个目录里的 in ...

  9. 《精通并发与Netty》学习笔记(15 - 详解NIO中Buffer之position,limit,capacity)

    一.前言熟悉NIO的人想必一定不会陌生buffer中position,limit,capacity这三个属性吧,之前在学习的时候遇到一个问题:就是当你先往缓冲区写入一部分数据,然后调用flip()方法 ...

  10. Note 2: Complain

    Note 2: Complain 1. The collection of Linkun's [1]: 1.1suck If someone says that something sucks, th ...