Subject: bug#11812: emacs24 -- Addition of language/persian.el and updates to leim/quail/persian.el

From: [email-masked]
Date: Tue, 07 Aug 2012 23:44:04 -0700

>>>>> On Mon, 06 Aug 2012 16:52:12 -0400, Glenn Morris <[email-masked]> said:

  GM> Glenn Morris wrote:
  >>> emacs24-banan-patches/lisp/language/persian.el
  >>> Is a new file that adds persian as an emacs language.
  >> 
  >> Applied, thanks.

  GM> So I actually looked at the file, and its entire contents are extremely
  GM> similar to the already existing "Arabic" section of
  GM> language/misc-lang.el. The only differences seem to be to replace
  GM> "Arabic" with "Persian", to change the sample text, and change the
  GM> input-method from "arabic" to "farsi-transliterate-banan".

  GM> Surely there is some inconsistency here?

Thank you for applying those patches.

I tried the latest version and addition of Persian
to "Set Language Environment" works fine.

Persian and Arabic are different languages.
Persian is an Indo-European langauge.
Arabic is a non Indo-European langauge.

Persian script uses the Arabic alphabet.

The charset used for Persian and Arabic is the
same. Some of the chars used for Persian and
Arabic are common and some are separate.

So, the part of language/persian.el that is
coding-system and charset related is same as the 
arabic part of language/misc-lang.el.

Input methods for Persian and Arabic are of course
separately specified in quail/arabic.el and
quail/persian.el. And the default input method for
each language specification is in
set-language-info-alist.

So with what is in place, things work, but things
are not clean.

I am not familiar with the history of how
language/misc-lang.el evolved.

I think the right way of doing it is:

  - Create a language/persoarabic.el that is 
    the common part of language/persian.el
    and language/arabic.el (see next).

  - Create a language/arabic.el which is just the 
    arabic part of language/misc-lang.el
    and which loads language/persoarabic.el

  - Make language/persian.el also load the common
    part as language/persoarabic.el

More broadly speaking, I think
language/misc-lang.el needs to be cleaned up so
that alphabeticly sorted list of languages in "Set
Language Environment" is cleaner.

A bit later, perhaps we should bring this up in
the developers list and do that cleanup.

For now, Persian has been added as an emacs
language. That is a good thing.

Thanks again for applying those patches.

...Mohsen