The Cipher music notation is used throughout Indonesia and China for all kinds of music. The font is not intended for general orthographic use, although it is usable for song lyrics in simple Roman writing systems. This solution is primarily intended for fairly straightforward songbooks for singers, not for complex instrumental music. It can handle harmony lines fine, but not a lot of intricacies or subtleties (e.g. no staccato).

If you use this font for developing songbooks and you have suggestions for improvements we would like to hear back from you. Contact information is in the README.txt file in the font package.

Cipher Music Notation Requirements

The main requirements for this font were to support the Indonesian Cipher Music Notation (Kepatihan). However, where it was straightforward to add support for the Chinese jianpu style, we have done so.

Character(s) USV Meaning
Musical note
1-7 U+0031..U+0037 musical notes (do re mi fa so la ti)
◌̣ U+0323 COMBINING DOT BELOW down one octave (Chinese jianpu: goes below any underlines)

turunkan satu oktaf (Cina: taruh di bawah garis bawah jika ada)

◌̇ U+0307 COMBINING DOT ABOVE up one octave (Indonesian kepatihan: goes below any overlines)

naikkan satu oktaf; ditaruh di bawah garis atas jika ada

Note length
. U+002E FULL STOP Indonesian kepatihan: extend duration of the preceding note by an entire quarter note (becomes a half note)

Kepatihan: perpanjang waktu not yang sebelumnya.

U+002D HYPHEN-MINUS or U+2012 FIGURE DASH Chinese jianpu: extend duration of the preceding note by an entire quarter note (becomes a half note)

Cina: perpanjang waktu not yang sebelumnya.

· U+00B7 MIDDLE DOT Chinese jianpu: extend duration of the preceding note by half, two dots extends duration by three quarters
◌̅ U+0305 COMBINING OVERLINE Indonesian kepatihan: eighth note

not (nada) kedelapan

◌̿ U+033F COMBINING DOUBLE OVERLINE Indonesian kepatihan: sixteenth note

not (nada) keenam belas

◌̲ U+0332 COMBINING LOW LINE Chinese jianpu: eighth note

Cina: not (nada) kedelapan

◌̳ U+0333 COMBINING DOUBLE LOW LINE Chinese jianpu: sixteenth note

Cina: not (nada) keenam belas

Musical rest
0 U+0030 DIGIT ZERO musical rest (i.e. don’t sing or play)

istirahat (diam); jangan menyanyi atau mainkan)

Bar lines
𝄀 U+1D100 MUSICAL SYMBOL SINGLE BARLINE measure boundary

batas birama

𝄁 U+1D101 MUSICAL SYMBOL DOUBLE BARLINE end of a section of music

akhir dari suatu bagian musik

𝄂 U+1D102 MUSICAL SYMBOL FINAL BARLINE very end of a piece of music
𝄆 U+1D106 MUSICAL SYMBOL LEFT REPEAT SIGN this section will be repeated

bagian ini akan diulangi

𝄇 U+1D107 MUSICAL SYMBOL RIGHT REPEAT SIGN go back to the left repeat sign

kembali ke tanda ulang kiri

𝄈 U+1D108 MUSICAL SYMBOL REPEAT DOTS a simpler repeat sign; sometimes used in conjunction with U+1D100
/ U+0338 COMBINING LONG SOLIDUS OVERLAY Indonesian kepatihan: sharp (used on numbers 1-6)

1-6: tinggikan (naikkan) nada 1/2 laras

\ U+20E5 COMBINING REVERSE SOLIDUS OVERLAY Indonesian kepatihan: sharp (used on number 7)

7: tinggikan (naikkan) nada 1/2 laras

U+266D MUSIC FLAT SIGN Chinese jianpu: flat

Cina: turunkan nada 1/2 laras (mol)

U+266F MUSIC SHARP SIGN Chinese jianpu: sharp

Cina: tinggikan (naikkan) nada 1/2 laras

U+266E MUSIC NATURAL SIGN Chinese jianpu: restore to natural (not sharp/flat)

Cina: kembali ke biasa



In music, this is a slur or a tie (multiple notes are run together smoothly). In lyrics, a slur contracts multiple syllables into one (multiple vowels become one diphthong).

