Как сделать процесс Flexmark-Java "@"- упоминается?

При обработке уценки GitHub поддерживает @-синтаксис для упоминания имени пользователя или команды. Как можно обрабатывать такие упоминания с помощью Flexmark-Java? Со следующим фрагментом кода, Hello, @world ! сообщается как единое целое Text узел, где я ожидал бы получить world сообщается отдельно как своего рода MentionsNode:

final Parser parser = Parser.builder(new Parser.Builder()).build();
final Document document = parser.parse("Hello, @world !");
new NodeVisitor(Collections.emptyList()) {
       public void visit(Node node) {
           System.out.println("Node: " + node);
           super.visit(node);
       }
   }.visit(document);

Выход:

Node: Document{}
Node: Paragraph{}
Node: Text{text=Hello, @world !}

1 ответ

Решение

Для этого есть соответствующее расширение:

final MutableDataHolder options = new MutableDataSet()
                .set(Parser.EXTENSIONS, Collections.singletonList(GfmUsersExtension.create()));
final Parser parser = Parser.builder(options).build();
final Document document = parser.parse("Hello, @world, and #1!");
...
Другие вопросы по тегам