-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathtlon-dict.el
56 lines (43 loc) · 1.64 KB
/
tlon-dict.el
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
;;; tlon-dict.el --- Dictionary-related functions -*- lexical-binding: t; fill-column: 80 -*-
;; Copyright (C) 2025
;; Author: Pablo Stafforini
;; This file is NOT part of GNU Emacs.
;; This program is free software; you can redistribute it and/or modify
;; it under the terms of the GNU General Public License as published by
;; the Free Software Foundation, either version 3 of the License, or
;; (at your option) any later version.
;;
;; This program is distributed in the hope that it will be useful,
;; but WITHOUT ANY WARRANTY; without even the implied warranty of
;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;; GNU General Public License for more details.
;;
;; You should have received a copy of the GNU General Public License
;; along with this program. If not, see <https://www.gnu.org/licenses/>.
;;; Commentary:
;; Dictionary-related functions.
;;; Code:
(require 'reverso)
(require 'tlon-core)
;;;; Functions
;;;###autoload
(defun tlon-reverso-get-synonyms ()
"Advice to enforce that language is always the current language."
(interactive)
(let ((language (tlon-lookup tlon-languages-properties :name :code (tlon-get-language-in-file)))
(text (read-string "Word:" (thing-at-point 'word))))
(reverso--get-synonyms text (intern language)
(lambda (data)
(reverso--with-buffer
(reverso--synonyms-render text data)
(setq-local reverso--data data))))))
;;;;; Menu
;;;###autoload (autoload 'tlon-dict-menu "tlon-dict" nil t)
(transient-define-prefix tlon-dict-menu ()
"`tlon-dict' menu."
[
("s" "Synonyms" tlon-reverso-get-synonyms)
]
)
(provide 'tlon-dict)
;;; tlon-dict.el ends here