Tanda legato. Dalam musik, satu suku kata memberi jarak semua not (nada). Dalam lirik, ini berarti “vocal rangkap” Huruf-huruf hidup berdekatan diucapkan sebagai satu suku kata.”

Expression marks
◌͒ U+0352 COMBINING FERMATA “hold”, or “grand pause”

“tahan”, atau “istirahat untuk seluruh pemusik”

𝄒 U+1D112 MUSICAL SYMBOL BREATH MARK singers, breathe now

para penyanyi tarik nafas

U+1D1B1 MUSICAL SYMBOL GLISSANDO UP The glissandi symbols tell the singer to swoop through the notes. The angle indicates an upward swoop.
U+1D1B2 MUSICAL SYMBOL GLISSANDO DOWN Swoop down through the notes.

All of the characters documented above (not including combining marks) are either of “full” width or “half” width. This allows for the font to use the proper width of the overlines or underlines. In addition, regular orthographic characters are provided for use in lyrics. Lyrics characters have proportional widths. As long as you don’t mix in other characters, you should therefore be able to align harmony lines with the melody line by adding spaces (which are “half” width) appropriately. Because lyrics characters have proportional widths they cannot be precisely aligned unless you use tabs, but this is generally less important.

Semua tanda yang tercantum di atas, lebarnya “lengkap” atau “setengah”. Sepanjang Anda tidak mencampurkan tanda/huruf lain, maka Anda dapat memantapkan baris-baris harmonis dengan baris melodi, dengan menambahkan jarak / spasi (yang adalah “setengah” lebarnya). Huruf-huruf lirik mempunyai lebar yang proporsional dan tidak dapat dengan tepat dipaskan jika Anda tidak menggunakan tabs, namun biasanya ini kurang penting.


The font cannot properly display diacritics that are "out of order". You must input the base followed by an optional centered diacritic, followed by optional below diacritic(s), followed by optional above diacritics. Beginning and ending slurs should be at the outer edge of each run of text. The example below shows the proper order of characters:

Indonesian kepatihan
Chinese jianpu


This font makes use of Graphite and OpenType smart font technologies. At this time there is no support for the Slurs in OpenType applications.

Font features

This font has a feature for choosing between above (Chinese jianpu) and below (Indonesian kepatihan) slurs. There is also an edit mode which has tiny slur tips rather than the slur. This mode allows for easier editing between the beginning and ending of the slur.

The default position for the slurs is below.

In FieldWorks select your text, then go to Format / Font. Choose “Doulos SIL Cipher”. Select Font Features... and then Above or Below Slurs. Select the option you want. The choices are:

  • Edit Mode (Tiny Tips) (value=0)
  • Indonesian (Below) (value=1)
  • Chinese (Above) (value=2)

You can also use these features in LibreOffice, but the way you select feature behavior is different. To turn on the “Chinese (Above)” feature, select your font “Doulos SIL Cipher”. Then after the font add “:slur=2”. Your font selection should look like this: “Doulos SIL Cipher:slur=2”. The digit “2” is the value for Chinese (Above), shown in the list above.

Slurs will display as slurs for up to 7 base characters. It might be less than that if there are many dots, fermata, and over- or under-lines. Once the slurs “fail” they default to small beginning and ending marks under the base characters.

Application Support


Any Graphite-enabled application will be able to use the Graphite capabilities in the font. Doulos SIL Cipher has been tested on Windows 7 to work with the following applications:

The font was also minimally tested on Ubuntu using LibreOffice and Firefox.


This font has minimal OpenType support. There is no support for the slurs. There is support for the combining marks. However, many Windows applications do not support combining marks on spaces, punctuation or numbers — all of which are used in Cipher Notation! In addition, Windows applications do not support the use of combining marks from the BMP in combination with base characters from the SMP (the breathing mark is in the SMP).

Below is a short list of behavior in some applications:

  • Notepad and Internet Explorer 9 — slurs do not display, combining marks on SMP characters (such as the breathing mark) do not position correctly.
  • MS Word 2010 — slurs display as square boxes. Combining marks do not position correctly on anything except letters (x, X).
  •  Mozilla Thunderbird — slurs display as “tiny tips”. Everything else seems to render correctly.

Supported character ranges

