From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Eli Zaretskii Newsgroups: gmane.emacs.help Subject: Re: Maybe we can improve this function call-process-to-string? Date: Thu, 08 Apr 2021 19:25:51 +0300 Message-ID: <83o8eo920g.fsf@gnu.org> References: <83a6q99pnd.fsf@gnu.org> <831rbkao9z.fsf@gnu.org> Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="14269"; mail-complaints-to="usenet@ciao.gmane.io" To: help-gnu-emacs@gnu.org Original-X-From: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane-mx.org@gnu.org Thu Apr 08 18:30:04 2021 Return-path: Envelope-to: geh-help-gnu-emacs@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1lUXXg-0003by-Pe for geh-help-gnu-emacs@m.gmane-mx.org; Thu, 08 Apr 2021 18:30:04 +0200 Original-Received: from localhost ([::1]:49858 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1lUXXe-0006H4-0T for geh-help-gnu-emacs@m.gmane-mx.org; Thu, 08 Apr 2021 12:30:02 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:47452) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lUXWq-0006Eu-BZ for help-gnu-emacs@gnu.org; Thu, 08 Apr 2021 12:29:12 -0400 Original-Received: from fencepost.gnu.org ([2001:470:142:3::e]:45206) by eggs.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1lUXTv-00062u-VH for help-gnu-emacs@gnu.org; Thu, 08 Apr 2021 12:26:11 -0400 Original-Received: from 84.94.185.95.cable.012.net.il ([84.94.185.95]:1367 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1lUXTv-0002ha-7Z for help-gnu-emacs@gnu.org; Thu, 08 Apr 2021 12:26:11 -0400 In-Reply-To: (message from Jean Louis on Thu, 8 Apr 2021 18:56:30 +0300) X-BeenThere: help-gnu-emacs@gnu.org X-Mailman-Version: 2.1.23 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-mx.org@gnu.org Original-Sender: "help-gnu-emacs" Xref: news.gmane.io gmane.emacs.help:128902 Archived-At: > Date: Thu, 8 Apr 2021 18:56:30 +0300 > From: Jean Louis > Cc: help-gnu-emacs@gnu.org > > > Why do you need a string? The string is a means to an end, right? > > What is that end? > > Hahaha, I am not sure if you are joking, but of course string is a > mean to an end... funny. Now, I need it for example, to get widht and > height from a image by using system command `identify', sometimes I > will extract GPS coordinate from an image, so I call system commands > from Emacs Lisp that processes bunch of images. So you actually need the numbers reported by those commands? if so, you can read them from the buffer into which the command's output is stored, right? You don't actually need the numbers in their string form, right? > > > Because none of `buffer-substring' nor `buffer-string' can specify the > > > buffer name then I have to switch temporarily to other buffer, get > > > string with `buffer-string' and return back. I was thinking there is > > > some function doing that straight, like (buffer-string BUFFER), but I > > > don't find such. > > > > I suggest to look up with-current-buffer and with-temp-buffer. > > I would not know how to get output from system command by using those > functions without using shell-command-to-string or call-process You said buffer-substring doesn't take a buffer as an argument. I'm suggesting something like (with-current-buffer (get-buffer "foo") (buffer-substring ...))