[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)
"将光标前的用户输入的字符串转换为中文.
- [elpa] externals/pyim 22c905d 33/36: update pyim.el, (continued)
- [elpa] externals/pyim 22c905d 33/36: update pyim.el, ELPA Syncer, 2021/04/22
- [elpa] externals/pyim a1ee220 13/36: update pyim-scheme.el, ELPA Syncer, 2021/04/22
- [elpa] externals/pyim 9f017ac 18/36: New file: pyim-entered.el, ELPA Syncer, 2021/04/22
- [elpa] externals/pyim 3ae29c0 21/36: update pyim-page.el, ELPA Syncer, 2021/04/22
- [elpa] externals/pyim 1a37aef 25/36: Add pyim-preview.el, ELPA Syncer, 2021/04/22
- [elpa] externals/pyim 2b55c5d 26/36: Remove useless Package-Requires:, ELPA Syncer, 2021/04/22
- [elpa] externals/pyim 336c7ab 29/36: New file: pyim-outcome.el, ELPA Syncer, 2021/04/22
- [elpa] externals/pyim 82ec045 34/36: move pyim-import/export* to pyim-dcache.el, ELPA Syncer, 2021/04/22
- [elpa] externals/pyim aa8dbd9 36/36: Merge pull request #391 from tumashu/refact, ELPA Syncer, 2021/04/22
- [elpa] externals/pyim 10ee78c 35/36: update pyim.el comment about cregexp., ELPA Syncer, 2021/04/22
- [elpa] externals/pyim f199ccb 31/36: Fix require and compile warn,
ELPA Syncer <=