From a2ef9a828f0bddaa415e18669eed7f498d1e98b9 Mon Sep 17 00:00:00 2001 From: Barrett Ruth Date: Wed, 4 Mar 2026 14:48:12 -0500 Subject: [PATCH] fix(presets): add --failure-level ERROR to asciidoctor args Problem: asciidoctor exits 0 even when it encounters ERROR-level messages, so the compiler treats every run as a success and never invokes error_parser. Errors are silently embedded as visible text in the HTML output instead of surfacing as diagnostics. Solution: pass --failure-level ERROR so asciidoctor exits non-zero on errors, which triggers error_parser and surfaces diagnostics. --- lua/preview/presets.lua | 2 +- spec/presets_spec.lua | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/lua/preview/presets.lua b/lua/preview/presets.lua index 8a23766..30693ff 100644 --- a/lua/preview/presets.lua +++ b/lua/preview/presets.lua @@ -246,7 +246,7 @@ M.asciidoctor = { ft = 'asciidoc', cmd = { 'asciidoctor' }, args = function(ctx) - return { ctx.file, '-o', ctx.output } + return { '--failure-level', 'ERROR', ctx.file, '-o', ctx.output } end, output = function(ctx) return (ctx.file:gsub('%.adoc$', '.html')) diff --git a/spec/presets_spec.lua b/spec/presets_spec.lua index ab030f0..9259d5a 100644 --- a/spec/presets_spec.lua +++ b/spec/presets_spec.lua @@ -467,7 +467,7 @@ describe('presets', function() it('returns args with file and output', function() assert.are.same( - { '/tmp/document.adoc', '-o', '/tmp/document.html' }, + { '--failure-level', 'ERROR', '/tmp/document.adoc', '-o', '/tmp/document.html' }, presets.asciidoctor.args(adoc_ctx) ) end)