This old post describes why I needed to replace Microsoft Windows’ own Persian (Farsi) keyboard layout—kbdfa.dll.
The new Chortkeh Persian Keyboard Layout (kbdfa.dll) Revision 4 (June 10, 2009), compatible with Windows 7, adds support for Arabic Hamza Above (U+0654) and Arabic Decimal Separator (U+066B) comparing to its predecessor.
Please note both the x86 and x64 compilations are available in three types, representing Persian or Latin numbers on the main section of the keyboard and the numeric keypad.
Installer [Updated December 19, 2015]
- Download Chortkeh Keyboard Layout Installer for Windows 10, 8.1, 8, 7, Vista, XP and Windows Server 2016, 2012 R2, 2012, 2008 R2, 2008, 2003 (chortkeh-install-kbdfa.cmd, Revision 4, December 19, 2015)
Type 1: Latin Numeric Keypad, Latin Upper Numeric Row
- Download Chortkeh Persian Keyboard Layout with Latin numbers for Windows 32-Bit Family (x86) (kbdfa.dll, Revision 4, June 10, 2009)
- Download Chortkeh Persian Keyboard Layout with Latin numbers for Windows 64-Bit Family (x64) (kbdfa.dll, Revision 4, June 10, 2009)
Type 2: Latin Numeric Keypad, Persian Upper Numeric Row
- Download Chortkeh Persian Keyboard Layout with Latin numeric keypad for Windows 32-Bit Family (x86) (kbdfa.dll, Revision 4, June 10, 2009)
- Download Chortkeh Persian Keyboard Layout with Latin numeric keypad for Windows 64-Bit Family (x64) (kbdfa.dll, Revision 4, June 10, 2009)
Type 3: Persian Numeric Keypad, Persian Upper Numeric Row
- Download Chortkeh Persian Keyboard Layout with Persian numeric keypad for Windows 32-Bit Family (x86) (kbdfa.dll, Revision 4, June 10, 2009)
- Download Chortkeh Persian Keyboard Layout with Persian numeric keypad for Windows 64-Bit Family (x64) (kbdfa.dll, Revision 4, June 10, 2009)
How to Install
Download and save both the keyboard layout installer (
chortkeh-install-kbdfa.cmd) and the Persian keyboard layout (
kbdfa.dll) at the same folder, and run as administrator
chortkeh-install-kbdfa.cmd. Then in the command-line you need to press “c” and hit Enter to continue with the installation. Please note once finished, the installer will restart your system, so save any unsaved work, and close running programs before launching the installer. Also please note you need to be an administrator to be able to modify system files.
Thanks, i try the chortke kbdfa on windows seven 64 and it works fine, but it would be better if shift+space defined into chortke kbdfa.
thank you very much this is a great tool. the only thing is that in my computer i can’t use ي properly. would you please help me. thank you in advance.
The character you’ve mentioned, “ي” (U+064A) called Arabic Letter Yeh, is not a Persian letter, and because of that, Chortkeh Persian Keyboard Layout doesn’t include it. The right character for that purpose is “ی” (U+06CC) called Arabic Letter Farsi Yeh.
Thanks for the answer. it is OK with for example B Nazanin font but when i use Nazanin font i cant have small yeh it always shows Big one. what can i do?
All fonts with the “B” prefix, were designed by Borna Rayaneh for Parsa, like a century ago. Prior to Version 2.01 (Build 1379), they didn’t have the glyphs for the initial (چسبان اول) and medial (چسبان وسط) forms of U+06CC Persian Yeh. They only included the glyphs for the final (چسبان آخر) and isolated (تنهای آخر) forms. So, when you use those fonts, Windows GDI, in its wisdom, displays the existing capital forms of Yeh instead of nonexisting small form glyphs. Apart from Persian/Farsi Yeh of the past, even today, Borna fonts lack a few other essential glyphs including Arabic Hamza Above (U+0654). I’m totally against using Arabic Yeh, even for representing the missing initial and medial forms of Yeh, so Chortkeh Persian Keyboard Layout—unlike Microsoft’s—won’t contain Arabic Yeh, ever. Suggestion: Use Microsoft fonts with full Persian Unicode subrange defined:
Andalus, Arabic Typesetting, Arial, Courier New, Microsoft Sans Serif, Microsoft Uighur, Sakkal Majalla, Segoe UI, Simplified Arabic, Simplified Arabic Fixed, Tahoma, Times New Roman, Traditional Arabic
Take a look at Sakkal Majalla, a really nice new font included in Windows 7.
Thanks a lot
On January 5, 2014 (۱۵ دی ۱۳۹۲), scict.ir (شورای عالی اطلاعرسانی) released 39 typefaces (59 files) which include fixed editions of the old Borna Rayaneh “B” series fonts. Now, the first problem is you need to edit your documents and change paragraphs with
IRNazanin, and then the second problem is the difference between glyph parameters including character width and kerning, which affects word length (in pixels) and consequently makes your entire paragraph’s length incompatible with the old fonts, and lines break at different locations while staying at the same font size.
List of files, typefaces and their Persian names:
IRAban.ttfIRAban Aban آبان
IRAmir.ttfIRAmir Amir امیر
IRArshia.ttfIRArshia Arshia ارشیا
IRBadrIranic.ttfIRBadr Badr بدر
IRCompsetIranic.ttfIRCompset Compset کامپست
IRDastNevis.ttfIRDastNevis DastNevis دست نویس
IRDavat.ttfIRDavat Davat دوات
IRElham.ttfIRElham Elham الهام
IREntezar.ttfIREntezar Entezar انتظار
IRFarnaz.ttfIRFarnaz Farnaz فرناز
IRFerdosi.ttfIRFerdosi Ferdosi فردوسی
IRHoma.ttfIRHoma Homa هما
IRJadid.ttfIRJadid Jadid جدید
IRKamran.ttfIRKamran Kamran کامران
IRKhorasan.ttfIRKhorasan Khorasan خراسان
IRKoodak.ttfIRKoodak Koodak کودک
IRLotusIranic.ttfIRLotus Lotus لوتوس
IRMaryam.ttfIRMaryam Maryam مریم
IRMashhad.ttfIRMashhad Mashhad مشهد
IRMehr.ttfIRMehr Mehr مهر
IRMitraIranic.ttfIRMitra Mitra میترا
IRMomtaz.ttfIRMomtaz Momtaz ممتاز
IRNarges.ttfIRNarges Narges نرگس
IRNaskh.ttfIRNaskh Naskh نسخ
IRNazaninIranic.ttfIRNazanin Nazanin نازنین
IRNazliBold.ttfIRNazli Nazli نازلی
IRNemad.ttfIRNemad Nemad نماد
IRPooya.ttfIRPooya Pooya پویا
IRRoyaIranic.ttfIRRoya Roya رویا
IRShiraz.ttfIRShiraz Shiraz شیراز
IRSina.ttfIRSina Sina سینا
IRTabassom.ttfIRTabassom Tabassom تبسم
IRTehran.ttfIRTehran Tehran تهران
IRTerafikIranic.ttfIRTerafik Terafik ترافیک
IRTitr.ttfIRTitr Titr تیتر
IRYakoutIranic.ttfIRYakout Yakout یاقوت
IRYekanBold.ttfIRYekan Yekan یکان
IRZarIranic.ttfIRZar Zar زر
IRZeytoon.ttfIRZeytoon Zeytoon زیتون
Thanks for your attention.
can you tell me what is non-joiner keyword shortcut key?
I tried shift+space and shift+b but both of them not worked.
As shown on the layout picture, the zero-width non-joiner (ZWNJ) can be typed using either Shift+Z or Shift+].
Shift+Space and Shift+B represent the ZWNJ under FarsiWeb/ISIRI 9147 Persian keyboard layout implementation.
What is the key combination for a pseudo space for such cases as
ZWNJ is located at Shift + Z.
Thank you, It’s great .
can you please tell me difference between typ1,2,3 ?
The difference is between how numbers are represented when Chortkeh Persian Keyboard is active.
Latin numbers: 0123456789
Persian numbers: ۰۱۲۳۴۵۶۷۸۹
Arabic numbers: ٠١٢٣٤٥٦٧٨٩ (not included in Chortkeh Persian Keyboard)
Please note standard desktop computer keyboards, such as the 101-key US traditional keyboards or the 104-key Windows keyboards include two sets of numeric keys. One is the upper row which is the same on laptop keyboards, and the other being called a numeric keypad (or number pad, commonly abbreviated to numpad) which is missing on smaller laptops. Many laptop computers have special function keys which turn part of the alphabetical keyboard into a numerical keypad as there is insufficient space to allow a separate keypad to be built into the laptop’s chassis.
Now, the difference:
Type 1 provides all Latin numbers.
Type 2 provides Latin numbers at the numeric keypad and Persian numbers at the upper numeric row.
Type 3 provides all Persian numbers.
It is obvious if you have an entry field (either a desktop program’s text box or a certain website’s input) that only accepts Latin numbers while you had Type 2 or 3 installed, you need to switch languages (from فا to ENG, and then back) to be able to type in to that field.
I always encourage Persian Desktop/Mobile/Web developers to make their numeric input fields smart, meaning it could accept both Persian and Latin (and even Arabic) numbers, but then (convert and) show them as Persian, and further (convert and) store them as Latin digits.