From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: ken Newsgroups: gmane.emacs.help Subject: Re: goof in small function where??? Date: Tue, 22 Jul 2014 06:28:33 -0400 Message-ID: <53CE3CD1.9050908@mousecar.com> References: <53CE2D32.2070502@mousecar.com> <87ha291zkf.fsf@web.de> Reply-To: gebser@mousecar.com NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Trace: ger.gmane.org 1406024953 13555 80.91.229.3 (22 Jul 2014 10:29:13 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Tue, 22 Jul 2014 10:29:13 +0000 (UTC) To: help-gnu-emacs@gnu.org Original-X-From: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Tue Jul 22 12:29:06 2014 Return-path: Envelope-to: geh-help-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1X9XJf-0001Wu-BB for geh-help-gnu-emacs@m.gmane.org; Tue, 22 Jul 2014 12:29:03 +0200 Original-Received: from localhost ([::1]:38437 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1X9XJe-0006ys-Qw for geh-help-gnu-emacs@m.gmane.org; Tue, 22 Jul 2014 06:29:02 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:44485) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1X9XJO-0006xh-92 for help-gnu-emacs@gnu.org; Tue, 22 Jul 2014 06:28:53 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1X9XJH-0006NR-6g for help-gnu-emacs@gnu.org; Tue, 22 Jul 2014 06:28:46 -0400 Original-Received: from mout.perfora.net ([74.208.4.196]:65319) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1X9XJH-0006N3-1Q for help-gnu-emacs@gnu.org; Tue, 22 Jul 2014 06:28:39 -0400 Original-Received: from dellap.mousecar.net (clev-static1-cs17.static.dslohio.net [66.219.160.17]) by mrelay.perfora.net (node=mreueus001) with ESMTP (Nemesis) id 0Lu5Nw-1WQ3fe0BVu-011QWn; Tue, 22 Jul 2014 12:28:37 +0200 User-Agent: Mozilla/5.0 (X11; Linux i686; rv:24.0) Gecko/20100101 Thunderbird/24.4.0 In-Reply-To: <87ha291zkf.fsf@web.de> X-Provags-ID: V02:K0:tb/eo88Hs5bSPQv17uT2tOg5eX85FZKKuJZ6ZNPwf+1 sz6jz/SC8sf+x9NWA0pzPjjf+NMNduNGu9qS5B6CcLCVzlTODo IPvg70cRJskCvALcZDKDyLFL0llmJcI2RyLooF1Jay61hWC2T5 yskpxTah84h1mqt2Zcbf0K0Jz6YQP6q7Mo7ZKTSb5vSiSmf+HR n30jqkOHj09AuRTl3ICjyws8/C2dmr3Nw3VK2NuV+QwCG2UmsR haRlbkaXC7iTMBD1Cvzp3R+bTlSVqkyxWpjrvrK5/G95vQnaQK cbS+2qEuHINd1O1xdet3UbsQVREkN3fjM7ep+A5ECqbS3QX1sW J7Yzh9pj0wEQzOaFN5jvkO2olYlbCSwhKmHRbxvWB X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x [generic] X-Received-From: 74.208.4.196 X-BeenThere: help-gnu-emacs@gnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Users list for the GNU Emacs text editor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Original-Sender: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.help:98894 Archived-At: On 07/22/2014 06:02 AM Michael Heerdegen wrote: > ken writes: > >> (defun file-name-into-kill-buffer () >> "Put path/filename of current buffer onto kill-ring so to paste >> into an X application. Also display it in minibuffer." >> (interactive) >> (let ((str (buffer-file-name))) >> (and str >> (kill-new str) >> (message "Copied filename %s to kill ring" str))) >> ) > > This doesn't work when `kill-new' returns nil, which happens when > `interprogram-cut-function' is nil (which is the default). Note that > the doc of `kill-new' doesn't say anything about the return value, it > can be anything. > > Ergo: the `and' should better be a `when'. Yes! That fixed it!! Thanks very much. I'm vaguely understanding that the 'and' doesn't evaluate '(message...' when '(kill-new...' returns nil and, since its return value is undefined, it can do on occasion. Replacing 'and' with 'when' ensures '(message...' is evaluated regardless of what '(kill-new...' returns. Is that about right? Thanks again.