Insert Special Characters

Description

Ever wanted to add a special character while working within the WordPress block editor (Gutenberg) and suddenly find yourself longing for the days of the Classic Editor and the Special Character inserter? Well long no more, the Insert Special Characters plugin is here to ease your publishing woes!

Note: you can display the popover via the ctrl/cmd + o keyboard shortcut.

Development takes place in the GitHub repository.

Technical Notes

Extending

To control the available tabs and characters, developers can filter the data set using the insertspecialcharacters-characters JavaScript (wp.hooks) filter.

For example, to create a character inserter that only provides currency symbols:

wp.hooks.addFilter(
    'insertspecialcharacters-characters',  // The filter name.
    'mycallback', // Our callback namespace.
    function( component ) { // The callback function.

        // Return the categories/characters to display.
        // The data structure is: { category: [ character data ], category2: ... }
        return {
            "Currency": [
                { "entity": "$", "hex": "", "name": "Dollar Sign", "char": "$" },
                { "entity": "€", "hex": "&#20AC;", "name": "Euro Sign", "char": "€" },
                { "entity": "¢", "hex": "&#00A2;", "name": "Cent Sign", "char": "¢" },
                { "entity": "£", "hex": "&#00A3;", "name": "Pound Sign", "char": "£" },
                { "entity": "¥", "hex": "&#00A5;", "name": "Yen Sign", "char": "¥" },
            ]
        };
    }
);

Screenshots

  • Example of special characters selection in the Block Editor.
  • “Special Characters” option in Paragraph Block menu.
  • Initial special characters, showing the “Math” character set.
  • Filtering the special characters via search.
  • Resulting inserted special character (note focus on special character, rest of window has been blurred).

Installation

  1. Install the plugin via the plugin installer, either by searching for it or uploading a .zip file.
  2. Activate the plugin.
  3. Use Insert Special Characters!

FAQ

How come I do not see all the special characters?

When a character is displayed using a font that doesn’t support that character, a default “not defined” glyph from that font is used. The “not defined” glyph in most fonts has the appearance of a rectangular box, or some variation of that.

One example of a font with support for wide range of glyphs is the Noto family by Google Fonts, which can be loaded by the theme to render the missing characters.

Reviews

21 มิถุนายน 2024 1 reply
As a lover of em dashes, en dashes, diacritics, and typography and Unicode in general, and a pedant for using the precise, proper characters where they are appropriate, this plugin does exactly what I need it to do. It works very similarly to the insert-special-characters feature of MediaWiki’s VisualEditor plugin, which I also love. Bravo for this, and please keep up the good work.
7 ตุลาคม 2020 1 reply
THANK YOU! I am a typographer from way back when I was hand-setting (and pieing — the term for spilling) little pieces of metal in the forms of letters, numbers & dingbats. Special Characters is the WordPress feature I have missed most in Gutenberg, and your plugin is the first & only that makes inserting Special Characters easy and enjoyable. Look for a donation from this old type lover! ❤
28 ตุลาคม 2019 1 reply
Thank You! It solves a big problem in Gutenberg, which misses this function!
3 ตุลาคม 2019 1 reply
Thank you for this great plugin! WHY special characters are STILL absent from the Gutenberg Wordpress editor — though it has been requested numerous times — is quite the annoyance. This plugin is perfect! Thanks again!
1 กันยายน 2019 1 reply
This is perfect for me. Thanks for developing it!If there was an option to move it to the main toolbar without the need to use the dropdown, it would be a six-star product
Read all 8 reviews

Contributors & Developers

“Insert Special Characters” is open source software. The following people have contributed to this plugin.

Contributors

“Insert Special Characters” has been translated into 5 locales. Thank you to the translators for their contributions.

Translate “Insert Special Characters” into your language.

Interested in development?

Browse the code, check out the SVN repository, or subscribe to the development log by RSS.

Changelog

1.1.3 – 2024-11-18

  • Changed: Update the UI to be more consistent with WordPress core props (@psorensen, @fabiankaegy via #263).
  • Changed: Clean up NPM dependencies and update node to v20 (props @Sidsector9, @dkotter via #238).
  • Changed: Bump WordPress “tested up to” version 6.7 (props @sudip-md, @sonali886, @godleman, @jeffpaul, @dkotter via #260, #261, #273, #274).
  • Security: Bump express from 4.18.2 to 4.19.2, follow-redirects from 1.15.5 to 1.15.6, ip from 1.1.8 to 1.1.9 and webpack-dev-middleware from 5.3.3 to 5.3.4 (props @dependabot, @iamdharmesh via #254).
  • Security: Bump braces from 3.0.2 to 3.0.3, pac-resolver from 7.0.0 to 7.0.1, socks from 2.7.1 to 2.8.3, ws from 7.59 to 7.5.10 and removes ip (props @dependabot, @faisal-alvi via #259).
  • Security: Bump axios from 1.6.7 to 1.7.7, body-parser from 1.20.2 to 1.20.3, express from 4.19.2 to 4.21.0, ws from 7.5.10 to 8.18.0, @wordpress/scripts from 27.1.0 to 29.0.0 and webpack from 5.90.0 to 5.94.0 (props @dependabot, @Sidsector9 via #267, #268).

1.1.2 – 2024-01-08

1.1.1 – 2023-10-17

  • Fixed: Address an issue where some blocks would crash due to a missing attribute (props @dkotter via #221).
  • Security: Bump @babel/traverse from 7.20.5 to 7.23.2 (props @dependabot, @dkotter via #219).

1.1.0 – 2023-10-16

Further changelog entries can be found in the CHANGELOG.md file.