CodeRay 是一个编码感知的语法高亮器,支持下面列出的语言。

C

C++

Clojure

CSS

Delphi

diff

ERB

Go

Groovy

HAML

HTML

Java

JavaScript

JSON

Lua

PHP

Python

Ruby

Sass

SQL

Taskpaper

XML

YAML

安装 CodeRay

要在Asciidoctor中使用CodeRay,你需要[code_ray宝石](coderay gem^)。您可以使用以下方法之一来安装CodeRay。

使用gem安装(适用于所有系统)
$ gem install coderay
使用apt-get安装(基于Debian的系统)
$ sudo apt-get install ruby-coderay
使用dnf安装(基于Fedora的系统)
$ sudo dnf install rubygem-coderay

激活 CodeRay

一旦你安装了gem,就将`coderay`值分配给文档头部的`source-highlighter`属性以激活它。

:source-highlighter: coderay

CodeRay 属性

您可以通过额外的CodeRay属性进一步定制源代码块的输出。

coderay-css

控制应用CSS到标记上的方法是什么。可以是`class`或者`style`。默认值:class

coderay-linenums-mode

控制行号的布局方式。可以是`table`或`inline`。如果在预格式化块(即`prewrap`)上启用了行包裹,并且您想在源代码块上使用行号,您必须将该属性的值设置为`inline`,以便行号正确对齐它们的目标行。默认值:table

使用CodeRay行号自定义源代码块
:source-highlighter: coderay
:coderay-linenums-mode: inline

[%linenums,ruby]
----
ORDERED_LIST_KEYWORDS = {
  'loweralpha' => 'a',
  'lowerroman' => 'i',
  'upperalpha' => 'A',
  'upperroman' => 'I'
   #'lowergreek' => 'a'
   #'arabic'     => '1'
   #'decimal'    => '1'
}
----

参考CodeRay样式表部分了解`coderay-css`属性。