From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: Stefan Monnier Newsgroups: gmane.emacs.help Subject: Re: question about buffer mechanism Date: Sun, 19 Aug 2018 18:55:36 -0400 Message-ID: References: NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: blaine.gmane.org 1534719262 8958 195.159.176.226 (19 Aug 2018 22:54:22 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Sun, 19 Aug 2018 22:54:22 +0000 (UTC) User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.0.50 (gnu/linux) To: help-gnu-emacs@gnu.org Original-X-From: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Mon Aug 20 00:54:18 2018 Return-path: Envelope-to: geh-help-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by blaine.gmane.org with esmtp (Exim 4.84_2) (envelope-from ) id 1frWaQ-0002Ac-3N for geh-help-gnu-emacs@m.gmane.org; Mon, 20 Aug 2018 00:54:18 +0200 Original-Received: from localhost ([::1]:44359 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1frWcP-0007VJ-TE for geh-help-gnu-emacs@m.gmane.org; Sun, 19 Aug 2018 18:56:21 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:45191) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1frWbw-0007V3-PB for help-gnu-emacs@gnu.org; Sun, 19 Aug 2018 18:55:53 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1frWbt-0003G8-Kr for help-gnu-emacs@gnu.org; Sun, 19 Aug 2018 18:55:52 -0400 Original-Received: from [195.159.176.226] (port=41507 helo=blaine.gmane.org) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1frWbt-0003FE-Dh for help-gnu-emacs@gnu.org; Sun, 19 Aug 2018 18:55:49 -0400 Original-Received: from list by blaine.gmane.org with local (Exim 4.84_2) (envelope-from ) id 1frWZk-0001b7-KB for help-gnu-emacs@gnu.org; Mon, 20 Aug 2018 00:53:36 +0200 X-Injected-Via-Gmane: http://gmane.org/ Original-Lines: 19 Original-X-Complaints-To: usenet@blaine.gmane.org Cancel-Lock: sha1:qjgAoPyzCmLnysPj5nlHwBcql0E= X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 195.159.176.226 X-BeenThere: help-gnu-emacs@gnu.org X-Mailman-Version: 2.1.21 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" Xref: news.gmane.org gmane.emacs.help:117700 Archived-At: > I suspect I'm really missing something basic. The "current buffer" can be *any* buffer; it's a global variable that refers to one of the buffers and that variable can be changed with `set-buffer`. Despite appearances, it is not directly related to which buffer is displayed on screen. org-open-at-point changes the buffer displayed on screen, but it happens to do so while preserving the "current buffer", so when the function returns, the current buffer is still the buffer in which you found the link rather than the new buffer that is now displayed in its place. As soon as the current *command* ends, the current buffer will be re-set by the command loop to point to the buffer of the currently selected window, i.e. the buffer which the user thinks of as "current" (in this case, the new buffer containing the target of the link). Stefan