Skip to content

[3.0] code tag changes - #8891

Closed
live627 wants to merge 1 commit into
SimpleMachines:release-3.0from
live627:refactor/code-tag
Closed

[3.0] code tag changes#8891
live627 wants to merge 1 commit into
SimpleMachines:release-3.0from
live627:refactor/code-tag

Conversation

@live627

@live627 live627 commented Aug 27, 2025

Copy link
Copy Markdown
Contributor
  • wrap code in preformatted html tags
  • do the same in the sceditor
  • bonus: fix php tag processing in the sceditor
  • add buttons for selecting and expanding code blocks with js; don't output them from php
  • remove smfSelectText( ) as it is unused now

- wrap code in preformatted html tags
- do the same in the sceditor
- bonus: fix php tag processing in the sceditor
- do not add php start and end php tags to the final output of the php bbcode
- add buttons for selecting and expanding code blocks with js; don't output them from php
- remove smfSelectText( ) as it is unused now

Signed-off-by: John Rayes <live627@gmail.com>
@ThistleSifter

Copy link
Copy Markdown

For semantics and accessibility, what about replacing the div header with figure/figcaption?

<figure>
    <figcaption>PHP code: <button>Select</button> <button>Expand></button></figcaption>
    <pre><code>$foo</code></pre>
</figure>

@jdarwood007

Copy link
Copy Markdown
Member

@live627 This is in draft. Is that intended?

@jdarwood007 jdarwood007 changed the title code tag changes [3.0] code tag changes Oct 26, 2025
albertlast added a commit to albertlast/SMF2.1 that referenced this pull request Aug 1, 2026
…and build their buttons in JS

The code BBCode wrapped its content in a bare <code class="bbc_code">, and
emitted the "Select" and "Expand" links from PHP even when JavaScript was
unavailable to make them work. Tabs and leading/trailing line breaks had to
be fixed up by hand, in both the parser and the editor.

Wrap the content in a <pre> instead, so the browser preserves the whitespace,
and pass the button labels along as data attributes. script.js now builds the
buttons from those attributes, which means they only appear when they can
actually do something, and the "Expand" button only appears when the block is
taller than its maximum height.

Migrates every consumer of the old markup: the error log, the SSI examples
page, and the profile export. smfSelectText() has no callers left, so it goes;
UpgradeTemplate.php probes for attachBbCodeEvents() instead to detect whether
script.js loaded.

Wave 1, part 1 of breaking up SimpleMachines#7933. Supersedes SimpleMachines#8891.

Co-Authored-By: John Rayes <live627@gmail.com>
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@jdarwood007 jdarwood007 added this to the 3.0 Alpha 5 milestone Aug 1, 2026
@live627

live627 commented Aug 2, 2026

Copy link
Copy Markdown
Contributor Author

Superseded by #9332

@live627 live627 closed this Aug 2, 2026
@live627
live627 deleted the refactor/code-tag branch August 2, 2026 04:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants