Make ethio-* variables into user options

* lisp/language/ethio-util.el (ethiopic): New group.
(ethio-primary-language, ethio-secondary-language)
(ethio-use-colon-for-colon, ethio-use-three-dot-question)
(ethio-quote-vowel-always, ethio-W-sixth-always)
(ethio-numeric-reduction, ethio-java-save-lowercase): Make into
user options (bug#33024).
This commit is contained in:
Lars Ingebrigtsen
2021-06-23 16:28:32 +02:00
parent 4b90e4f44f
commit 0776ac0680

View File

@@ -98,36 +98,57 @@
;; users' preference
;;
(defvar ethio-primary-language 'tigrigna
(defgroup ethiopic nil
"Options for writing Ethiopic."
:version "28.1"
:group 'languages)
(defcustom ethio-primary-language 'tigrigna
"Symbol that defines the primary language in SERA --> FIDEL conversion.
The value should be one of: `tigrigna', `amharic' or `english'.")
The value should be one of: `tigrigna', `amharic' or `english'."
:version "28.1"
:type '(choice (const :tag "Tigrigna" 'tigrigna)
(const :tag "Amharic" 'amharic)
(const :tag "English" 'english)))
(defvar ethio-secondary-language 'english
(defcustom ethio-secondary-language 'english
"Symbol that defines the secondary language in SERA --> FIDEL conversion.
The value should be one of: `tigrigna', `amharic' or `english'.")
The value should be one of: `tigrigna', `amharic' or `english'."
:version "28.1"
:type '(choice (const :tag "Tigrigna" 'tigrigna)
(const :tag "Amharic" 'amharic)
(const :tag "English" 'english)))
(defvar ethio-use-colon-for-colon nil
(defcustom ethio-use-colon-for-colon nil
"Non-nil means associate ASCII colon with Ethiopic colon.
If nil, associate ASCII colon with Ethiopic word separator, i.e., two
vertically stacked dots. All SERA <--> FIDEL converters refer this
variable.")
variable."
:version "28.1"
:type 'boolean)
(defvar ethio-use-three-dot-question nil
"If non-nil, associate ASCII question mark with Ethiopic question mark.
The Ethiopic old style question mark is three vertically stacked dots.
If nil, associate ASCII question mark with Ethiopic stylized question
mark. All SERA <--> FIDEL converters refer this variable.")
mark. All SERA <--> FIDEL converters refer this variable."
:version "28.1"
:type 'boolean)
(defvar ethio-quote-vowel-always nil
"Non-nil means always put an apostrophe before an isolated vowel.
This happens in FIDEL --> SERA conversions. Isolated vowels at
word beginning do not get an apostrophe put before them.
If nil, put an apostrophe only between a 6th-form consonant and an
isolated vowel.")
isolated vowel."
:version "28.1"
:type 'boolean)
(defvar ethio-W-sixth-always nil
"Non-nil means convert the Wu-form of a 12-form consonant to \"W'\".
This is instead of \"Wu\" in FIDEL --> SERA conversion.")
This is instead of \"Wu\" in FIDEL --> SERA conversion."
:version "28.1"
:type 'boolean)
(defvar ethio-numeric-reduction 0
"Degree of reduction in converting Ethiopic digits into Arabic digits.
@@ -135,11 +156,16 @@ Should be 0, 1 or 2.
For example, ({10}{9}{100}{80}{7}) is converted into:
\\=`10\\=`9\\=`100\\=`80\\=`7 if `ethio-numeric-reduction' is 0,
\\=`109100807 if `ethio-numeric-reduction' is 1,
\\=`10900807 if `ethio-numeric-reduction' is 2.")
\\=`10900807 if `ethio-numeric-reduction' is 2."
:version "28.1"
:type 'integer)
(defvar ethio-java-save-lowercase nil
"Non-nil means save Ethiopic characters in lowercase hex numbers to Java files.
If nil, use uppercases.")
If nil, use uppercases."
:version "28.1"
:type 'boolean)
(defun ethio-prefer-amharic-p ()
(or (eq ethio-primary-language 'amharic)