xaoxuu / hexo-theme-stellar Goto Github PK
View Code? Open in Web Editor NEW内置文档系统的简约商务风Hexo主题,支持大量的标签组件和动态数据组件。
Home Page: https://xaoxuu.com/wiki/stellar/
License: MIT License
内置文档系统的简约商务风Hexo主题,支持大量的标签组件和动态数据组件。
Home Page: https://xaoxuu.com/wiki/stellar/
License: MIT License
这是一个全新的内置 wiki 系统的 hexo 主题,拥有简约而精美的视觉设计和丰富的标签插件。
有些图片内容比较多 看不清
在 使用 hexo clean && hexo g && hexo s
命令进行本地编译发布后,再对 _post/blog/
中的文件进行修改编写,会报错,无法编译
只要对其中的 blog /.md
文件有所修改就必须重新使用 hexo clean && hexo g && hexo s
命令才可正确显示。
该问题在 1.5 版本前未出现,出错的版本是 1.6.1
正常来讲,hexo 中只要不改动 theme 的代码,post 内容是可以实时刷新的,但是这里报错和 相关文章推荐 有关,报错内容显示 文章路径不对,要清除缓存。
通过测试可以确定是 相关文章推荐 引起的报错,关掉该功能后可以正常修改,实时编译。
推测是相关文章插件的问题,或者是与主题配置有所冲突。
我目前的解决方法:
写博文时,关掉文章推荐功能,最终发布时再打开该功能。
即设置主题:
article:
related_posts:
enable: false
报错分两部分:
1.当对 .md
文件有修改时报错
2. 刷线本地网页 http://localhost:4000
报错
.md
文件有修改时报错:[22:04:30.511] [hexo-related-popular-posts] error: Because the post's path has been changed, the link can not be created successfully. Please remove the cache with the following command.
$ hexo clean
2. 刷线本地网页 http://localhost:4000
报错:
Unhandled rejection TypeError: F:\myblog-doc\test\themes\stellar\layout\post.ejs:25
23| </article>
24| <%- partial('_partial/main/article/read_next') %>
>> 25| <%- partial('_partial/main/article/related_posts') %>
26| <%- partial('_partial/plugins/comments/layout') %>
27|
F:\myblog-doc\test\themes\stellar\layout\_partial\main\article\related_posts.ejs:16
14| }
15| %>
>> 16| <%- layoutDiv() %>
17|
Cannot read property 'path' of undefined
at Object.module.exports.getList (F:\myblog-doc\test\node_modules\hexo-related-popular-posts\lib\list-json.js:93:55) at module.exports (F:\myblog-doc\test\node_modules\hexo-related-popular-posts\lib\helper-json.js:3:19)
at Object.<anonymous> (F:\myblog-doc\test\node_modules\hexo-related-popular-posts\index.js:177:40)
at layoutDiv (eval at compile (F:\myblog-doc\test\node_modules\ejs\lib\ejs.js:618:12), <anonymous>:16:13)
at eval (eval at compile (F:\myblog-doc\test\node_modules\ejs\lib\ejs.js:618:12), <anonymous>:27:17)
at returnedFn (F:\myblog-doc\test\node_modules\ejs\lib\ejs.js:653:17)
at _View._compiledSync (F:\myblog-doc\test\node_modules\hexo\lib\theme\view.js:132:24)
at _View.renderSync (F:\myblog-doc\test\node_modules\hexo\lib\theme\view.js:59:25)
at Object.partial (F:\myblog-doc\test\node_modules\hexo\lib\plugins\helper\partial.js:34:15)
at eval (eval at compile (F:\myblog-doc\test\node_modules\ejs\lib\ejs.js:618:12), <anonymous>:51:17)
at returnedFn (F:\myblog-doc\test\node_modules\ejs\lib\ejs.js:653:17)
at _View._compiled (F:\myblog-doc\test\node_modules\hexo\lib\theme\view.js:136:50)
at _View.render (F:\myblog-doc\test\node_modules\hexo\lib\theme\view.js:39:17)
at F:\myblog-doc\test\node_modules\hexo\lib\hexo\index.js:64:21
at tryCatcher (F:\myblog-doc\test\node_modules\bluebird\js\release\util.js:16:23)
at F:\myblog-doc\test\node_modules\bluebird\js\release\method.js:15:34
at RouteStream._read (F:\myblog-doc\test\node_modules\hexo\lib\hexo\router.js:47:5)
at RouteStream.Readable.read (internal/streams/readable.js:465:10)
at resume_ (internal/streams/readable.js:963:12)
at processTicksAndRejections (internal/process/task_queues.js:82:21)
使用作者的源文件xaoxuu.github.io
和 最新主题代码可以重现该问题
感觉这两个功能还是挺重要的。
我本来想在作者的博客里搜索一些东西,发现没有搜索功能,然后图片不能点击放大预览,有点影响。
希望作者大大有时间考虑下这两个功能。
主题很nice!
文件需要排序order 不知道怎么设定~
当_config.yml中root有值时,title和面包屑导航中“主页/文章”的链接默认都指向了根目录“/”,而非“/rootValue”
在release页面发布新版本的时候希望增加版本说明。
有时候知道更新了,但是不知道更新了啥,而且有时候旧版的配置文件内容不能兼容最新版本(比如:sidebar.widgets.default
改成sidebar.widgets.default_layout
)会导致hexo g
命令报错;
浏览器:Chrome
报错: 报错里面有jquery的网址很奇怪,不知道是哪里设置出了错 (我没有改过_config.stellar.yml
里jquery的路径
我的_config.stellar.yml
设置:
######## Stellar info ########
stellar:
version: '1.6.1'
homepage: 'https://xaoxuu.com/wiki/stellar/'
repo: 'https://github.com/xaoxuu/hexo-theme-stellar'
######## head tags ########
open_graph:
enable: true
twitter_id: # for open_graph meta
######## Sidebar ########
sidebar:
logo:
# avatar: '[https://raw.githubusercontent.com/sevichee/obsidian-image/main/img202201280038578.png](/about/)' # you can set avatar link in _config.yml or '[https://xxx.png](/about/)'
title: '[config.title](/)' # you can set html tag like: '[<img no-lazy height="32px" src="xxx"/>](/)'
menu:
post: '[btn.blog](/)'
wiki: '[系列](/wiki/)'
notes: '[便笺](/links/)'
more: '[关于](/about/)'
# Sidebar widgets
widget_layout:
index: [welcome, recent] # for home/wiki/categories/tags/archives/404 pages
page: [welcome, toc] # for pages using 'layout:page'
post: [toc, repo_info] # for pages using 'layout:post'
wiki: [toc, repo_info, wiki_more] # for pages using 'layout:wiki'
widgets:
# Recent update
recent:
layout: recent
rss: /atom.xml # npm i hexo-generator-feed
limit: 5 # Count of posts
# TOC (valid only in layout:post/wiki)
toc:
layout: toc
list_number: false
min_depth: 2
max_depth: 5
fallback: recent # Use a backup widget when toc does not exist.
# welcome
welcome:
layout: markdown
title: 欢迎 :D
content: | # support markdown
书签:[About Coding](https://airtable.com/shrpftxf6JgRomP2X/tblEvtThXHNBMQ8lW/viwSXGTALloahC10H)
站内: [友链](/friends) | [留言](/board)
######## Main ########
breadcrumb:
home: home # config.title / config.author / home or custom content
######## Article ########
article:
# 如果没有指定封面,是否根据 tags 作为关键词搜索封面?
auto_cover: false # search from https://source.unsplash.com/
# 如果没有指定 excerpt 和 description,将自动取多长的内容作为文章摘要?
auto_excerpt: 200
# 分类颜色
category_color:
'新闻稿': '#DA0F47'
# 文章许可协议
license: '本文采用 [署名-非商业性使用-相同方式共享 4.0 国际](https://creativecommons.org/licenses/by-nc-sa/4.0/) 许可协议,转载请注明出处。'
# 分享
share: [wechat, weibo, email, link]
# 相关文章,需要安装插件 (for layout: post)
# npm i hexo-related-popular-posts
related_posts:
enable: false
max_count: 5
auto_cover: false # 如果没有封面就根据 tags 作为关键词搜索封面,开了此项将不会自动从文章中提取首张图片作为封面了。
######## Comments ########
comments:
service: beaudar #, utterances, valine, twikoo
beaudar:
repo: sevichee/beaudar
issue-term: pathname
issue-number:
theme: preferred-color-scheme
label:
input-position: top # top/bottom 评论框位置
comment-order: desc # desc 排序
keep-theme: # true/false
loading: false
branch: main
######## Footer ########
footer:
license: '[CC BY-NC-SA 4.0](https://creativecommons.org/licenses/by-nc-sa/4.0/)'
######## Tag Plugins ########
tag_plugins:
# {% note text %}
note:
default_color: '' # light, dark, red, orange, yellow, green, cyan, blue, purple
# {% checkbox %}
checkbox:
interactive: false # enable interactive for user
# {% quot %}
quot:
default: # 可以自行配置多种图标方案
prefix: https://s2.loli.net/2022/01/04/vsTB5pGrIHfPxSj.png
suffix: https://s2.loli.net/2022/01/04/NORdtjlAhifZSns.png
hashtag:
prefix: https://s2.loli.net/2022/01/04/UvHcsa73jQPnobq.png
# {% emoji %}
emoji:
default: https://cdn.jsdelivr.net/gh/volantis-x/cdn-emoji/qq/%s.gif
twemoji: https://cdn.jsdelivr.net/gh/twitter/twemoji/assets/svg/%s.svg
qq: https://cdn.jsdelivr.net/gh/volantis-x/cdn-emoji/qq/%s.gif
aru: https://cdn.jsdelivr.net/gh/volantis-x/cdn-emoji/aru-l/%s.gif
tieba: https://cdn.jsdelivr.net/gh/volantis-x/cdn-emoji/tieba/%s.png
# {% image %}
image:
fancybox: true #, false
######## JS Plugins ########
plugins:
scrollreveal:
enable: false
js: https://cdn.jsdelivr.net/npm/[email protected]/dist/scrollreveal.min.js
distance: 8px
duration: 500 # ms
interval: 100 # ms
scale: 1 # 0.1~1
# https://fancyapps.com/docs/ui/fancybox/
# available for {% image xxx %}
fancybox:
enable: true
js: https://cdn.jsdelivr.net/npm/@fancyapps/[email protected]/dist/fancybox.umd.js
css: https://cdn.jsdelivr.net/npm/@fancyapps/[email protected]/dist/fancybox.css
# 可以处理评论区的图片(不支持 iframe 类评论系统)例如:
# 使用valine评论可以写: .vcontent img:not(.vemoji)
# 使用twikoo评论可以写: .tk-content img:not([class*="emo"])
selector: .swiper-slide img # 多个选择器用英文逗号隔开
# swiper
swiper:
enable: true
css: https://unpkg.com/swiper@6/swiper-bundle.min.css
js: https://unpkg.com/swiper@6/swiper-bundle.min.js
style:
darkmode: auto # auto / always / false
theme:
light: '#f8f9fa'
dark: '#313438'
animated_avatar:
animate: auto # auto, always
background: https://cdn.jsdelivr.net/gh/cdn-x/[email protected]/avatar/round/[email protected]
codeblock:
scrollbar: 4px
default:
avatar: https://cdn.jsdelivr.net/gh/cdn-x/[email protected]/avatar/round/3442075.svg
link: https://raw.githubusercontent.com/sevichee/obsidian-image/main/img202201272235750.svg
cover: https://cdn.jsdelivr.net/gh/cdn-x/[email protected]/cover/76b86c0226ffd.svg
image: https://cdn.jsdelivr.net/gh/cdn-x/[email protected]/image/2659360.svg
我的_config.yml
设置:
# Hexo Configuration
## Docs: https://hexo.io/docs/configuration.html
## Source: https://github.com/hexojs/hexo/
# Site
title: Seviche
subtitle: 酸橘汁腌鱼|在学JavaScript
description: 前端/设计/读书
keywords:
avatar: https://cdn.jsdelivr.net/gh/sevichee/[email protected]/favicon/android-chrome-512x512.png
author: Seviche
language: [zh-CN, en, zh-CN, zh-TW]
timezone:
# URL
## If your site is put in a subdirectory, set url as 'http://yoursite.com/child' and root as '/child/'
url: https://seviche.top
root: /
permalink: :title/
permalink_defaults:
pretty_urls:
trailing_index: false # Set to false to remove trailing 'index.html' from permalinks
trailing_html: false # Set to false to remove trailing '.html' from permalinks
# Directory
source_dir: source
public_dir: public
# tag_dir: tags
# archive_dir: archives
# category_dir: categories
tag_dir: blog/tags
archive_dir: blog/archives
category_dir: blog/categories
wiki_dir: wiki
i18n_dir: :lang
skip_render:
- assets/*
# Writing
new_post_name: :title.md # File name of new posts
default_layout: post
titlecase: false # Transform title into titlecase
external_link:
enable: true # Open external links in new tab
field: site # Apply to the whole site
exclude: ''
filename_case: 1
render_drafts: false
post_asset_folder: false
# marked:
# prependRoot: true
# postAsset: true
relative_link: true
future: true
highlight:
enable: true
line_number: false
auto_detect: false
tab_replace: ' '
wrap: true
hljs: false
prismjs:
enable: false
preprocess: true
line_number: true
tab_replace: ' '
# Home page setting
# path: Root path for your blogs index page. (default = '')
# per_page: Posts displayed per page. (0 = disable pagination)
# order_by: Posts order. (Order by date descending by default)
index_generator:
path: ''
per_page: 10
order_by: -date
# Category & Tag
default_category: uncategorized
category_map:
tag_map:
meta_generator: true
# Date / Time format
## Hexo uses Moment.js to parse and display date
## You can customize the date format as defined in
## http://momentjs.com/docs/#/displaying/format/
date_format: ll
time_format: HH:mm:ss
updated_option: 'date'
# Pagination
## Set per_page to 0 to disable pagination
per_page: 0
pagination_dir: page
# Extensions
## Plugins: https://hexo.io/plugins/
## Themes: https://hexo.io/themes/
theme: stellar
# Deployment
## Docs: https://hexo.io/docs/deployment.html
deploy:
type:
inject:
head:
- <link rel="preconnect" href="https://fonts.googleapis.com">
- <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
- <link href="https://fonts.googleapis.com/css2?family=IBM+Plex+Sans:ital,wght@0,300;0,400;0,500;0,600;0,700;1,400&display=swap" rel="stylesheet">
- <link rel="apple-touch-icon" sizes="180x180" href="https://cdn.jsdelivr.net/gh/sevichee/[email protected]/favicon/apple-touch-icon.png">
- <link rel="icon" type="image/png" sizes="32x32" href="https://cdn.jsdelivr.net/gh/sevichee/[email protected]/favicon/favicon-32x32.png">
- <link rel="icon" type="image/png" sizes="16x16" href="https://cdn.jsdelivr.net/gh/sevichee/[email protected]/favicon/favicon-16x16.png">
- <link rel="manifest" href="https://cdn.jsdelivr.net/gh/sevichee/[email protected]/favicon/site.webmanifest">
- <link rel="shortcut icon" href="https://cdn.jsdelivr.net/gh/sevichee/[email protected]/favicon/favicon.ico">
- <meta name="theme-color" content="#f8f9fa">
########################### Plugins ###########################
# npm i hexo-generator-feed
feed:
type: atom
path: atom.xml
limit: false
content: true
# icon: https://cdn.jsdelivr.net/gh/cdn-x/xaoxuu/avatar/[email protected]
autodiscovery: true
# npm i hexo-related-popular-posts
# npm i hexo-neat
neat_enable: false
# npm i hexo-all-minifier
all_minifier: true
# npm i hexo-autonofollow
nofollow:
enable: true
exclude:
- seviche.top
# https://github.com/ludoviclefevre/hexo-generator-seo-friendly-sitemap
sitemap:
path: sitemap.xml
tag: false
category: false
page_priority: 0.4
post_priority: 0.6
please add schema markup / structured data, thank you and nice theme!
https://developers.google.com/search/docs/advanced/structured-data/intro-structured-data
hexo theme example: https://github.com/LouisBarranqueiro/hexo-theme-tranquilpeak/blob/669623647898e628acf273df1e29d99a9d1d8b8f/scripts/helpers/json_ld.js
今天看到主题支持了 fancybox,image 标签已经可以使用
希望也可以适配 swiper 轮播标签
你好,我在用hexojs/hexo-generator-feed生成了网站的atom.xml,也确认了在public中atom.xml存在于根目录下,但是持续无法访问到该文件。本地端测试没有问题,放到github page上才有。不知道可能是什么原因,感谢~
我一开始没有设置 front-matter.cover
,使用 related_posts
时默认选择了文章的第一个图片。但当我设置了 cover:
时,其显示的图片仍然时文章的第一个图片,而非 cover
的图片。我重装了 hexo-related-popular-posts
,但是没有效果。
而当我尝试通过设置 related_posts.auto_cover: true
,来避免其使用第一个图片,会发生如下报错:
ERROR TypeError: D:\myBlog\hermitlsr-stellar\themes\stellar\layout\post.ejs:25
23| </article>
24| <%- partial('_partial/main/article/read_next') %>
>> 25| <%- partial('_partial/main/article/related_posts') %>
26| <%- partial('_partial/plugins/comments/layout') %>
27|
D:\myBlog\hermitlsr-stellar\themes\stellar\layout\_partial\main\article\related_posts.ejs:16
14| }
15| %>
>> 16| <%- layoutDiv() %>
17|
Cannot read property 'length' of undefined
at generateHTML (D:\myBlog\hermitlsr-stellar\themes\stellar\scripts\helpers\related_posts.js:45:43)
at Object.<anonymous> (D:\myBlog\hermitlsr-stellar\themes\stellar\scripts\helpers\related_posts.js:77:19)
at layoutDiv (D:\myBlog\hermitlsr-stellar\themes\stellar\layout\_partial\main\article\related_posts.ejs:15:11)
at eval (D:\myBlog\hermitlsr-stellar\themes\stellar\layout\_partial\main\article\related_posts.ejs:28:17)
at related_posts (D:\myBlog\hermitlsr-stellar\node_modules\ejs\lib\ejs.js:682:17)
at _View._compiledSync (D:\myBlog\hermitlsr-stellar\node_modules\hexo\lib\theme\view.js:132:24)
at _View.renderSync (D:\myBlog\hermitlsr-stellar\node_modules\hexo\lib\theme\view.js:59:25)
at Object.partial (D:\myBlog\hermitlsr-stellar\node_modules\hexo\lib\plugins\helper\partial.js:34:15)
at eval (D:\myBlog\hermitlsr-stellar\themes\stellar\layout\post.ejs:51:17)
at post (D:\myBlog\hermitlsr-stellar\node_modules\ejs\lib\ejs.js:682:17)
at _View._compiled (D:\myBlog\hermitlsr-stellar\node_modules\hexo\lib\theme\view.js:136:50)
at _View.render (D:\myBlog\hermitlsr-stellar\node_modules\hexo\lib\theme\view.js:39:17)
at D:\myBlog\hermitlsr-stellar\node_modules\hexo\lib\hexo\index.js:64:21
at tryCatcher (D:\myBlog\hermitlsr-stellar\node_modules\bluebird\js\release\util.js:16:23)
at D:\myBlog\hermitlsr-stellar\node_modules\bluebird\js\release\method.js:15:34
at RouteStream._read (D:\myBlog\hermitlsr-stellar\node_modules\hexo\lib\hexo\router.js:47:5)
at RouteStream.Readable.read (internal/streams/readable.js:481:10)
at resume_ (internal/streams/readable.js:977:12)
at processTicksAndRejections (internal/process/task_queues.js:82:21) {
path: 'D:\\myBlog\\hermitlsr-stellar\\themes\\stellar\\layout\\post.ejs'
}
下载您网站的源码,并通过 git 方式安装 stellar,使用您的网站源码进行本地测试也是这种效果,但是看您的网站和本地情况不一样:
当设置 related_posts.auto_cover: true
时,也会出现同样的报错。
wiki 模式非常新颖,并且具有非常直观的顶条分类显示导航。
网站首页进来默认是 blog 内容,总感觉不出我那精心打造的 wiki 内容。
xaoxuu 真帅!
相关的版本如下:
macOS: 10.15.7
Hexo: 5.4.0
hexo-cli: 4.3.0
node.js: 14.17.3
npm: 6.14.13
stellar: 1.6.1
当我的post数量超过 6 时,使用hexo g 进行生成就会报下图中的错误,删掉一篇就能生成成功,尝试过换不同的post文章,基本能排除是某一个文章特殊内容的问题。
尝试过将 stellar 降级到 1.6.0 和 1.5.2 都出现相同错误。
后来尝试将_config.xml 中的主题切换成默认主题 languages ,执行 hexo g ,可以正常生成,然后又切回 stellar 主题,hexo g 正常了。后面间歇性的发生上图错误,来回切换下就正常了,很是奇怪。
post 文章加到了将近 20 篇时,hexo g 生成没有问题,hexo s 运行后,访问网页,不能正常显示,控制台出现如下错误:
INFO Start processing
INFO Hexo is running at http://localhost:4000 . Press Ctrl+C to stop.
<--- Last few GCs --->
[12722:0x110008000] 35949 ms: Scavenge 3974.7 (4103.6) -> 3974.6 (4104.6) MB, 7.9 / 0.0 ms (average mu = 0.813, current mu = 0.672) allocation failure
[12722:0x110008000] 35974 ms: Scavenge 3975.6 (4104.6) -> 3973.8 (4119.6) MB, 22.8 / 0.0 ms (average mu = 0.813, current mu = 0.672) allocation failure
[12722:0x110008000] 37751 ms: Mark-sweep 3988.7 (4119.6) -> 3986.5 (4135.6) MB, 1742.6 / 0.0 ms (average mu = 0.656, current mu = 0.133) allocation failure scavenge might not succeed
<--- JS stacktrace --->
FATAL ERROR: MarkCompactCollector: young object promotion failed Allocation failed - JavaScript heap out of memory
1: 0x10130c5e5 node::Abort() (.cold.1) [/usr/local/bin/node]
2: 0x1000b2289 node::Abort() [/usr/local/bin/node]
3: 0x1000b23ef node::OnFatalError(char const*, char const*) [/usr/local/bin/node]
4: 0x1001f68c7 v8::Utils::ReportOOMFailure(v8::internal::Isolate*, char const*, bool) [/usr/local/bin/node]
5: 0x1001f6863 v8::internal::V8::FatalProcessOutOfMemory(v8::internal::Isolate*, char const*, bool) [/usr/local/bin/node]
6: 0x1003a47e5 v8::internal::Heap::FatalProcessOutOfMemory(char const*) [/usr/local/bin/node]
7: 0x100400823 v8::internal::EvacuateNewSpaceVisitor::Visit(v8::internal::HeapObject, int) [/usr/local/bin/node]
8: 0x1003e808b void v8::internal::LiveObjectVisitor::VisitBlackObjectsNoFail<v8::internal::EvacuateNewSpaceVisitor, v8::internal::MajorNonAtomicMarkingState>(v8::internal::MemoryChunk*, v8::internal::MajorNonAtomicMarkingState*, v8::internal::EvacuateNewSpaceVisitor*, v8::internal::LiveObjectVisitor::IterationMode) [/usr/local/bin/node]
9: 0x1003e7bd5 v8::internal::FullEvacuator::RawEvacuatePage(v8::internal::MemoryChunk*, long*) [/usr/local/bin/node]
10: 0x1003e7916 v8::internal::Evacuator::EvacuatePage(v8::internal::MemoryChunk*) [/usr/local/bin/node]
11: 0x10040524e v8::internal::PageEvacuationTask::RunInParallel(v8::internal::ItemParallelJob::Task::Runner) [/usr/local/bin/node]
12: 0x1003bf202 v8::internal::ItemParallelJob::Task::RunInternal() [/usr/local/bin/node]
13: 0x1003bf688 v8::internal::ItemParallelJob::Run() [/usr/local/bin/node]
14: 0x1003e9985 void v8::internal::MarkCompactCollectorBase::CreateAndExecuteEvacuationTasks<v8::internal::FullEvacuator, v8::internal::MarkCompactCollector>(v8::internal::MarkCompactCollector*, v8::internal::ItemParallelJob*, v8::internal::MigrationObserver*, long) [/usr/local/bin/node]
15: 0x1003e9586 v8::internal::MarkCompactCollector::EvacuatePagesInParallel() [/usr/local/bin/node]
16: 0x1003d4cf7 v8::internal::MarkCompactCollector::Evacuate() [/usr/local/bin/node]
17: 0x1003d258b v8::internal::MarkCompactCollector::CollectGarbage() [/usr/local/bin/node]
18: 0x1003a4eab v8::internal::Heap::MarkCompact() [/usr/local/bin/node]
19: 0x1003a1499 v8::internal::Heap::PerformGarbageCollection(v8::internal::GarbageCollector, v8::GCCallbackFlags) [/usr/local/bin/node]
20: 0x10039f2e0 v8::internal::Heap::CollectGarbage(v8::internal::AllocationSpace, v8::internal::GarbageCollectionReason, v8::GCCallbackFlags) [/usr/local/bin/node]
21: 0x1003ad9ea v8::internal::Heap::AllocateRawWithLightRetrySlowPath(int, v8::internal::AllocationType, v8::internal::AllocationOrigin, v8::internal::AllocationAlignment) [/usr/local/bin/node]
22: 0x1003ada71 v8::internal::Heap::AllocateRawWithRetryOrFailSlowPath(int, v8::internal::AllocationType, v8::internal::AllocationOrigin, v8::internal::AllocationAlignment) [/usr/local/bin/node]
23: 0x100376cce v8::internal::FactoryBase<v8::internal::Factory>::NewRawTwoByteString(int, v8::internal::AllocationType) [/usr/local/bin/node]
24: 0x10078f54d v8::internal::IncrementalStringBuilder::Extend() [/usr/local/bin/node]
25: 0x1004bd9ad v8::internal::JsonStringifier::SerializeString(v8::internal::Handle<v8::internal::String>) [/usr/local/bin/node]
26: 0x1004c2458 v8::internal::JsonStringifier::Result v8::internal::JsonStringifier::Serialize_<true>(v8::internal::Handle<v8::internal::Object>, bool, v8::internal::Handle<v8::internal::Object>) [/usr/local/bin/node]
27: 0x1004c07ee v8::internal::JsonStringifier::Result v8::internal::JsonStringifier::Serialize_<false>(v8::internal::Handle<v8::internal::Object>, bool, v8::internal::Handle<v8::internal::Object>) [/usr/local/bin/node]
28: 0x1004be856 v8::internal::JsonStringifier::SerializeArrayLikeSlow(v8::internal::Handle<v8::internal::JSReceiver>, unsigned int, unsigned int) [/usr/local/bin/node]
29: 0x1004c2805 v8::internal::JsonStringifier::Result v8::internal::JsonStringifier::Serialize_<true>(v8::internal::Handle<v8::internal::Object>, bool, v8::internal::Handle<v8::internal::Object>) [/usr/local/bin/node]
30: 0x1004c4008 v8::internal::JsonStringifier::Result v8::internal::JsonStringifier::Serialize_<true>(v8::internal::Handle<v8::internal::Object>, bool, v8::internal::Handle<v8::internal::Object>) [/usr/local/bin/node]
31: 0x1004c4008 v8::internal::JsonStringifier::Result v8::internal::JsonStringifier::Serialize_<true>(v8::internal::Handle<v8::internal::Object>, bool, v8::internal::Handle<v8::internal::Object>) [/usr/local/bin/node]
32: 0x1004c4008 v8::internal::JsonStringifier::Result v8::internal::JsonStringifier::Serialize_<true>(v8::internal::Handle<v8::internal::Object>, bool, v8::internal::Handle<v8::internal::Object>) [/usr/local/bin/node]
33: 0x1004c4008 v8::internal::JsonStringifier::Result v8::internal::JsonStringifier::Serialize_<true>(v8::internal::Handle<v8::internal::Object>, bool, v8::internal::Handle<v8::internal::Object>) [/usr/local/bin/node]
34: 0x1004c4008 v8::internal::JsonStringifier::Result v8::internal::JsonStringifier::Serialize_<true>(v8::internal::Handle<v8::internal::Object>, bool, v8::internal::Handle<v8::internal::Object>) [/usr/local/bin/node]
35: 0x1004c07ee v8::internal::JsonStringifier::Result v8::internal::JsonStringifier::Serialize_<false>(v8::internal::Handle<v8::internal::Object>, bool, v8::internal::Handle<v8::internal::Object>) [/usr/local/bin/node]
36: 0x1004be856 v8::internal::JsonStringifier::SerializeArrayLikeSlow(v8::internal::Handle<v8::internal::JSReceiver>, unsigned int, unsigned int) [/usr/local/bin/node]
37: 0x1004c2805 v8::internal::JsonStringifier::Result v8::internal::JsonStringifier::Serialize_<true>(v8::internal::Handle<v8::internal::Object>, bool, v8::internal::Handle<v8::internal::Object>) [/usr/local/bin/node]
38: 0x1004c4008 v8::internal::JsonStringifier::Result v8::internal::JsonStringifier::Serialize_<true>(v8::internal::Handle<v8::internal::Object>, bool, v8::internal::Handle<v8::internal::Object>) [/usr/local/bin/node]
39: 0x1004c07ee v8::internal::JsonStringifier::Result v8::internal::JsonStringifier::Serialize_<false>(v8::internal::Handle<v8::internal::Object>, bool, v8::internal::Handle<v8::internal::Object>) [/usr/local/bin/node]
40: 0x1004be856 v8::internal::JsonStringifier::SerializeArrayLikeSlow(v8::internal::Handle<v8::internal::JSReceiver>, unsigned int, unsigned int) [/usr/local/bin/node]
41: 0x1004c2805 v8::internal::JsonStringifier::Result v8::internal::JsonStringifier::Serialize_<true>(v8::internal::Handle<v8::internal::Object>, bool, v8::internal::Handle<v8::internal::Object>) [/usr/local/bin/node]
42: 0x1004c4008 v8::internal::JsonStringifier::Result v8::internal::JsonStringifier::Serialize_<true>(v8::internal::Handle<v8::internal::Object>, bool, v8::internal::Handle<v8::internal::Object>) [/usr/local/bin/node]
43: 0x1004c4008 v8::internal::JsonStringifier::Result v8::internal::JsonStringifier::Serialize_<true>(v8::internal::Handle<v8::internal::Object>, bool, v8::internal::Handle<v8::internal::Object>) [/usr/local/bin/node]
44: 0x1004c4008 v8::internal::JsonStringifier::Result v8::internal::JsonStringifier::Serialize_<true>(v8::internal::Handle<v8::internal::Object>, bool, v8::internal::Handle<v8::internal::Object>) [/usr/local/bin/node]
45: 0x1004c4008 v8::internal::JsonStringifier::Result v8::internal::JsonStringifier::Serialize_<true>(v8::internal::Handle<v8::internal::Object>, bool, v8::internal::Handle<v8::internal::Object>) [/usr/local/bin/node]
46: 0x1004c07ee v8::internal::JsonStringifier::Result v8::internal::JsonStringifier::Serialize_<false>(v8::internal::Handle<v8::internal::Object>, bool, v8::internal::Handle<v8::internal::Object>) [/usr/local/bin/node]
47: 0x1004be856 v8::internal::JsonStringifier::SerializeArrayLikeSlow(v8::internal::Handle<v8::internal::JSReceiver>, unsigned int, unsigned int) [/usr/local/bin/node]
48: 0x1004c2805 v8::internal::JsonStringifier::Result v8::internal::JsonStringifier::Serialize_<true>(v8::internal::Handle<v8::internal::Object>, bool, v8::internal::Handle<v8::internal::Object>) [/usr/local/bin/node]
49: 0x1004c4008 v8::internal::JsonStringifier::Result v8::internal::JsonStringifier::Serialize_<true>(v8::internal::Handle<v8::internal::Object>, bool, v8::internal::Handle<v8::internal::Object>) [/usr/local/bin/node]
50: 0x1004c4008 v8::internal::JsonStringifier::Result v8::internal::JsonStringifier::Serialize_<true>(v8::internal::Handle<v8::internal::Object>, bool, v8::internal::Handle<v8::internal::Object>) [/usr/local/bin/node]
51: 0x1004c4008 v8::internal::JsonStringifier::Result v8::internal::JsonStringifier::Serialize_<true>(v8::internal::Handle<v8::internal::Object>, bool, v8::internal::Handle<v8::internal::Object>) [/usr/local/bin/node]
52: 0x1004c4008 v8::internal::JsonStringifier::Result v8::internal::JsonStringifier::Serialize_<true>(v8::internal::Handle<v8::internal::Object>, bool, v8::internal::Handle<v8::internal::Object>) [/usr/local/bin/node]
53: 0x1004c4008 v8::internal::JsonStringifier::Result v8::internal::JsonStringifier::Serialize_<true>(v8::internal::Handle<v8::internal::Object>, bool, v8::internal::Handle<v8::internal::Object>) [/usr/local/bin/node]
54: 0x1004c07ee v8::internal::JsonStringifier::Result v8::internal::JsonStringifier::Serialize_<false>(v8::internal::Handle<v8::internal::Object>, bool, v8::internal::Handle<v8::internal::Object>) [/usr/local/bin/node]
55: 0x1004be856 v8::internal::JsonStringifier::SerializeArrayLikeSlow(v8::internal::Handle<v8::internal::JSReceiver>, unsigned int, unsigned int) [/usr/local/bin/node]
56: 0x1004c2805 v8::internal::JsonStringifier::Result v8::internal::JsonStringifier::Serialize_<true>(v8::internal::Handle<v8::internal::Object>, bool, v8::internal::Handle<v8::internal::Object>) [/usr/local/bin/node]
57: 0x1004c4008 v8::internal::JsonStringifier::Result v8::internal::JsonStringifier::Serialize_<true>(v8::internal::Handle<v8::internal::Object>, bool, v8::internal::Handle<v8::internal::Object>) [/usr/local/bin/node]
58: 0x1004c4008 v8::internal::JsonStringifier::Result v8::internal::JsonStringifier::Serialize_<true>(v8::internal::Handle<v8::internal::Object>, bool, v8::internal::Handle<v8::internal::Object>) [/usr/local/bin/node]
59: 0x1004c4008 v8::internal::JsonStringifier::Result v8::internal::JsonStringifier::Serialize_<true>(v8::internal::Handle<v8::internal::Object>, bool, v8::internal::Handle<v8::internal::Object>) [/usr/local/bin/node]
60: 0x1004c4008 v8::internal::JsonStringifier::Result v8::internal::JsonStringifier::Serialize_<true>(v8::internal::Handle<v8::internal::Object>, bool, v8::internal::Handle<v8::internal::Object>) [/usr/local/bin/node]
61: 0x1004c4008 v8::internal::JsonStringifier::Result v8::internal::JsonStringifier::Serialize_<true>(v8::internal::Handle<v8::internal::Object>, bool, v8::internal::Handle<v8::internal::Object>) [/usr/local/bin/node]
62: 0x1004c07ee v8::internal::JsonStringifier::Result v8::internal::JsonStringifier::Serialize_<false>(v8::internal::Handle<v8::internal::Object>, bool, v8::internal::Handle<v8::internal::Object>) [/usr/local/bin/node]
63: 0x1004be856 v8::internal::JsonStringifier::SerializeArrayLikeSlow(v8::internal::Handle<v8::internal::JSReceiver>, unsigned int, unsigned int) [/usr/local/bin/node]
64: 0x1004bf687 v8::internal::JsonStringifier::Result v8::internal::JsonStringifier::Serialize_<false>(v8::internal::Handle<v8::internal::Object>, bool, v8::internal::Handle<v8::internal::Object>) [/usr/local/bin/node]
65: 0x1004ba503 v8::internal::JsonStringify(v8::internal::Isolate*, v8::internal::Handle<v8::internal::Object>, v8::internal::Handle<v8::internal::Object>, v8::internal::Handle<v8::internal::Object>) [/usr/local/bin/node]
66: 0x1002a0253 v8::internal::Builtin_JsonStringify(int, unsigned long*, v8::internal::Isolate*) [/usr/local/bin/node]
67: 0x100a81b59 Builtins_CEntry_Return1_DontSaveFPRegs_ArgvOnStack_BuiltinExit [/usr/local/bin/node]
68: 0x100a14839 Builtins_ArgumentsAdaptorTrampoline [/usr/local/bin/node]
69: 0x100a1a902 Builtins_InterpreterEntryTrampoline [/usr/local/bin/node]
zsh: abort hexo s
如题,有没有什么办法让多个图片(<img />
或 ![]()
)留在同一行内?
我发现首页的tags和categories仅对普通的文章生效,而对于layout: wiki 的文章设置tags 和 categories 是无效的,他们并不会归入首页的tag和categories中。而一个项目/笔记可能涉及多方面的内容或技术,有时通过感兴趣的tags来索引或许更方便获得某个项目中自己感兴趣的那部分。
这应该不违背wiki的理念:
自动意味着 Stellar 可以自动找到一个项目的所有文档分页,生成一个目录树,半自动意味着您可以手动指定顺序、标题、分组,而非依赖文件路径、文件名来排序和显示。
只是多一个访问到文档的途径。
Stellar 1.5.2
hexo: 5.4.0
hexo-cli: 4.3.0
我在我的配置文件 _config.stellar.yml
里设置了以下按钮:
sidebar:
menu:
personal_homepage: '[btn.personal_homepage](https://www.cubik65536.top/)'
home: '[btn.home](/)'
post: '[btn.blog](/blog/)'
wiki: '[btn.wiki](/wiki/)'
notes: '[btn.notes](/notes/)'
more: '[btn.more](/more/)'
friends: '[btn.friends](/friends/)'
但是不管我怎么改变配置文件里按钮的顺序,personal_homepage
对应的位置一直在第二行第一个而不是我把它放置的位置。请问如何可以让该按钮成为第一行第一个?
我是通过npm i hexo-theme-stellar下载的,theme下面没有stellar的主题包,只在node_modules下面有。现在我如果想自定义样式的话我应该怎么做呢
可以添加Artalk作为评论系统( ‵▽′)ψ
https://artalk.js.org/
我想看到文章的阅读量显示,试了试LeanCloud,没有成功,但看到主题设置 _config.yml 中 Valine 这一项,所以想问问是否会加这个功能。
谢谢你制作这么好用又好看的的 hexo 主题
我是GitHub储存vercel/netlify托管
电脑端访问有一瞬手机UI。是什么情况呢
错误图 https://cdn.jsdelivr.net/gh/muzishaoxing/Picture@main/shaoxing/20210912/12:37-48nZqg.png
我的网站是 https://shaoxing.vercel.app/ https://shaoxing.netlify.app/
下面内容 不知道有没有用。贴下来做参考
"hexo": "^5.0.0",
"hexo-abbrlink": "^2.2.1",
"hexo-blog-encrypt": "^3.1.6",
"hexo-deployer-git": "^3.0.0",
"hexo-generator-archive": "^1.0.0",
"hexo-generator-category": "^1.0.0",
"hexo-generator-feed": "^3.0.0",
"hexo-generator-indexed": "^1.2.1",
"hexo-generator-tag": "^1.0.0",
"hexo-hey": "^0.4.1",
"hexo-related-popular-posts": "^5.0.1",
"hexo-renderer-ejs": "^1.0.0",
"hexo-renderer-marked": "^4.0.0",
"hexo-renderer-stylus": "^2.0.0",
"hexo-server": "^2.0.0",
"hexo-tag-dplayer": "^0.3.3",
"hexo-theme-stellar": "^1.1.0",
"hexo-util": "^2.5.0"
widgets.default_layout
不再写在侧边栏组件库 widgets
下,而是创建一个与之同级的属性,例如 widget_layout
。提供更细化的默认布局配置。content
值类型改为 string 格式,默认提供多行文本示例。未对 swiper
引用版本具体化,导致直接引用最新 swiper
版本造成的非安全事故。
swiper
图片轮播是非常棒的功能,由于引用的地址并没有做版本号处理,导致 unpkg.com
直接读取到 swiper
的最新版本。
到 2021-09-24 写稿时止,swiper
引用地址读取到的最新版本为: @7.0.6
已经测试,尝试将 swiper
引用地址增加版本号引用为 @6
时,swiper
轮播功能恢复正常!
6 版本的最高版本为:6.8.4
定位到 themes\stellar
主题目录内的配置文件: _config.yml
在 JS Plugins
里修改 swiper
的引用地址,增加版本号即可!
######## JS Plugins ########
# swiper
swiper:
enable: true
css: https://unpkg.com/[email protected]/swiper-bundle.min.css
js: https://unpkg.com/[email protected]/swiper-bundle.min.js
通过git安装的1.4.0版
默认的welcome组件无法关闭,在默认页home/wiki/categories/tags/archives
,即使更改组件名为 notice
并设置 :default_layout: [notice, recent]
welcome 内容仍然存在,且不会出现notice内容。但在 about页更换标签名是有效的。
查看过历史issue看到这个问题被修复过,但不知道为什么这个新版本还是有问题
widgets:
# default layout in home/wiki/categories/tags/archives pages
default_layout: [notice, recent]
# Recent update
recent:
layout: recent
rss: # /atom.xml # npm i hexo-generator-feed
limit: 5 # Count of posts
# TOC (valid only in layout:post/wiki)
toc:
layout: toc
list_number: false
min_depth: 2
max_depth: 5
fallback: recent # Use a backup widget when toc does not exist.
# welcome
notice:
layout: markdown
title: 欢迎
content:
- '欢迎光临小站'
Stellar是一个简洁而高级的主题,期待作者能完善对数学公式的支持,个人认为在学术笔记博客中还是数学公式频繁出现的。
十分感谢!
测试issue是否能添加标签
valine has stopped open source since 1.4.0, almost no need to modify the code can be migrated to waline
.config.stellar.yml设置default_layout: [recent],welcome还是会默认显示出来,虽然平时可以修改源码解决,但是搞站点托管,自动部署的时候问题还是会显现。
https://hekangblog.top/
请问这个人是这个仓库的开发者之一吗?
@xaoxuu
点击美文后,列表页面是空白的,没有出现新建的美文文章。
Stellar 從 175dff3 升級到最新提交 (main, 2957f10) 後,npm run server
會在 Stellar 處理階段報出 TypeError: Cannot read property 'projects' of undefined
錯誤。
v5.4.0
npm i
npm i
node_modules
並重新執行上述兩步驟後問題依舊➜ pan.blog git:(source) rm -rf node_modules
➜ pan.blog git:(source) npm i
npm WARN deprecated [email protected]: Please see https://github.com/lydell/urix#deprecated
npm WARN deprecated [email protected]: this library is no longer supported
npm WARN deprecated [email protected]: https://github.com/lydell/resolve-url#deprecated
npm WARN deprecated [email protected]: This version has been deprecated in accordance with the hapi support policy (hapi.im/support). Please upgrade to the latest version to get the best features, bug fixes, and security patches. If you are unable to upgrade at this time, paid support is available for older versions (hapi.im/commercial).
npm WARN deprecated [email protected]: Chokidar 2 will break on node v14+. Upgrade to chokidar 3 with 15x less dependencies.
npm WARN deprecated [email protected]: This version has been deprecated in accordance with the hapi support policy (hapi.im/support). Please upgrade to the latest version to get the best features, bug fixes, and security patches. If you are unable to upgrade at this time, paid support is available for older versions (hapi.im/commercial).
npm WARN deprecated [email protected]: This module moved to @hapi/sntp. Please make sure to switch over as this distribution is no longer supported and may contain bugs and critical security issues.
npm WARN deprecated [email protected]: fsevents 1 will break on node v14+ and could be using insecure binaries. Upgrade to fsevents 2.
npm WARN deprecated [email protected]: Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.
npm WARN deprecated [email protected]: This version has been deprecated in accordance with the hapi support policy (hapi.im/support). Please upgrade to the latest version to get the best features, bug fixes, and security patches. If you are unable to upgrade at this time, paid support is available for older versions (hapi.im/commercial).
npm WARN deprecated [email protected]: Use uuid module instead
npm WARN deprecated [email protected]: request has been deprecated, see https://github.com/request/request/issues/3142
npm WARN deprecated [email protected]: request has been deprecated, see https://github.com/request/request/issues/3142
npm WARN deprecated [email protected]: This module moved to @hapi/hawk. Please make sure to switch over as this distribution is no longer supported and may contain bugs and critical security issues.
added 589 packages, and audited 590 packages in 3s
30 packages are looking for funding
run `npm fund` for details
25 vulnerabilities (2 low, 14 moderate, 9 high)
To address issues that do not require attention, run:
npm audit fix
Some issues need review, and may require choosing
a different dependency.
Run `npm audit` for details.
➜ pan.blog git:(source) cd themes/stellar/
➜ stellar git:(2957f10) npm i
npm WARN deprecated [email protected]: Please see https://github.com/lydell/urix#deprecated
npm WARN deprecated [email protected]: https://github.com/lydell/resolve-url#deprecated
added 40 packages, and audited 41 packages in 1s
1 package is looking for funding
run `npm fund` for details
found 0 vulnerabilities
➜ stellar git:(2957f10) ✗ cd ../..
➜ pan.blog git:(source) npm run server
> [email protected] server
> hexo server
INFO Validating config
INFO
=======================================================
Stellar 1.2.1
Docs: https://xaoxuu.com/wiki/stellar/
Repo: https://github.com/xaoxuu/hexo-theme-stellar/
=======================================================
INFO Start processing
FATAL {
err: TypeError: Cannot read property 'projects' of undefined
at module.exports (/Users/pan93412/Projects/pan.blog/themes/stellar/scripts/events/lib/doc_tree.js:29:42)
at Hexo.<anonymous> (/Users/pan93412/Projects/pan.blog/themes/stellar/scripts/events/index.js:8:28)
at Hexo.emit (node:events:406:35)
at Hexo._generate (/Users/pan93412/Projects/pan.blog/node_modules/hexo/lib/hexo/index.js:452:10)
at /Users/pan93412/Projects/pan.blog/node_modules/hexo/lib/hexo/index.js:356:19
at tryCatcher (/Users/pan93412/Projects/pan.blog/node_modules/bluebird/js/release/util.js:16:23)
at Promise._settlePromiseFromHandler (/Users/pan93412/Projects/pan.blog/node_modules/bluebird/js/release/promise.js:547:31)
at Promise._settlePromise (/Users/pan93412/Projects/pan.blog/node_modules/bluebird/js/release/promise.js:604:18)
at Promise._settlePromise0 (/Users/pan93412/Projects/pan.blog/node_modules/bluebird/js/release/promise.js:649:10)
at Promise._settlePromises (/Users/pan93412/Projects/pan.blog/node_modules/bluebird/js/release/promise.js:729:18)
at Promise._fulfill (/Users/pan93412/Projects/pan.blog/node_modules/bluebird/js/release/promise.js:673:18)
at Promise._resolveCallback (/Users/pan93412/Projects/pan.blog/node_modules/bluebird/js/release/promise.js:466:57)
at Promise._settlePromiseFromHandler (/Users/pan93412/Projects/pan.blog/node_modules/bluebird/js/release/promise.js:559:17)
at Promise._settlePromise (/Users/pan93412/Projects/pan.blog/node_modules/bluebird/js/release/promise.js:604:18)
at Promise._settlePromise0 (/Users/pan93412/Projects/pan.blog/node_modules/bluebird/js/release/promise.js:649:10)
at Promise._settlePromises (/Users/pan93412/Projects/pan.blog/node_modules/bluebird/js/release/promise.js:729:18)
} Something's wrong. Maybe you can find the solution here: %s https://hexo.io/docs/troubleshooting.html
sidebar中增加一个组件嘛,奈何不会ejs
语法啊
若使用者使用 _config.stellar.yml
更新 welcome content 是無法覆寫原本 theme config 的,除非 fork 再改 source code。
建議:
將 content 內容註解或者更新 stellar docs 讓使用者可以理解之間的差異
Ref:
https://hexo.io/zh-tw/docs/configuration.html#Alternate-Theme-Config
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.