Jump to navigation Jump to search
Personal information



twitter: @464161niftg

2 of 2
You must be logged in to post messages to other users
posted 3436 days ago

coi la .niftyg.

.ui mi dunda le sfaile do se'pio la .dropboks. poi stuzi zo'oi

In addition, here is a short overview of the files, being the text I sent to the most recent person who attempted this:

"I remember I did most of the work in Font Lab, but the files themselves should just be ttf so I don't think you'll have any problems. I also remember using a separate opentype compiler because the font lab support wasn't thorough enough to support the zlm rules, and that tool was windows only so you may need a windows box to pick up where I left off, or else translate my work into what ever other tool you'd like to work with.

This is literally everything I could find, and it's poorly organised, so good luck. You should find the bits you care about in 'font', just be careful that you're using the up-to-date version of the font when you work. Anything with the version '4' should be fine, but see the 'ZLM4 Writeup v2.pdf' for the canonical description of the system. The last page also includes some information about how it should be typed.

You'll see my WIP programmatic description of the opentype behaviour in ZLM4Features.ot, which is compiled with the OTComp program, which takes the .ot file and a .ttf file as input, and generates the .otf file as output. Compile.bat contains the invocation I was using. I don't remember what the folder 'OpenType ABVM' is for - could be an old version, could be a new one? Could be a dead-end fork. It's been too long."

.i za'a puzu .ije lo se djuno be mi mo'u binxo lo ka pindi .u'u

A monospace font like Courier New would be great, I think that's a good idea. In fact, in the zip file if you look under 'lojbo mukti' you will see some quick cut-and-paste experiments I did to try to imagine what various fonts might look like applied to ZLM. One of them was indeed Courier New!

Good luck :) I am happy to answer questions if you have any.

.io mu'o mi'e la .kmir.

posted 3439 days ago

.oisai I didn't realise the wiki would eat my formatting. Here's a preformatted version:

   coi la .niftyg.
   Sure, I am happy if you wish to create your own version. Just know that this is quite a difficult font to attempt for first-time font-making! I personally failed to make a ZLM font that works correctly - the features of the script are quite tricky and are hard to express in Opentype rules. If you would like, I can send you a zip of my working files from when I was attempting to make the font. I have done this for people before and they have also failed, including one who is quite experienced at fonts. Also it will save you from having the draw all the letter shapes yourself, unless that's something you are specifically interested in :)
   For releasing, I am happy for you to publish it and I will put it with the official ZLM documents, but please make sure it is a correct implementation of ZLM. My fear is that, if an incorrect font begins to circulate, people will learn the incorrect version thinking it is correct, and my careful work will be undone.

   A good ZLM font must have:
   - All letter shapes must pass the legibility test in the documentation
   - Can type ZLM vowels with sequential latin vowels
   - Full-vowels
   - CAS mark
   - Don't try to position vowels using negative metrics, trust me its a pit of misery. Use anchoring and POS instead.
   - ZLM glyphs should exist in their own unicode space. Typing with latin characters is useful, but the Opentype rules should transform the latin glyph "K" to your "LOJBAN_ZLM_K" somewhere in unused unicode space, and the glyph "APOSTROPHE" to "LOJBAN_ZML_YHYBU", and so on. Don't clobber latin unicode space. If not using Opentype substitution to swap latin for ZLM, you would also need an IME input mode for your operating system. This is more 'correct' but makes the font harder for others to use. Being able to type in latin is a neat shortcut.
   - Ideally, because there is no usable ZLM font yet, I would like if you would create a very 'boring' typeface, something like the ZLM equivalent of Arial or Helvetica, to act as a neutral default font for ZLM before providing artistic or fancy typefaces. But, it's your effort so if you want to go for a stylized or fancy typeface that's fine too :)
   - A ZLM font does *NOT* have to correctly render pre-existing latin text. Special character order is fine.

   The rules for vowel transformations are as follows; where [] represents a keystroke, () represents one ZLM grapheme, eg: [x][a] -> (xa)
   1. Alone vowels should look ok on their own. However, ideally Opentype should detect 'orphan' diacritics and automatically put denpabu before it. This should happen if a bare [a] is typed, for example: at the beginning of a word, at the beginning of a line, between two empty spaces, after a grapheme for which an (a) diacritic is illegal, etc.
     - {space}[a] -> {space}(.a)
     - {SOL}[a] -> {SOL}(.a)   (where SOL is 'start of line')
     - (.a)[a] -> (.a)(.a)
   2. Vowel or diphthong following a consonant should position correctly above the preceding consonant. Note that the (p)(t)(k) family of glyphs needs it's diacritics slightly to the right to dodge the stems, and the (s)(c) family slightly to the left.
   3. Diphthongs should form from sequential keystrokes, but only where legal:
     - [x][a] -> (xa) ; (xa)[i] -> (xai)
     - [x][i] -> (xi) ; (xi)[i] -> (xi)(.i)
   4. 'Apostrophe' types yhybu.
     - [.][a]['][u] -> (.a)('u)
   5. 'Quote' types CAS.
     - [.][a]["][u] -> (a"u)
     You can either try to transform the preceding characters, or else dictate that CAS must be typed before BOTH vowels, example:
     - Replace everything (latin typing order):  [.][e] -> (.e) ; (.e)["] -> (e") ; (e")[e] -> (e"e)
     - CAS typed first (special typing order): ["][e] -> (e") ; (e")[e] -> (e"e)
     Note that although I represent the CAS attitudinal here as (e"e) with the quote in the middle so it looks readable like {.e'e}, probably the best solution in your substitutions is to move the CAS to the front, like ("ee) and then base the POS rule on detecting two vowels following a CAS. You may then need to do some trickery with the cursor to make backspace and stepping work in a sensible way.

   I think that's everything :) Like I said, it's difficult for a learning exercise but if you want to, I can provide whatever files you want. This doesn't even get into the optional dynamics but they are VERY difficult so a font file without them could still be considered complete enough to use. Good luck :)
   .iu mu'o mi'e la kmir