3

我想禁用降价格式文档中单个代码块的行号。

浏览相关文档或在谷歌上搜索都没有向我展示正确的咒语,尽管我确信它是可行的。


我正在使用带有markdown-it解析器的 hexo

4

3 回答 3

6

在 hexo 的最新开发版本中,现在可以使用如下配置标签来实现:

  {% codeblock [line_number:(true|false)] [highlight:(true|false)]%}
    code snippet
  {% endcodeblock %}
于 2015-11-13T20:18:37.000 回答
4

如前所述,这取决于您使用的降价/荧光笔。

编辑:

我还没有更新我的Hexo版本,所以blueberryfields 的答案在更新的版本中可用。基本上看起来像添加了一个可选参数line_number

我也会保留下面的答案,因为扩展Hexo以支持尚未在主线中出现的功能通常很有用。

如果不可用:

由于您将帖子标记为Hexo,我假设您正在谈论代码块标签。

{% codeblock [title] [lang:language] [url] [link text] %}
code snippet
{% endcodeblock %}

撰写本文时的Hexo版本使用highlight.js并定义在:

./node_modules/hexo/lib/plugins/tag/code.js

您可以直接扩展它,尽管如果尝试更新模块会变得很难看。你可以分叉 Hexo并提交包含更改的拉取请求。

你也可以扩展Hexo来做你想做的事。

在项目的根目录中,您可以为自定义标签创建一个 javascript 文件:

./scripts/tags.js

您可以从以下内容开始:

'use strict';

/**
 * simple code
 *
 * Syntax:
 *   {% simple_codeblock %}
 */
var util = require('hexo-util');
var highlight = util.highlight;

hexo.extend.tag.register('simple_codeblock', function(args, content){
    content = highlight(content, {
      lang: '',
      caption: '',
      gutter: false,
      tab: '',
      autoDetect: true
    });
    return content;

}, {ends: true});

并随心所欲地扩展它。

注意:这需要您参考hexo-util

npm install hexo-util --save

用法:

{% simple_codeblock %}
// place code here
{% endsimple_codeblock %}
于 2015-11-13T16:00:32.590 回答
0

正如您问题的评论者所强调的那样,这取决于您用来呈现降价源的内容。例如,wordpress.com 上的渲染器允许您使用如下配置参数指定代码:

[code language="css" gutter="false"]
your code here
[/code]

gutter=false的使用隐藏了行号。更多详细信息可以在他们的发布源代码文档中找到。请注意,其他降价渲染器可能不支持这一点。

于 2015-10-07T02:55:23.533 回答