Code Monkey home page Code Monkey logo

hexo-theme-keep's Introduction

XPoet github stats

hexo-theme-keep's People

Contributors

1wkk avatar aoaostar avatar cnrenil avatar foxerlee avatar im-ling avatar lizequn avatar luijp avatar markruan avatar miranquil avatar musnows avatar nspyf avatar shawjie avatar tildenj avatar wittoy avatar xcbyao avatar xilongyang avatar xpoet avatar zavins avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

hexo-theme-keep's Issues

能否提供页面访问人次的展示?~

希望作者大大可以在页面左/右/中下角,提供一个页面访问人次的展示,好想看看到底有多少人来了我的博客~

谢谢大大!主题很可爱!

关于标签

如果在写文章的时候添加了标签,文章在博客里就无法显示。
猜想的原因是没有在source里面添加tag的index?
请问如果是我猜想的原因的话tag的index页该是什么格式呢

第二个问题就是我文章里的图片无法在博客中显示,图片的是放在图床中的,请问有可能是什么原因导致的呢?

Mermaid支持

如题,希望能够增加对Mermaid的主题支持。我尝试了hexo-filter-mermaid-diagrams,并没有奏效。

求助脚注功能-问题有关hexo的markdown解析

我在win上的typora上编辑的文档是支持“悬浮脚注”的,这样的脚注一些小概念很方便理解,但是在hexo上脚注不支持这样的功能。我将hexo的markdown解析器插件替换为了hexo-renderer-markdown-it,但是还是不行
实在没办法了,所以求助如何实现一下这样的脚注功能,感谢!
imgbed.cn图床

关于主题更新

如果更新了主题,是否设置的yml文件要重新设置一遍? 有没有其他方法?

关于下箭头键

v2.1 下箭头点击一次后,再滑动鼠标滚轮,页面会反复抖动。上箭头键没有这个问题

重要通知 | Keep 主题版本升级问题

Keep v3.0.0 起,主题源文件和主题配置文件 _config.yml 的配置项做了较大的改动,为不影响正常使用,请使用最新版本的主题和最新版的主题配置文件_config.yml,对应的把旧版的配置项填写在新版的配置文件里。

请勿在新版主题里,使用旧版的主题配置文件_config.yml,会导致样式错乱。

每个新版本的配置文件里都带有版本号的配置项,请勿删除和修改主题配置文件_config.yml 的版本配置项。

参考如下:

# ---------------------------------------------------------------------------------------
# Keep version (Please don't modify)
# ---------------------------------------------------------------------------------------
version: 3.3.0

我创建的分类页和标签页的内容是空白的咋回事?

categories页面也创建了,页面也能打开,文章的分类页指定了,但是点击categories,页面内容是空白的
categorie的index.md如下:

title: 分类
date: 2020-11-01 20:34:59
type: "categories"

文章的分类指定如下:

title: Retrofit视频教程,实战开发
date: 2020-11-01 20:31:40
tags: http okhttp retrofit retrofit视频教程
categories: Retrofit

这样的配置有问题吗?请回复下,谢谢

我在hexo g时会报如下错误

