AsciiDocPreviewExtensionRegistry.java
package pro.verron.asciidoc.preview;
import org.asciidoctor.Asciidoctor;
import org.asciidoctor.jruby.extension.spi.ExtensionRegistry;
/// Registers the [AsciiDocPreviewBlockMacro] extension with Asciidoctor,
/// enabling the `preview::` block macro for embedding visual previews of
/// AsciiDoc templates within a document.
///
/// @see AsciiDocPreviewBlockMacro
public class AsciiDocPreviewExtensionRegistry
implements ExtensionRegistry {
private final String macroName;
/// Constructs a new registry that registers the `preview` macro.
public AsciiDocPreviewExtensionRegistry() {
macroName = "preview";
}
@Override
public void register(Asciidoctor asciidoctor) {
var javaExtensionRegistry = asciidoctor.javaExtensionRegistry();
var macroProcessor = new AsciiDocPreviewBlockMacro(macroName);
javaExtensionRegistry.blockMacro(macroProcessor);
}
}