emacs-elpa-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[elpa] externals/pyim f199ccb 31/36: Fix require and compile warn


From: ELPA Syncer
Subject: [elpa] externals/pyim f199ccb 31/36: Fix require and compile warn
Date: Thu, 22 Apr 2021 22:57:21 -0400 (EDT)

branch: externals/pyim
commit f199ccbf7b5fbe1f7d0e0e9e9024edf07680a11e
Author: Feng Shu <tumashu@163.com>
Commit: Feng Shu <tumashu@163.com>

    Fix require and compile warn
---
 pyim-autoselector.el |  3 ++
 pyim-candidates.el   |  7 ++++
 pyim-cregexp.el      |  1 +
 pyim-dcache.el       | 10 +++++-
 pyim-dict.el         | 10 ++----
 pyim-entered.el      | 17 ++++++++--
 pyim-outcome.el      | 86 +++++++++++++++++++++++++++++++++++++++++++++++++
 pyim-page.el         |  2 ++
 pyim-preview.el      |  2 ++
 pyim-punctuation.el  |  3 ++
 pyim.el              | 91 ----------------------------------------------------
 11 files changed, 129 insertions(+), 103 deletions(-)

diff --git a/pyim-autoselector.el b/pyim-autoselector.el
index 3212085..ee187a0 100644
--- a/pyim-autoselector.el
+++ b/pyim-autoselector.el
@@ -28,6 +28,9 @@
 ;;; Code:
 ;; * 代码                                                           :code:
 (require 'cl-lib)
+(require 'pyim-scheme)
+(require 'pyim-entered)
+(require 'pyim-candidates)
 
 (defcustom pyim-autoselector '(pyim-autoselector-xingma)
   "已经启用的自动上屏器.
diff --git a/pyim-candidates.el b/pyim-candidates.el
index d3a5638..bc63625 100644
--- a/pyim-candidates.el
+++ b/pyim-candidates.el
@@ -28,6 +28,11 @@
 ;;; Code:
 ;; * 代码                                                           :code:
 (require 'cl-lib)
+(require 'pyim-common)
+(require 'pyim-dcache)
+(require 'pyim-imobjs-codes)
+(require 'pyim-page)
+(require 'pyim-preview)
 
 (defvar pyim-candidates nil
   "所有备选词条组成的列表.")
@@ -89,6 +94,8 @@ IMOBJS 获得候选词条。"
       (when (car result)
         result))))
 
+(defvar pyim-enable-shortcode)
+
 (defun pyim-candidates-create:quanpin (imobjs scheme-name &optional async)
   "`pyim-candidates-create' 处理全拼输入法的函数."
   (unless async
diff --git a/pyim-cregexp.el b/pyim-cregexp.el
index 5543ea9..c3666b4 100644
--- a/pyim-cregexp.el
+++ b/pyim-cregexp.el
@@ -28,6 +28,7 @@
 ;;; Code:
 ;; * 代码                                                           :code:
 (require 'cl-lib)
+(require 'pyim-pymap)
 (require 'xr)
 (require 'rx)
 
diff --git a/pyim-dcache.el b/pyim-dcache.el
index 1137ff1..dd91460 100644
--- a/pyim-dcache.el
+++ b/pyim-dcache.el
@@ -159,6 +159,14 @@ VARIABLE 变量,FORCE-RESTORE 设置为 t 时,强制恢复,变量原来的
         ;; Need to return nil
         nil))))
 
+(defun pyim-dcache-create-dicts-md5 (dict-files)
+  (let* ((version "v1") ;当需要强制更新 dict 缓存时,更改这个字符串。
+         (dicts-md5 (md5 (prin1-to-string
+                          (mapcar #'(lambda (file)
+                                      (list version file (nth 5 
(file-attributes file 'string))))
+                                  dict-files)))))
+    dicts-md5))
+
 (defun pyim-dcache-update-code2word (&optional force)
   "读取并加载词库.
 
@@ -170,7 +178,7 @@ VARIABLE 变量,FORCE-RESTORE 设置为 t 时,强制恢复,变量原来的
                                  (unless (plist-get x :disable)
                                    (plist-get x :file)))
                              `(,@pyim-dicts ,@pyim-extra-dicts)))
-         (dicts-md5 (pyim-create-dicts-md5 dict-files)))
+         (dicts-md5 (pyim-dcache-create-dicts-md5 dict-files)))
     (pyim-dcache-call-api 'update-code2word dict-files dicts-md5 force)))
 
 (defun pyim-dcache-init-variables ()
diff --git a/pyim-dict.el b/pyim-dict.el
index f31ddbd..5292960 100644
--- a/pyim-dict.el
+++ b/pyim-dict.el
@@ -48,14 +48,6 @@ plist 来表示,比如:
 ;; ** pyim 词库管理工具
 (defvar pyim-dm-buffer "*pyim-dict-manager*")
 
-(defun pyim-create-dicts-md5 (dict-files)
-  (let* ((version "v1") ;当需要强制更新 dict 缓存时,更改这个字符串。
-         (dicts-md5 (md5 (prin1-to-string
-                          (mapcar #'(lambda (file)
-                                      (list version file (nth 5 
(file-attributes file 'string))))
-                                  dict-files)))))
-    dicts-md5))
-
 (defun pyim-dm-refresh ()
   "Refresh the contents of the *pyim-dict-manager* buffer."
   (interactive)
@@ -185,6 +177,8 @@ plist 来表示,比如:
       (goto-char (point-min))
       (forward-line (- line 1)))))
 
+(declare-function pyim-restart "pyim")
+
 (define-derived-mode pyim-dm-mode special-mode "pyim-dicts-manager"
   "Major mode for managing pyim dicts"
   (read-only-mode)
diff --git a/pyim-entered.el b/pyim-entered.el
index 211f4cb..95f4090 100644
--- a/pyim-entered.el
+++ b/pyim-entered.el
@@ -29,6 +29,14 @@
 ;; * 代码                                                           :code:
 (require 'cl-lib)
 
+(defcustom pyim-exhibit-delay-ms 0
+  "输入或者删除拼音字符后等待多少毫秒后才显示可选词
+当用户快速输入连续的拼音时可提升用户体验.
+如果为 0 或者 nil, 则不等待立刻显示可选词."
+  :type 'integer)
+
+(defvar pyim-entered--exhibit-timer nil)
+
 (defvar pyim-entered-buffer " *pyim-entered-buffer*"
   "一个 buffer,用来处理用户已经输入的字符串: entered。
 
@@ -155,6 +163,9 @@ TYPE 取值为 point-after, 返回 entered buffer 中 point 之后的字符
               (cl-decf pos)))))
       end-position)))
 
+(declare-function pyim-terminate-translation "pyim")
+(declare-function pyim-convert-string-at-point "pyim")
+
 (defun pyim-entered-refresh-1 ()
   "查询 `pyim-entered-buffer' 光标前的拼音字符串(如果光标在行首则为光标后的), 显示备选词等待用户选择。"
   (let* ((scheme-name (pyim-scheme-name))
@@ -239,14 +250,14 @@ TYPE 取值为 point-after, 返回 entered buffer 中 point 之后的字符
   "延迟 `pyim-exhibit-delay-ms' 显示备选词等待用户选择。"
   (if (= (length (pyim-entered-get 'point-before)) 0)
       (pyim-terminate-translation)
-    (when pyim--exhibit-timer
-      (cancel-timer pyim--exhibit-timer))
+    (when pyim-entered--exhibit-timer
+      (cancel-timer pyim-entered--exhibit-timer))
     (cond
      ((or no-delay
           (not pyim-exhibit-delay-ms)
           (eq pyim-exhibit-delay-ms 0))
       (pyim-entered-refresh-1))
-     (t (setq pyim--exhibit-timer
+     (t (setq pyim-entered--exhibit-timer
               (run-with-timer (/ pyim-exhibit-delay-ms 1000.0)
                               nil
                               #'pyim-entered-refresh-1))))))
diff --git a/pyim-outcome.el b/pyim-outcome.el
index c931d8b..09faa9f 100644
--- a/pyim-outcome.el
+++ b/pyim-outcome.el
@@ -29,6 +29,62 @@
 ;; * 代码                                                           :code:
 (require 'cl-lib)
 
+(defcustom pyim-translate-trigger-char "v"
+  "用于触发特殊操作的字符,相当与单字快捷键.
+
+输入中文的时候,我们需要快速频繁的执行一些特定的命令,最直接的方
+法就是将上述命令绑定到一个容易按的快捷键上,但遗憾的是 emacs 大多
+数容易按的快捷键都 *名花有主* 了,甚至找一个 “Ctrl+单字符”的快
+捷键都不太容易,特殊功能触发字符,可以帮助我们实现“单字符”快捷
+键,类似 org-mode 的 speed key。
+
+默认情况下,我们可以使用特殊功能触发字符执行下面几个操作(假设触
+发字符为 v):
+
+1. 快速切换中英文标点符号的样式:当光标前的字符是一个标点符号时,
+   按 \"v\" 可以切换这个标点的样式。比如:光标在A处的时候,按
+   \"v\" 可以将A前面的全角逗号转换为半角逗号。
+
+        你好,-A-
+
+   按 \"v\" 后
+
+        你好,-A-
+
+2. 快速将光标前的词条添加到词库:当光标前的字符是中文字符时,按
+   \"num\" + \"v\" 可以将光标前 num 个中文汉字组成的词条添加到个
+   人词频文件中,比如:当光标在A处时,按\"4v\"可以将“的红烧肉”
+   这个词条加入个人词频文件,默认num不超过9。
+
+        我爱吃美味的红烧肉-A-
+
+值得注意的是,这种方式如果添加的功能太多,会造成许多潜在的冲突。
+
+用户可以使用变量 `pyim-translate-trigger-char' 来设置触发字符,默
+认的触发字符是:\"v\", 选择这个字符的理由基于全拼输入法的:
+
+1. \"v\" 不是有效的声母,不会对中文输入造成太大的影响。
+2. \"v\" 字符很容易按。
+
+pyim 使用函数 `pyim-translate' 来处理特殊功能触发字符。当待输入的
+字符是触发字符时,`pyim-translate' 根据光标前的字符的不同来调用不
+同的功能,具体见 `pyim-translate' :
+
+单字快捷键受到输入法方案的限制,比如:全拼输入法可以将其设置为v,
+但双拼输入法下设置 v 可能就不行,所以,pyim 首先会检查当前输入法
+方案下,这个快捷键设置是否合理有效,如果不是一个合理的设置,则使
+用拼音方案默认的 :prefer-trigger-chars 。
+
+具体请参考 `pyim-translate-get-trigger-char' 。"
+  :type '(choice (const nil) string))
+
+(defcustom pyim-wash-function 'pyim-wash-current-line-function
+  "清洗光标前面的文字内容.
+这个函数与『单字快捷键配合使用』,当光标前面的字符为汉字字符时,
+按 `pyim-translate-trigger-char' 对应字符,可以调用这个函数来清洗
+光标前面的文字内容。"
+  :type 'function)
+
 (defvar pyim-outcome-history nil
   "记录 pyim outcome 的变化的历史
 
@@ -114,6 +170,9 @@ pyim 的 translate-trigger-char 要占用一个键位,为了防止用户
           prefer-trigger-chars)
       user-trigger-char)))
 
+(declare-function pyim-create-word-at-point "pyim")
+(declare-function pyim-delete-word-at-point "pyim")
+
 (defun pyim-translate (char)
   "Pyim 字符转换函数,主要用于处理标点符号.
 
@@ -223,6 +282,33 @@ alist 列表。"
      ;; 当输入的字符不是标点符号时,原样插入。
      (t str))))
 
+(defun pyim-wash-current-line-function ()
+  "清理当前行的内容,比如:删除不必要的空格,等。"
+  (interactive)
+  (let* ((begin (line-beginning-position))
+         (end (point))
+         (string (buffer-substring-no-properties begin end))
+         new-string)
+    (when (> (length string) 0)
+      (delete-region begin end)
+      (setq new-string
+            (with-temp-buffer
+              (insert string)
+              (goto-char (point-min))
+              (while (re-search-forward "\\([,。;?!;、)】]\\)  
+\\([[:ascii:]]\\)" nil t)
+                (replace-match (concat (match-string 1) (match-string 2))  nil 
t))
+              (goto-char (point-min))
+              (while (re-search-forward "\\([[:ascii:]]\\)  +\\([(【]\\)" nil t)
+                (replace-match (concat (match-string 1) (match-string 2))  nil 
t))
+              (goto-char (point-min))
+              (while (re-search-forward "\\([[:ascii:]]\\)  +\\(\\cc\\)" nil t)
+                (replace-match (concat (match-string 1) " " (match-string 2))  
nil t))
+              (goto-char (point-min))
+              (while (re-search-forward "\\(\\cc\\)  +\\([[:ascii:]]\\)" nil t)
+                (replace-match (concat (match-string 1) " " (match-string 2))  
nil t))
+              (buffer-string)))
+      (insert new-string))))
+
 ;; * Footer
 (provide 'pyim-outcome)
 
diff --git a/pyim-page.el b/pyim-page.el
index 6b9269c..e4c3813 100644
--- a/pyim-page.el
+++ b/pyim-page.el
@@ -211,6 +211,8 @@ page 的概念,比如,上面的 “nihao” 的 *待选词列表* 就可以
              (overlay-start pyim-preview-overlay)))
            (t (message (pyim-page-style:minibuffer page-info)))))))))
 
+(declare-function pyim-terminate-translation "pyim")
+
 (defun pyim-page-next-page (arg)
   "Pyim page 翻页命令.
 
diff --git a/pyim-preview.el b/pyim-preview.el
index e5669bb..90866a6 100644
--- a/pyim-preview.el
+++ b/pyim-preview.el
@@ -57,6 +57,8 @@
   (if (and (overlayp pyim-preview-overlay) (overlay-start 
pyim-preview-overlay))
       (delete-overlay pyim-preview-overlay)))
 
+(declare-function pyim-magic-convert "pyim")
+
 (defun pyim-preview-refresh ()
   "刷新光标处预览.
 
diff --git a/pyim-punctuation.el b/pyim-punctuation.el
index 0c62717..aefa20a 100644
--- a/pyim-punctuation.el
+++ b/pyim-punctuation.el
@@ -89,6 +89,9 @@ pyim 输入半角标点,函数列表中每个函数都有一个参数:char 
 
 If you don't like this function, set the variable to nil")
 
+(defvar pyim-input-ascii)
+(declare-function pyim-auto-switch-english-input-p "pyim")
+
 ;; ** 切换中英文标点符号
 (defun pyim-punctuation-full-width-p ()
   "判断是否需要切换到全角标点输入模式
diff --git a/pyim.el b/pyim.el
index e0f14c4..29478cd 100644
--- a/pyim.el
+++ b/pyim.el
@@ -58,61 +58,6 @@
   "启用输入联想词功能."
   :type 'boolean)
 
-(defcustom pyim-translate-trigger-char "v"
-  "用于触发特殊操作的字符,相当与单字快捷键.
-
-输入中文的时候,我们需要快速频繁的执行一些特定的命令,最直接的方
-法就是将上述命令绑定到一个容易按的快捷键上,但遗憾的是 emacs 大多
-数容易按的快捷键都 *名花有主* 了,甚至找一个 “Ctrl+单字符”的快
-捷键都不太容易,特殊功能触发字符,可以帮助我们实现“单字符”快捷
-键,类似 org-mode 的 speed key。
-
-默认情况下,我们可以使用特殊功能触发字符执行下面几个操作(假设触
-发字符为 v):
-
-1. 快速切换中英文标点符号的样式:当光标前的字符是一个标点符号时,
-   按 \"v\" 可以切换这个标点的样式。比如:光标在A处的时候,按
-   \"v\" 可以将A前面的全角逗号转换为半角逗号。
-
-        你好,-A-
-
-   按 \"v\" 后
-
-        你好,-A-
-
-2. 快速将光标前的词条添加到词库:当光标前的字符是中文字符时,按
-   \"num\" + \"v\" 可以将光标前 num 个中文汉字组成的词条添加到个
-   人词频文件中,比如:当光标在A处时,按\"4v\"可以将“的红烧肉”
-   这个词条加入个人词频文件,默认num不超过9。
-
-        我爱吃美味的红烧肉-A-
-
-值得注意的是,这种方式如果添加的功能太多,会造成许多潜在的冲突。
-
-用户可以使用变量 `pyim-translate-trigger-char' 来设置触发字符,默
-认的触发字符是:\"v\", 选择这个字符的理由基于全拼输入法的:
-
-1. \"v\" 不是有效的声母,不会对中文输入造成太大的影响。
-2. \"v\" 字符很容易按。
-
-pyim 使用函数 `pyim-translate' 来处理特殊功能触发字符。当待输入的
-字符是触发字符时,`pyim-translate' 根据光标前的字符的不同来调用不
-同的功能,具体见 `pyim-translate' :
-
-单字快捷键受到输入法方案的限制,比如:全拼输入法可以将其设置为v,
-但双拼输入法下设置 v 可能就不行,所以,pyim 首先会检查当前输入法
-方案下,这个快捷键设置是否合理有效,如果不是一个合理的设置,则使
-用拼音方案默认的 :prefer-trigger-chars 。
-
-具体请参考 `pyim-translate-get-trigger-char' 。"
-  :type '(choice (const nil) string))
-
-(defcustom pyim-exhibit-delay-ms 0
-  "输入或者删除拼音字符后等待多少毫秒后才显示可选词
-当用户快速输入连续的拼音时可提升用户体验.
-如果为 0 或者 nil, 则不等待立刻显示可选词."
-  :type 'integer)
-
 (defcustom pyim-english-input-switch-functions nil
   "让 pyim 开启英文输入功能.
 
@@ -120,13 +65,6 @@ pyim 使用函数 `pyim-translate' 来处理特殊功能触发字符。当待输
 运行结果为 t 时,pyim 开启英文输入功能。"
   :type 'symbol)
 
-(defcustom pyim-wash-function 'pyim-wash-current-line-function
-  "清洗光标前面的文字内容.
-这个函数与『单字快捷键配合使用』,当光标前面的字符为汉字字符时,
-按 `pyim-translate-trigger-char' 对应字符,可以调用这个函数来清洗
-光标前面的文字内容。"
-  :type 'function)
-
 (define-obsolete-variable-alias 'pyim-page-select-finish-hook 
'pyim-select-finish-hook "3.0")
 (defcustom pyim-select-finish-hook nil
   "Pyim 选词完成时运行的 hook."
@@ -235,8 +173,6 @@ pyim 使用函数 `pyim-translate' 来处理特殊功能触发字符。当待输
     pyim-punctuation-escape-list)
   "A list of buffer local variable.")
 
-(defvar pyim--exhibit-timer nil)
-
 (dolist (var pyim-local-variable-list)
   (make-variable-buffer-local var)
   (put var 'permanent-local t))
@@ -881,33 +817,6 @@ Return the input string.
     ;; 不能用来选词了。
     (call-interactively #'pyim-self-insert-command)))
 
-(defun pyim-wash-current-line-function ()
-  "清理当前行的内容,比如:删除不必要的空格,等。"
-  (interactive)
-  (let* ((begin (line-beginning-position))
-         (end (point))
-         (string (buffer-substring-no-properties begin end))
-         new-string)
-    (when (> (length string) 0)
-      (delete-region begin end)
-      (setq new-string
-            (with-temp-buffer
-              (insert string)
-              (goto-char (point-min))
-              (while (re-search-forward "\\([,。;?!;、)】]\\)  
+\\([[:ascii:]]\\)" nil t)
-                (replace-match (concat (match-string 1) (match-string 2))  nil 
t))
-              (goto-char (point-min))
-              (while (re-search-forward "\\([[:ascii:]]\\)  +\\([(【]\\)" nil t)
-                (replace-match (concat (match-string 1) (match-string 2))  nil 
t))
-              (goto-char (point-min))
-              (while (re-search-forward "\\([[:ascii:]]\\)  +\\(\\cc\\)" nil t)
-                (replace-match (concat (match-string 1) " " (match-string 2))  
nil t))
-              (goto-char (point-min))
-              (while (re-search-forward "\\(\\cc\\)  +\\([[:ascii:]]\\)" nil t)
-                (replace-match (concat (match-string 1) " " (match-string 2))  
nil t))
-              (buffer-string)))
-      (insert new-string))))
-
 ;;;###autoload
 (defun pyim-convert-string-at-point (&optional return-cregexp)
   "将光标前的用户输入的字符串转换为中文.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]