fix: language list

This commit is contained in:
Pavel Korytov 2022-08-27 23:34:46 +03:00
parent 0f09dd0f56
commit f7044f7160

View file

@ -31,14 +31,13 @@
;; ;;
;; The implemented features are as follows: ;; The implemented features are as follows:
;; - Translation (run `reverso-translate') ;; - Translation (run `reverso-translate')
;; - Bilingual concordances or "context" (run `reverso-context') ;; - "Context" or bilingual concordances (run `reverso-context')
;; - Grammar check (run `reverso-grammar') ;; - Grammar check (run `reverso-grammar')
;; - Synonyms search (run `reverso-synonyms') ;; - Synonyms search (run `reverso-synonyms')
;; There's also `reverso-grammar-buffer', which does grammar check in ;; There's also `reverso-grammar-buffer', which does grammar check in
;; the current buffer and displays the result with overlays. ;; the current buffer and displays the result with overlays.
;; ;;
;; The `reverso' command provides an entrypoint to all the ;; The `reverso' command is the entrypoint to all the functionality.
;; functionality.
;; ;;
;; The Elisp API of the listed features is as follows: ;; The Elisp API of the listed features is as follows:
;; - `reverso--translate' ;; - `reverso--translate'
@ -55,6 +54,7 @@
(require 'url-util) (require 'url-util)
(require 'dom) (require 'dom)
;; XXX Compatibility with evil
(declare-function evil-define-key* "evil-core") (declare-function evil-define-key* "evil-core")
(defgroup reverso nil (defgroup reverso nil
@ -83,7 +83,7 @@
(defface reverso-definition-face (defface reverso-definition-face
'((t (:inherit italic))) '((t (:inherit italic)))
"Face for word definitions in reverso buffer." "Face for word definitions in reverso buffers."
:group 'reverso) :group 'reverso)
(defcustom reverso-max-display-lines-in-input 5 (defcustom reverso-max-display-lines-in-input 5
@ -96,6 +96,7 @@
:type 'integer :type 'integer
:group 'reverso) :group 'reverso)
;; This mapping is also a source of all available languages
(defconst reverso--language-mapping (defconst reverso--language-mapping
'((english . eng) '((english . eng)
(german . ger) (german . ger)
@ -113,7 +114,8 @@
(ukrainian . ukr) (ukrainian . ukr)
(turkish . tur) (turkish . tur)
(chinese . chi) (chinese . chi)
(swedish . swe)) (swedish . swe)
(korean . kor))
"Mapping from long language names to short ones. "Mapping from long language names to short ones.
This one is used for the translation queries.") This one is used for the translation queries.")
@ -168,7 +170,7 @@ This one is used for the synonym queries.")
russian swedish turkish ukrainian)) russian swedish turkish ukrainian))
(english . (arabic german spanish french hebrew italian (english . (arabic german spanish french hebrew italian
japanese dutch polish portuguese romanian japanese dutch polish portuguese romanian
russian swedish turkish ukraninan chinese)) russian swedish turkish ukrainian chinese))
(spanish . (arabic german english french hebrew italian (spanish . (arabic german english french hebrew italian
japanese dutch polish portuguese romanian japanese dutch polish portuguese romanian
russian swedish turkish chinese ukrainian)) russian swedish turkish chinese ukrainian))
@ -195,43 +197,16 @@ This one is used for the synonym queries.")
portuguese romanian ukrainian)) portuguese romanian ukrainian))
(ukrainian . (english)) (ukrainian . (english))
(chinese . (english french spanish ukrainian)))) (chinese . (english french spanish ukrainian))))
;; They've changed this multiple times while I've been working at
;; the package. Finally it seems like every language is
;; compatible with every other, at least for the usual
;; translation.
(translation (translation
. ((arabic . (german english spanish french hebrew italian . ,(mapcar
portuguese russian turkish)) (lambda (lang)
(german . (arabic english spanish french hebrew italian (cons (car lang)
japanese dutch polish portuguese romanian (mapcar #'car reverso--language-mapping)))
russian swedish turkish ukrainian)) reverso--language-mapping)))
(english . (arabic german spanish french hebrew italian
japanese dutch polish portuguese romanian
russian swedish turkish ukrainian chinese))
(spanish . (arabic german english french hebrew italian
japanese dutch polish portuguese romanian
russian swedish turkish chinese ukrainian))
(french . (arabic german english spanish hebrew italian
japanese dutch polish portuguese romanian
russian swedish turkish chinese ukrainian))
(hebrew . (arabic german english spanish french italian dutch
portuguese russian ukrainian))
(italian . (arabic german english spanish french hebrew
japanese dutch polish portuguese romanian
russian swedish turkish ukrainian))
(japanese . (german english spanish french italian portuguese
russian ukrainian))
(dutch . (german english spanish french hebrew italian
portuguese russian ukrainian))
(polish . (german english spanish french italian ukrainian))
(portuguese . (arabic german english spanish french hebrew
italian japanese dutch russian turkish
ukrainian))
(romanian . (german english spanish french italian turkish
ukrainian))
(russian . (arabic german english spanish french hebrew italian
japanese dutch portuguese ukrainian))
(swedish . (german english spanish french italian ukrainian))
(turkish . (arabic german english spanish french italian
portuguese romanian ukrainian))
(ukrainian . (english))
(chinese . (english french spanish ukrainian)))))
"Compatibility of languages for different operations.") "Compatibility of languages for different operations.")
(defun reverso-verify-settings () (defun reverso-verify-settings ()