PHPackages                             frontend-services/craft-soft-hyphen - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. frontend-services/craft-soft-hyphen

ActiveCraft-plugin[Utility &amp; Helpers](/categories/utility)

frontend-services/craft-soft-hyphen
===================================

Adds a soft hyphen (&amp;amp;shy;) and non breaking space (&amp;amp;nbsp;) button to CKEditor in Craft CMS

1.1.5(1mo ago)015proprietaryPHPPHP ^8.0

Since Mar 3Pushed 2mo agoCompare

[ Source](https://github.com/frontend-services/craft-soft-hyphen)[ Packagist](https://packagist.org/packages/frontend-services/craft-soft-hyphen)[ RSS](/packages/frontend-services-craft-soft-hyphen/feed)WikiDiscussions master Synced 1mo ago

READMEChangelogDependencies (4)Versions (13)Used By (0)

Soft Hyphen for Craft CMS
=========================

[](#soft-hyphen-for-craft-cms)

Adds **soft hyphen** (`&shy;`) and **non-breaking space** (`&nbsp;`) insert buttons to CKEditor fields, Plain Text fields, and the entry Title field in Craft CMS.

- **Soft hyphens** are invisible characters that hint the browser where it can break a word across lines. When the break happens, a hyphen is shown. Useful for long words in narrow columns or responsive layouts.
- **Non-breaking spaces** prevent line breaks between two words. Useful for keeping units together (e.g. "100 km") or after short prepositions.

Requirements
------------

[](#requirements)

- Craft CMS 4.0+
- CKEditor plugin 4.0+ (for CKEditor support)

Installation
------------

[](#installation)

```
composer require frontend-services/craft-soft-hyphen
php craft plugin/install soft-hyphen
```

---

CKEditor fields
---------------

[](#ckeditor-fields)

The plugin automatically injects itself into every CKEditor instance. No config pasting required.

To give editors a clickable toolbar button:

1. Go to **Settings → CKEditor** and open your config
2. Drag **Soft Hyphen** and/or **Non-Breaking Space** into your toolbar
3. Save

In the editor both characters are shown as visible markers so editors can see and manage them. On the frontend the markers are automatically replaced with real `&shy;` and `&nbsp;` characters. No frontend JavaScript or template changes needed.

---

Plain Text fields
-----------------

[](#plain-text-fields)

Each Plain Text field can independently have the insert buttons enabled.

1. Go to **Settings → Fields** and open a Plain Text field
2. Toggle **Soft Hyphen / NBSP buttons** on
3. Save the field

Two small buttons will appear next to the input in the entry editor, inserting the characters at the cursor position.

---

Title field
-----------

[](#title-field)

To show the insert buttons next to the title field on all entries:

1. Go to **Settings → Soft Hyphen**
2. Toggle **Title field buttons** on
3. Save

---

How visible proxy characters work
---------------------------------

[](#how-visible-proxy-characters-work)

Because `&shy;` and `&nbsp;` are invisible in plain `` and `` fields, the plugin displays them as visible stand-ins while editing:

Stored in databaseShown in the CP editorsoft hyphen `\u00AD`middle dot `·`non-breaking space `\u00A0`open box `␣`These proxy characters are **only used for display** — they are never saved to the database. When an entry is saved, the plugin automatically converts them back to the real `&shy;` and `&nbsp;` characters server-side before the value is persisted.

---

Uninstalling
------------

[](#uninstalling)

Uninstalling the plugin is safe. Before the plugin is removed it automatically cleans up its own field settings from the database, so Craft can load all Plain Text fields normally afterwards. No content is lost — any soft hyphens or non-breaking spaces already saved in your entries remain exactly as stored.

###  Health Score

41

—

FairBetter than 88% of packages

Maintenance95

Actively maintained with recent releases

Popularity8

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity45

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~2 days

Total

12

Last Release

40d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/e347987513af1c082a53b0db0113f75d01856118b08fc955dd7ff188eef34a05?d=identicon)[frontend.services](/maintainers/frontend.services)

---

Top Contributors

[![MatoTominac](https://avatars.githubusercontent.com/u/10546885?v=4)](https://github.com/MatoTominac "MatoTominac (17 commits)")

### Embed Badge

![Health badge](/badges/frontend-services-craft-soft-hyphen/health.svg)

```
[![Health](https://phpackages.com/badges/frontend-services-craft-soft-hyphen/health.svg)](https://phpackages.com/packages/frontend-services-craft-soft-hyphen)
```

###  Alternatives

[spicyweb/craft-neo

A Matrix-like field type with block hierarchy

395798.1k10](/packages/spicyweb-craft-neo)[verbb/formie

The most user-friendly forms plugin for Craft.

101372.9k40](/packages/verbb-formie)[solspace/craft-freeform

The most flexible and user-friendly form building plugin!

52664.9k12](/packages/solspace-craft-freeform)[supercool/tablemaker

Create customizable and user-defined table fields.

40141.7k](/packages/supercool-tablemaker)[verbb/vizy

A flexible visual editor field for Craft.

4348.6k](/packages/verbb-vizy)[verbb/social-poster

Automatically post entries to social media.

918.5k](/packages/verbb-social-poster)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
