This is an automated email from the ASF dual-hosted git repository. Cole-Greer pushed a commit to branch docs-3.7 in repository https://gitbox.apache.org/repos/asf/tinkerpop.git
commit b9fc92ca8ca55e83859cf5be7c498bc16f752a5c Author: Cole Greer <[email protected]> AuthorDate: Tue May 26 13:00:48 2026 -0700 Fix standalone tab groups, callout style, and clear-shadow - Standalone tab groups now consume consecutive [source,lang] blocks even without the 'tab' attribute (matching published behavior) - Callout conums use class="conum" (not "conum invisible") matching published format; use class="comment" for // spans - Remove clear-shadow divs from tab HTML (not in published output) - Remove postprocessor invisible/hide-when-copy transformations that were overriding the correct format --- .../apache/tinkerpop/gremlin/docs/GremlinPostprocessor.java | 11 ++--------- .../apache/tinkerpop/gremlin/docs/GremlinTreeprocessor.java | 4 ++-- .../org/apache/tinkerpop/gremlin/docs/TabbedHtmlBuilder.java | 4 +--- .../tinkerpop/gremlin/docs/GremlinPostprocessorTest.java | 6 ++---- .../apache/tinkerpop/gremlin/docs/TabbedHtmlBuilderTest.java | 4 ++-- 5 files changed, 9 insertions(+), 20 deletions(-) diff --git a/tools/tinkerpop-docs/src/main/java/org/apache/tinkerpop/gremlin/docs/GremlinPostprocessor.java b/tools/tinkerpop-docs/src/main/java/org/apache/tinkerpop/gremlin/docs/GremlinPostprocessor.java index 1698252f96..1f4fad4b8b 100644 --- a/tools/tinkerpop-docs/src/main/java/org/apache/tinkerpop/gremlin/docs/GremlinPostprocessor.java +++ b/tools/tinkerpop-docs/src/main/java/org/apache/tinkerpop/gremlin/docs/GremlinPostprocessor.java @@ -45,17 +45,10 @@ public class GremlinPostprocessor extends Postprocessor { public String process(final Document document, final String output) { String result = output; - // 1. Callout fix: add invisible class to conum elements - result = CONUM_PATTERN.matcher(result).replaceAll("<$1 class=\"conum invisible\""); - - // 2. Wrap // before callouts in hide-when-copy span - result = COMMENT_BEFORE_CONUM_PATTERN.matcher(result).replaceAll( - "<span class=\"hide-when-copy\">//</span> $1"); - - // 3. Remove empty comment spans + // 1. Remove empty comment spans from CodeRay result = EMPTY_COMMENT_SPAN_PATTERN.matcher(result).replaceAll(""); - // 4. Replace x.y.z with actual version + // 2. Replace x.y.z with actual version final String version = resolveVersion(document); if (version != null) { result = result.replace("x.y.z", version); diff --git a/tools/tinkerpop-docs/src/main/java/org/apache/tinkerpop/gremlin/docs/GremlinTreeprocessor.java b/tools/tinkerpop-docs/src/main/java/org/apache/tinkerpop/gremlin/docs/GremlinTreeprocessor.java index e3564eaf92..2ab4e73141 100644 --- a/tools/tinkerpop-docs/src/main/java/org/apache/tinkerpop/gremlin/docs/GremlinTreeprocessor.java +++ b/tools/tinkerpop-docs/src/main/java/org/apache/tinkerpop/gremlin/docs/GremlinTreeprocessor.java @@ -308,7 +308,7 @@ public class GremlinTreeprocessor extends Treeprocessor { final java.util.regex.Matcher nums = java.util.regex.Pattern .compile("<(\\d+)>").matcher(calloutMarkers[i]); while (nums.find()) { - result.append(" <span class=\"hide-when-copy\">//</span> <b class=\"conum invisible\">(") + result.append(" <span class=\"comment\">//</span> <b class=\"conum\">(") .append(nums.group(1)).append(")</b>"); } } @@ -354,7 +354,7 @@ public class GremlinTreeprocessor extends Treeprocessor { int lastIndex = startIndex; for (int j = startIndex; j < blocks.size(); j++) { final StructuralNode block = blocks.get(j); - if (isStandaloneTabBlock(block)) { + if (isStandaloneTabBlock(block) || isManualTabBlock(block)) { final Block sourceBlock = (Block) block; final String lang = getSourceLanguage(sourceBlock); tabs.add(TabbedHtmlBuilder.codeTab(lang, sourceBlock.getSource())); diff --git a/tools/tinkerpop-docs/src/main/java/org/apache/tinkerpop/gremlin/docs/TabbedHtmlBuilder.java b/tools/tinkerpop-docs/src/main/java/org/apache/tinkerpop/gremlin/docs/TabbedHtmlBuilder.java index ababcb52c2..707f918c0b 100644 --- a/tools/tinkerpop-docs/src/main/java/org/apache/tinkerpop/gremlin/docs/TabbedHtmlBuilder.java +++ b/tools/tinkerpop-docs/src/main/java/org/apache/tinkerpop/gremlin/docs/TabbedHtmlBuilder.java @@ -32,7 +32,6 @@ import java.util.regex.Pattern; * <input type="radio" name="tab-group-ID" id="tab-ID-1" class="tab-selector-1" checked> * <label for="tab-ID-1" class="tab-label-1">Label</label> * ... - * <div class="clear-shadow"></div> * <div class="tabcontent"> * <div class="tabcontent-1">...</div> * ... @@ -129,7 +128,6 @@ public class TabbedHtmlBuilder { .append(escapeHtml(tabs.get(i).getLabel())).append("</label>\n"); } - html.append(" <div class=\"clear-shadow\"></div>\n"); html.append(" <div class=\"tabcontent\">\n"); // Tab content panels @@ -285,7 +283,7 @@ public class TabbedHtmlBuilder { final java.util.regex.Matcher nums = java.util.regex.Pattern .compile("<(\\d+)>").matcher(calloutsPart); while (nums.find()) { - sb.append(" <span class=\"hide-when-copy\">//</span> <b class=\"conum invisible\">(") + sb.append(" <span class=\"comment\">//</span> <b class=\"conum\">(") .append(nums.group(1)).append(")</b>"); } return sb.toString(); diff --git a/tools/tinkerpop-docs/src/test/java/org/apache/tinkerpop/gremlin/docs/GremlinPostprocessorTest.java b/tools/tinkerpop-docs/src/test/java/org/apache/tinkerpop/gremlin/docs/GremlinPostprocessorTest.java index 67ffada29e..ca2775d021 100644 --- a/tools/tinkerpop-docs/src/test/java/org/apache/tinkerpop/gremlin/docs/GremlinPostprocessorTest.java +++ b/tools/tinkerpop-docs/src/test/java/org/apache/tinkerpop/gremlin/docs/GremlinPostprocessorTest.java @@ -34,8 +34,7 @@ import static org.hamcrest.MatcherAssert.assertThat; public class GremlinPostprocessorTest { @Test - public void shouldAddInvisibleClassToConumElements() { - // Process through Asciidoctor with a callout to trigger conum generation + public void shouldNotModifyConumElements() { try (final Asciidoctor asciidoctor = Asciidoctor.Factory.create()) { final String input = "= Test\n\n" + "[source,java]\n----\nint x = 1; // <1>\n----\n<1> Sets x\n"; @@ -43,8 +42,7 @@ public class GremlinPostprocessorTest { .attributes(Attributes.builder().attribute("tinkerpop-version", "3.7.7").build()) .build(); final String result = asciidoctor.convert(input, options); - // The postprocessor (SPI-registered) should have added invisible class - assertThat(result, containsString("conum invisible")); + assertThat(result, containsString("conum")); } } diff --git a/tools/tinkerpop-docs/src/test/java/org/apache/tinkerpop/gremlin/docs/TabbedHtmlBuilderTest.java b/tools/tinkerpop-docs/src/test/java/org/apache/tinkerpop/gremlin/docs/TabbedHtmlBuilderTest.java index e26efc99f7..20e5f59622 100644 --- a/tools/tinkerpop-docs/src/test/java/org/apache/tinkerpop/gremlin/docs/TabbedHtmlBuilderTest.java +++ b/tools/tinkerpop-docs/src/test/java/org/apache/tinkerpop/gremlin/docs/TabbedHtmlBuilderTest.java @@ -106,11 +106,11 @@ public class TabbedHtmlBuilderTest { } @Test - public void shouldGenerateClearShadowDiv() { + public void shouldNotGenerateClearShadowDiv() { final List<TabbedHtmlBuilder.Tab> tabs = Collections.singletonList( TabbedHtmlBuilder.consoleTab("groovy", "output")); final String html = builder.build(tabs); - assertThat(html, containsString("<div class=\"clear-shadow\"></div>")); + assertThat(html, not(containsString("<div class=\"clear-shadow\"></div>"))); } @Test
