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=-3.3 required=5.0 tests=MAILING_LIST_MULTI, RCVD_IN_DNSWL_MED autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 10084 invoked from network); 21 Sep 2022 13:43:19 -0000 Received: from lists.gnu.org (209.51.188.17) by inbox.vuxu.org with ESMTPUTF8; 21 Sep 2022 13:43:19 -0000 Received: from localhost ([::1]:45324 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ob00T-0003us-18 for ml@inbox.vuxu.org; Wed, 21 Sep 2022 09:43:17 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:37552) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oaza6-0007oU-Vh for info-gnus-english@gnu.org; Wed, 21 Sep 2022 09:16:03 -0400 Received: from ciao.gmane.io ([116.202.254.214]:34536) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oaza5-0002m3-8h for info-gnus-english@gnu.org; Wed, 21 Sep 2022 09:16:02 -0400 Received: from list by ciao.gmane.io with local (Exim 4.92) (envelope-from ) id 1oaza1-00028W-QE for info-gnus-english@gnu.org; Wed, 21 Sep 2022 15:15:57 +0200 X-Injected-Via-Gmane: http://gmane.org/ Mail-Followup-To: info-gnus-english@gnu.org To: info-gnus-english@gnu.org From: Emanuel Berg Subject: Re: Strip signature on reply without standard separator Date: Wed, 21 Sep 2022 15:15:50 +0200 Message-ID: <87zgesx3zt.fsf@dataswamp.org> 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> <87r10onki5.fsf@icloud.com> <8735d47zos.fsf@dataswamp.org> <87fsgsgpsv.fsf@icloud.com> <87illkyybp.fsf@dataswamp.org> <8735cl6qce.fsf@icloud.com> Mime-Version: 1.0 Content-Type: text/plain User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (gnu/linux) Cancel-Lock: sha1:qqzHwilhj+avdHNAPi96voI4Ccs= Mail-Copies-To: never Received-SPF: pass client-ip=116.202.254.214; envelope-from=gegu-info-gnus-english@m.gmane-mx.org; helo=ciao.gmane.io X-Spam_score_int: -16 X-Spam_score: -1.7 X-Spam_bar: - X-Spam_report: (-1.7 / 5.0 requ) BAYES_00=-1.9, HEADER_FROM_DIFFERENT_DOMAINS=0.249, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no 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" Satoshi Yoshida wrote: >> In your case, you could do >> >> (defun strip-signature (re &optional rep) >> (or rep (setq rep "")) >> ;; ... > > It's amazing. But I want to avoid grobal variable. > Please show me the way to use let instead of setq. > I don't know how to use it in this case. 'rep' is a formal parameter of the function, under lexical/static scope - which you should always use BTW, put ;;; -*- lexical-binding: t -*- topmost in your file (every Elisp file) if you didn't - that means you get a local variable that again is lexical/static and, equivalently, not dynamic/special. Just try - and you will fly ... ;;; -*- lexical-binding: t -*- (defun c () (message b) ) (defun a (b) (message b) (setq b "ah") (c) ) ;; (a "oh") ;; ^ eval me Also, byte-compiling this will echo a warning saying b is a free variable, and this even under dynamic/special scope where the code actually works tho (i.e. this particular use of 'a' and 'c' where 'a' is used first). >> Okay, I dare say most people would write that >> >> (dolist (e '((1 2) (3 4))) >> (message "%s %s" (car e) (cadr e)) ) >> >> Or maybe >> >> (require 'cl-lib) >> (cl-loop for (a b) in '((x y) (i j)) do >> (message "%s %s" a b) ) > > Thank you. I want to use dolist. As you see you don't need `apply' even with `dolist', no need. -- underground experts united https://dataswamp.org/~incal