[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/pyim 5218d48: 导入词条的时候,允许用户提供拼音。
From: |
ELPA Syncer |
Subject: |
[elpa] externals/pyim 5218d48: 导入词条的时候,允许用户提供拼音。 |
Date: |
Mon, 6 Dec 2021 19:57:38 -0500 (EST) |
branch: externals/pyim
commit 5218d489d3ff4ea2f93cd576cdf784bcd610c2d4
Author: Feng Shu <tumashu@163.com>
Commit: Feng Shu <tumashu@163.com>
导入词条的时候,允许用户提供拼音。
* pyim-process.el (pyim-process-create-word): 添加 criteria 选项。
* pyim.el (pyim-import-words-and-counts): 支持用户提供拼音。
---
pyim-process.el | 9 +++++++--
pyim.el | 15 +++++++++------
2 files changed, 16 insertions(+), 8 deletions(-)
diff --git a/pyim-process.el b/pyim-process.el
index 70c0f6e..227b8bf 100644
--- a/pyim-process.el
+++ b/pyim-process.el
@@ -518,7 +518,7 @@ alist 列表。"
pyim-cstring-to-code-criteria
str))))
-(defun pyim-process-create-word (word &optional prepend wordcount-handler)
+(defun pyim-process-create-word (word &optional prepend wordcount-handler
criteria)
"将中文词条 WORD 添加编码后,保存到用户选择过的词生成的缓存中。
词条 WORD 默认会追加到已有词条的后面,如果 PREPEND 设置为 t,
@@ -531,6 +531,9 @@ WORDCOUNT-HANDLER 也可以是一个函数,其返回值将设置为 WORD 的
而这个函数的参数则表示 WORD 当前词频,这个功能用于:`pyim-dcache-import',
如果 WORDCOUNT-HANDLER 设置为其他, 则表示让 WORD 当前词频加1.
+如果 CRITERIA 是一个字符串,在多音字矫正时,将使用这个字符串来矫
+正多音字。
+
BUG:拼音无法有效地处理多音字。"
(when (and (> (length word) 0)
;; NOTE: 十二个汉字及以上的词条,加到个人词库里面用处不大,这是很主
@@ -541,7 +544,9 @@ BUG:拼音无法有效地处理多音字。"
(setq pyim-process-last-created-word word)
(let* ((scheme-name (pyim-scheme-name))
(code-prefix (pyim-scheme-get-option scheme-name :code-prefix))
- (codes (pyim-cstring-to-codes word scheme-name
pyim-cstring-to-code-criteria)))
+ (codes (pyim-cstring-to-codes
+ word scheme-name
+ (or criteria pyim-cstring-to-code-criteria))))
;; 保存对应词条的词频
(when (> (length word) 0)
(pyim-dcache-update-iword2count word prepend wordcount-handler))
diff --git a/pyim.el b/pyim.el
index b7de253..339e87d 100644
--- a/pyim.el
+++ b/pyim.el
@@ -376,6 +376,7 @@ SILENT 设置为 t 是,不显示提醒信息。"
导入的文件结构类似:
;;; -*- coding: utf-8-unix -*-
+ ;; 词条 计数 拼音(可选)
你好 247
这是 312
@@ -387,10 +388,10 @@ MERGE-METHOD 是一个函数,这个函数需要两个数字参数,代表词
(when (or silent
(yes-or-no-p "PYIM 词条导入注意事项:
-导入词条的时候会自动添加拼音,由于多音字不好处理,所以这个命令会
-在个人词库缓存中添加一些不合理的词条信息,比如:ying-xing 银行,
-这些词条的文本属性 :noexport 会设置为 t, 等用户再次输入这个词条的
-时候,通过用户的输入进行多音字矫正,对应的 :noexport 就会删除。
+如果文件没有提供拼音,导入词条时会自动添加,这时个人词库缓存中会
+添加一些不合理的词条信息,比如:ying-xing 银行,这些词条的文本属
+性 :noexport 会设置为 t, 等用户再次输入这个词条的时候,通过用户的
+输入进行多音字矫正,对应的 :noexport 就会删除。
=> 确定继续导入吗?"))
(pyim-process-init-dcaches)
@@ -404,13 +405,15 @@ MERGE-METHOD 是一个函数,这个函数需要两个数字参数,代表词
(content (pyim-dline-parse))
(word (car content))
(count (string-to-number
- (or (car (cdr content)) "0"))))
+ (or (car (car content)) "0")))
+ (criteria (car (car car content))))
(pyim-process-create-word
word nil
(lambda (x)
(funcall (or merge-method #'max)
(or x 0)
- count))))
+ count))
+ criteria))
(forward-line 1)))
;; 保存一下用户选择过的词生成的缓存和词频缓存,
;; 因为使用 async 机制更新 dcache 时,需要从 dcache 文件
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [elpa] externals/pyim 5218d48: 导入词条的时候,允许用户提供拼音。,
ELPA Syncer <=