private void render(final LinkRef node, final DocxRendererContext docx) { ResolvedLink resolvedLink = null; if (!node.isDefined() && recheckUndefinedReferences) { if (node.getReferenceNode(referenceRepository) != null) { node.setDefined(true); BasedSequence urlSrc = node.getReference(); if (node.isDefined()) { reference = node.getReferenceNode(referenceRepository); urlSrc = reference.getUrl(); String url = urlSrc.unescape(); String normalizeRef = node.getReference().unescape(); resolvedLink = docx.resolveLink(LinkType.LINK_REF, normalizeRef, null, null); if (resolvedLink.getStatus() == UNKNOWN) { assert !node.isDefined(); if (!node.hasChildren()) { docx.text(node.getChars().unescape()); } else { docx.text(node.getChars().prefixOf(node.getChildChars()).unescape()); docx.renderChildren(node); docx.text(node.getChars().suffixOf(node.getChildChars()).unescape());
private void render(LinkRef node, NodeRendererContext context, HtmlWriter html) { if (!node.isDefined() && recheckUndefinedReferences) { if (node.getReferenceNode(referenceRepository) != null) { node.setDefined(true); if (!node.isDefined()) { assert !node.isDefined(); html.raw("["); context.renderChildren(node); html.raw("]"); if (!node.isReferenceTextCombined()) { html.raw("["); html.raw(node.getReference().unescape()); html.raw("]"); context.renderChildren(node); } else { Reference reference = node.getReferenceNode(referenceRepository); assert reference != null;
private void render(final LinkRef node, NodeFormatterContext context, MarkdownWriter markdown) { if (!formatterOptions.optimizedInlineRendering || context.isTransformingText()) { if (node.isReferenceTextCombined()) { markdown.append(node.getReferenceOpeningMarker()); appendWhiteSpaceBetween(markdown, node.getReferenceOpeningMarker(), node.getReference(), true, false, false); markdown.appendTranslating(node.getReference()); markdown.append(node.getReferenceClosingMarker()); markdown.append(node.getTextOpeningMarker()); markdown.append(node.getTextClosingMarker()); } else { markdown.append(node.getTextOpeningMarker()); if (!context.isTransformingText() || node.getFirstChildAny(HtmlInline.class) != null) { context.renderChildren(node); } else { markdown.appendTranslating(node.getText()); } markdown.append(node.getTextClosingMarker()); markdown.append(node.getReferenceOpeningMarker()); appendWhiteSpaceBetween(markdown, node.getReferenceOpeningMarker(), node.getReference(), true, false, false); markdown.appendTranslating(node.getReference()); markdown.append(node.getReferenceClosingMarker()); } } else { markdown.append(node.getChars()); } } }
protected static boolean containsLinkRefs(BasedSequence nodeChars, Node next, Boolean isDefined) { int startOffset = nodeChars.getStartOffset(); int endOffset = nodeChars.getEndOffset(); while (next != null) { if (next instanceof LinkRef && (isDefined == null || ((LinkRef) next).isDefined() == isDefined) && !(next.getChars().getStartOffset() >= endOffset || next.getChars().getEndOffset() <= startOffset)) { return true; } next = next.getNext(); } return false; }
protected static boolean containsLinkRefs(BasedSequence nodeChars, Node next, Boolean isDefined) { int startOffset = nodeChars.getStartOffset(); int endOffset = nodeChars.getEndOffset(); while (next != null) { if (next instanceof LinkRef && (isDefined == null || ((LinkRef) next).isDefined() == isDefined) && !(next.getChars().getStartOffset() >= endOffset || next.getChars().getEndOffset() <= startOffset)) { return true; } next = next.getNext(); } return false; }
boolean isSuppressed = false; if (!node.isDefined() && recheckUndefinedReferences) { if (node.getReferenceNode(referenceRepository) != null) { node.setDefined(true); if (node.isDefined()) { reference = node.getReferenceNode(referenceRepository); String url = reference.getUrl().unescape(); isSuppressed = isSuppressedLinkPrefix(url, context); String normalizeRef = node.getReference().unescape(); resolvedLink = context.resolveLink(LinkType.LINK_REF, normalizeRef, null, null); if (resolvedLink.getStatus() == UNKNOWN) { assert !node.isDefined(); if (!node.hasChildren()) { html.text(node.getChars().unescape()); } else { html.text(node.getChars().prefixOf(node.getChildChars()).unescape()); renderChildrenSourceLineWrapped(node, node.getText(), context, html); html.text(node.getChars().suffixOf(node.getChildChars()).unescape()); html.srcPos(node.getChars()).withAttr(resolvedLink).tag("a"); renderChildrenSourceLineWrapped(node, node.getText(), context, html); html.tag("/a");
private void render(LinkRef node, NodeRendererContext context, HtmlWriter html) { if (!node.isDefined() && recheckUndefinedReferences) { if (node.getReferenceNode(referenceRepository) != null) { node.setDefined(true); if (!node.isDefined()) { assert !node.isDefined(); html.raw("["); context.renderChildren(node); html.raw("]"); if (!node.isReferenceTextCombined()) { html.raw("["); html.raw(node.getReference().unescape()); html.raw("]"); context.renderChildren(node); } else { Reference reference = node.getReferenceNode(referenceRepository); assert reference != null;
private void render(final LinkRef node, NodeFormatterContext context, MarkdownWriter markdown) { if (!formatterOptions.optimizedInlineRendering || context.isTransformingText()) { if (node.isReferenceTextCombined()) { markdown.append(node.getReferenceOpeningMarker()); appendWhiteSpaceBetween(markdown, node.getReferenceOpeningMarker(), node.getReference(), true, false, false); markdown.appendTranslating(node.getReference()); markdown.append(node.getReferenceClosingMarker()); markdown.append(node.getTextOpeningMarker()); markdown.append(node.getTextClosingMarker()); } else { markdown.append(node.getTextOpeningMarker()); if (!context.isTransformingText() || node.getFirstChildAny(HtmlInline.class) != null) { context.renderChildren(node); } else { markdown.appendTranslating(node.getText()); } markdown.append(node.getTextClosingMarker()); markdown.append(node.getReferenceOpeningMarker()); appendWhiteSpaceBetween(markdown, node.getReferenceOpeningMarker(), node.getReference(), true, false, false); markdown.appendTranslating(node.getReference()); markdown.append(node.getReferenceClosingMarker()); } } else { markdown.append(node.getChars()); } } }
boolean isSuppressed = false; if (!node.isDefined() && recheckUndefinedReferences) { if (node.getReferenceNode(referenceRepository) != null) { node.setDefined(true); if (node.isDefined()) { reference = node.getReferenceNode(referenceRepository); String url = reference.getUrl().unescape(); isSuppressed = isSuppressedLinkPrefix(url, context); String normalizeRef = node.getReference().unescape(); resolvedLink = context.resolveLink(LinkType.LINK_REF, normalizeRef, null, null); if (resolvedLink.getStatus() == UNKNOWN) { assert !node.isDefined(); if (!node.hasChildren()) { html.text(node.getChars().unescape()); } else { html.text(node.getChars().prefixOf(node.getChildChars()).unescape()); renderChildrenSourceLineWrapped(node, node.getText(), context, html); html.text(node.getChars().suffixOf(node.getChildChars()).unescape()); html.srcPos(node.getChars()).withAttr(resolvedLink).tag("a"); renderChildrenSourceLineWrapped(node, node.getText(), context, html); html.tag("/a");
private void render(LinkRef node, NodeRendererContext context, HtmlWriter html) { if (!node.isDefined() && recheckUndefinedReferences) { if (node.getReferenceNode(referenceRepository) != null) { node.setDefined(true); if (!node.isDefined()) { assert !node.isDefined(); html.raw("["); context.renderChildren(node); html.raw("]"); if (!node.isReferenceTextCombined()) { html.raw("["); html.raw(node.getReference().unescape()); html.raw("]"); context.renderChildren(node); } else { Reference reference = node.getReferenceNode(referenceRepository); assert reference != null;