SPIonic Encoding

SPIonic is actually a public domain font created for editing text for the Religion and Technology Center, Inc.. Text written in SPIonic is called SPIonic Encoded.

Simply put, the font is designed in a way to display Greek letters when Latin letters and punctuation marks are typed.

Quoting from SP Fonts Home Page:
"The SP fonts (named for Scholars Press, my former, now defunct, employer) are a set of simple, free fonts that were created for use on the Web, though they also work in print. The design goals behind the SP fonts are (1) simple installation; (2) simple input of text, based on accepted transliteration standards; (3) use of common character maps for Macs and Windows computers. By creating these free fonts, it was my hope that scholars, students, and others could interchange multilingual text documents with one another as easily and inexpensively as possible. The fonts were originally designed for use in my e-journal, TC: A Journal of Biblical Textual Criticism, but they are now used on many different Web sites, as well as in print."

Quoting from SPIonic.readme file:
"Description: SPIonic exists in both Macintosh and Windows versions, both with the same character and keyboard maps. By design, all characters in the font lie between decimal 32 and 127 (20x-7Fx, 040-0177), so they should transfer without problem over the Internet. The font is designed to follow the Thesaurus Linguae Graecae encoding scheme (see http://purl.org/TC/TC-translit.html#Greek) to as great an extent as possible, with a few exceptions. The most important exception is that upper- and lowercase letters have separate code points, unlike the TLG standard which requires an asterisk to indicate an uppercase letter (however, the asterisk is also part of the font). A second major variation is that breathing marks, accents, and other diacriticals exist in two forms: one for use with narrow characters and one for use with wide characters."

Download SPIonic font ^

You have to download the SPIonic font in case

SPIonic font

AncientGreek SPIonic conversion Macros ^

I suggest saving your work before running either of these macros on a document (no text selection), so that reverting (Menu File / Reload) to it is possible, as Undoing may not be of much help, since a letter by letter substitution will take place resulting in way too many undo steps.

If any of these macros are executed without selecting any text, a warning message similar to the one shown in the following picture will appear.

Warning message on Windows 8.1

• SPIonicToUnicode Macro

This macro converts text written in SPIonic to Unicode (normal text that can be edited in LibreOffice / OpenOffice).

• UnicodeToSPIonic Macro

This macro converts text written in Unicode (normal text edited in LibreOffice / OpenOffice) to SPIonic.

Using fullwidth characters ^

If the document (or selection) contains ASCII characters (English text), they will automatically be converted to the "fullwidth / halfwidth" characters, when text conversion from Unicode to SPIonic is performed.

SPIonic implementation ^

This implementation does not realize the complete SPIonic "charset", as described in the SPIonic.readme file, but is limited to the following:

Greek Letter ASCII character (Lowercase) ASCII character (Uppercase) Greek Letter ASCII character (Lowercase) ASCII character (Uppercase)
Alpha a A Nu n N
Beta b B Xi c C
Gamma g G Omicron o O
Delta d D Pi p P
Epsilon e E Rho r R
Zeta z Z Sigma s S
Eta h H Tau t T
Theta q Q Upsilon u U
Iota i I Phi f F
Kappa k K Chi x X
Lambda l L Psi y Y
Mu m M Omega w W
v   Digamma
  J Sampi
