首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在asciidoctor宏中使用角色?

在asciidoctor宏中使用角色?
EN

Stack Overflow用户
提问于 2016-11-07 23:40:51
回答 2查看 564关注 0票数 1

我正在尝试创建一个简单的宏,以便在asciidoctor中以红色呈现文本项。以下内容不起作用:

代码语言:javascript
复制
:redtext: [red]#some important text in red that occurs a lot#

{redtext}

或者举一个更简单的例子:

代码语言:javascript
复制
:redcross: [red]#✘#

我不清楚宏可以替换和不能替换的规则。目前,asciidoctor手册中的宏是空白的(http://asciidoctor.org/docs/user-manual/#macros)。asciidoc手册(http://www.methods.co.nz/asciidoc/chunked/ch21.html)也不是很清楚,但可能不适用于asciidoctor

一个相关的未回答的问题是Resuable markup fragments with Asciidoctor。一个与此相关的问题建议使用includes,这对此来说过于夸张了。

宏的限制是什么?

EN

回答 2

Stack Overflow用户

发布于 2016-12-14 16:06:20

您定义的不是宏,而是一个属性。(当您使用它时,它被称为属性引用)。

您可以使用内联pass宏在属性定义中急切地执行替换。在目标位置,它接受以逗号分隔的替换名称(或替换字母)列表。

在你的例子中,你可以这样写:

代码语言:javascript
复制
:redtext: pass:q[[red]#some important text in red that occurs a lot#]

相关的部分是:

代码语言:javascript
复制
pass:q[...]

详情请参见substitutions in an attribute entry

票数 1
EN

Stack Overflow用户

发布于 2016-11-08 02:32:43

我认为包括工作已经足够好了。我们有一个包含所有可重用片段的glossary.asciidoc文件,例如:

代码语言:javascript
复制
tag::redtext[]
[red]#some important text in red that occurs a lot#
end::redtext[]

index.asciidoc中你可以添加一个小帮助器:

代码语言:javascript
复制
:g: glossary.asciidoc

然后,在您需要此代码片段的任何地方:

代码语言:javascript
复制
include::{g}[tag=redtext]
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40469032

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档