all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Dmitry Gutov <dgutov@yandex.ru>
To: Juri Linkov <juri@linkov.net>
Cc: 34908@debbugs.gnu.org, "joão távora" <joaotavora@gmail.com>
Subject: bug#34908: Push mark in xref-push-marker-stack
Date: Wed, 20 Mar 2019 03:47:32 +0200	[thread overview]
Message-ID: <da112950-b252-e83e-4083-67020ac417af@yandex.ru> (raw)
In-Reply-To: <871s32h91o.fsf@mail.linkov.net>

On 19.03.2019 23:02, Juri Linkov wrote:

> Yes, its inconvenience is that you have to remember whether a previous
> position was in the same file or not, and depending on this decide
> what command to use: global or local pop.

Sooner or later, I believe we should rethink that UI.

>> Even so, I think it's been nice enough that every command can choose
>> whether it pushes the mark to the local/global buffer rights, and/or it
>> adds it to the xref marker stack. Do we have any particular guidelines in
>> the manual for when either should happen?
> 
> I think it should push to both.

OK.

> I'm not sure where to call push-mark: closer to the command,
> or closer to ring-insert.  It seems a suitable place for
> push-mark is in xref-push-marker-stack as its name suggests.

I'd rather have a more localized change, at least for now. And leave 
xref-push-marker-stack to only modify its own data structure.

So how about this?

diff --git a/lisp/progmodes/xref.el b/lisp/progmodes/xref.el
index 6974d00048..015ea16f34 100644
--- a/lisp/progmodes/xref.el
+++ b/lisp/progmodes/xref.el
@@ -797,6 +797,7 @@ xref--read-identifier-history
  (defvar xref--read-pattern-history nil)

  (defun xref--show-xrefs (xrefs display-action &optional always-show-list)
+  (push-mark nil t)
    (cond
     ((and (not (cdr xrefs)) (not always-show-list))
      (xref-push-marker-stack)





  reply	other threads:[~2019-03-20  1:47 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-03-18 21:12 bug#34908: Push mark in xref-push-marker-stack Juri Linkov
2019-03-18 21:50 ` João Távora
2019-03-18 23:14 ` Dmitry Gutov
2019-03-19 21:02   ` Juri Linkov
2019-03-20  1:47     ` Dmitry Gutov [this message]
2019-03-20 21:59       ` Juri Linkov
2019-03-21  0:59         ` Dmitry Gutov
2019-03-19  6:16 ` Eli Zaretskii
2019-03-19 11:57   ` Dmitry Gutov
2019-03-19 20:59   ` Juri Linkov
2019-03-20  5:59     ` Eli Zaretskii
2019-03-20 21:49       ` Juri Linkov
2019-03-21  3:35         ` Eli Zaretskii
2019-03-24 21:20           ` Juri Linkov

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=da112950-b252-e83e-4083-67020ac417af@yandex.ru \
    --to=dgutov@yandex.ru \
    --cc=34908@debbugs.gnu.org \
    --cc=joaotavora@gmail.com \
    --cc=juri@linkov.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.