(grave accent)
Final Sigma j        
Symbol Narrow
Symbol Narrow
Smooth breathing 0 ) Rough breathing 9 (
breathing with Acute
1 ! Rough
breathing with Acute
3 #
breathing with Grave
2 @ Rough
breathing with Grave
4 $
breathing with
] } Rough
breathing with Circumflex
[ {
with Acute
5 % Diaeresis
with Grave
6 ^
Period . . Apostrophe '  
Acute / & Ano Teleia   :
Grave \ _ Question Mark   ;  
Circumflex = ~ Overstrike for Nomina Sacra 8  
  | Dash _ _
Diaeresis + " Hyphen   *
  < Macron
Non Breaking Space   7  

The issue with Macron ^

Ancient Greek vowels can be deivided in:

Macron η ω
Vrachy (Breve) ε ο
Any α ι υ

Unicode Standard 7.0 defines precombined accented code-points for α, ι, υ only (ᾰ, ᾱ, Ᾰ, Ᾱ, ῑ, ῐ, Ῑ, Ῐ, ῡ, ῠ, Ῡ, Ῠ), which are the vowels that can be either Macron or Vrachy as appropriate. The remaining vowels can be either Macron (η, ω) or Vrachy (ε, ο), so no such code-points exist for them.

This means that:

  1. in SPIonic, it is possible to type non-existing letters (e.g. EPSILLON WITH MACRON). It is entirely up to the user not to use these erroneous combinations.
  2. in SPIonic, it is not possible to type a Vrachy vowel.

Furthermore, Unicode does not distinguish between narrow and wide letters.

As a result, we have a lot of inconsistencies, as shown in the following table:

followed by
h η̄ η̄
w ω̄ ω̄
e ε̄ ε̄

As it is obvious from the above table, wherever a valid code point exists, it will be used. When a valid code point does not exist, the "COMBINING MACRON" character (U+0304) will be used, producing an erroneous  result, but being consistent with what the user has typed.

Extended SPIonic implementation ^

SPIonic introduces a very easy way of writing Ancient Greek Text without installing system wide Ancient Greek Language support or any keyboard layout (driver etc.). All one needs to install is the SPIonic font and a Unicode font capable of displaying Ancient Greek text (such fonts should be installed by default on any modern Operating System).

On the other hand, it has one disadvantage: one cannot write numbers and some punctuation marks (parenthesis, exclamation mark, curly brackets are some of them), because it uses them to represent Ancient Greek accent. In order to compensate this fact, AncientGreek provides a mechanism based on the use of Halfwidth and fullwidth characters.

Halfwidth and fullwidth characters cannot be directly inserted by keyboard input, so each desired character will be preceded by a ` character (Grave Accent in Unicode or Sampi in SPIonic). AncientGreek will recognize and transform any of the following combination of characters to their halfwidth and fullwidth forms, when a conversion to SPIonic is performed.

Character Combination SPIonic Characters Full/Half width Character Character Combination SPIonic Characters Full/Half width Character
`1 `1 `! `!
`2 `2 `@ `@ @
`3 `3 `# `#
`4 `4 `$ `$
`5 `5 `% `% %
`6 `6 `^ `^ ^
`7 `  `& `&
`8 `8 `* `* *
`9 `9 `( `(
`0 `0 `) `)
`+ `+ `| `|
`" `" `_ `_ _
`< `< `> `>
`[ `[ `] `]
`{ `{ `} `}
`= `= `~ `~ ~
`\ `\ `/ `/

Using any of these combinations and converting Unicode text to SPIonic (icon sp-u.png on the Secondary Toolabr), will make it possible to use characters "missing" from the SPIonic character map.

If the text is already SPIonic Encoded, then one should use the AncientGreek main dialog "Convert SPIonic to Fullwidth Unicode" Macro (or the esp_to_w_16.png icon or Secondary Toolbar).

Example ^


Let's suppose that we have the text shown in the above picture. It's SPIonic encoded and the font used for the paragraph is SPIonic. Let's also suppose that we want to enclose in parenthesis the section in red.


We'd type "`" and "(" at the begining of the section and "`" and ")" at the end of the section. The picture shows what we'd see on the screen.


Then we'd execute the macro "Convert Extended SPIonic to Fullwidth Unicode" or click the esp_to_w_16.png icon on the Secondary Toolbar, and we'd get the result shown in the above picture. Both parenthesis (in green) are "Fullwidth" characters (notice the extra space before the left parenthesis and the extra space after the right parenthesis).

spionic-ext-example-4.gif Finally, we'd execute the macro "Convert SPIonic to Unicode" or click the sp_u_16.png icon on the Secondary Toolbar, and change the paragraph's font to any Unicode font capable to display Ancient Greek Language Text, and we'd get the result shown above.



If a table is truncated, then you can see all its content by scrolling it to the right and back.