unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
* Info: Console Vs GUI difference?
@ 2013-10-30  9:27 T.V. Raman
  2013-10-30 12:35 ` Stefan Monnier
  2013-10-30 13:46 ` Jarek Czekalski
  0 siblings, 2 replies; 34+ messages in thread
From: T.V. Raman @ 2013-10-30  9:27 UTC (permalink / raw)
  To: emacs-devel; +Cc: tv.raman.tv

As noted on previous threads -- Emacspeak relies heavily on
advice.

I've observed something strange over the last few years that I've
been too lazy to fix, but started digging  into recently - it's
an interesting problem and may point to a curious underlying bug
-- here goes.

Basically, Info running under X  appears to be making  calls to
signal  after *every user command* -- the signal is also clearly
caught and handled at a fairly low-level because you ordinarily
never see it.

Here is a simple way to cause it to happen -- though it might not
be as easy to observe without Emacspeak active.

At an emacs frame running at the Linux console, hit C-h i to open
info (after ensuring that any previous info buffers are killed)
--  then hit either 'p' or 'u' or 'n' to trigger a user-error --
Emacs reports that  there is no where to go -- and all is well.
Kill this buffer.

Now, switch to an emacs frame in a graphical environment under X,
and repeat the experiment.

Once Emacs has triggered the user error in Info as before, what
I'm observing that when in the info buffer (and only in the info
buffer) something in Emacs appears to be calling signal under the
covers -- and the  signal is trapped and suppressed
**after**after every user action.

Looking through info.el hasn't shed any light ---
-- 

--



^ permalink raw reply	[flat|nested] 34+ messages in thread

* Re: Info: Console Vs GUI difference?
  2013-10-30  9:27 Info: Console Vs GUI difference? T.V. Raman
@ 2013-10-30 12:35 ` Stefan Monnier
  2013-10-30 21:46   ` T.V. Raman
  2013-10-30 13:46 ` Jarek Czekalski
  1 sibling, 1 reply; 34+ messages in thread
From: Stefan Monnier @ 2013-10-30 12:35 UTC (permalink / raw)
  To: T.V. Raman; +Cc: emacs-devel

> Once Emacs has triggered the user error in Info as before, what
> I'm observing that when in the info buffer (and only in the info
> buffer) something in Emacs appears to be calling signal under the
> covers -- and the  signal is trapped and suppressed
> **after**after every user action.

I can't reproduce it here.  At least (setq debug-on-signal t) doesn't
show me any signal thrown.  Which signal is thrown?  Does (setq
debug-on-signal t) catch it?  If so, what does the backtrace say?


        Stefan



^ permalink raw reply	[flat|nested] 34+ messages in thread

* Re: Info: Console Vs GUI difference?
  2013-10-30  9:27 Info: Console Vs GUI difference? T.V. Raman
  2013-10-30 12:35 ` Stefan Monnier
@ 2013-10-30 13:46 ` Jarek Czekalski
  2013-10-30 21:45   ` T.V. Raman
  2013-10-31 20:23   ` Richard Stallman
  1 sibling, 2 replies; 34+ messages in thread
From: Jarek Czekalski @ 2013-10-30 13:46 UTC (permalink / raw)
  To: emacs-devel


W dniu 2013-10-30 10:27, T.V. Raman pisze:
> something in Emacs appears to be calling signal under the
> covers -- and the  signal is trapped and suppressed
> **after**after every user action.

But why do you call it a problem or an error? Since the signals are 
caught, everything is alright. That's what I think and said so in bug 
report 15670 [1]. And that's the reason why the bug was closed as "not a 
bug".

And this "something" is also described in the bug report, in backtrace. 
It is redisplay. Redisplays do not occur on terminals.

[1] http://debbugs.gnu.org/cgi/bugreport.cgi?bug=15670

Jarek




^ permalink raw reply	[flat|nested] 34+ messages in thread

* Info: Console Vs GUI difference?
  2013-10-30 13:46 ` Jarek Czekalski
@ 2013-10-30 21:45   ` T.V. Raman
  2013-10-31 20:23   ` Richard Stallman
  1 sibling, 0 replies; 34+ messages in thread
From: T.V. Raman @ 2013-10-30 21:45 UTC (permalink / raw)
  To: Jarek Czekalski, emacs-devel

This is related but different/ more subtle.  I suspect something
like tooltip mode or something else that is only active in the
GUI  is raising a signal after *every* user command --- once an
error has been raised in info.
-- 

-- 


On 10/30/13, Jarek Czekalski <jarekczek@poczta.onet.pl> wrote:
>
> W dniu 2013-10-30 10:27, T.V. Raman pisze:
>> something in Emacs appears to be calling signal under the
>> covers -- and the  signal is trapped and suppressed
>> **after**after every user action.
>
> But why do you call it a problem or an error? Since the signals are
> caught, everything is alright. That's what I think and said so in bug
> report 15670 [1]. And that's the reason why the bug was closed as "not a
> bug".
>
> And this "something" is also described in the bug report, in backtrace.
> It is redisplay. Redisplays do not occur on terminals.
>
> [1] http://debbugs.gnu.org/cgi/bugreport.cgi?bug=15670
>
> Jarek
>
>
>



^ permalink raw reply	[flat|nested] 34+ messages in thread

* Info: Console Vs GUI difference?
  2013-10-30 12:35 ` Stefan Monnier
@ 2013-10-30 21:46   ` T.V. Raman
  2013-10-30 23:11     ` Stefan Monnier
  0 siblings, 1 reply; 34+ messages in thread
From: T.V. Raman @ 2013-10-30 21:46 UTC (permalink / raw)
  To: Stefan Monnier, emacs-devel

Debug on signal t doesn't catch this which is why it's proving a
bear to debug.
-- 

-- 


On 10/30/13, Stefan Monnier <monnier@iro.umontreal.ca> wrote:
>> Once Emacs has triggered the user error in Info as before, what
>> I'm observing that when in the info buffer (and only in the info
>> buffer) something in Emacs appears to be calling signal under the
>> covers -- and the  signal is trapped and suppressed
>> **after**after every user action.
>
> I can't reproduce it here.  At least (setq debug-on-signal t) doesn't
> show me any signal thrown.  Which signal is thrown?  Does (setq
> debug-on-signal t) catch it?  If so, what does the backtrace say?
>
>
>         Stefan
>



^ permalink raw reply	[flat|nested] 34+ messages in thread

* Re: Info: Console Vs GUI difference?
  2013-10-30 21:46   ` T.V. Raman
