[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/pyim c573694ae4 58/58: Update pyim-pymap-utils.el
From: |
ELPA Syncer |
Subject: |
[elpa] externals/pyim c573694ae4 58/58: Update pyim-pymap-utils.el |
Date: |
Fri, 24 Jun 2022 06:57:56 -0400 (EDT) |
branch: externals/pyim
commit c573694ae44337ec05f6b8cc1ae649aca08643b2
Author: Feng Shu <tumashu@163.com>
Commit: Feng Shu <tumashu@163.com>
Update pyim-pymap-utils.el
---
pyim-pymap-utils.el | 41 +++++++++++++++++++++--------------------
tests/pyim-tests.el | 2 +-
2 files changed, 22 insertions(+), 21 deletions(-)
diff --git a/pyim-pymap-utils.el b/pyim-pymap-utils.el
index a715d744b3..290b1602bb 100644
--- a/pyim-pymap-utils.el
+++ b/pyim-pymap-utils.el
@@ -37,7 +37,7 @@
(require 'pyim-pymap)
;; 如果改变这个变量的取值,那么 pyim-tests.el 中,许多 tests 都可能需要更新。
-(defvar pyim-pymap-commonly-used-cchar
+(defvar pyim-pymap--commonly-used-cchar
(cl-remove-if-not
(lambda (char)
(string-match-p "\\cc" char))
@@ -298,22 +298,6 @@
趯罍鼱鳠鳡鳣爟爚灈韂糵礵鹴皭龢鳤亹籥𫚭玃醾齇觿" ""))
"常用汉字")
-(defun pyim-pymap-cchar< (a b)
- "如果汉字 A 的使用频率大于汉字 B 的使用频率时,返回 non-nil"
- (< (or (cl-position a pyim-pymap-commonly-used-cchar :test #'equal) 1000000)
- (or (cl-position b pyim-pymap-commonly-used-cchar :test #'equal)
1000000)))
-
-(defun pyim-pymap-sort-pymap ()
- "对 `pyim-pymap' 重新排序, 这个函数主要用于维护 `pyim-pymap'."
- (let (pymap)
- (dolist (py pyim-pymap)
- (push (list (car py)
- (string-join
- (sort (split-string (cadr py) "")
- #'pyim-pymap-cchar<)))
- pymap))
- (reverse pymap)))
-
(defun pyim-pymap-build-pymap ()
"使用 libpinyin 自带的 data 文件创建 `pyim-pymap'.
这个函数运行估计需要5分钟。"
@@ -342,11 +326,11 @@
(with-temp-buffer
(maphash
(lambda (key value)
- (let* ((n (- (length pyim-pymap-commonly-used-cchar) 1))
+ (let* ((n (- (length pyim-pymap--commonly-used-cchar) 1))
(value (reverse (delete-dups value)))
(seps (mapcar
(lambda (n)
- (propertize (nth n pyim-pymap-commonly-used-cchar)
+ (propertize (nth n pyim-pymap--commonly-used-cchar)
'sep t))
(list 4000 7000 n)))
(string
@@ -355,7 +339,7 @@
(if (get-text-property 0 'sep str)
"|"
str))
- (sort (append seps value) #'pyim-pymap-cchar<)))))
+ (sort (append seps value) #'pyim-pymap--cchar<)))))
(insert (format "(%S %S)\n" key string))))
hash-table)
(sort-lines nil (point-min) (point-max))
@@ -378,6 +362,23 @@
(indent-region (point-min) (point-max))
(buffer-string)))))
+(defun pyim-pymap--sort-pymap ()
+ "对 `pyim-pymap' 重新排序, 这个函数主要用于维护 `pyim-pymap'."
+ (let (pymap)
+ (dolist (py pyim-pymap)
+ (push (list (car py)
+ (string-join
+ (sort (split-string (cadr py) "")
+ #'pyim-pymap--cchar<)))
+ pymap))
+ (reverse pymap)))
+
+(defun pyim-pymap--cchar< (a b)
+ "如果汉字 A 的使用频率大于汉字 B 的使用频率时,返回 non-nil"
+ (< (or (cl-position a pyim-pymap--commonly-used-cchar :test #'equal) 1000000)
+ (or (cl-position b pyim-pymap--commonly-used-cchar :test #'equal)
1000000)))
+
+
;; * Footer
(provide 'pyim-pymap-utils)
diff --git a/tests/pyim-tests.el b/tests/pyim-tests.el
index b16444377d..f705cadbf4 100644
--- a/tests/pyim-tests.el
+++ b/tests/pyim-tests.el
@@ -274,7 +274,7 @@
(lambda (x)
(= (length (split-string (cadr x) "|")) 4))
pyim-pymap))
- (should (equal (pyim-pymap-cchar< "的" "成") t))
+ (should (equal (pyim-pymap--cchar< "的" "成") t))
(should (equal (pyim-pymap-cchar2py-get "阿")
'("e" "a")))
(should (equal (pyim-pymap-cchar2py-get ?阿)
- [elpa] externals/pyim 25a704da4b 28/58: pyim-input-method-1 -> pyim--input-method, (continued)
- [elpa] externals/pyim 25a704da4b 28/58: pyim-input-method-1 -> pyim--input-method, ELPA Syncer, 2022/06/24
- [elpa] externals/pyim 37812896c5 34/58: pyim-indicator-revert-cursor-color -> pyim-indicator--revert-cursor-color, ELPA Syncer, 2022/06/24
- [elpa] externals/pyim 80c81b88cf 48/58: pyim-pinyin-valid-charpy-p -> pyim-pinyin--valid-charpy-p, ELPA Syncer, 2022/06/24
- [elpa] externals/pyim 70a2d9a754 51/58: Add pyim-pinyin-valid-shuangpin-p, ELPA Syncer, 2022/06/24
- [elpa] externals/pyim 894e4cd5e1 43/58: Remove pyim-pinyin-build-regexp, ELPA Syncer, 2022/06/24
- [elpa] externals/pyim 578d096ba9 44/58: pyim-pinyin-shenmu -> pyim-pinyin--shenmu, ELPA Syncer, 2022/06/24
- [elpa] externals/pyim aef2a941f3 05/58: pyim-cregexp-create-beautiful-cregexp-from-string -> pyim-cregexp--create-beautiful-cregexp-from-string, ELPA Syncer, 2022/06/24
- [elpa] externals/pyim a86cb9b606 47/58: pyim-pinyin-get-shenmu -> pyim-pinyin--get-shenmu, ELPA Syncer, 2022/06/24
- [elpa] externals/pyim c604b1f4aa 55/58: pyim-pymap-py2cchar-cache2 -> pyim-pymap--py2cchar-cache2, ELPA Syncer, 2022/06/24
- [elpa] externals/pyim c0798d5e4d 57/58: pyim-pymap-cchar2py-cache -> pyim-pymap--cchar2py-cache, ELPA Syncer, 2022/06/24
- [elpa] externals/pyim c573694ae4 58/58: Update pyim-pymap-utils.el,
ELPA Syncer <=
- [elpa] externals/pyim f4074fc4ef 04/58: pyim-cregexp-valid-p -> pyim-cregexp--valid-p, ELPA Syncer, 2022/06/24
- [elpa] externals/pyim 291798d23d 09/58: pyim-cregexp-scheme -> pyim-cregexp--scheme, ELPA Syncer, 2022/06/24
- [elpa] externals/pyim b243e7e8e7 15/58: pyim-isearch-search-fun -> pyim-isearch--search-fun, ELPA Syncer, 2022/06/24
- [elpa] externals/pyim 56505723bc 16/58: pyim-autoselector-xingma-1 -> pyim-autoselector--xingma, ELPA Syncer, 2022/06/24
- [elpa] externals/pyim ea2988cf16 26/58: pyim-dict-manager-buffer -> pyim-dict-manager--buffer, ELPA Syncer, 2022/06/24
- [elpa] externals/pyim 91b1aa37da 11/58: pyim-cregexp-build-xingma-regexp-from-words -> pyim-cregexp--build-xingma-regexp-from-words, ELPA Syncer, 2022/06/24
- [elpa] externals/pyim 40ed5dc8a4 10/58: pyim-cregexp-quanpin- -> pyim-cregexp-quanpin--, ELPA Syncer, 2022/06/24
- [elpa] externals/pyim 2064692d35 40/58: pyim-liberime-get-code -> pyim-liberime--get-code, ELPA Syncer, 2022/06/24
- [elpa] externals/pyim 48e904bbe6 42/58: pyim-outcome-magic-convert-cache -> pyim-outcome--magic-convert-cache, ELPA Syncer, 2022/06/24
- [elpa] externals/pyim d5d98bdbdb 12/58: pyim-cstring-partition -> pyim-cstring--partition, ELPA Syncer, 2022/06/24