marnanel: (Default)
Some people have asked on CONLANG-L whether it's possible to translate free software into constructed languages. I said I would put some instructions together, and people were interested, so here goes.

  1. This is about the free desktop. It will describe how to localise GNOME or KDE. I don't know anything about how to do this on the Mac or on Windows, so my advice to you will consist approximately of "please install Ubuntu".
  2. Be sure you know what you're letting yourself in for. There are about 45,000 strings which need translation in GNOME, although you can get a decent effect by translating only a few thousand. Then there are the applications themselves on top of that.
  3. If you're translating into a language which uses characters which don't appear in Unicode, I'm going to assume you've already made your computer able to display them. Matters such as designing a character set, getting space in CSUR, and building fonts are outside the scope of this tutorial.
  4. This is just enough to get you going; I'll be cutting some corners and waving my hands around some of the difficult bits.
  5. Before we start, you should have both the "gettext" package and the Gimp installed.
  6. What I'm going to say is true for most programs, but a few have their own way of doing things.  Firefox is one of these.
Here's what we're going to do: we'll change the titlebar of the GNU Image Manipulation Program (the Gimp) to display in a conlang. Since I'm writing this, I'll translate the titlebar into my own conlang, Nimyad; work out what it is in yours before you go on. Bear in mind that "GNU" is a proper noun and should not be translated.

The phrase "GNU Image Manipulation Program", rendered in Nimyad, is "dajath GNU camimoth lirinanen", or in the con-script:

Next we'll need an ISO 639 code. These are rather difficult to come by for conlangs (even Toki Pona was rejected), but fortunately the codes between qaa and qtz form a private use area. We'll say that Nimyad is qny; pick one of your own and use it in what follows.

Now you need the translation template for the Gimp. You can get it here; click the green arrow next to "POT file" and it will download. Now rename the gimp.master.pot file to qny.po and open it in a text editor. (Don't use Emacs for this; it tries too hard to be helpful and will confuse you.) Find the lines which say

msgid "GNU Image Manipulation Program"
msgstr ""

This means that the string "GNU Image Manipulation Program" is translated to nothing at all. That's not very useful yet, so put your conlang's translation in there, after the msgstr, between the quotes. Save the file.

Now we need to compile the .po file into a .mo file, which is the format that the programs themselves can read. Run: msgfmt qny.po

If it worked, you will have a file called in the current directory. If it didn't, make sure you did in fact install the "gettext" package!

Create the locale directory: sudo mkdir -p /usr/share/locale/qny/LC_MESSAGES
and move the file in: sudo mv /usr/share/locale/qny/LC_MESSAGES/

Finally you'll need to create all the locale data other than the actual language. You can just base that off another locale, such as en_GB, for now: sudo localedef -v -c -i /usr/share/i18n/locales/en_GB -f UTF-8 /usr/lib/locale/qny/

It will probably throw up a lot of errors, which you can ignore at the moment.

When you have a fair number of strings translated, it will make sense to run in the qny locale all the time.  But for now we'll just run it as needed.  So: now at last you're ready to type: LANG=qny gimp&

And you should see:

Well, that's one string down, 45,000 to go.  You see that the strings which haven't yet been translated fall back to US English.

Finally: now that you've seen how easy translation is, if you happen to speak any of these languages, please consider contacting the translation team and offering your help.

Let me know if you have any questions!
marnanel: (Default)

For those of you who don't read the Nimyad community: I did a little work last night on fleshing out the Amlin script; there's a keyboard layout involved (which has existed for ages, but I never posted in detail about before). I would also like your opinion on a question about transliteration.
marnanel: (Default)
will be on the Nimyad community on LJ, which you should join if you're interested. I'd like to hear your thoughts on the proposed removal of the very rare phoneme /w/.

I did also consider, but you seem to prefer LJ communities, so there it is!
marnanel: (Default)
I promise I won't just make conlang posts forever.

The other day I posted an alphabet for Nimyad, and said it would be quite easy to make a font and a transliterator for it. Here's the transliterator; it will only take Nimyad input, so don't bother feeding it English. (Try "tajasel", "firinel", "marnanel", but if they're names, don't forget to put the honorific "g" at the beginning.)

I decided that as well as U+e6e5 AMLIN VOWEL CARRIER we were also in need of U+e6e7 AMLIN CONSONANT CARRIER. So both now exist. The script will add in consonant carriers for you where appropriate, but not vowel carriers (which are much more rarely needed); you can also make consonant carriers by typing "z".

Oh, this uses @font-face embedding, meaning it'll work on Safari, Opera, and Firefox versions 3.5 and above. If you're running older Firefox, or Explorer, you will need to install the font.

Edit: A couple of people asked about numerals.

Edit: There is a small set of very common words: te = the, so = move, wi = to, de = three, ca = five, which begin with a consonant and end with a vowel, and thus need two carriers. I believe this would have been fixed using a diacritic meaning "these two letters are swapped" and then writing them as "et", "os", and so on. I will add this diacritic at U+E6E8.

Edit: I've put up a simple draft of the Babel text in the Amlin script. One day there will be a simple interface which makes the words clicky, and prints the Latin transliteration down the other side. This further demonstrates the need for U+E6E8 AMLIN SYMBOL FOR INVERSION.
marnanel: (Default)

Since several of you wanted to see it, here's an example of my current draft of the Amlin script, used to write Nimyad:
Sample of Amlin script
am soc caril tiricoth yalad far ac yoroden til
then the whole earth had one language and a common tongue

This is just to show you what it's supposed to look like.  Note that I slipped up on the first word and wrote a "rejim" for a "maran", so it says "ar" instead of "am".  Sorry.

Below is the current set of graphemes I'm working with.  It's not the first version by any means, but let's call it 1.0 because it's the first public release.  I am using the range U+E6D0 to U+E6EF in the private use area, but that might change.  I may submit this to CSUR when it's a bit more mature.

The "key" column gives a keyboard mapping, for typing Amlin letters on a QWERTY keyboard.

In the story, the script was created by Lififel of Rindal around the year 450 after the settlement, who taught it to the Lirimelen, the college of storytellers.  Lififel gave his letters the collective name "Amlin", after the sacred river where the reeds grew which were used to make the first pens.
Read more... )
marnanel: (Default)
Sorry to be spammy, but I was just thinking about this.