@ 2013-10-30 23:11     ` Stefan Monnier
  2013-10-31 16:21       ` T.V. Raman
  0 siblings, 1 reply; 34+ messages in thread
From: Stefan Monnier @ 2013-10-30 23:11 UTC (permalink / raw)
  To: T.V. Raman; +Cc: emacs-devel

> Debug on signal t doesn't catch this which is why it's proving a
> bear to debug.

But you can call `backtrace' from a `signal' advice to see the context.
It's probably code in the menu-bar entries trying to decide if an entry
should be active or not.


        Stefan



^ permalink raw reply	[flat|nested] 34+ messages in thread

* Info: Console Vs GUI difference?
  2013-10-30 23:11     ` Stefan Monnier
@ 2013-10-31 16:21       ` T.V. Raman
  2013-10-31 18:02         ` Stefan Monnier
  0 siblings, 1 reply; 34+ messages in thread
From: T.V. Raman @ 2013-10-31 16:21 UTC (permalink / raw)
  To: Stefan Monnier, emacs-devel

I didn't know of that :-) will try this shortly  -- and report
back.

And speaking of aditional emacs hooks that would help emacspeak:

1. A hook that I can use to catch read-only    errors for  typing
commands  -- a hook here would be a clean solution because
independent of context, I mostly want to speak the same thing

2. Less need to advice error/ and hopefully never to advice
signal --
This one is harder because many emacs packages use signal and
error to signal conditions that should be communicated to the
average user.
-- 

-- 


On 10/30/13, Stefan Monnier <monnier@iro.umontreal.ca> wrote:
>> Debug on signal t doesn't catch this which is why it's proving a
>> bear to debug.
>
> But you can call `backtrace' from a `signal' advice to see the context.
> It's probably code in the menu-bar entries trying to decide if an entry
> should be active or not.
>
>
>         Stefan
>



^ permalink raw reply	[flat|nested] 34+ messages in thread

* Re: Info: Console Vs GUI difference?
  2013-10-31 16:21       ` T.V. Raman
@ 2013-10-31 18:02         ` Stefan Monnier
  2013-10-31 22:14           ` T.V. Raman
  2013-11-02 15:35           ` T.V. Raman
  0 siblings, 2 replies; 34+ messages in thread
From: Stefan Monnier @ 2013-10-31 18:02 UTC (permalink / raw)
  To: T.V. Raman; +Cc: emacs-devel

> And speaking of aditional emacs hooks that would help emacspeak:

> 1. A hook that I can use to catch read-only    errors for  typing
> commands  -- a hook here would be a clean solution because
> independent of context, I mostly want to speak the same thing

> 2. Less need to advice error/ and hopefully never to advice signal --
> This one is harder because many emacs packages use signal and
> error to signal conditions that should be communicated to the
> average user.

It seems from where I stand that both should be covered by
command-error-function.  So, maybe you should explain in more detail
which part of command-error-function doesn't suit your need.


        Stefan



^ permalink raw reply	[flat|nested] 34+ messages in thread

* Re: Info: Console Vs GUI difference?
  2013-10-30 13:46 ` Jarek Czekalski
  2013-10-30 21:45   ` T.V. Raman
@ 2013-10-31 20:23   ` Richard Stallman
  2013-11-01  7:37     ` Eli Zaretskii
  1 sibling, 1 reply; 34+ messages in thread