INFO Validating config
INFO Start processing
INFO Files loaded in 160 ms
ERROR {
err: OperationalError: F:/Blog/node_modules/stylus/lib/functions/index.styl:133:3
129|
130| // lighten by the given amount
131|
132| lighten(color, amount)
133| adjust(color, 'lightness', amount)
----------^
134|
135| // decrease opacity by amount
136|

TypeError: expected rgba or hsla, but got ident:$default-text-color

  at Object.exports.assertColor (F:\Blog\node_modules\stylus\lib\utils.js:255:13)
  at Evaluator.adjust (F:\Blog\node_modules\stylus\lib\functions\adjust.js:14:9)
  at Evaluator.invokeBuiltin (F:\Blog\node_modules\stylus\lib\visitor\evaluator.js:1054:30)
  at Evaluator.visitCall (F:\Blog\node_modules\stylus\lib\visitor\evaluator.js:516:16)
  at Evaluator.Visitor.visit (F:\Blog\node_modules\stylus\lib\visitor\index.js:28:40)
  at Evaluator.visit (F:\Blog\node_modules\stylus\lib\visitor\evaluator.js:160:18)
  at Evaluator.visitExpression (F:\Blog\node_modules\stylus\lib\visitor\evaluator.js:644:26)
  at Evaluator.Visitor.visit (F:\Blog\node_modules\stylus\lib\visitor\index.js:28:40)
  at Evaluator.visit (F:\Blog\node_modules\stylus\lib\visitor\evaluator.js:160:18)
  at Evaluator.eval (F:\Blog\node_modules\stylus\lib\visitor\evaluator.js:1238:23)
  at Evaluator.invoke (F:\Blog\node_modules\stylus\lib\visitor\evaluator.js:1083:16)
  at Evaluator.invokeFunction (F:\Blog\node_modules\stylus\lib\visitor\evaluator.js:1012:15)
  at Evaluator.visitCall (F:\Blog\node_modules\stylus\lib\visitor\evaluator.js:522:16)
  at Evaluator.Visitor.visit (F:\Blog\node_modules\stylus\lib\visitor\index.js:28:40)
  at Evaluator.visit (F:\Blog\node_modules\stylus\lib\visitor\evaluator.js:160:18)
  at Evaluator.visitExpression (F:\Blog\node_modules\stylus\lib\visitor\evaluator.js:644:26)
  at Evaluator.Visitor.visit (F:\Blog\node_modules\stylus\lib\visitor\index.js:28:40)
  at Evaluator.visit (F:\Blog\node_modules\stylus\lib\visitor\evaluator.js:160:18)
  at Evaluator.visitIdent (F:\Blog\node_modules\stylus\lib\visitor\evaluator.js:551:22)
  at Evaluator.Visitor.visit (F:\Blog\node_modules\stylus\lib\visitor\index.js:28:40)
  at Evaluator.visit (F:\Blog\node_modules\stylus\lib\visitor\evaluator.js:160:18)
  at Evaluator.visitRoot (F:\Blog\node_modules\stylus\lib\visitor\evaluator.js:707:27) {
cause: Error: F:/Blog/node_modules/stylus/lib/functions/index.styl:133:3
   129|
   130| // lighten by the given amount
   131|
   132| lighten(color, amount)
   133|   adjust(color, 'lightness', amount)
----------^
   134|
   135| // decrease opacity by amount
   136|

TypeError: expected rgba or hsla, but got ident:$default-text-color

    at Object.exports.assertColor (F:\Blog\node_modules\stylus\lib\utils.js:255:13)
    at Evaluator.adjust (F:\Blog\node_modules\stylus\lib\functions\adjust.js:14:9)
    at Evaluator.invokeBuiltin (F:\Blog\node_modules\stylus\lib\visitor\evaluator.js:1054:30)
    at Evaluator.visitCall (F:\Blog\node_modules\stylus\lib\visitor\evaluator.js:516:16)
    at Evaluator.Visitor.visit (F:\Blog\node_modules\stylus\lib\visitor\index.js:28:40)
    at Evaluator.visit (F:\Blog\node_modules\stylus\lib\visitor\evaluator.js:160:18)
    at Evaluator.visitExpression (F:\Blog\node_modules\stylus\lib\visitor\evaluator.js:644:26)
    at Evaluator.Visitor.visit (F:\Blog\node_modules\stylus\lib\visitor\index.js:28:40)
    at Evaluator.visit (F:\Blog\node_modules\stylus\lib\visitor\evaluator.js:160:18)
    at Evaluator.eval (F:\Blog\node_modules\stylus\lib\visitor\evaluator.js:1238:23)
    at Evaluator.invoke (F:\Blog\node_modules\stylus\lib\visitor\evaluator.js:1083:16)
    at Evaluator.invokeFunction (F:\Blog\node_modules\stylus\lib\visitor\evaluator.js:1012:15)
    at Evaluator.visitCall (F:\Blog\node_modules\stylus\lib\visitor\evaluator.js:522:16)
    at Evaluator.Visitor.visit (F:\Blog\node_modules\stylus\lib\visitor\index.js:28:40)
    at Evaluator.visit (F:\Blog\node_modules\stylus\lib\visitor\evaluator.js:160:18)
    at Evaluator.visitExpression (F:\Blog\node_modules\stylus\lib\visitor\evaluator.js:644:26)
    at Evaluator.Visitor.visit (F:\Blog\node_modules\stylus\lib\visitor\index.js:28:40)
    at Evaluator.visit (F:\Blog\node_modules\stylus\lib\visitor\evaluator.js:160:18)
    at Evaluator.visitIdent (F:\Blog\node_modules\stylus\lib\visitor\evaluator.js:551:22)
    at Evaluator.Visitor.visit (F:\Blog\node_modules\stylus\lib\visitor\index.js:28:40)
    at Evaluator.visit (F:\Blog\node_modules\stylus\lib\visitor\evaluator.js:160:18)
    at Evaluator.visitRoot (F:\Blog\node_modules\stylus\lib\visitor\evaluator.js:707:27) {
  lineno: 133,
  column: 3,
  filename: 'F:/Blog/node_modules/stylus/lib/functions/index.styl',
  stylusStack: '',
  input: 'called-from = ()\n' +
    '\n' +
    'vendors = moz webkit o ms official\n' +
    '\n' +
    '// stringify the given arg\n' +
    '\n' +
    '-string(arg)\n' +
    "  type(arg) + ' ' + arg\n" +
    '\n' +
    '// require a color\n' +
    '\n' +
    'require-color(color)\n' +
    "  unless color is a 'color'\n" +
    "    error('RGB or HSL value expected, got a ' + -string(color))\n" +
    '\n' +
    '// require a unit\n' +
    '\n' +
    'require-unit(n)\n' +
    "  unless n is a 'unit'\n" +
    "    error('unit expected, got a ' + -string(n))\n" +
    '\n' +
    '// require a string\n' +
    '\n' +
    'require-string(str)\n' +
    "  unless str is a 'string' or str is a 'ident'\n" +
    "    error('string expected, got a ' + -string(str))\n" +
    '\n' +
    '// Math functions\n' +
    '\n' +
    "abs(n) { math(n, 'abs') }\n" +
    'min(a, b) { a < b ? a : b }\n' +
    'max(a, b) { a > b ? a : b }\n' +
    '\n' +
    '// Trigonometrics\n' +
    "PI = -math-prop('PI')\n" +
    '\n' +
    'radians-to-degrees(angle)\n' +
    '  angle * (180 / PI)\n' +
    '\n' +
    'degrees-to-radians(angle)\n' +
    '  angle * (PI / 180)\n' +
    '\n' +
    'sin(n)\n' +
    "  n = unit(n) == 'deg' ? degrees-to-radians(unit(n, '')) : unit(n, '')\n" +
    "  round(math(n, 'sin'), 9)\n" +
    '\n' +
    'cos(n)\n' +
    "  n = unit(n) == 'deg' ? degrees-to-radians(unit(n, '')) : unit(n, '')\n" +
    "  round(math(n, 'cos'), 9)\n" +
    '\n' +
    '// Rounding Math functions\n' +
    '\n' +
    'ceil(n, precision = 0)\n' +
    '  multiplier = 10 ** precision\n' +
    "  math(n * multiplier, 'ceil') / multiplier\n" +
    '\n' +
    'floor(n, precision = 0)\n' +
    '  multiplier = 10 ** precision\n' +
    "  math(n * multiplier, 'floor') / multiplier\n" +
    '\n' +
    'round(n, precision = 0)\n' +
    '  multiplier = 10 ** precision\n' +
    "  math(n * multiplier, 'round') / multiplier\n" +
    '\n' +
    '// return the sum of the given numbers\n' +
    '\n' +
    'sum(nums)\n' +
    '  sum = 0\n' +
    '  sum += n for n in nums\n' +
    '\n' +
    '// return the average of the given numbers\n' +
    '\n' +
    'avg(nums)\n' +
    '  sum(nums) / length(nums)\n' +
    '\n' +
    '// return a unitless number, or pass through\n' +
    '\n' +
    'remove-unit(n)\n' +
    '  if typeof(n) is "unit"\n' +
    '    unit(n, "")\n' +
    '  else\n' +
    '    n\n' +
    '\n' +
    '// convert a percent to a decimal, or pass through\n' +
    '\n' +
    'percent-to-decimal(n)\n' +
    '  if unit(n) is "%"\n' +
    '    remove-unit(n) / 100\n' +
    '  else\n' +
    '    n\n' +
    '\n' +
    '// check if n is an odd number\n' +
    '\n' +
    'odd(n)\n' +
    '  1 == n % 2\n' +
    '\n' +
    '// check if n is an even number\n' +
    '\n' +
    'even(n)\n' +
    '  0 == n % 2\n' +
    '\n' +
    '// check if color is light\n' +
    '\n' +
    'light(color)\n' +
    '  lightness(color) >= 50%\n' +
    '\n' +
    '// check if color is dark\n' +
    '\n' +
    'dark(color)\n' +
    '  lightness(color) < 50%\n' +
    '\n' +
    '// desaturate color by amount\n' +
    '\n' +
    'desaturate(color, amount)\n' +
    "  adjust(color, 'saturation', - amount)\n" +
    '\n' +
    '// saturate color by amount\n' +
    '\n' +
    "saturate(color = '', amount = 100%)\n" +
    "  if color is a 'color'\n" +
    "    adjust(color, 'saturation', amount)\n" +
    '  else\n' +
    '    unquote( "saturate(" + color + ")" )\n' +
    '\n' +
    '// darken by the given amount\n' +
    '\n' +
    'darken(color, amount)\n' +
    "  adjust(color, 'lightness', - amount)\n" +
    '\n' +
    '// lighten by the given amount\n' +
    '\n' +
    'lighten(color, amount)\n' +
    "  adjust(color, 'lightness', amount)\n" +
    '\n' +
    '// decrease opacity by amount\n' +
    '\n' +
    'fade-out(color, amount)\n' +
    '  color - rgba(black, percent-to-decimal(amount))\n' +
    '\n' +
    '// increase opacity by amount\n' +
    '\n' +
    'fade-in(color, amount)\n' +
    '  color + rgba(black, percent-to-decimal(amount))\n' +
    '\n' +
    '// spin hue by a given amount\n' +
    '\n' +
    'spin(color, amount)\n' +
    '  color + unit(amount, deg)\n' +
    '\n' +
    '// mix two colors by a given amount\n' +
    '\n' +
    'mix(color1, color2, weight = 50%)\n' +
    '  unless weight in 0..100\n' +
    '    error("Weight must be between 0% and 100%")\n' +
    '\n' +
    '  if length(color1) == 2\n' +
    '    weight = color1[0]\n' +
    '    color1 = color1[1]\n' +
    '\n' +
    '  else if length(color2) == 2\n' +
    '    weight = 100 - color2[0]\n' +
    '    color2 = color2[1]\n' +
    '\n' +
    '  require-color(color1)\n' +
    '  require-color(color2)\n' +
    '\n' +
    "  p = unit(weight / 100, '')\n" +
    '  w = p * 2 - 1\n' +
    '\n' +
    '  a = alpha(color1) - alpha(color2)\n' +
    '\n' +
    '  w1 = (((w * a == -1) ? w : (w + a) / (1 + w * a)) + 1) / 2\n' +
    '  w2 = 1 - w1\n' +
    '\n' +
    '  channels = (red(color1) red(color2)) (green(color1) green(color2)) (blue(color1) blue(color2))\n' +
    '  rgb = ()\n' +
    '\n' +
    '  for pair in channels\n' +
    '    push(rgb, floor(pair[0] * w1 + pair[1] * w2))\n' +
    '\n' +
    '  a1 = alpha(color1) * p\n' +
    '  a2 = alpha(color2) * (1 - p)\n' +
    '  alpha = a1 + a2\n' +
    '\n' +
    '  rgba(rgb[0], rgb[1], rgb[2], alpha)\n' +
    '\n' +
    '// invert colors, leave alpha intact\n' +
    '\n' +
    "invert(color = '')\n" +
    "  if color is a 'color'\n" +
    '    rgba(#fff - color, alpha(color))\n' +
    '  else\n' +
    '    unquote( "invert(" + color + ")" )\n' +
    '\n' +
    '// give complement of the given color\n' +
    '\n' +
    'complement( color )\n' +
    '  spin( color, 180 )\n' +
    '\n' +
    '// give grayscale of the given color\n' +
    '\n' +
    "grayscale( color = '' )\n" +
    "  if color is a 'color'\n" +
    '    desaturate( color, 100% )\n' +
    '  else\n' +
    '    unquote( "grayscale(" + color + ")" )\n' +
    '\n' +
    '// mix the given color with white\n' +
    '\n' +
    'tint( color, percent )\n' +
    '  mix( white, color, percent )\n' +
    '\n' +
    '// mix the given color with black\n' +
    '\n' +
    'shade( color, percent )\n' +
    '  mix( black, color, percent )\n' +
    '\n' +
    '// return the last value in the given expr\n' +
    '\n' +
    'last(expr)\n' +
    '  expr[length(expr) - 1]\n' +
    '\n' +
    '// return keys in the given pairs or object\n' +
    '\n' +
    'keys(pairs)\n' +
    '  ret = ()\n' +
    "  if type(pairs) == 'object'\n" +
    '    for key in pairs\n' +
    '      push(ret, key)\n' +
    '  else\n' +
    '    for pair in pairs\n' +
    '      push(ret, pair[0]);\n' +
    '  ret\n' +
    '\n' +
    '// return values in the given pairs or object\n' +
    '\n' +
    'values(pairs)\n' +
    '  ret = ()\n' +
    "  if type(pairs) == 'object'\n" +
    '    for key, val in pairs\n' +
    '      push(ret, val)\n' +
    '  else\n' +
    '    for pair in pairs\n' +
    '      push(ret, pair[1]);\n' +
    '  ret\n' +
    '\n' +
    '// join values with the given delimiter\n' +
    '\n' +
    'join(delim, vals...)\n' +
    "  buf = ''\n" +
    '  vals = vals[0] if length(vals) == 1\n' +
    '  for val, i in vals\n' +
    '    buf += i ? delim + val : val\n' +
    '\n' +
    '// add a CSS rule to the containing block\n' +
    '\n' +
    '// - This definition allows add-property to be used as a mixin\n' +
    '// - It has the same effect as interpolation but allows users\n' +
    '//   to opt for a functional style\n' +
    '\n' +
    'add-property-function = add-property\n' +
    'add-property(name, expr)\n' +
    '  if mixin\n' +
    '    {name} expr\n' +
    '  else\n' +
    '    add-property-function(name, expr)\n' +
    '\n' +
    'prefix-classes(prefix)\n' +
    '  -prefix-classes(prefix, block)\n' +
    '\n' +
    '// Caching mixin, use inside your functions to enable caching by extending.\n' +
    '\n' +
    '$stylus_mixin_cache = {}\n' +
    'cache()\n' +
    "  $key = (current-media() or 'no-media') + '__' + called-from[0] + '__' + arguments\n" +
    '  if $key in $stylus_mixin_cache\n' +
    '    @extend {"$cache_placeholder_for_" + $stylus_mixin_cache[$key]}\n' +
    "  else if 'cache' in called-from\n" +
    '    {block}\n' +
    '  else\n' +
    '    $id = length($stylus_mixin_cache)\n' +
    '\n' +
    '    &,\n' +
    '    /$cache_placeholder_for_{$id}\n' +
    '      $stylus_mixin_cache[$key] = $id\n' +
    '      {block}\n' +
    '\n' +
    '// Percentage function to convert a number, e.g. ".45", into a percentage, e.g. "45%"\n' +
    '\n' +
    'percentage(num)\n' +
    "  return unit(num * 100, '%')\n" +
    '\n' +
    '// Returns the position of a `value` within a `list`\n' +
    '\n' +
    'index(list, value)\n' +
    '  for val, i in list\n' +
    '    return i if val == value\n'
},
isOperational: true,
lineno: 133,
column: 3,
filename: 'F:/Blog/node_modules/stylus/lib/functions/index.styl',
stylusStack: '',
input: 'called-from = ()\n' +
  '\n' +
  'vendors = moz webkit o ms official\n' +
  '\n' +
  '// stringify the given arg\n' +
  '\n' +
  '-string(arg)\n' +
  "  type(arg) + ' ' + arg\n" +
  '\n' +
  '// require a color\n' +
  '\n' +
  'require-color(color)\n' +
  "  unless color is a 'color'\n" +
  "    error('RGB or HSL value expected, got a ' + -string(color))\n" +
  '\n' +
  '// require a unit\n' +
  '\n' +
  'require-unit(n)\n' +
  "  unless n is a 'unit'\n" +
  "    error('unit expected, got a ' + -string(n))\n" +
  '\n' +
  '// require a string\n' +
  '\n' +
  'require-string(str)\n' +
  "  unless str is a 'string' or str is a 'ident'\n" +
  "    error('string expected, got a ' + -string(str))\n" +
  '\n' +

关于文章中图片自动放大的问题

非常喜欢作者的主题,简约干净却功能齐全!

但是有个疑惑,在文章中每个图片都会自动放大,这样本来一个小图片,然后自动放大,就会非常影响观感!
image

希望把head部分优化下

希望作者能把head部分优化下,博客都上线几个月了,尽然没有被百度,google收录

--
  |
  |
  |
  |  
  | <title>
  |  
  | 门心叼龙的个人博客
  | </title>
  |
  |  
  |
  |  

关于文章分类页显示条目

遇到一个问题:点进文章分类之后默认显示条数是和首页的文章显示条数一致麽?如果一致,在文章分类页没有分页功能,默认就只能显示满足设置值的最新条数。请问这个是因为我设置的问题,还是一个bug呀?

中文字符乱码问题

您好博主,我非常喜欢这一款主题,但在我打算将他用在我的博客上的时候,有一些乱码的问题:
1.创建了 about 页面在md文件写入中文,在网页端显示出来的是乱码。
2. valine 评论系统的 placeholder: 关键字,填入中文,也显示乱码。

空页面Title问题(好吧其实还是link)

在之前的issue有提到一个link页面出现“link”标题的问题,但未深究。

我看了Repo主的博客没有出现这个问题,后查代码得知问题出在themes/keep/layout/_partial/empty-page.ejs下:

        <div class="empty-page-content markdown-body">
            <% if (page.content) { %>
                <%- page.content %>
            <% } else { %>
                <h1><%- page.title %></h1>
            <% } %>
        </div>

这一段会使得任何类似友链的空页面内容为空时出现一个<h1><%- page.title %></h1>。而在主题的逻辑里,page.title作为hexo判断页面分类的依据不可缺少。

而恰好Repo主的博客,友链页面有一段介绍文字(即page.content结果为真),而我的却刚好没有😂。

我个人有两个解决方案:一是简单的将上文代码中else改写为额外的else if并判断page.title是否为link(s)。另一种是将整个主题的页面分类依据从title改为type,不过这样需要更新所有旧的md。

希望能提供文章加密功能

采用hexo-blog-encrypt插件设置文章静态加密的时候,会影响部分正常功能。目前发现的,包括解密后toc无法显示,以及表格无法正常显示。

辛苦大大!

主题配置文件问题

你好,我从ils升级到keep之后主题的配置文件好像不管用了。我按照keep官方文档里的主题配置文件来写我的主题配置文件,在开启code_copy之类的功能之后好像不管用,而且好以前在左边的目录也没有了。我记得这几个是不用装插件的吧。用的是esay hexo里hexo clean && hexo d -g这个命令部署的。能帮忙看下什么问题吗,谢谢。

代码高亮功能不能正常使用

hexo根目录下的配置文件中代码高亮的配置

highlight:
  enable: true
  auto_detect: true
  line_number: false
  tab_replace: ''
  wrap: false
  hljs: false

按照如上配置,我在使用pure主题时,一切都正常,当换成hexo-theme-ils时,代码高亮很少,如图image-20201011122908053
当我把hljs改为true,代码全部变成灰色。目前正在困惑中,怎样才能在不大动配置的情况下,让代码能够通过 hexo 原有方案正常高亮呢。希望得到帮助,谢谢。

关于主题的版本号

举例:

image

版本号不符合规范,其中,都添加了新的 feature,直接改动次版本号就好了,你直接 v3.1.1 -> v3.1.2 只改动了修订号,很容易误导用户,某些情况下甚至会引起 Hexo 启动报错。

https://semver.org/lang/zh-CN/

image


可能你觉着就加了一个小功能而已,没必要改动次版本号,这是不对的。举个例子:假如你刚发布了 v2.4.0,然后新的 commit 中,提交了一个 feat:,如果想再发布新版本,就得直接 v2.5.0


另外建议你,涉及改动配置(_config.yml)的 commit,你心里要清楚,改动配置相当于 ​Breaking Changes,如果改动配置就得发布新的主版本号,哪怕只新提交了一个 commit。

众所周知,发布新的主版本号不是小事情,因此需要谨慎对待。所以建议把涉及 配置改动的用法和之前完全不一样的(哪怕配置完全相同) 都放入计划中,等积攒多了再去实现,然后发布一个大的主版本号。


我是 hexo-theme-stun 主题的作者,以上是我的愚见(都是坑过来的,,,),也是我诚心的建议,如有不妥,恳请斧正,希望多多交流。

能否提供文章归档页面

找了这么久,就这个主题实在是太满意了,能否提供一下文章归档的页面呢?就是按年份列出所有文章的那种

该主题几个问题咨询

昨晚折腾了一下这个主题,很满意,有几个小问题咨询,第一次用hexo,还不是太熟

  1. social图标的定义在源文件的哪个位置改呢?我想自定义几个图标请问改哪个文件的哪段代码呢?比如后台配weibo的链接那里我配电报的链接,我想把前台展示微博的那个字体图标换成电报的,请问该怎么改呢?求教
  2. 关于TOC的我想实现以下效果,就是进去的时候左边TOC默认不显示,但是显示右上角TOC那个图标,如果想展开就点击右上角图标就好了,也就是默认的不显示左侧TOC,请问该如何修改呢?
  3. 我想加入百度统计的脚本js,请问这段代码在哪里加入呢?
    以上问题麻烦回答下哦,多谢多谢,再次感谢开发这么好的主题

启动之后,访问时报错,最新的几个版本都试过了,都是报同样的错,

ERROR {
err: TypeError: /Users/macos/Desktop/v/blog/themes/keep/layout/layout.ejs:3
1|
2|

3| <%- partial('_partial/head') %>
4|
5| <%- body %>
6| <%- partial('_partial/scripts') %>

/Users/macos/Desktop/v/blog/themes/keep/layout/_partial/head.ejs:32
30| <%- favicon_tag(theme.style.favicon) %>
31| <%- css('css/style') %>

32| <%- __css('css/font-awesome.min.css') %>
33| <%- export_config() %>
34|
35|

this.url_for is not a function
at /Users/macos/Desktop/v/blog/node_modules/hexo/lib/plugins/helper/css.js:27:54
at Array.forEach ()
at Hexo.cssHelper (/Users/macos/Desktop/vue/blog/node_modules/hexo/lib/plugins/helper/css.js:20:17)
at Object. (/Users/macos/Desktop/vue/blog/themes/keep/scripts/helpers/helper.js:73:12)
at eval (/Users/macos/Desktop/vue/blog/themes/keep/layout/_partial/head.ejs:57:17)
at head (/Users/macos/Desktop/vue/blog/node_modules/ejs/lib/ejs.js:682:17)
at _View._compiledSync (/Users/macos/Desktop/vue/blog/node_modules/hexo/lib/theme/view.js:132:24)
at _View.renderSync (/Users/macos/Desktop/vue/blog/node_modules/hexo/lib/theme/view.js:59:25)
at Object.partial (/Users/macos/Desktop/vue/blog/node_modules/hexo/lib/plugins/helper/partial.js:34:15)
at eval (/Users/macos/Desktop/vue/blog/themes/keep/layout/layout.ejs:13:17)
at layout (/Users/macos/Desktop/vue/blog/node_modules/ejs/lib/ejs.js:682:17)
at _View._compiled (/Users/macos/Desktop/vue/blog/node_modules/hexo/lib/theme/view.js:136:50)
at _View.render (/Users/macos/Desktop/vue/blog/node_modules/hexo/lib/theme/view.js:39:17)
at /Users/macos/Desktop/vue/blog/node_modules/hexo/lib/theme/view.js:51:25
at tryCatcher (/Users/macos/Desktop/vue/blog/node_modules/bluebird/js/release/util.js:16:23)
at Promise._settlePromiseFromHandler (/Users/macos/Desktop/v/blog/node_modules/bluebird/js/release/promise.js:547:31)
at Promise._settlePromise (/Users/macos/Desktop/vue/blog/node_modules/bluebird/js/release/promise.js:604:18)
at Promise._settlePromise0 (/Users/macos/Desktop/vue/blog/node_modules/bluebird/js/release/promise.js:649:10)
at Promise._settlePromises (/Users/macos/Desktop/vue/blog/node_modules/bluebird/js/release/promise.js:729:18)
at _drainQueueStep (/Users/macos/Desktop/vue/blog/node_modules/bluebird/js/release/async.js:93:12)
at _drainQueue (/Users/macos/Desktop/vue/blog/node_modules/bluebird/js/release/async.js:86:9)
at Async._drainQueues (/Users/macos/Desktop/vue/blog/node_modules/bluebird/js/release/async.js:102:5) {
path: '/Users/macos/Desktop/vue/blog/themes/keep/layout/layout.ejs'
}
} Render HTML failed: index.html
Unhandled rejection TypeError: /Users/macos/Desktop/v/blog/themes/keep/layout/layout.ejs:3
1|
2|

3| <%- partial('_partial/head') %>
4|
5| <%- body %>
6| <%- partial('_partial/scripts') %>

/Users/macos/Desktop/v/blog/themes/keep/layout/_partial/head.ejs:32
30| <%- favicon_tag(theme.style.favicon) %>
31| <%- css('css/style') %>

32| <%- __css('css/font-awesome.min.css') %>
33| <%- export_config() %>
34|
35|

this.url_for is not a function
at /Users/macos/Desktop/v/blog/node_modules/hexo/lib/plugins/helper/css.js:27:54
at Array.forEach ()
at Hexo.cssHelper (/Users/macos/Desktop/vue/blog/node_modules/hexo/lib/plugins/helper/css.js:20:17)
at Object. (/Users/macos/Desktop/vue/blog/themes/keep/scripts/helpers/helper.js:73:12)
at eval (/Users/macos/Desktop/vue/blog/themes/keep/layout/_partial/head.ejs:57:17)
at head (/Users/macos/Desktop/vue/blog/node_modules/ejs/lib/ejs.js:682:17)
at _View._compiledSync (/Users/macos/Desktop/vue/blog/node_modules/hexo/lib/theme/view.js:132:24)
at _View.renderSync (/Users/macos/Desktop/vue/blog/node_modules/hexo/lib/theme/view.js:59:25)
at Object.partial (/Users/macos/Desktop/vue/blog/node_modules/hexo/lib/plugins/helper/partial.js:34:15)
at eval (/Users/macos/Desktop/vue/blog/themes/keep/layout/layout.ejs:13:17)
at layout (/Users/macos/Desktop/vue/blog/node_modules/ejs/lib/ejs.js:682:17)
at _View._compiled (/Users/macos/Desktop/vue/blog/node_modules/hexo/lib/theme/view.js:136:50)
at _View.render (/Users/macos/Desktop/vue/blog/node_modules/hexo/lib/theme/view.js:39:17)
at /Users/macos/Desktop/vue/blog/node_modules/hexo/lib/theme/view.js:51:25
at tryCatcher (/Users/macos/Desktop/vue/blog/node_modules/bluebird/js/release/util.js:16:23)
at Promise._settlePromiseFromHandler
(/Users/macos/Desktop/v/blog/node_modules/bluebird/js/release/promise.js:547:31)
at Promise._settlePromise (/Users/macos/Desktop/vue/blog/node_modules/bluebird/js/release/promise.js:604:18)
at Promise._settlePromise0 (/Users/macos/Desktop/vue/blog/node_modules/bluebird/js/release/promise.js:649:10)
at Promise._settlePromises (/Users/macos/Desktop/vue/blog/node_modules/bluebird/js/release/promise.js:729:18)
at _drainQueueStep (/Users/macos/Desktop/vue/blog/node_modules/bluebird/js/release/async.js:93:12)
at _drainQueue (/Users/macos/Desktop/vue/blog/node_modules/bluebird/js/release/async.js:86:9)
at Async._drainQueues (/Users/macos/Desktop/vue/blog/node_modules/bluebird/js/release/async.js:102:5)

【重要通知】原 Hexo 主题 ILS 改名 Keep

v3.0.0 起,原Hexo 主题 ILS 已改名 Keep
Keep 在 ILS 基础上做了大量改进、优化和代码重构,全新设计、全面提升、更轻、更快。
希望你积极提出反馈及建议。

建议放大改为加深阴影

首先,感谢作者写的这个主题,我真的是太喜欢了,这个就是我一直在寻找的极简风格的 Hexo 主题。

然后就是一个建议,目前放到每篇文章或者博客 Header 部分都是有放大,我觉得如果把这个放大的效果去掉,改为加深阴影(虽然目前也有这个效果,但是比较浅),整个主题的气质会上升一个档次。

希望作者大大采纳,或者做一个选项让用户自己选择,您看这么样?

再次感谢。

links 界面md

请问 links 界面的外链 md 怎么写的?
两栏链接那行

问题反馈

主题十分简约漂亮,十分喜欢,希望尽快支持数学公式渲染。
菜单中标签多了之后的排版问题。
一些其他的丰富功能,比如打赏,分享。
建议增加有限图标。
还有分类目录中最多显示十篇文章的问题

关于sidebar

请问我部署之后siderbar 的标题无法链接到对应部分是什么原因呀?
F12 可以得到链接,也可以在打开标签页然后访问到该位置,但是无法在当前页通过siderbar定位。
js报错
Uncaught TypeError: Cannot read property 'getBoundingClientRect' of null at HTMLAnchorElement.<anonymous> (toc.js:15) (anonymous) @ toc.js:15

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.