=== BlockExpander === Contributors: tinkergrove Tags: gutenberg, blocks, emmet, editor, productivity Requires at least: 6.2 Tested up to: 6.9 Requires PHP: 7.4 Stable tag: 0.1.0 License: GPL-2.0-or-later License URI: https://www.gnu.org/licenses/gpl-2.0.html Emmet-style shorthand for creating Gutenberg blocks via keyboard shortcut. == Description == BlockExpander enables a fast, code-inspired workflow for assembling page structures in the WordPress block editor using Emmet-style shorthand syntax. **How It Works:** 1. Press `Ctrl+Shift+E` (or `Cmd+Shift+E` on Mac) to open the BlockExpander modal 2. Enter an Emmet expression (e.g., `columns>column*3>paragraph`) 3. Press Enter to expand the expression into blocks 4. Blocks are inserted at your cursor location **Syntax Examples:** * `paragraph` - Creates a paragraph block * `columns>column*3` - Creates a columns block with 3 columns * `group.container` - Creates a group block with class "container" * `group#hero` - Creates a group block with anchor "hero" * `paragraph{Hello World}` - Creates a paragraph with custom text **Features:** * Familiar Emmet syntax for rapid block creation * Keyboard-triggered modal for seamless workflow * Supports nesting, multiplication, classes, IDs, and text content * Automatic Lorem Ipsum placeholder text for content blocks * Fully compatible with all core Gutenberg blocks == Installation == 1. Upload the plugin files to `/wp-content/plugins/blockexpander`, or install through the WordPress plugins screen 2. Activate the plugin through the 'Plugins' screen in WordPress 3. In the block editor, press `Ctrl+Shift+E` (or `Cmd+Shift+E`) to open the expander == Frequently Asked Questions == = What is Emmet? = Emmet is a toolkit for web developers that uses CSS-selector-like abbreviations to rapidly generate HTML structures. BlockExpander adapts this approach for Gutenberg blocks. = What keyboard shortcut opens the modal? = `Ctrl+Shift+E` on Windows/Linux or `Cmd+Shift+E` on Mac. = Can I use any block name? = Yes! Any tag name becomes `core/`. For example, `paragraph` becomes `core/paragraph`, `columns` becomes `core/columns`, etc. == Changelog == = 0.1.0 = * Initial release * Emmet expression parsing via @emmetio/abbreviation * Modal UI with keyboard shortcut * Support for nesting, multiplication, classes, IDs, and text content