[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/pyim 5eb65e0c84 2/2: Revert "添加简单的云输入法功能,参考 fcitx5."
From: |
ELPA Syncer |
Subject: |
[elpa] externals/pyim 5eb65e0c84 2/2: Revert "添加简单的云输入法功能,参考 fcitx5." |
Date: |
Sun, 8 May 2022 01:57:46 -0400 (EDT) |
branch: externals/pyim
commit 5eb65e0c84e17944633fedbd47bc74d276081f33
Author: Feng Shu <tumashu@163.com>
Commit: Feng Shu <tumashu@163.com>
Revert "添加简单的云输入法功能,参考 fcitx5."
This reverts commit 4016084880ce2dbae1672c7db31134d64349a78c.
---
Development.org | 6 ++--
README.org | 10 ------
pyim-candidates.el | 9 ------
pyim-cloudim.el | 90 -----------------------------------------------------
pyim.el | 3 --
tests/pyim-tests.el | 56 ---------------------------------
6 files changed, 3 insertions(+), 171 deletions(-)
diff --git a/Development.org b/Development.org
index db86cdfd3d..70fc29976f 100644
--- a/Development.org
+++ b/Development.org
@@ -34,9 +34,9 @@
| | | |
| |
| | +---------------------------------------------+
| |
| |
| |
-| | PYIM 持久化层: 云输入法: 探针: |
|
-| | -------------- ---------
------------ | |
-| | Dregcache Cloudim
Probe | |
+| | PYIM 持久化层: 探针:
| |
+| | --------------
------------ | |
+| | Dregcache
Probe | |
| | Dhashcache
| |
| | Dict
| |
|
+---------------------------------------------------------------------------------+
|
diff --git a/README.org b/README.org
index 50ad30fec3..4684ec4d92 100644
--- a/README.org
+++ b/README.org
@@ -101,9 +101,6 @@ pyim 的目标是: *尽最大的努力成为一个好用的 Emacs 中文输入
;; (pyim-default-scheme 'wubi)
;; (pyim-default-scheme 'cangjie)
-;; 我使用云拼音
-;; (setq pyim-cloudim 'baidu)
-
;; pyim 探针设置
;; 设置 pyim 探针设置,这是 pyim 高级功能设置,可以实现 *无痛* 中英文切换 :-)
;; 我自己使用的中英文动态切换规则是:
@@ -162,13 +159,6 @@ pyim 默认使用 pyim-basedict 词库, 这个词库的词条量8万左右,是
| C-DEL 或 C-BACKSPACE | 删除最后一个拼音 |
| M-DEL 或 M-BACKSPACE | 删除最后一个拼音 |
| F1,F2,F3,F4 | 以词定字 |
-** 使用云拼音
-pyim 可以使用搜索引擎提供的云拼音服务,比如:
-
-#+begin_example
-(setq pyim-cloudim 'baidu)
-;; (setq pyim-cloudim 'google)
-#+end_example
** 使用双拼模式
pyim 支持双拼输入模式,用户可以通过变量 `pyim-default-scheme' 来设定:
diff --git a/pyim-candidates.el b/pyim-candidates.el
index 2a17d1d275..7311afd0cd 100644
--- a/pyim-candidates.el
+++ b/pyim-candidates.el
@@ -52,9 +52,6 @@
细节信息请参考 `pyim-page-refresh' 的 docstring.")
-(defvar pyim-candidates-cloud-search-function nil
- "`pyim-candidates-cloud-search' 调用的函数.")
-
(pyim-register-local-variables
'(pyim-candidates pyim-candidate-position))
@@ -158,7 +155,6 @@ IMOBJS 获得候选词条。"
pyim-candidates
;; NOTE: 让第一个词保持不变是不是合理,有待进一步的观察。
`(,(car pyim-candidates)
- ,@(pyim-candidates-cloud-search str 'pinyin)
,@(pyim-candidates-search-buffer
(pyim-cregexp-build str 3 t))
,@(cdr pyim-candidates))))
@@ -180,11 +176,6 @@ IMOBJS 获得候选词条。"
(append (pyim-subconcat (nreverse output) "")
candidates))))
-(defun pyim-candidates-cloud-search (string input-method)
- "云搜索 STRING, 返回候选词条列表."
- (ignore-errors
- (funcall pyim-candidates-cloud-search-function string input-method)))
-
(defun pyim-candidates-search-buffer (regexp)
"在当前 buffer 中使用 REGEXP 搜索词条。"
(save-excursion
diff --git a/pyim-cloudim.el b/pyim-cloudim.el
deleted file mode 100644
index cf8d347581..0000000000
--- a/pyim-cloudim.el
+++ /dev/null
@@ -1,90 +0,0 @@
-;;; pyim-cloudim.el --- cloud input method support for pyim. -*-
lexical-binding: t; -*-
-
-;; * Header
-;; Copyright (C) 2021 Free Software Foundation, Inc.
-
-;; Author: Feng Shu <tumashu@163.com>
-;; Maintainer: Feng Shu <tumashu@163.com>
-;; URL: https://github.com/tumashu/pyim
-;; Keywords: convenience, Chinese, pinyin, input-method
-
-;; This file is part of GNU Emacs.
-
-;; GNU Emacs 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.
-
-;; GNU Emacs 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 GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
-
-;;; Commentary:
-
-;;; Code:
-;; * 代码 :code:
-(require 'cl-lib)
-(require 'url)
-(require 'json)
-
-(defgroup pyim-cloudim nil
- "Cloud input method for pyim."
- :group 'pyim)
-
-(defcustom pyim-cloudim nil
- "设置 pyim 使用的云输入法。"
- :type '(choice
- (const :tag "Do not use cloud input method." nil)
- (const :tag "Use baidu cloud input method." baidu)
- (const :tag "Use google cloud input method." google)))
-
-(defun pyim-cloudim (string input-method)
- "使用云 INPUT-METHOD 输入法引擎搜索 STRING 获取词条列表.
-云输入法由 `pyim-cloudim' 设置。"
- (when (and pyim-cloudim (symbolp pyim-cloudim))
- (let ((func (intern (format "pyim-cloudim:%s" pyim-cloudim))))
- (when (functionp func)
- (funcall func string input-method)))))
-
-(setq pyim-candidates-cloud-search-function #'pyim-cloudim)
-
-(defun pyim-cloudim:baidu (string input-method)
- "使用 baidu 云 INPUT-METHOD 输入法引擎搜索 STRING, 获取词条列表。"
- (when (equal input-method 'pinyin)
- (with-current-buffer (url-retrieve-synchronously
- (format "https://olime.baidu.com/py?py=%s" string)
- t nil 0.5)
- (pyim-cloudim-parse-baidu-buffer))))
-
-(defun pyim-cloudim-parse-baidu-buffer ()
- "解析 `url-retrieve-synchronously' 返回的 baidu buffer."
- (goto-char (point-min))
- (search-forward "\n\n" nil t)
- (delete-region (point-min) (point))
- (let ((data (json-parse-buffer)))
- (list (elt (elt (elt (gethash "0" data) 0) 0) 0))))
-
-(defun pyim-cloudim:google (string input-method)
- "使用 google 云 INPUT-METHOD 输入法引擎搜索 STRING, 获取词条列表。"
- (when (eq input-method 'pinyin)
- (with-current-buffer (url-retrieve-synchronously
- (format
"https://www.google.cn/inputtools/request?ime=pinyin&text=%s" string)
- t nil 0.5)
- (pyim-cloudim-parse-google-buffer))))
-
-(defun pyim-cloudim-parse-google-buffer ()
- "解析 `url-retrieve-synchronously' 返回的 google buffer."
- (goto-char (point-min))
- (search-forward "\n\n" nil t)
- (delete-region (point-min) (point))
- (let ((data (json-parse-buffer)))
- (list (elt (elt (elt (elt data 1) 0) 1) 0))))
-
-;; * Footer
-(provide 'pyim-cloudim)
-
-;;; pyim-cloudim.el ends here
diff --git a/pyim.el b/pyim.el
index e03389ffba..98bdeb9476 100644
--- a/pyim.el
+++ b/pyim.el
@@ -854,9 +854,6 @@ FILE 的格式与 `pyim-dcache-export' 生成的文件格式相同,
;; ** pyim 探针
(require 'pyim-probe)
-;; ** pyim 云输入法
-(require 'pyim-cloudim)
-
;; ** pyim hacks
(require 'pyim-hacks)
diff --git a/tests/pyim-tests.el b/tests/pyim-tests.el
index 2d2e1a68fc..88aef3541f 100644
--- a/tests/pyim-tests.el
+++ b/tests/pyim-tests.el
@@ -399,18 +399,6 @@
(should (equal (pyim-candidates-search-buffer (pyim-cregexp-build "nh" 3
t))
'("牛蛤" "你坏" "你好" "牛和" "你话")))))
-(ert-deftest pyim-tests-pyim-candidates-cloud-search ()
- (let ((pyim-candidates-cloud-search-function
- (lambda (x y)
- (list x y "b"))))
- (should (equal (pyim-candidates-cloud-search "a" 'pinyin) '("a" pinyin
"b"))))
-
- (let ((pyim-candidates-cloud-search-function nil))
- (should (not (pyim-candidates-cloud-search "a" 'pinyin))))
-
- (let ((pyim-candidates-cloud-search-function "xxx"))
- (should (not (pyim-candidates-cloud-search "a" 'pinyin)))))
-
;; ** pyim-cstring 相关单元测试
(ert-deftest pyim-tests-pyim-cstring-partition ()
(should (equal (pyim-cstring-partition "你好 hello 你好")
@@ -938,50 +926,6 @@ yin-xing 因行
;; `pyim-dregcache-get' calls `pyim-pymap-py2cchar-get' before return
result
(should (eq (length words) 51))))
-(ert-deftest pyim-tests-pyim-cloudim ()
- (with-temp-buffer
- (insert "HTTP/1.1 200 OK
-Content-Length: 88
-Content-Type: text/plain; charset=utf-8
-Date: Sun, 08 May 2022 00:56:13 GMT
-
-{\"0\":[[[\"你好\",5,{\"pinyin\":\"ni'hao\",\"type\":\"IMEDICT\"}]]],\"1\":\"ni'hao\",\"result\":[null]}")
- (should (equal (pyim-cloudim-parse-baidu-buffer) '("你好"))))
-
- (with-temp-buffer
- (insert "HTTP/1.1 200 OK
-Date: Sun, 08 May 2022 03:33:56 GMT
-Pragma: no-cache
-Expires: -1
-Cache-Control: no-cache, must-revalidate
-Cross-Origin-Resource-Policy: cross-origin
-Content-Type: application/json; charset=UTF-8
-X-Content-Type-Options: nosniff
-Content-Disposition: attachment; filename=\"f.txt\"
-Server: Google Input Server/1.0
-X-XSS-Protection: 0
-X-Frame-Options: SAMEORIGIN
-Alt-Svc: h3=\":443\"; ma=2592000,h3-29=\":443\"; ma=2592000,h3-Q050=\":443\";
ma=2592000,h3-Q046=\":443\"; ma=2592000,h3-Q043=\":443\";
ma=2592000,quic=\":443\"; ma=2592000; v=\"46,43\"
-Transfer-Encoding: chunked
-
-[\"SUCCESS\",[[\"nihao\",[\"你好\"],[],{\"annotation\":[\"ni
hao\"],\"candidate_type\":[0],\"lc\":[\"16 16\"]}]]]")
- (should (equal (pyim-cloudim-parse-google-buffer) '("你好"))))
-
- (should (equal (pyim-cloudim:baidu "nihao" 'pinyin) '("你好")))
- (should (equal (pyim-cloudim:google "nihao" 'pinyin) '("你好")))
-
- (let ((pyim-cloudim 'baidu))
- (should (equal (pyim-cloudim "nihao" 'pinyin) '("你好"))))
-
- (let ((pyim-cloudim 'google))
- (should (equal (pyim-cloudim "nihao" 'pinyin) '("你好"))))
-
- (let ((pyim-cloudim 'xxx))
- (should (not (pyim-cloudim "nihao" 'pinyin))))
-
- (let ((pyim-cloudim nil))
- (should (not (pyim-cloudim "nihao" 'pinyin)))))
-
(ert-run-tests-batch-and-exit)
;; * Footer
;;; pyim-tests.el ends here