Writing می and ها without ZWNJ

Persian می‌ and plural ـها belong to the word they modify, but standard digital spelling normally separates them from the stem with a zero-width non-joiner (ZWNJ, U+200C): می‌روم، نمی‌دانم، کتاب‌ها، خانه‌های. A normal space separates independent words; full joining erases a morphological boundary. ZWNJ expresses the middle category: one grammatical word with a visible or encoded internal boundary.

This is not cosmetic. Correct boundaries make forms searchable, keep line wrapping stable, distinguish suffixes from independent material, and allow software to recognize word families. Some boundaries look identical because ا، د، ذ، ر، ز، ژ، و do not connect to a following letter, but the underlying code point still matters in house style.

Diagnose the Boundary, Not the Pixels

StructureCorrect house formBoundary
imperfective prefix + verbمی‌خوانمZWNJ after می
negative imperfective + verbنمی‌خوانمZWNJ after نمی
noun + productive pluralکتاب‌هاZWNJ before ها
plural + written ezâfeکتاب‌های منZWNJ before ها; no break inside های
lexical compoundبرنامه‌نویسdictionary/orthographic convention

ZWNJ is not an ordinary hyphen. The hyphen in romanization—mi-khânam, ketâb-hâ—helps learners see morphology, but Persian target text uses the invisible control character. The keyboard and code-point procedure are explained on Spaces, Half-Spaces, and the ZWNJ.

💡
Use meaning and morphology to place ZWNJ: prefix–stem or stem–suffix. Do not insert it wherever a word merely “looks crowded.”

Common Mistakes

1. Replacing the می‌ Boundary with a Full Space

An ordinary space tells software that می and the verb are separate tokens. Standard می‌نویسد is one inflected verb.

❌ نیلوفر هر هفته برای مجله می نویسد.

Incorrect standard spacing — imperfective می‌ requires ZWNJ before the verb stem.

✅ نیلوفر هر هفته برای مجله می‌نویسد.

Nilufar har hafte barâ-ye majalle mi-nevisad.

Niloufar writes for the magazine every week.

The same rule applies to نمی‌: نمی‌خواهم، نمی‌رسد، نمی‌دانستند. The negative نـ is part of the prefixal complex, not a reason to add another space.

2. Fully Joining Productive Plural ها

After a joinable final letter, full joining visibly erases the suffix boundary: کتابها. Standard house spelling is کتاب‌ها.

❌ گزارشها را تا ظهر روی میز من بگذار.

Incorrect house orthography — productive ها needs a ZWNJ after گزارش.

✅ گزارش‌ها را تا ظهر روی میز من بگذار.

gozâresh-hâ râ tâ zohr ru-ye miz-e man begozâr.

Put the reports on my desk by noon.

After non-joining ا or و, a stored ZWNJ may not change the visible shape: house style still records صدا‌ها، دانشجو‌ها. Search and editing tools can distinguish the code points even when readers cannot.

3. Breaking Plural ها away from Its Ezâfe ی

In خانه‌های قدیمی, the internal order is خانه + ZWNJ + ها + ی. The final ی writes ezâfe after the plural suffix; it is not an independent word and does not take a space.

❌ خانه‌ ها ی قدیمی این خیابان حیاط بزرگی داشتند.

Incorrect segmentation — neither the space before ها nor the separate ی represents the inflected noun correctly.

✅ خانه‌های قدیمی این خیابان حیاط بزرگی داشتند.

khâne-hâ-ye ghadimi-ye in khiyâbân hayât-e bozorgi dâshtand.

The old houses on this street had large courtyards.

See Plural ها and Comparative تر with ZWNJ for vowel-final hosts and comparative forms.

4. Assuming Every Compound Uses an Ordinary Space

Lexical compounds have conventional spellings. Transparent برنامه‌نویس uses ZWNJ; راه‌آهن does too, while other established words are solid. A learner cannot replace every compound boundary with a normal space.

❌ برنامه نویس تازه هفته‌ی بعد کارش را شروع می‌کند.

Incorrect standard spelling — برنامه‌نویس is a lexical compound with ZWNJ.

✅ برنامه‌نویس تازه هفته‌ی بعد کارش را شروع می‌کند.

barnâme-nevis-e tâze hafte-ye ba'd kâr-ash râ shoru' mi-konad.

The new programmer starts work next week.

Compound spelling is more lexical than می‌ and ـها spelling. Do not infer that every semantic combination needs ZWNJ either; consult Word Division in Compounds and Derivatives.

5. Removing ZWNJ from Colloquial Forms

Colloquial spelling may represent a reduced pronunciation, but the prefix remains a prefix. House style writes می‌خوام، نمی‌دونم، می‌گن, not fully joined strings. Register changes sound and sometimes letters; it does not abolish word structure.

❌ نمیخوام فردا دوباره این مسیر رو برم.

Incorrect house spelling — the verbal prefix boundary requires ZWNJ after نمی‌.

✅ نمی‌خوام فردا دوباره این مسیر رو برم.

nemi-khâm fardâ dobâre in masir ro beram.

I don't want to take this route again tomorrow. (informal, regional: Tehran)

6. Missing a Boundary That Changes the Intended Analysis

With the conventional preverb, بازمی‌گردد means “returns.” Written باز می‌گردد can instead support an analysis in which independent باز means “again” and می‌گردد means “turns/wanders,” especially in elevated language. The full-space version is therefore grammatical in a suitable context but not a harmless spelling of every “return.”

⚠️ چرخ باز می‌گردد و در نقطه‌ی اول می‌ایستد.

charkh bâz mi-gardad va dar noghte-ye avval mi-istad.

The wheel turns again and stops at the starting point. (grammatical; باز is an independent adverb here)

✅ مدیر عصر از سفر بازمی‌گردد.

modir asr az safar bâz-mi-gardad.

The manager returns from the trip this evening. (باز is the lexical preverb)

This contrast is not available with every verb, but it shows why boundary data can carry analysis rather than decoration.

7. Importing Arabic Yeh or Kaf While Fixing the ZWNJ

A string may contain the right half-space and still violate Iranian Persian encoding. Use Persian ی U+06CC and ک U+06A9, not Arabic ي or ك pasted from another keyboard.

❌ كتاب‌های جديد را كي می‌فرستيد؟

Incorrect Iranian Persian encoding — كتاب، جديد، كي, and می‌فرستيد contain Arabic letter variants.

✅ کتاب‌های جدید را کی می‌فرستید؟

ketâb-hâ-ye jadid râ key mi-ferestid?

When will you send the new books?

Searchability and Editing

Searching for می‌نویسد may not find می نویسد or مینویسد unless the software normalizes boundaries. Copying text between editors can also replace ZWNJ with a normal space. Inspect code points when a word wraps incorrectly or search results are incomplete; visual comparison is insufficient after non-joining letters.

💡
A reliable proofreading pass searches separately for full-space می , fully joined میـ, full-space ها, and Arabic ي/ك. Each pattern diagnoses a different input problem.

Key Takeaways

  • Use ZWNJ after verbal می‌ / نمی‌ and before productive plural ـها.
  • Keep plural های together: کتاب‌های من, not کتاب‌ ها ی من.
  • Colloquial reductions retain morphological boundaries in house spelling.
  • Compound ZWNJ is lexical and cannot be assigned by one universal visual rule.
  • Correct code points improve search, editing, and pronunciation pipelines even when the ZWNJ is visually inert.

Now practice Farsi

Reading grammar gets you part of the way. The exercises are where it sticks — free, no signup needed.

Start learning Farsi

Related Topics