From 781dd8b9e8e9732832aa2204727c72405b18b297 Mon Sep 17 00:00:00 2001 From: Jacopo De Simoi Date: Mon, 7 Apr 2025 11:44:24 -0400 Subject: [PATCH] [mu4e] Move to regex for nickname matching --- global.org | 18 ++++++++---------- 1 file changed, 8 insertions(+), 10 deletions(-) diff --git a/global.org b/global.org index e78d4b0..b853a40 100644 --- a/global.org +++ b/global.org @@ -896,21 +896,19 @@ #+begin_src emacs-lisp (setq nicknames-alist - '(("Konstantin Khanin" . "Kostya") - ("Nicholas Fleming". "Nick") + '(("Micheal Pawliuk" . "Mike") + ("Konstantin Khanin" . "Kostya") + ("Nicholas[ ]+Fleming". "Nick") ("Pramathanath Sastry". "Pramath") - ("Buddhima Kasun Fernando Akurugodage (Staff)" . "Kasun") - - - - )) + ("Buddhima Kasun Fernando Akurugodage (Staff)" . "Kasun"))) ;; the above should be moved to a private file (defun wilder/mu4e-process-recipient-name (name) (interactive) - (let ((clean-name (replace-regexp-in-string "\"" "" name))) + (let* ((clean-name (replace-regexp-in-string "\"" "" name)) + (tentative-nickname (assoc clean-name nicknames-alist #'string-match-p))) (cond - ((assoc clean-name nicknames-alist) (cdr (assoc clean-name nicknames-alist))) + (tentative-nickname (cdr tentative-nickname)) ((string-match-p (regexp-quote ",") clean-name) (string-trim (replace-regexp-in-string ".*," "" clean-name))) (t (replace-regexp-in-string " .*" "" clean-name))))) @@ -918,7 +916,7 @@ (interactive) (save-excursion (goto-char (point-min)) - (search-forward-regexp "To: \\(\\(.\\|\n\\)*\\)\\(Subject\\|CC\\|BCC\\)") + (search-forward-regexp "To: \\(\\(.\\|\n\\)*\\)\\(Subject\\|C(C\\|BCC\\)") (mapconcat #'wilder/mu4e-process-recipient-name (mapcar (lambda (s) (substring-no-properties (string-trim (car (split-string s "<")))))