Unicode block Doulos SIL Cipher support
Codepage 1252 (Western) & MacRoman
Combining Diacritical Marks U+0305, U+0307, U+0323, U+0332..U+0333, U+0338, U+033F, U+034F, U+0352, U+03C0
Superscripts and Subscripts U+2070, U+2074..U+2079, U+2080..U+2089
Combining Diacritical Marks for Symbols U+20E5
Arrows U+2197..U+2198
Miscellaneous Symbols U+266D..U+266F
Latin Extended-D U+A78B..U+A78C
Musical Symbols U+1D100..U+1D103, U+1D106..U+1D108, U+1D110, U+1D112, U+1D177..U+1D178



These fonts are licensed under the SIL Open Font License (OFL)


Doulos SIL Cipher 1.020 for all platforms FONT | 233.0 KB | 22 Oct 2014

This font is also available in the SIL software repository for Ubuntu. Users can subscribe to this software repository and get current versions and updates automatically.

Release notes

The only change in version 1.020 is to adjust the position of lines (U+0305 and U+033F) above the fullstop.

Keyman Keyboard

The Cipher Music (SIL) Keyman keyboard is available to help you type using the Cipher music notation, and is an updated version of the InKey keyboard mentioned below.

LibreOffice Cipher Songs Template

LibreOffice Cipher Songs Template 1.100 for all platforms DOC | 26.7 KB | 27 Mar 2013

To use this template, type your songs using the provided “song” styles. At first, it’s easiest to start by copying the sample song text into a blank page, since all of the styles are set up already. Delete the instructions in this document once you don’t need them anymore. You may not want to delete the “Special Symbols” part until you’re ready to publish.

Untuk memakai “template” ini, ketiklah lagu-lagu dengan memakai style-style “song” yang tersediah. Untuk pemula, cara yang paling mudah adalah: kopi lagu contoh ke halaman kosong, sebab semua style telah disetel dalam contohnya. Silahkan hapus petunjuk-petunjuk seperti ini kalau tidak diperlukan lagi.

Cipher template changes:

  • Changed the page size to 12.5cm x 17.5cm (but in inches: 4.92″ x 6.89″), with 0.5″ margins all around
  • TOC settings: added a space before each song title.
  • Formatted numbering for song titles to use a space rather than a tab. This helps with longer song numbers.
  • “song lyrics only”: switched away from fixed height (back to “single”) since slurs were getting cut off. Added more slurs to the initial example for better awareness in the future.
  • “song verse lyrics”, “song verse lyrics indented”: added 0.08″ line spacing after each paragraph, so notes will seem closer to their own lyrics.
  • Added a tip: “Or, you can edit the song title style to toggle page breaks before songs for the whole file.”
  • Renamed “song verse indented” to “song verse notes indented”, for consistency.
  • Enabled “Keep with next paragraph” for these styles (the two lyrics styles inherited that, so I then turned it off for them):
    • song title
    • song info
    • song verse notes
    • song verse notes indented

Previous versions

Doulos SIL Cipher 0.220 for all platforms PREV FONT | 138.7 KB | 20 Mar 2012
Doulos SIL Cipher 0.240 for all platforms PREV FONT | 138.9 KB | 30 Mar 2012
Doulos SIL Cipher 1.000 for all platforms PREV FONT | 141.5 KB | 4 Apr 2013


As these fonts and utilities are distributed at no cost, we are unable to provide a commercial level of personal technical support. We will, however, try to resolve problems that are reported to us.

We do hope that you will report problems so they can be addressed in future releases. Even if you are not having any specific problems, but have an idea on how this system could be improved, we want to hear your ideas and suggestions.

Please note that these fonts are intended for use by experienced computer users. Installing and using these fonts is not a trivial matter. The most effective technical support is usually provided by an experienced computer user who can personally sit down with you at your computer to troubleshoot the problem.


General troubleshooting information, including frequently asked questions, can be found in the documentation. Additional information is also available on the general Font FAQ page. If that fails to answer your question, send an email via this contact form.

Before requesting technical support, please:

  • Carefully read all the documentation provided with the font and on this site.
  • Please see our Font Help Guides.

Language Software Community

Support from other software users may be available through the SIL Language Software Community. This community will be growing to become the major source of software support.

If that fails to answer your question, or you have a bug report, feature suggestion, or need help using the software, please contact us using the form below.

    Your Name (required)

    Your Email (required)



    Your Message