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

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

[elpa] externals/pyim eeb9f4f: pyim-indicator-default: Add current-input


From: ELPA Syncer
Subject: [elpa] externals/pyim eeb9f4f: pyim-indicator-default: Add current-input-method argument.
Date: Mon, 5 Jul 2021 23:57:14 -0400 (EDT)

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

    pyim-indicator-default: Add current-input-method argument.
    
        * pyim-indicator.el (pyim-indicator-daemon-function): Simplify.
        (pyim-indicator-default): Add current-input-method argument.
        (pyim-indicator-update-mode-line): New function.
---
 pyim-indicator.el | 43 ++++++++++++++++++++++++-------------------
 1 file changed, 24 insertions(+), 19 deletions(-)

diff --git a/pyim-indicator.el b/pyim-indicator.el
index 4428480..43834d8 100644
--- a/pyim-indicator.el
+++ b/pyim-indicator.el
@@ -84,37 +84,42 @@ Indicator 用于显示输入法当前输入状态(英文还是中文)。"
 
 (defun pyim-indicator-daemon-function (func)
   "`pyim-indicator-daemon' 内部使用的函数。"
-  (if (equal current-input-method "pyim")
-      (ignore-errors
-        (let ((chinese-input-p
-               (and (functionp func)
-                    (funcall func))))
-          (funcall pyim-indicator chinese-input-p)))
-    ;; 大多数情况是因为用户切换 buffer, 新 buffer 中
-    ;; pyim 没有启动,重置 cursor 颜色。
-    (pyim-indicator-revert-cursor-color)))
+  (ignore-errors
+    (let ((chinese-input-p
+           (and (functionp func)
+                (funcall func))))
+      (funcall pyim-indicator current-input-method chinese-input-p))))
 
 (defun pyim-indicator-revert-cursor-color ()
   "将 cursor 颜色重置到 pyim 启动之前的状态。"
   (when pyim-indicator-original-cursor-color
     (set-cursor-color pyim-indicator-original-cursor-color)))
 
-(defun pyim-indicator-default (chinese-input-p)
-  "Pyim 默认使用的 indicator, 主要通过光标颜色和 mode-line 来显示输入状态。"
-  (if chinese-input-p
-      (progn
-        (setq current-input-method-title (nth 0 
pyim-indicator-modeline-string))
-        (set-cursor-color (nth 0 pyim-indicator-cursor-color)))
-    (setq current-input-method-title (nth 1 pyim-indicator-modeline-string))
-    (set-cursor-color
-     (or (nth 1 pyim-indicator-cursor-color)
-         pyim-indicator-original-cursor-color)))
+(defun pyim-indicator-update-mode-line ()
+  "更新 mode-line."
   (unless (eq pyim-indicator-last-input-method-title
               current-input-method-title)
     (force-mode-line-update)
     (setq pyim-indicator-last-input-method-title
           current-input-method-title)))
 
+(defun pyim-indicator-default (current-input-method chinese-input-p)
+  "Pyim 默认使用的 indicator, 主要通过光标颜色和 mode-line 来显示输入状态。"
+  (if (not (equal current-input-method "pyim"))
+      (progn
+        ;; 大多数情况是因为用户切换 buffer, 新 buffer 中
+        ;; pyim 没有启动,重置 cursor 颜色。
+        (set-cursor-color pyim-indicator-original-cursor-color))
+    (if chinese-input-p
+        (progn
+          (setq current-input-method-title (nth 0 
pyim-indicator-modeline-string))
+          (set-cursor-color (nth 0 pyim-indicator-cursor-color)))
+      (setq current-input-method-title (nth 1 pyim-indicator-modeline-string))
+      (set-cursor-color
+       (or (nth 1 pyim-indicator-cursor-color)
+           pyim-indicator-original-cursor-color))))
+  (pyim-indicator-update-mode-line))
+
 ;; * Footer
 (provide 'pyim-indicator)
 



reply via email to

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