I don't design Nimyad by making up rules and then writing texts. I learn the rules through observation of the texts. In fact I was also the one who wrote the texts, but I wasn't aware of the rules when I wrote them.  Then when I've seen the pattern in at least two places, I use it in helping me make new words.

Two good examples of patterns I've learned this way:
  • caral = place, coli = city; taras = light, tasi = lightning.  So the zero-grade form of a word plus -i must mean "a coherent piece of something".
  • rejil = human, rejim = wisdom; joril = king, jorim = authority.  So if you replace final -l with -m it must mean "the quality which should be exercised by that entity".
In documenting the further application of these rules I need to refer to them somehow.  I'm not sure whether I should
  • just number them, or similar;
  • make up a name for the principle (like the name "lenition" is used for the mutation principle in Scottish Gaelic);
  • name them after the first place I saw the principle ("the rejil rule", "the coli rule");
  • something else...
I'm not sure.


Sep. 17th, 2009 11:06 pm
marnanel: (Default)
Am soc caril tiricoth yalad far a yoroden til. So rejilen majanwi, am fam inten olic Jinarec, am til inten inec. Yad inten tirilec, jetac if ofefen am lath inten tiricoth. Soc inten ofefen al orefen, a soc inten gathamaran al naratifil. Am yad inten, jetil if coli ifoth, dasanmil e mim ten te ojil, ac joc rejilen if a mititij carilec tiricoth. Al dro carilwi te Joril ac fam in te dasan e til te rejilen ten. Yad te Joril, sil jim caran far e yad tenen yalad til ten laracen, jim inten laracen tiricoth. Jeso carilwi if ac tij yalad intenti ac mijoc inten tirilec. Am tij caldacoth carilwi tiricoth te Joril te rejilen, am mitac inten te coli. Ac lac tacan inti Tifij, sel tij te Joril te yalad cariloth tiricoth caldacec. Tij caldacoth te Joril inten thajacwi tiricoth.

You may not know that I've been working on a conlang called Nimyad for the last twenty-odd years. Names like "tajasel" and "firinel" and "marnanel" are words from this conlang. I worry that I don't know enough linguistics-- that things I want to do in Nimyad aren't *really* how a language would work. Also, I haven't worked on it in the last couple of years as much as I should have.

I would like to rectify this. Five is a special number in Nimyad. By this time next year, I would like to have done five things:
  1. Finished the conscript (the canonical way to write down Nimyad words);
  2. Have a lexicon with at least a thousand words in it (the current one I'm working with has perhaps a hundred);
  3. Have written a comprehensive grammar;
  4. Have written a primer (i.e. a text to teach people Nimyad);
  5. Have translated the entire Gospel of Mark as a demonstration text. But feel free to advocate for other texts.
If you'd like to help with this, and be part of the Nimyad community, please join the Nimyad community on LJ and we can discuss it further. Or would you rather I posted Nimyad discussion in my own journal? Or should we run a forum or a blog on


marnanel: (Default)

February 2017



RSS Atom

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Feb. 25th, 2017 09:06 am
Powered by Dreamwidth Studios