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
next prev 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.