all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Will Monroe <wtmonroe.ls@gmail.com>
To: Marcin Borkowski <mbork@wmi.amu.edu.pl>, help-gnu-emacs@gnu.org
Subject: Re: Advice on troubleshooting function to "unscroll"
Date: Sun, 25 Jan 2015 19:17:27 -0600	[thread overview]
Message-ID: <54C595A7.9020204@gmail.com> (raw)
In-Reply-To: <87ppa2flao.fsf@wmi.amu.edu.pl>

>>> why did scroll-up-command work where the still useful but not
>>> appropriate scroll-up did not?
>>
>> That was already answered, and I thought that you understood
>> the answer.  The problem was that the code checked whether the
>> current command was `scroll-up', and it of course never would
>> be.  `scroll-up' is called by `scroll-up-command', but only the
>> latter, never the former, is invoked by you interactively, i.e.,
>> as a command.  Variables `this-command' and `last-command' are
>> only set to functions when they are invoked as commands.
>
> I think the OP did understand this, but meant to ask (more or less) "why
> weren't the Emacs Devs satisfied with scroll-up, which did work after
> all".

Actually, you're both correct!

Drew, I'll have to go back and look at what "interactive" actually 
means.  'scroll-up' is advised (and invoked?) in the code below.  Not 
sure if that means that I am also invoking it interactively.  I thought 
being invoked, "as a command", meant that I was invoking it using `M-x 
scroll-up`.

(defadvice scroll-up (before remember-for-unscroll
                  activate compile)
   "Remember where we started from, for 'unscroll'."
   (if (not (eq last-command 'scroll-up))
       (setq unscroll-point (point)
           unscroll-window-start (window-start)
           unscroll-hscroll (window-hscroll))))

Marcin, I also wondering what prompted the addition of 
scroll-up-command.  I think Drew addresses this but I probably need to 
look at the docstrings for both to grasp it more clearly.

>>> And if I'm being honest about why I did not go to Edebug it's because I
>>> was anticipating great difficulty reading the backtrace statements.  I
>>> thought my problem might be compounded by a more general illiteracy in
>>> that regard...
>>
>> The Emacs manual sends you to the Elisp manual, node `Edebug',
>> for information about using that debugger.  That section of the
>> Elisp manual is like a mini-manual about Edebug.
>>
>> Why it does not send you instead to the Elisp manual node
>> `Debugger' (which has title "The Lisp Debugger"), I don't know.
>> That node covers the regular debugger (i.e., `debug').
>>
>> `debug' is older than `edebug'.  Perhaps the person who wrote
>> `edebug' decided to send readers of the Emacs manual to learn
>> about Edebug. ;-)
>>
>> (In older versions of Emacs, e.g. Emacs 20, there was no link
>> from the Emacs manual to the Elisp manual for either the regular
>> Lisp debugger or Edebug, but there were multiple mentions of
>> using the former - and only no mention of Edebug, except to say
>> that edebug.el was contributed by Daniel LaLiberte.)
>
> Drew, your answer is (as usual) very helpful and informative.  Thank you
> for your insights and the bits about Emacs history.
>
> I think we really need Sacha Chua to do an Emacs Chat with you.  I,
> personally, would love to learn a bit about your workflow and Emacs
> config.  (Not that I would necessarily like to copy it: I strongly
> disagree with you on the window/frame issue, for instance!)

So much helpful detail that, as a solo student of Emacs and elisp, is 
helpful to me.  And as a regular viewer of Sacha Chua's Emacs Chats, I 
have to agree!

Best regards,

Will



  parent reply	other threads:[~2015-01-26  1:17 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-01-25 20:52 Advice on troubleshooting function to "unscroll" Will Monroe
2015-01-25 21:35 ` Marcin Borkowski
2015-01-25 21:43   ` Will Monroe
2015-01-25 21:55     ` Marcin Borkowski
2015-01-25 22:01       ` Will Monroe
2015-01-25 21:45 ` Marcin Borkowski
2015-01-25 22:03   ` Will Monroe
2015-01-25 22:09     ` Marcin Borkowski
2015-01-25 22:45     ` Drew Adams
2015-01-25 22:56       ` Will Monroe
2015-01-25 23:15         ` Marcin Borkowski
2015-01-26  0:03         ` Drew Adams
2015-01-26  0:16           ` Marcin Borkowski
2015-01-26  1:06             ` Drew Adams
2015-01-26  1:17             ` Will Monroe [this message]
2015-01-26  1:21               ` Marcin Borkowski
2015-01-26  1:33               ` Drew Adams
     [not found] <mailman.18583.1422219396.1147.help-gnu-emacs@gnu.org>
2015-01-25 21:35 ` Joost Kremers
2015-01-25 21:57   ` Will Monroe

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=54C595A7.9020204@gmail.com \
    --to=wtmonroe.ls@gmail.com \
    --cc=help-gnu-emacs@gnu.org \
    --cc=mbork@wmi.amu.edu.pl \
    /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.