From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-1.1 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,FREEMAIL_FROM,MAILING_LIST_MULTI,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 7200 invoked from network); 6 Sep 2022 23:36:28 -0000 Received: from lists.gnu.org (209.51.188.17) by inbox.vuxu.org with ESMTPUTF8; 6 Sep 2022 23:36:28 -0000 Received: from localhost ([::1]:37362 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1oVi7G-0008Ts-ME for ml@inbox.vuxu.org; Tue, 06 Sep 2022 19:36:26 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:33384) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oVi7E-0008Tg-9N for info-gnus-english@gnu.org; Tue, 06 Sep 2022 19:36:24 -0400 Received: from pv50p00im-ztdg10012101.me.com ([17.58.6.49]:32960) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oVi7C-0008MM-MC for info-gnus-english@gnu.org; Tue, 06 Sep 2022 19:36:24 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=icloud.com; s=1a1hai; t=1662507380; bh=jL5oo/LDjlWKOVVKYOPCugU6/2wvl9+MCQPPJ/oGOms=; h=From:To:Subject:Date:Message-ID:MIME-Version:Content-Type; b=xo9Mbp1AAndTNOaWRmjC5X7MyV8nNi8rbIUkQYrFecia/JRjIkgJ/KWzKbMSJ4OE1 Y0fQawfZYmXqVkmqoIHp8vUjC3qmVJ+CJBxI63oKOx0B+QHaAkRTR4EZwgPAYW+NED uXgVHjdN8V3WvqJh4XTVB604UycKQv4M+kVNE/jY0yKIYCP9hj+q8AmmBWwRN2o7II guUssg/JjsXtA1rOsXOp/9d3CnpZfj64fMBCFrB5ZxBrJtDCFdt/LTuluUlTRnSSlf TVGsDZqXcOk6eeIwR9BQscojWbpWgX6Ilg9oae+7vORT1mg5VFHz56eqPGtiEH0bTl 0SxrRHcsPwgjA== Received: from arch (pv50p00im-dlb-asmtp-mailmevip.me.com [17.56.9.10]) by pv50p00im-ztdg10012101.me.com (Postfix) with ESMTPSA id 6AF9A740593 for ; Tue, 6 Sep 2022 23:36:19 +0000 (UTC) From: Satoshi Yoshida To: info-gnus-english@gnu.org Subject: Re: Strip signature on reply without standard separator References: <87y1vykpl2.fsf@icloud.com> <87zggbz3ho.fsf@icloud.com> <87bksaz837.fsf@icloud.com> <87a67ul62m.fsf@dataswamp.org> <87mtbufg7e.fsf@icloud.com> <875yii2oru.fsf@dataswamp.org> <875yih6n25.fsf_-_@icloud.com> <878rnaw3tw.fsf_-_@icloud.com> <87mtbgarre.fsf@icloud.com> <87czcb6gjp.fsf@dataswamp.org> X-Operating-System: Linux version 5.19.7-arch1-1 Arch Linux x86_64 Date: Wed, 07 Sep 2022 08:36:18 +0900 In-Reply-To: <87czcb6gjp.fsf@dataswamp.org> (Emanuel Berg's message of "Sun, 04 Sep 2022 04:04:42 +0200") Message-ID: <87r10onki5.fsf@icloud.com> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.1 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Proofpoint-GUID: DSENOBUblULOxnSdQEaNLQoV_LahpykM X-Proofpoint-ORIG-GUID: DSENOBUblULOxnSdQEaNLQoV_LahpykM X-Proofpoint-Virus-Version: =?UTF-8?Q?vendor=3Dfsecure_engine=3D1.1.170-22c6f66c430a71ce266a39bfe25bc?= =?UTF-8?Q?2903e8d5c8f:6.0.517,18.0.572,17.11.64.514.0000000_definitions?= =?UTF-8?Q?=3D2022-06-21=5F01:2022-06-21=5F01,2020-02-14=5F11,2022-02-23?= =?UTF-8?Q?=5F01_signatures=3D0?= X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 clxscore=1015 spamscore=0 mlxlogscore=398 mlxscore=0 adultscore=0 malwarescore=0 phishscore=0 bulkscore=0 suspectscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2206140000 definitions=main-2209060110 Received-SPF: pass client-ip=17.58.6.49; envelope-from=dynamisxar@icloud.com; helo=pv50p00im-ztdg10012101.me.com X-Spam_score_int: -27 X-Spam_score: -2.8 X-Spam_bar: -- X-Spam_report: (-2.8 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: info-gnus-english@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "Announcements and discussions for GNUS, the GNU Emacs Usenet newsreader \(in English\)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: info-gnus-english-bounces+ml=inbox.vuxu.org@gnu.org Sender: "info-gnus-english" Emanuel Berg writes: > 1. Split into functions with names that explain what they do. > > 2. Instead of `replace-regexp', use > > (while (re-search-forward RE nil t) > (replace-match STR) ) I see. Thank you. Is this fix right? (setq mu-cite-prefix-format '("> ")) (setq mu-cite-cited-prefix-regexp "\\(^[^[:blank:]\n<>]+>+[[:blank:]]*\ \\)") (setq mu-cite-top-format '(from " writes:\n\n")) (defun strip-signature (regexp replacement) (goto-char (point-min)) (while (re-search-forward regexp nil t) (replace-match replacement))) (add-hook 'mu-cite-post-cite-hook (lambda () (save-excursion (strip-signature "^\n-- \n\\(.*\n\\)*" "") (strip-signature "^\\([^[:blank:]\n<>]+>.*\\)" "> \\1") (strip-signature "^\\([^\n>].+\n\n\\)\\(>[[:blank:]]+\n\ \\)+" "\\1") (strip-signature "^> >" ">>") (strip-signature "^> -- .*\n\\(>.*\n\\)*" "") (strip-signature "^\\(>[[:blank:]]+\n\\)+> \\(best\ \\( regards\\| wishes\\)?\\|cheers\\|\\(good\\)?bye\\|good luck\\|\ \\(kind \\|warm\\(est\\)? \\)?regards\\|respectfully\\|\\(yours \\)?\ sincerely\\( yours\\)?\\|thank you\\( very much\\)?\\|\\(many \\)?\ thanks\\( in advance\\| very much\\)?\\),[[:blank:]]*\n\\(>.*\n\\)*" "") (goto-char (point-min)) (re-search-forward "^\"?\\([^[:blank:]\n<>]+\\)\ \\([^\n<>]+\\)?\"? <\\([^\n<>]+\\)> writes:" nil t) (setq first-name (match-string 1)) (setq middle-last-name (match-string 2)) (setq mail-address (match-string 3)) (strip-signature (format "^\\(>[[:blank:]]+\n\\)*>\ [[:blank:]]*\\(-+[[:blank:]]*\\)?%s\\(%s\\)?\\([[:blank:]]*\\(\n>\ [[:blank:]]+\\)*?\\)?[[:blank:]]*\n\\(>[[:blank:]]+\n\\)*\ \\'" first-name middle-last-name mail-address) "") (strip-signature "^\\(>[>[:blank:]]+\n\\)+\\'" "") (ignore-errors (goto-char (point-max)) (insert-file-contents "~/.signature") (insert "\n-- \n")) (goto-line 1) (delete-blank-lines) (set-window-start () 1)))) -- Satoshi Yoshida