Title: Kodosvet Code Block
Author: kotophalk
Published: <strong>August 25, 2026</strong>
Last modified: August 25, 2026

---

Search plugins

![](https://ps.w.org/kodosvet-code-block/assets/banner-772x250.png?rev=3666032)

![](https://ps.w.org/kodosvet-code-block/assets/icon-256x256.png?rev=3666032)

# Kodosvet Code Block

 By [kotophalk](https://profiles.wordpress.org/kotophalk/)

[Download](https://downloads.wordpress.org/plugin/kodosvet-code-block.1.1.0.zip)

 * [Details](https://wordpress.org/plugins/kodosvet-code-block/#description)
 * [Reviews](https://wordpress.org/plugins/kodosvet-code-block/#reviews)
 *  [Installation](https://wordpress.org/plugins/kodosvet-code-block/#installation)
 * [Development](https://wordpress.org/plugins/kodosvet-code-block/#developers)

 [Support](https://wordpress.org/support/plugin/kodosvet-code-block/)

## Description

Kodosvet Code Block is a zero-bloat Gutenberg block for displaying code with syntax
highlighting powered by Highlight.js.

**Key Features:**

 * **Native Gutenberg Block** — Full support for the visual editor with Server-Side
   Rendering.
 * **14 Color Themes** — Atom One, GitHub, Monokai, Dracula, Nord, VS Code, Stack
   Overflow, Night Owl, Gruvbox, Solarized, Panda, Tomorrow Night, Shades of Purple,
   Tokyo Night.
 * **Smart Language Detection** — Automatic language identification using multi-
   layered heuristics for PHP, Bash, JavaScript, SQL, JSON, XML, and more.
 * **Swift Guard** — Prevents Highlight.js from misidentifying code as Swift.
 * **Dark/Light Toggle** — Switch all code blocks on the page between dark and light
   themes with one click.
 * **Copy to Clipboard** — One-click code copying with visual feedback.
 * **Line Numbers** — Toggleable line number gutter.
 * **Legacy Migrator** — Built-in tool to scan and convert old `core/code` and `
   core/preformatted` blocks.
 * **Zero Bloat** — Assets are loaded only when a code block is present on the page.
 * **No jQuery** — Pure Vanilla JS on the frontend.

**Migrator Tool:**

Navigate to **Tools  Kodosvet Code Block** to scan your site for legacy code blocks
and migrate them to the modern Kodosvet format with a before/after preview.

### Third-Party Libraries

Syntax highlighting is powered by [Highlight.js](https://highlightjs.org/) 11.11.1,
bundled locally in `vendor/hljs/` (core build + 22 theme stylesheets). Highlight.
js is licensed under the BSD-3-Clause License; the unminified source is available
at [github.com/highlightjs/highlight.js](https://github.com/highlightjs/highlight.js).
No external requests are made at runtime.

## Screenshots

[⌊Code blocks on the frontend: Atom One Dark palette, language badge, line-numbers/
theme / copy buttons in the toolbar.⌉⌊Code blocks on the frontend: Atom One Dark
palette, language badge, line-numbers / theme / copy buttons in the toolbar.⌉[

Code blocks on the frontend: Atom One Dark palette, language badge, line-numbers/
theme / copy buttons in the toolbar.

[⌊Block editor: the block selected, Language and Title settings in the sidebar.⌉⌊
Block editor: the block selected, Language and Title settings in the sidebar.⌉[

Block editor: the block selected, Language and Title settings in the sidebar.

[⌊Tools → Kodosvet Code Block: scan results of the legacy block migrator.⌉⌊Tools
→ Kodosvet Code Block: scan results of the legacy block migrator.⌉[

Tools  Kodosvet Code Block: scan results of the legacy block migrator.

[⌊Light mode with line numbers turned on — one click switches every block on the
page.⌉⌊Light mode with line numbers turned on — one click switches every block on
the page.⌉[

Light mode with line numbers turned on — one click switches every block on the page.

[⌊Migrator preview modal: original core/code markup vs. the converted stodum/code-
block.⌉⌊Migrator preview modal: original core/code markup vs. the converted stodum/
code-block.⌉[

Migrator preview modal: original `core/code` markup vs. the converted `stodum/code-
block`.

## Installation

 1. Upload the `kodosvet-code-block` folder to `/wp-content/plugins/`.
 2. Activate the plugin through the ‘Plugins’ menu in WordPress.
 3. In the Block Editor, search for “Kodosvet” to insert a code block.
 4. Configure default theme and color palette under **Tools  Kodosvet Code Block**.

## FAQ

### Does this plugin require any build tools?

No. Kodosvet Code Block ships as vanilla JavaScript and CSS — no Node.js, webpack,
or build step required.

### How does the language auto-detection work?

The plugin uses a multi-layer approach:
 1. Explicit language selection in block
settings (highest priority). 2. Markdown fence detection (“`language). 3. First-
line language markers. 4. Smart heuristics for PHP, Bash, JavaScript, SQL, and other
languages. 5. Highlight.js auto-detection (with Swift Guard to prevent false positives).

### Can I migrate my existing code blocks?

Yes! Go to **Tools  Kodosvet Code Block** and click **Scan Posts**. The migrator
will find all posts with `core/code` or `core/preformatted` blocks and let you preview
and migrate them individually or in bulk.

### Does migration create revisions?

Yes. The migrator uses `wp_update_post()`, so WordPress creates a revision for each
migrated post. You can roll back through the standard Revisions interface.

### What happens when I delete the plugin?

The plugin removes its settings (theme preference and color palette) from the database.
Your code block content remains in the posts as Gutenberg block comments.

## Reviews

There are no reviews for this plugin.

## Contributors & Developers

“Kodosvet Code Block” is open source software. The following people have contributed
to this plugin.

Contributors

 *   [ kotophalk ](https://profiles.wordpress.org/kotophalk/)

[Translate “Kodosvet Code Block” into your language.](https://translate.wordpress.org/projects/wp-plugins/kodosvet-code-block)

### Interested in development?

[Browse the code](https://plugins.trac.wordpress.org/browser/kodosvet-code-block/),
check out the [SVN repository](https://plugins.svn.wordpress.org/kodosvet-code-block/),
or subscribe to the [development log](https://plugins.trac.wordpress.org/log/kodosvet-code-block/)
by [RSS](https://plugins.trac.wordpress.org/log/kodosvet-code-block/?limit=100&mode=stop_on_copy&format=rss).

## Changelog

#### 1.1.0

 * Renamed: plugin is now “Kodosvet Code Block” (slug `kodosvet-code-block`). Internal
   identifiers (block name `stodum/code-block`, option names, CSS classes) are unchanged
   so existing content keeps working.
 * Removed: bundled translation files and `load_plugin_textdomain()` — translations
   are handled by translate.wordpress.org.
 * Changed: `register_setting()` sanitize callbacks use `sanitize_key()` + strict
   whitelist comparison.

#### 1.0.9

 * Fixed: Migrator preview modal showed “undefined (undefined blocks)” instead of
   the post title and block count.
 * Fixed: Missing translator comments and unescaped output flagged by Plugin Check;`
   $wpdb->prepare()` call inlined.
 * Changed: Highlight.js script/style handles are now prefixed (`stodum-hljs-*`)
   to avoid clashes with other plugins.
 * Changed: Block title now has a small gap from the brand label in the toolbar.
 * Added: `Author URI`, `License URI`, LICENSE file for the bundled Highlight.js,“
   Third-Party Libraries” section in readme.
 * Added: JS translation JSON for the block editor (`wp i18n make-json`); POT/ru_RU
   refreshed.
 * Tested up to WordPress 7.0.

#### 1.0.8

 * Changed: Highlight.js is now bundled locally (vendor/hljs/). CDN dependency removed.
   Plugin is now fully self-contained and compatible with WordPress.org guidelines.

#### 1.0.7

 * Fixed: Block now uses `get_block_wrapper_attributes()` for proper wide/full alignment
   support.
 * Fixed: Migrator creates revisions via `wp_update_post()`.
 * Fixed: Migrate All AJAX array serialization.
 * Fixed: All editor strings now translatable.
 * Added: `uninstall.php` for clean removal.
 * Removed: Debug console.log output.

#### 1.0.6

 * Fixed: Complete rewrite of editor language detection with working Smart Heuristics.

#### 1.0.5

 * Added: Smart Language Heuristics for PHP, Bash, JavaScript.

#### 1.0.4

 * Fixed: Swift Auto-Detect Guard for Highlight.js 11+.

#### 1.0.3

 * Fixed: Data attribute naming mismatch and regex lastIndex bug.

#### 1.0.2

 * Fixed: Strict language mapping and `data-stodum-lang` signal.

#### 1.0.1

 * Added: Global markdown paste interceptor.

#### 1.0.0

 * Initial release.

## Meta

 *  Version **1.1.0**
 *  Last updated **2 days ago**
 *  Active installations **Fewer than 10**
 *  WordPress version ** 6.0 or higher **
 *  Tested up to **7.1**
 *  PHP version ** 7.4 or higher **
 * Tags
 * [code](https://wordpress.org/plugins/tags/code/)[code block](https://wordpress.org/plugins/tags/code-block/)
   [developer](https://wordpress.org/plugins/tags/developer/)[gutenberg](https://wordpress.org/plugins/tags/gutenberg/)
   [syntax highlighting](https://wordpress.org/plugins/tags/syntax-highlighting/)
 *  [Advanced View](https://wordpress.org/plugins/kodosvet-code-block/advanced/)

## Ratings

No reviews have been submitted yet.

[Your review](https://wordpress.org/support/plugin/kodosvet-code-block/reviews/#new-post)

[See all reviews](https://wordpress.org/support/plugin/kodosvet-code-block/reviews/)

## Contributors

 *   [ kotophalk ](https://profiles.wordpress.org/kotophalk/)

## Support

Got something to say? Need help?

 [View support forum](https://wordpress.org/support/plugin/kodosvet-code-block/)