我想在R markdown中创建一个线性光泽,其中光泽与它们提供信息的单词对齐。
在下面的示例中,我希望顶部德语句子中每个字符串的左边缘与其下方英语的每个字符串的左边缘对齐:
Ich habe den Bub gesehen
1sg.NOM has.1sg.PRES DEF.ACC.SG boy.ACC.SG see.PERF.PART
所以“boy.ACC.SG”的左边缘应该在“Bub”的左边缘正下方对齐。
像gb4e
这样的软件包在TeX中执行此操作,但我不知道如何在markdown中以这种方式对齐文本。
答案 0 :(得分:2)
有一些可用的pandoc过滤器可能实际上有帮助,例如pangloss,它是基于python的,可以通过pip安装。要在rmarkdown文档中使用它,请在yaml中指定pangloss应该用作过滤器:
---
title: My title
author: Somebody
output:
pdf_document:
pandoc_args:
- --filter
- pangloss
---
Pangloss实际上似乎使用gb4e包进行pdf输出,所以你可能必须将它包含在你的序言中,以便整个事情变成
---
title: My title
author: Somebody
output:
pdf_document:
pandoc_args:
- --filter
- pangloss
includes:
in_header: add_to_preamble.tex
---
和add_to_preamble.tex必须包含
行\usepackage{gb4e}
实际示例以下列方式包含在markdown中(这是pangloss的github页面中给出的示例)
As you can see in the following examples, pangloss is really easy to use:
(@) Jorge llama a Maria.
George calls-3s.PRES.IND to Maria
'George calls Maria.'
(@) Aussi, vous pouvez avoir de multiples exemples.
also you can-2p.PRES.IND have.INF of multiple-PL example-PL
'You can also have multiple examples.' {#ex:french}
You can even refer to examples, as in @ex:french
但这似乎仍然是一项正在进行的工作。