fix(single): align article code blocks with the reference theme
The article body ran two highlighting pipelines at once: the runtime EnlighterJS pass (same one the comment area uses) plus a bespoke precode.js enhancer, and a hand-rolled .code-block skin. The two disagreed, so rendered blocks carried a dark #282c34 card with 15px padding, 14px text, a border and a second copy button stacked on top of the EnlighterJS toolbar. Drop the parallel path and let one pipeline own code blocks: - delete precode.js, single-post/code-blocks.css and the unused assets/js/enlighter copy that only precode.js referenced - drop the now-dead has_code requirement (PHP scan + feature enqueue) - render pre exactly as the reference does: bootstrap's pre box (9.5px padding / 13px / radius 4) plus main.css's muted background, with the EnlighterJS theme supplying the skin Also scope the inline-code skin to :not(pre code) so it stops painting the block background pink, and remap the toolbar copy glyph: \f0ea is the clipboard in FA4 but "paste" in FA5; the clipboard is \f328. Verified against the reference at 1440px both themes: pre 13px/18.57, 9.5px padding, radius 4, muted background; EnlighterJS block heights 151.31 / 60.38 match exactly.
This commit is contained in:
1 parent
ba32e0ef9c
commit
8ad5ef9aff
19 files changed
+112
-430
No files matched your search
@@ -689,7 +689,6 @@ test('single articles enqueue only content and settings driven assets', () => {
|
||||
assert.doesNotMatch(singleBlock, /\$enqueue_module\('single-post'\)|\$enqueue_module\('comments'\)/);
|
||||
|
||||
for (const requirement of [
|
||||
'has_code',
|
||||
'needs_navigation',
|
||||
'needs_cover',
|
||||
'needs_related_toc',
|
||||
@@ -707,7 +706,6 @@ test('single articles enqueue only content and settings driven assets', () => {
|
||||
assert.match(singleBlock, new RegExp(`singular_assets\\['${requirement}'\\]`));
|
||||
}
|
||||
|
||||
assert.match(runtime, /wp:\(\?:code\|preformatted\|jio\\\/enlighter\)/);
|
||||
assert.match(runtime, /\$requirements\['has_toc'\] = \$is_article && \$article_nav_enabled/);
|
||||
assert.match(runtime, /data-jio-video/);
|
||||
assert.match(runtime, /post_password_required\(\$post_id\)/);
|
||||
@@ -718,7 +716,6 @@ test('single articles enqueue only content and settings driven assets', () => {
|
||||
assert.match(runtime, /needs_share'[\s\S]*?share_enabled/);
|
||||
|
||||
for (const requirement of [
|
||||
'has_code',
|
||||
'has_toc',
|
||||
'has_video',
|
||||
'needs_reward',
|
||||
|
||||
Reference in new issue
Block a user