From: Richard Stallman @ 2013-10-31 20:23 UTC (permalink / raw)
  To: Jarek Czekalski; +Cc: emacs-devel

        [ To any NSA and FBI agents reading my email: please consider
        [ whether defending the US Constitution against all enemies,
        [ foreign or domestic, requires you to follow Snowden's example.

    But why do you call it a problem or an error? Since the signals are 
    caught, everything is alright. That's what I think and said so in bug 
    report 15670 [1]. And that's the reason why the bug was closed as "not a 
    bug".

It may not cause incorrect functioning, but it sounds like a cause
of slowdown.  Unless there is a reason why redisplay is supposed
to raise a signal, this is making Emacs slower than it needs to be,
and investigating the cause might be useful.

    And this "something" is also described in the bug report, in backtrace. 
    It is redisplay. Redisplays do not occur on terminals.

Redisplay does occur on terminals.  Redisplay means showing the
contents of buffers.

-- 
Dr Richard Stallman
President, Free Software Foundation
51 Franklin St
Boston MA 02110
USA
www.fsf.org  www.gnu.org
Skype: No way! That's nonfree (freedom-denying) software.
  Use Ekiga or an ordinary phone call.




^ permalink raw reply	[flat|nested] 34+ messages in thread

* Info: Console Vs GUI difference?
  2013-10-31 18:02         ` Stefan Monnier
@ 2013-10-31 22:14           ` T.V. Raman
  2013-11-01  1:32             ` Stefan Monnier
  2013-11-02 15:35           ` T.V. Raman
  1 sibling, 1 reply; 34+ messages in thread
From: T.V. Raman @ 2013-10-31 22:14 UTC (permalink / raw)
  To: Stefan Monnier, emacs-devel

Hi Stefan:

At this point for the error/signal/user-error feedback -- i
believe command-error-funciton should meet my needs except for
backward compatibility -- some help in knowing how to use it
correctly would help.

Re your suggestion re calling backtrace within the advice, tried
that -- and though I'm hearing the spurious feedback under X  in
Info -- but not at the terminal -- the backtrace is not
invoked. This leads me to suspect a subtle bug in advice itself
-- Here are the advice fragments I have for error, user-error and
signal.

(defcustom emacspeak-speak-errors t
  "Specifies if error messages are cued."
  :type 'boolean
  :group 'emacspeak-speak)

(defadvice error (before emacspeak pre act comp)
  "Speak the error message.
 Also produces an auditory icon if possible."
  (when emacspeak-speak-errors
    (let ((emacspeak-speak-signals nil)
          (emacspeak-speak-errors nil)
          (dtk-stop-immediately  nil))
      (emacspeak-auditory-icon 'warn-user)
      (tts-with-punctuations 'all
                             (dtk-speak
                              (apply #'format (ad-get-arg 0)(ad-get-args 1))))))
  t)

(defadvice user-error (before emacspeak pre act comp)
  "Speak the error message."
  (when emacspeak-speak-errors
    (let ((emacspeak-speak-signals nil)
          (emacspeak-speak-errors nil)
          (dtk-stop-immediately  nil))
      (tts-with-punctuations 'all
                             (dtk-speak
                              (apply #'format (ad-get-arg 0)(ad-get-args 1))))))
  t)



;;;###autoload
(defcustom emacspeak-speak-signals t
  "Specifies if signalled   messages are cued."
  :type 'boolean
  :group 'emacspeak-speak)

(defadvice signal (before emacspeak pre act compile)
  "Speak the signalled  message."
  (when emacspeak-speak-signals
    (let ((msg (first (ad-get-arg 1))))
      (when (and msg (> (length msg) 0))
        (tts-with-punctuations 'all (dtk-speak msg))))))

-- 

-- 


On 10/31/13, Stefan Monnier <monnier@iro.umontreal.ca> wrote:
>> And speaking of aditional emacs hooks that would help emacspeak:
>
>> 1. A hook that I can use to catch read-only    errors for  typing
>> commands  -- a hook here would be a clean solution because
>> independent of context, I mostly want to speak the same thing
>
>> 2. Less need to advice error/ and hopefully never to advice signal --
>> This one is harder because many emacs packages use signal and
>> error to signal conditions that should be communicated to the
>> average user.
>
> It seems from where I stand that both should be covered by
> command-error-function.  So, maybe you should explain in more detail
> which part of command-error-function doesn't suit your need.
>
>
>         Stefan
>



^ permalink raw reply	[flat|nested] 34+ messages in thread

* Re: Info: Console Vs GUI difference?
  2013-10-31 22:14           ` T.V. Raman
@ 2013-11-01  1:32             ` Stefan Monnier
  2013-11-01  2:10               ` T.V. Raman
  0 siblings, 1 reply; 34+ messages in thread
From: Stefan Monnier @ 2013-11-01  1:32 UTC (permalink / raw)
  To: T.V. Raman; +Cc: emacs-devel

> -- Here are the advice fragments I have for error, user-error and
> signal.

Can you show the code you used to try and get the backtrace?

> (defadvice signal (before emacspeak pre act compile)
>   "Speak the signalled  message."
>   (when emacspeak-speak-signals
>     (let ((msg (first (ad-get-arg 1))))
>       (when (and msg (> (length msg) 0))
>         (tts-with-punctuations 'all (dtk-speak msg))))))

I'd only use this advice (and throw away the error and user-error
signals), and extend it to check (ad-get-arg 0) for equality with
`error' or `user-error'.


        Stefan



^ permalink raw reply	[flat|nested] 34+ messages in thread

* Info: Console Vs GUI difference?
  2013-11-01  1:32             ` Stefan Monnier
@ 2013-11-01  2:10               ` T.V. Raman
  2013-11-01 12:23                 ` Stefan Monnier
  0 siblings, 1 reply; 34+ messages in thread
From: T.V. Raman @ 2013-11-01  2:10 UTC (permalink / raw)
  To: Stefan Monnier, emacs-devel

I just added (backtrace) at the top of the advice form.

-- 
Best Regards,
--raman


On 10/31/13, Stefan Monnier <monnier@iro.umontreal.ca> wrote:
>> -- Here are the advice fragments I have for error, user-error and
>> signal.
>
> Can you show the code you used to try and get the backtrace?
>
>> (defadvice signal (before emacspeak pre act compile)
>>   "Speak the signalled  message."
>>   (when emacspeak-speak-signals
>>     (let ((msg (first (ad-get-arg 1))))
>>       (when (and msg (> (length msg) 0))
>>         (tts-with-punctuations 'all (dtk-speak msg))))))
>
> I'd only use this advice (and throw away the error and user-error
> signals), and extend it to check (ad-get-arg 0) for equality with
> `error' or `user-error'.
>
>
>         Stefan
>



^ permalink raw reply	[flat|nested] 34+ messages in thread

* Re: Info: Console Vs GUI difference?
  2013-10-31 20:23   ` Richard Stallman
@ 2013-11-01  7:37     ` Eli Zaretskii
  2013-11-01 17:21       ` T.V. Raman
  0 siblings, 1 reply; 34+ messages in thread
From: Eli Zaretskii @ 2013-11-01  7:37 UTC (permalink / raw)
  To: rms; +Cc: jarekczek, emacs-devel

> Date: Thu, 31 Oct 2013 16:23:17 -0400
> From: Richard Stallman <rms@gnu.org>
> Cc: emacs-devel@gnu.org
> 
>     But why do you call it a problem or an error? Since the signals are 
>     caught, everything is alright. That's what I think and said so in bug 
>     report 15670 [1]. And that's the reason why the bug was closed as "not a 
>     bug".
> 
> It may not cause incorrect functioning, but it sounds like a cause
> of slowdown.  Unless there is a reason why redisplay is supposed
> to raise a signal, this is making Emacs slower than it needs to be,
> and investigating the cause might be useful.

The cause is clear.  Redisplay does not raise a signal, it just
evaluates conditions of a menu bar item, to be able to display the
"Next" item as disabled when there's no "next" node.  The Lisp code
that is invoked by redisplay to do that throws an error that is
supposed to be caught by that Lisp code.  However, Emacsspeak advises
the Lisp function Info-extract-pointer, which is involved in this
evaluation, with the result that the thrown error becomes visible.
See the Lisp backtrace here:

  http://debbugs.gnu.org/cgi/bugreport.cgi?bug=15670#5

and the Lisp code involved here:

  http://debbugs.gnu.org/cgi/bugreport.cgi?bug=15670#14

So the bottom line here is that the reason for the problem was a
bad/suboptimal advice used by Emacsspeak to advise the Info functions
in question.



^ permalink raw reply	[flat|nested] 34+ messages in thread

* Re: Info: Console Vs GUI difference?
  2013-11-01  2:10               ` T.V. Raman
@ 2013-11-01 12:23                 ` Stefan Monnier
  2013-11-01 16:55                   ` T.V. Raman
  0 siblings, 1 reply; 34+ messages in thread
From: Stefan Monnier @ 2013-11-01 12:23 UTC (permalink / raw)
  To: T.V. Raman; +Cc: emacs-devel

> I just added (backtrace) at the top of the advice form.

Check the docstring of `backtrace' ;-)

It doesn't display the backtrace, it just prints it somewhere.
Typically, you make it print into some temp buffer which you can consult
manually later on.


        Stefan



^ permalink raw reply	[flat|nested] 34+ messages in thread

* Info: Console Vs GUI difference?
  2013-11-01 12:23                 ` Stefan Monnier
@ 2013-11-01 16:55                   ` T.V. Raman
  2013-11-01 18:34                     ` Eli Zaretskii
  0 siblings, 1 reply; 34+ messages in thread
From: T.V. Raman @ 2013-11-01 16:55 UTC (permalink / raw)
  To: Stefan Monnier, emacs-devel

Found the backtrace:-)

I  see that redisplay is triggering the bug -- but only under X.

Once user-error has been triggered once in info, then the signal
is raised after * every user command * -- see output below from
the Messages buffer.
backtrace()
  emacspeak-speak-error-message(user-error "Node has no Up")
  ad-Advice-signal(#<subr signal> user-error ("Node has no Up"))
  apply(ad-Advice-signal #<subr signal> (user-error ("Node has no Up")))
  signal(user-error ("Node has no Up"))
  user-error("Node has no %s" "Up")
  #[(name &optional errorname) "Ä\x18Šebˆ`\x19ÅyˆÆ
ÇÈ Q	Ä#ƒ\x1d\0ÉÅ!‚.\0\vÄ=?….\0ÊËÌ\v†,\0
!\"+‡" [case-fold-search bound name errorname t 1 re-search-backward
":" Info-following-node-name-re match-string-no-properties user-error
"Node has no %s" capitalize] 4
("/usr/local/share/emacs/24.3.50/lisp/info.elc" . 56390)]("up" nil)
  ad-Advice-Info-extract-pointer(#[(name &optional errorname) "Ä\x18Šebˆ`\x19ÅyˆÆ
ÇÈ Q	Ä#ƒ\x1d\0ÉÅ!‚.\0\vÄ=?….\0ÊËÌ\v†,\0
!\"+‡" [case-fold-search bound name errorname t 1 re-search-backward
":" Info-following-node-name-re match-string-no-properties user-error
"Node has no %s" capitalize] 4
("/usr/local/share/emacs/24.3.50/lisp/info.elc" . 56390)] "up")
  apply(ad-Advice-Info-extract-pointer #[(name &optional errorname)
"Ä\x18Šebˆ`\x19ÅyˆÆ
ÇÈ Q	Ä#ƒ\x1d\0ÉÅ!‚.\0\vÄ=?….\0ÊËÌ\v†,\0
!\"+‡" [case-fold-search bound name errorname t 1 re-search-backward
":" Info-following-node-name-re match-string-no-properties user-error
"Node has no %s" capitalize] 4
("/usr/local/share/emacs/24.3.50/lisp/info.elc" . 56390)] "up")
  Info-extract-pointer("up")
  Info-up()
  call-interactively(Info-up nil nil)
  command-execute(Info-up)

On 11/1/13, Stefan Monnier <monnier@iro.umontreal.ca> wrote:
>> I just added (backtrace) at the top of the advice form.
>
> Check the docstring of `backtrace' ;-)
>
> It doesn't display the backtrace, it just prints it somewhere.
> Typically, you make it print into some temp buffer which you can consult
> manually later on.
>
>
>         Stefan
>



^ permalink raw reply	[flat|nested] 34+ messages in thread

* Info: Console Vs GUI difference?
  2013-11-01  7:37     ` Eli Zaretskii
@ 2013-11-01 17:21       ` T.V. Raman
  0 siblings, 0 replies; 34+ messages in thread
From: T.V. Raman @ 2013-11-01 17:21 UTC (permalink / raw)
  To: Eli Zaretskii, rms, jarekczek, emacs-devel

Eli,
The advice on Info-extract-pointer you refer to was probably
introduced by me to track this problem down.  Emacspeak used to
advice that function in the Emacs 21 timeframe as well from
memory -- but to the best of my knowledge, it hasn't depended on
advising Info-extract-pointer --


On 11/1/13, Eli Zaretskii <eliz@gnu.org> wrote:
>> Date: Thu, 31 Oct 2013 16:23:17 -0400
>> From: Richard Stallman <rms@gnu.org>
>> Cc: emacs-devel@gnu.org
>>
>>     But why do you call it a problem or an error? Since the signals are
>>     caught, everything is alright. That's what I think and said so in bug
>>
>>     report 15670 [1]. And that's the reason why the bug was closed as "not
>> a
>>     bug".
>>
>> It may not cause incorrect functioning, but it sounds like a cause
>> of slowdown.  Unless there is a reason why redisplay is supposed
>> to raise a signal, this is making Emacs slower than it needs to be,
>> and investigating the cause might be useful.
>
> The cause is clear.  Redisplay does not raise a signal, it just
> evaluates conditions of a menu bar item, to be able to display the
> "Next" item as disabled when there's no "next" node.  The Lisp code
> that is invoked by redisplay to do that throws an error that is
> supposed to be caught by that Lisp code.  However, Emacsspeak advises
> the Lisp function Info-extract-pointer, which is involved in this
> evaluation, with the result that the thrown error becomes visible.
> See the Lisp backtrace here:
>
>   http://debbugs.gnu.org/cgi/bugreport.cgi?bug=15670#5
>
> and the Lisp code involved here:
>
>   http://debbugs.gnu.org/cgi/bugreport.cgi?bug=15670#14
>
> So the bottom line here is that the reason for the problem was a
> bad/suboptimal advice used by Emacsspeak to advise the Info functions
> in question.
>
>



^ permalink raw reply	[flat|nested] 34+ messages in thread

* Re: Info: Console Vs GUI difference?
  2013-11-01 16:55                   ` T.V. Raman
@ 2013-11-01 18:34                     ` Eli Zaretskii
  2013-11-01 20:24                       ` T.V. Raman
  0 siblings, 1 reply; 34+ messages in thread
From: Eli Zaretskii @ 2013-11-01 18:34 UTC (permalink / raw)
  To: T.V. Raman; +Cc: monnier, emacs-devel

> Date: Fri, 1 Nov 2013 09:55:44 -0700
> From: "T.V. Raman" <tv.raman.tv@gmail.com>
> 
> Found the backtrace:-)
> 
> I  see that redisplay is triggering the bug -- but only under X.
> 
> Once user-error has been triggered once in info, then the signal
> is raised after * every user command * -- see output below from
> the Messages buffer.
> backtrace()
>   emacspeak-speak-error-message(user-error "Node has no Up")
>   ad-Advice-signal(#<subr signal> user-error ("Node has no Up"))
>   apply(ad-Advice-signal #<subr signal> (user-error ("Node has no Up")))
>   signal(user-error ("Node has no Up"))
>   user-error("Node has no %s" "Up")

That's your problem, right there: why does the function that advises
'signal' calls emacspeak-speak-error-message in this case?  It
shouldn't, because this signal is supposed to be caught by whoever
called Info-up.  Your advice simply disrupted the designed flow of
control.



^ permalink raw reply	[flat|nested] 34+ messages in thread

* Info: Console Vs GUI difference?
  2013-11-01 18:34                     ` Eli Zaretskii
@ 2013-11-01 20:24                       ` T.V. Raman
  2013-11-01 20:36                         ` Eli Zaretskii
  0 siblings, 1 reply; 34+ messages in thread
From: T.V. Raman @ 2013-11-01 20:24 UTC (permalink / raw)
  To: Eli Zaretskii, monnier, emacs-devel

With all due respect, I believe you're  wrong here -- that's not
the problem.  And it works correctly at the console.  When
running under X, the signal once raised, gets raised repeatedly
after every user command, and the backtrace shows that it's
coming from redisplay.

I coded up the emacspeak handler in a function that I then called
from the advice for clarity -- not sure how you conclude that
that is the cause of the problem ---

On 11/1/13, Eli Zaretskii <eliz@gnu.org> wrote:
>> Date: Fri, 1 Nov 2013 09:55:44 -0700
>> From: "T.V. Raman" <tv.raman.tv@gmail.com>
>>
>> Found the backtrace:-)
>>
>> I  see that redisplay is triggering the bug -- but only under X.
>>
>> Once user-error has been triggered once in info, then the signal
>> is raised after * every user command * -- see output below from
>> the Messages buffer.
>> backtrace()
>>   emacspeak-speak-error-message(user-error "Node has no Up")
>>   ad-Advice-signal(#<subr signal> user-error ("Node has no Up"))
>>   apply(ad-Advice-signal #<subr signal> (user-error ("Node has no Up")))
>>   signal(user-error ("Node has no Up"))
>>   user-error("Node has no %s" "Up")
>
> That's your problem, right there: why does the function that advises
> 'signal' calls emacspeak-speak-error-message in this case?  It
> shouldn't, because this signal is supposed to be caught by whoever
> called Info-up.  Your advice simply disrupted the designed flow of
> control.
>



^ permalink raw reply	[flat|nested] 34+ messages in thread

* Re: Info: Console Vs GUI difference?
  2013-11-01 20:24                       ` T.V. Raman
@ 2013-11-01 20:36                         ` Eli Zaretskii
  2013-11-02  0:17                           ` T.V. Raman
  2013-11-02  1:39                           ` T.V. Raman
  0 siblings, 2 replies; 34+ messages in thread
From: Eli Zaretskii @ 2013-11-01 20:36 UTC (permalink / raw)
  To: T.V. Raman; +Cc: monnier, emacs-devel

> Date: Fri, 1 Nov 2013 13:24:47 -0700
> From: "T.V. Raman" <tv.raman.tv@gmail.com>
> 
> With all due respect, I believe you're  wrong here -- that's not
> the problem.  And it works correctly at the console.  When
> running under X, the signal once raised, gets raised repeatedly
> after every user command, and the backtrace shows that it's
> coming from redisplay.

It comes from redisplay because redisplay recomputes the menu and
tool-bar items.  As the tool bar is not displayed in a TTY session,
you don't get signals then.

The root cause is still that 'signal' is being advised in a way that
exposes it to the user.



^ permalink raw reply	[flat|nested] 34+ messages in thread

* Info: Console Vs GUI difference?
  2013-11-01 20:36                         ` Eli Zaretskii
@ 2013-11-02  0:17                           ` T.V. Raman
  2013-11-02  2:04                             ` Stefan Monnier
  2013-11-02  7:04                             ` Eli Zaretskii
  2013-11-02  1:39                           ` T.V. Raman
  1 sibling, 2 replies; 34+ messages in thread
From: T.V. Raman @ 2013-11-02  0:17 UTC (permalink / raw)
  To: Eli Zaretskii, monnier, emacs-devel

I understand better now.  But I cannot but advice it because
there are many parts of emacs -- and emacs packages -- that
already use signal to display useful information to the user.
Yes, that is clearly incorrect, but that  is what packages are
doing, so I have no option but to speak them. I'd be happy to
hear about an alternative -- note that I suspect
command-error-function might run into the same issue -- perhaps
differently.


-- 

-- 


On 11/1/13, Eli Zaretskii <eliz@gnu.org> wrote:
>> Date: Fri, 1 Nov 2013 13:24:47 -0700
>> From: "T.V. Raman" <tv.raman.tv@gmail.com>
>>
>> With all due respect, I believe you're  wrong here -- that's not
>> the problem.  And it works correctly at the console.  When
>> running under X, the signal once raised, gets raised repeatedly
>> after every user command, and the backtrace shows that it's
>> coming from redisplay.
>
> It comes from redisplay because redisplay recomputes the menu and
> tool-bar items.  As the tool bar is not displayed in a TTY session,
> you don't get signals then.
>
> The root cause is still that 'signal' is being advised in a way that
> exposes it to the user.
>



^ permalink raw reply	[flat|nested] 34+ messages in thread

* Info: Console Vs GUI difference?
  2013-11-01 20:36                         ` Eli Zaretskii
  2013-11-02  0:17                           ` T.V. Raman
@ 2013-11-02  1:39                           ` T.V. Raman
  2013-11-02  8:06                             ` Jarek Czekalski
  1 sibling, 1 reply; 34+ messages in thread
From: T.V. Raman @ 2013-11-02  1:39 UTC (permalink / raw)
  To: Eli Zaretskii, monnier, emacs-devel

For now I've worked around the problem by disabling tool-bar-mode
--  --- tool-bar-mode is something I dont personally care about
as a non-mouse-waving human -- however I would still say that
tool-bar-mode is probably doing more work than it should - in the
way it's getting called through redisplay.

Disabling the tool-bar in emacspeak likely affects low-vision
users, so this would be good to fix.

-- 
Best Regards,
--raman


On 11/1/13, Eli Zaretskii <eliz@gnu.org> wrote:
>> Date: Fri, 1 Nov 2013 13:24:47 -0700
>> From: "T.V. Raman" <tv.raman.tv@gmail.com>
>>
>> With all due respect, I believe you're  wrong here -- that's not
>> the problem.  And it works correctly at the console.  When
>> running under X, the signal once raised, gets raised repeatedly
>> after every user command, and the backtrace shows that it's
>> coming from redisplay.
>
> It comes from redisplay because redisplay recomputes the menu and
> tool-bar items.  As the tool bar is not displayed in a TTY session,
> you don't get signals then.
>
> The root cause is still that 'signal' is being advised in a way that
> exposes it to the user.
>



^ permalink raw reply	[flat|nested] 34+ messages in thread

* Re: Info: Console Vs GUI difference?
  2013-11-02  0:17                           ` T.V. Raman
@ 2013-11-02  2:04                             ` Stefan Monnier
  2013-11-03 15:51                               ` T.V. Raman
  2013-11-02  7:04                             ` Eli Zaretskii
  1 sibling, 1 reply; 34+ messages in thread
From: Stefan Monnier @ 2013-11-02  2:04 UTC (permalink / raw)
  To: T.V. Raman; +Cc: Eli Zaretskii, emacs-devel

> hear about an alternative -- note that I suspect
> command-error-function might run into the same issue --

I don't think so: command-error-function will be called if and only if
the normal (non-emacspeak) code would display a message, whereas
advising `signal' leads to the problems you see, where some signals are
"normal occurrences" that don't lead to any user-visible message because
they get caught and handled by a `condition-case'.


        Stefan



^ permalink raw reply	[flat|nested] 34+ messages in thread

* Re: Info: Console Vs GUI difference?
  2013-11-02  0:17                           ` T.V. Raman
  2013-11-02  2:04                             ` Stefan Monnier
@ 2013-11-02  7:04                             ` Eli Zaretskii
  1 sibling, 0 replies; 34+ messages in thread
From: Eli Zaretskii @ 2013-11-02  7:04 UTC (permalink / raw)
  To: T.V. Raman; +Cc: monnier, emacs-devel

> Date: Fri, 1 Nov 2013 17:17:41 -0700
> From: "T.V. Raman" <tv.raman.tv@gmail.com>
> 
> I understand better now.  But I cannot but advice it because
> there are many parts of emacs -- and emacs packages -- that
> already use signal to display useful information to the user.

I didn't say you shouldn't advise it.  I just said that there's no bug
in Emacs in this case: it works as intended.

> Yes, that is clearly incorrect, but that  is what packages are
> doing, so I have no option but to speak them. I'd be happy to
> hear about an alternative -- note that I suspect
> command-error-function might run into the same issue -- perhaps
> differently.

The short-term alternative is to avoid speaking this particular
signal, by somehow detecting it.

The long-term alternative is to gradually abandon the advice methods
and switch to using special hooks that Emacs will provide for this
type of software.  Please consider presenting a list of hooks you'd
like to have for Emacsspeak, and file a feature request bug report
with that list.  Emacs ought to have good support for Emacsspeak that
does not require use of advice, IMO.



^ permalink raw reply	[flat|nested] 34+ messages in thread

* Re: Info: Console Vs GUI difference?
  2013-11-02  1:39                           ` T.V. Raman
@ 2013-11-02  8:06                             ` Jarek Czekalski
  0 siblings, 0 replies; 34+ messages in thread
From: Jarek Czekalski @ 2013-11-02  8:06 UTC (permalink / raw)
  To: emacs-devel; +Cc: tv.raman.tv@gmail.com >> "T. V. Raman"

W dniu 11/02/2013 02:39 AM, T.V. Raman pisze:
> Disabling the tool-bar in emacspeak likely affects low-vision
> users, so this would be good to fix.

Raman,

Emacspeak package was the reason I switched to Emacs. I use both visual 
Emacs functions and Emacspeak auditory feedback. Every loss in Emacs 
functionality is a big disadvantage for me. Please explain in what way 
you expect to fix this, so that we have Emacspeak without loosing any 
functionality of Emacs.

And please also explain what problems an Emacspeak user experiences 
without switching off the toolbar.

My vision is that Emacspeak be the best option for disabled programmers 
among all text editors. This Emacspeak should not be worse than Emacs.

Jarek




^ permalink raw reply	[flat|nested] 34+ messages in thread

* Info: Console Vs GUI difference?
  2013-10-31 18:02         ` Stefan Monnier
  2013-10-31 22:14           ` T.V. Raman
@ 2013-11-02 15:35           ` T.V. Raman
  2013-11-02 15:56             ` Jarek Czekalski
  2013-11-02 16:35             ` Dmitri Paduchikh
  1 sibling, 2 replies; 34+ messages in thread
From: T.V. Raman @ 2013-11-02 15:35 UTC (permalink / raw)
  To: Stefan Monnier, emacs-devel

Hi Stefan,

My last attempt at using command-error-function -- appended below
-- only produces a "back to top level"  message in all instances.

Once I can get this working, I'll make the advice on signal
conditional on older emacsuns --
(defun emacspeak-error-handler  (data  context  calling-function)
  "Emacspeak custom error handling function."
               (dtk-speak
     (format "%s %s"
             (or context "")
             (or
              (get (car data) 'error-message)
              ""))))

(declaim (special command-error-function))
                                            (add-function :before
command-error-function 'emacspeak-error-handler)

-- 

-- 


On 10/31/13, Stefan Monnier <monnier@iro.umontreal.ca> wrote:
>> And speaking of aditional emacs hooks that would help emacspeak:
>
>> 1. A hook that I can use to catch read-only    errors for  typing
>> commands  -- a hook here would be a clean solution because
>> independent of context, I mostly want to speak the same thing
>
>> 2. Less need to advice error/ and hopefully never to advice signal --
>> This one is harder because many emacs packages use signal and
>> error to signal conditions that should be communicated to the
>> average user.
>
> It seems from where I stand that both should be covered by
> command-error-function.  So, maybe you should explain in more detail
> which part of command-error-function doesn't suit your need.
>
>
>         Stefan
>



^ permalink raw reply	[flat|nested] 34+ messages in thread

* Re: Info: Console Vs GUI difference?
  2013-11-02 15:35           ` T.V. Raman
@ 2013-11-02 15:56             ` Jarek Czekalski
  2013-11-02 16:35             ` Dmitri Paduchikh
  1 sibling, 0 replies; 34+ messages in thread
From: Jarek Czekalski @ 2013-11-02 15:56 UTC (permalink / raw)
  To: emacs-devel

W dniu 11/02/2013 04:35 PM, T.V. Raman pisze:
> My last attempt at using command-error-function -- appended below
> -- only produces a "back to top level"  message in all instances.
>

It means an error in the handler code. It manifests through this 
unrelated message.

Jarek




^ permalink raw reply	[flat|nested] 34+ messages in thread

* Re: Info: Console Vs GUI difference?
  2013-11-02 15:35           ` T.V. Raman
  2013-11-02 15:56             ` Jarek Czekalski
@ 2013-11-02 16:35             ` Dmitri Paduchikh
  2013-11-02 20:46               ` T.V. Raman
  1 sibling, 1 reply; 34+ messages in thread
From: Dmitri Paduchikh @ 2013-11-02 16:35 UTC (permalink / raw)
  To: emacs-devel; +Cc: T.V. Raman

Raman, how about this code?

(defun emacspeak-error-handler (err context func)
  (let ((err-msg (concat context (error-message-string err)))
        (emacspeak-speak-messages nil)
        (dtk-stop-immediately nil))
    (dtk-stop)
    (message "%s"
             (concat err-msg
                     (if func (concat " (" (symbol-name func) ")") "")))
    (ding)
    (dtk-speak err-msg)))

Also note that add-function is not available in Emacs 24.3.

-- 
With best regards
Dmitri Paduchikh

T.V. Raman wrote:

> Hi Stefan,

> My last attempt at using command-error-function -- appended below
> -- only produces a "back to top level"  message in all instances.

> Once I can get this working, I'll make the advice on signal
> conditional on older emacsuns --
> (defun emacspeak-error-handler  (data  context  calling-function)
>   "Emacspeak custom error handling function."
>                (dtk-speak
>      (format "%s %s"
>              (or context "")
>              (or
>               (get (car data) 'error-message)
>               ""))))

> (declaim (special command-error-function))
>                                             (add-function :before
> command-error-function 'emacspeak-error-handler)




^ permalink raw reply	[flat|nested] 34+ messages in thread

* Info: Console Vs GUI difference?
  2013-11-02 16:35             ` Dmitri Paduchikh
@ 2013-11-02 20:46               ` T.V. Raman
  0 siblings, 0 replies; 34+ messages in thread
From: T.V. Raman @ 2013-11-02 20:46 UTC (permalink / raw)
  To: Dmitri Paduchikh, emacs-devel

Has the same problem as the code I showed -- this outputs  a set
of messages, including "back to top level"  for every case, -- so
if you install the code, (as with my previous example code), you
hear "back to top level"  even when you hit C-g.

-- 
Best Regards,
--raman


On 11/2/13, Dmitri Paduchikh <dpaduchikh@gmail.com> wrote:
> Raman, how about this code?
>
> (defun emacspeak-error-handler (err context func)
>   (let ((err-msg (concat context (error-message-string err)))
>         (emacspeak-speak-messages nil)
>         (dtk-stop-immediately nil))
>     (dtk-stop)
>     (message "%s"
>              (concat err-msg
>                      (if func (concat " (" (symbol-name func) ")") "")))
>     (ding)
>     (dtk-speak err-msg)))
>
> Also note that add-function is not available in Emacs 24.3.
>
> --
> With best regards
> Dmitri Paduchikh
>
> T.V. Raman wrote:
>
>> Hi Stefan,
>
>> My last attempt at using command-error-function -- appended below
>> -- only produces a "back to top level"  message in all instances.
>
>> Once I can get this working, I'll make the advice on signal
>> conditional on older emacsuns --
>> (defun emacspeak-error-handler  (data  context  calling-function)
>>   "Emacspeak custom error handling function."
>>                (dtk-speak
>>      (format "%s %s"
>>              (or context "")
>>              (or
>>               (get (car data) 'error-message)
>>               ""))))
>
>> (declaim (special command-error-function))
>>                                             (add-function :before
>> command-error-function 'emacspeak-error-handler)
>
>



^ permalink raw reply	[flat|nested] 34+ messages in thread

* Info: Console Vs GUI difference?
  2013-11-02  2:04                             ` Stefan Monnier
@ 2013-11-03 15:51                               ` T.V. Raman
  2013-11-03 19:02                                 ` Jarek Czekalski
  0 siblings, 1 reply; 34+ messages in thread
From: T.V. Raman @ 2013-11-03 15:51 UTC (permalink / raw)
  To: Stefan Monnier, Eli Zaretskii, emacs-devel

Hi Stefan --

Traced down command-error-function a bit further -- and here is
what I see:

If you add your own hook to command-error-function, Emacs appears
to mysteriously call normal-top-level after calling your custom
error handler -- At least that is what I see if I stick a
backtrace call inside an advice fragment to message.

The present show-stopper for using command-error-function in
emacspeak is that that "back to top level"  message  is echoed to
the echo area -- I can silence that message from emacspeak, but
it still shows in the echo area visually.

Here is what I have for the handler:
(defun emacspeak-error-handler  (data  context  calling-function)
  "Emacspeak custom error handling function."
  (tts-with-punctuations
   'all
   (dtk-speak
    (format "%s %s"
            (error-message-string data)
            (or context " ")))))

-- 
Best Regards,
--raman


On 11/1/13, Stefan Monnier <monnier@iro.umontreal.ca> wrote:
>> hear about an alternative -- note that I suspect
>> command-error-function might run into the same issue --
>
> I don't think so: command-error-function will be called if and only if
> the normal (non-emacspeak) code would display a message, whereas
> advising `signal' leads to the problems you see, where some signals are
> "normal occurrences" that don't lead to any user-visible message because
> they get caught and handled by a `condition-case'.
>
>
>         Stefan
>



^ permalink raw reply	[flat|nested] 34+ messages in thread

* Re: Info: Console Vs GUI difference?
  2013-11-03 15:51                               ` T.V. Raman
@ 2013-11-03 19:02                                 ` Jarek Czekalski
  2013-11-03 19:05                                   ` T.V. Raman
  0 siblings, 1 reply; 34+ messages in thread
From: Jarek Czekalski @ 2013-11-03 19:02 UTC (permalink / raw)
  To: T.V. Raman, emacs-devel

W dniu 11/03/2013 04:51 PM, T.V. Raman pisze:
> Here is what I have for the handler:
> (defun emacspeak-error-handler  (data  context  calling-function)
>    "Emacspeak custom error handling function."
>    (tts-with-punctuations
>     'all
>     (dtk-speak
>      (format "%s %s"
>              (error-message-string data)
>              (or context " ")))))
>

I installed this very handler with command:

(setq command-error-function 'emacspeak-error-handler)

It seems to work perfectly. Speaks "end-of-buffer", "arithmetic error", 
"buffer is read only". Echo area is all the time empty. Before 
installing the handler errors are accompanied with bell. Later there is 
no bell. Tested with Emacspeak r8509, the newest at the moment of 
writing this post.

Jarek




^ permalink raw reply	[flat|nested] 34+ messages in thread

* Info: Console Vs GUI difference?
  2013-11-03 19:02                                 ` Jarek Czekalski
@ 2013-11-03 19:05                                   ` T.V. Raman
  2013-11-03 21:19                                     ` Stefan Monnier
  2013-11-04  3:10                                     ` Dmitri Paduchikh
  0 siblings, 2 replies; 34+ messages in thread
From: T.V. Raman @ 2013-11-03 19:05 UTC (permalink / raw)
  To: Jarek Czekalski, emacs-devel

It doesn't work with the recommended means of using add-function
-- so perhaps there is a bug in nadvice

-- 
Best Regards,
--raman


On 11/3/13, Jarek Czekalski <jarekczek@poczta.onet.pl> wrote:
> W dniu 11/03/2013 04:51 PM, T.V. Raman pisze:
>> Here is what I have for the handler:
>> (defun emacspeak-error-handler  (data  context  calling-function)
>>    "Emacspeak custom error handling function."
>>    (tts-with-punctuations
>>     'all
>>     (dtk-speak
>>      (format "%s %s"
>>              (error-message-string data)
>>              (or context " ")))))
>>
>
> I installed this very handler with command:
>
> (setq command-error-function 'emacspeak-error-handler)
>
> It seems to work perfectly. Speaks "end-of-buffer", "arithmetic error",
> "buffer is read only". Echo area is all the time empty. Before
> installing the handler errors are accompanied with bell. Later there is
> no bell. Tested with Emacspeak r8509, the newest at the moment of
> writing this post.
>
> Jarek
>
>



^ permalink raw reply	[flat|nested] 34+ messages in thread

* Re: Info: Console Vs GUI difference?
  2013-11-03 19:05                                   ` T.V. Raman
@ 2013-11-03 21:19                                     ` Stefan Monnier
  2013-11-04  3:10                                     ` Dmitri Paduchikh
  1 sibling, 0 replies; 34+ messages in thread
From: Stefan Monnier @ 2013-11-03 21:19 UTC (permalink / raw)
  To: T.V. Raman; +Cc: Jarek Czekalski, emacs-devel

> It doesn't work with the recommended means of using add-function

No, that will be the recommend way once command-error-function does not
default to being nil any more.  But as long as it's nil, add-function
can't be used with it.


        Stefan



^ permalink raw reply	[flat|nested] 34+ messages in thread

* Re: Info: Console Vs GUI difference?
  2013-11-03 19:05                                   ` T.V. Raman
  2013-11-03 21:19                                     ` Stefan Monnier
@ 2013-11-04  3:10                                     ` Dmitri Paduchikh
  2013-11-04 16:38                                       ` T.V. Raman
  1 sibling, 1 reply; 34+ messages in thread
From: Dmitri Paduchikh @ 2013-11-04  3:10 UTC (permalink / raw)
  To: T.V. Raman; +Cc: Jarek Czekalski, emacs-devel

T.V. Raman wrote:

> It doesn't work with the recommended means of using add-function
> -- so perhaps there is a bug in nadvice

If I understood right, add-function cannot be applied to variables
having nil values. The initial value must be a function. Though I did
not check the development version of Emacs.

-- 
With best regards
Dmitri Paduchikh



^ permalink raw reply	[flat|nested] 34+ messages in thread

* Info: Console Vs GUI difference?
  2013-11-04  3:10                                     ` Dmitri Paduchikh
@ 2013-11-04 16:38                                       ` T.V. Raman
  0 siblings, 0 replies; 34+ messages in thread
From: T.V. Raman @ 2013-11-04 16:38 UTC (permalink / raw)
  To: Dmitri Paduchikh, Jarek Czekalski, emacs-devel

Thanks to all who helped -- from Emacspeak's point of view, I
consider this issue closed -- setq on command-error-function
works --  and emacspeak is now able to output the feedback it
needs to without advising signal in emacsuns where
command-error-function is available.
-- 

-- 


On 11/3/13, Dmitri Paduchikh <dpaduchikh@gmail.com> wrote:
> T.V. Raman wrote:
>
>> It doesn't work with the recommended means of using add-function
>> -- so perhaps there is a bug in nadvice
>
> If I understood right, add-function cannot be applied to variables
> having nil values. The initial value must be a function. Though I did
> not check the development version of Emacs.
>
> --
> With best regards
> Dmitri Paduchikh
>



^ permalink raw reply	[flat|nested] 34+ messages in thread

end of thread, other threads:[~2013-11-04 16:38 UTC | newest]

Thread overview: 34+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-10-30  9:27 Info: Console Vs GUI difference? T.V. Raman
2013-10-30 12:35 ` Stefan Monnier
2013-10-30 21:46   ` T.V. Raman
2013-10-30 23:11     ` Stefan Monnier
2013-10-31 16:21       ` T.V. Raman
2013-10-31 18:02         ` Stefan Monnier
2013-10-31 22:14           ` T.V. Raman
2013-11-01  1:32             ` Stefan Monnier
2013-11-01  2:10               ` T.V. Raman
2013-11-01 12:23                 ` Stefan Monnier
2013-11-01 16:55                   ` T.V. Raman
2013-11-01 18:34                     ` Eli Zaretskii
2013-11-01 20:24                       ` T.V. Raman
2013-11-01 20:36                         ` Eli Zaretskii
2013-11-02  0:17                           ` T.V. Raman
2013-11-02  2:04                             ` Stefan Monnier
2013-11-03 15:51                               ` T.V. Raman
2013-11-03 19:02                                 ` Jarek Czekalski
2013-11-03 19:05                                   ` T.V. Raman
2013-11-03 21:19                                     ` Stefan Monnier
2013-11-04  3:10                                     ` Dmitri Paduchikh
2013-11-04 16:38                                       ` T.V. Raman
2013-11-02  7:04                             ` Eli Zaretskii
2013-11-02  1:39                           ` T.V. Raman
2013-11-02  8:06                             ` Jarek Czekalski
2013-11-02 15:35           ` T.V. Raman
2013-11-02 15:56             ` Jarek Czekalski
2013-11-02 16:35             ` Dmitri Paduchikh
2013-11-02 20:46               ` T.V. Raman
2013-10-30 13:46 ` Jarek Czekalski
2013-10-30 21:45   ` T.V. Raman
2013-10-31 20:23   ` Richard Stallman
2013-11-01  7:37     ` Eli Zaretskii
2013-11-01 17:21       ` T.V. Raman

Code repositories for project(s) associated with this public inbox

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

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).