- To: tcross@xxxxxxxxxxx
- Subject: Emacspeak term mode errors
- From: "T. V. Raman" <raman@xxxxxxxxxxx>
- Date: Tue, 29 Aug 2006 05:50:37 -0700
- Delivered-To: emacspeak@xxxxxxxxxxx
- In-Reply-To: <17651.63101.542105.950484@xxxxxxxxxxx>
- List-Help: <mailto:emacspeak-request@xxxxxxxxxxx?subject=help>
- List-Post: <mailto:emacspeak@xxxxxxxxxxx>
- List-Subscribe: <mailto:emacspeak-request@xxxxxxxxxxx?subject=subscribe>
- List-Unsubscribe: <mailto:emacspeak-request@xxxxxxxxxxx?subject=unsubscribe>
- Old-Return-Path: <tvraman@xxxxxxxxxxx>
- Reply-To: raman@xxxxxxxxxxx
- Resent-Date: Tue, 29 Aug 2006 08:50:50 -0400 (EDT)
- Resent-From: emacspeak@xxxxxxxxxxx
- Resent-Message-ID: <xdZpOC.A.tIG.qgD9EB@xxxxxxxxxxx>
- Resent-Sender: emacspeak-request@xxxxxxxxxxx
Before we go down the route of adding symbols, try changing
last-input-event to last-command-char in the advice for
term-emulate- -- I believe that might just do the right thing. tcross> Hi Raman, The point about the cursor moving left
tcross> through the use of the arrow keys is a point I
tcross> overlooked. I wonder though if you need to test for
tcross> the column position and row if you have already
tcross> confirmed the key entered by the user was a delete?
tcross> At this point, I'm not even sure what is sent under
tcross> the console when you hit the arrow keys.
tcross>
tcross> I noticed you have changed the comparisons to use eq
tcross> rather than the equal sign. This has certainly
tcross> improved things as you now don't get a beep or a
tcross> backtrace when you try to run M-x term. However, we
tcross> need to add the symbolic names to the test as
tcross> well. For example, now when you hit backspace,
tcross> emacspeak says "newline". I believe this is because
tcross> the test is falling through past the condition which
tcross> checks for the user hitting the backspace key as it
tcross> doesn't match 127. We probably need an or comparison
tcross> i.e.
tcross>
tcross> ((and (or (eq last-input-event 127) (eq
tcross> last-input-event 'backspace)) (....
tcross>
tcross> As you are not running X at the moment, I will look
tcross> at this on the weekend and work out which symbolic
tcross> names need to be added to the conditionals.
tcross>
tcross> regards,
tcross>
tcross> Tim
tcross>
tcross> T. V. Raman writes:
>>
>>
Tim> The other area which I'd like some guideance on is the
Tim> way term-emulate-terminal's defadvice is testing for
Tim> certain conditions. To my naive eye, it looks like the
Tim> test is somewhat over engineered and we could simplify
Tim> it a bit, but experience has tought me that usually it
Tim> is me who is missing some subtlety regarding what is
Tim> going on. As an example, the following test is performed
Tim> to determine if the user has hit backspace
Tim>
Tim> ((and (= last-input-event 127) (= new-row
Tim> emacspeak-eterm-row) (= -1 (- new-column
Tim> emacspeak-eterm-column)) current-char) (....
Tim>
>>
> The above is not over-engineered.
> You can have the cursor move left when the user did not in fact
> backspace, e.g. when you move the cursor left in vi.
>
> In general there are two good regression tests to check things
> with when playing with the advice on term-emulate-terminal:
>
> A) VI
> B) lynx -- especially its config options
> Tim> I'm thinking that if we assume the only way the new
> Tim> column would be one less than the previous column and we
> Tim> are on the same row, then the user entered a
> Tim> backspace. Therefore, we cold simplify things by doing
> Tim>
> Tim> ((and (= new-row emacspeak-eterm-row) (= -1 (-
> Tim> new-column emacspeak-eterm-column))) (....
> Tim>
> Tim> but maybe I'm missing some subtle issue, such as process
> Tim> line filtering etc. Obviously, I can work this out
> Tim> through trial and error, but why re-invent the wheel if
> Tim> it can be avoided.
> Tim>
> Tim> Tim
> Tim>
> Tim> -----------------------------------------------------------------------------
> Tim> To unsubscribe from the emacspeak list or change your
> Tim> address on the emacspeak list send mail to
> Tim> "emacspeak-request@xxxxxxxxxxx" with a subject of
> Tim> "unsubscribe" or "help"
>
> --
> Best Regards,
> --raman
>
>
> Email: raman@xxxxxxxxxxx
> WWW: http://emacspeak.sf.net/raman/
> AIM: emacspeak GTalk: tv.raman.tv@xxxxxxxxxxx
> PGP: http://emacspeak.sf.net/raman/raman-almaden.asc
> Google: tv+raman
> IRC: irc://irc.freenode.net/#emacs
-----------------------------------------------------------------------------
To unsubscribe from the emacspeak list or change your address on the
emacspeak list send mail to "emacspeak-request@xxxxxxxxxxx" with a
subject of "unsubscribe" or "help"
--
Best Regards,
--raman
Email: raman@xxxxxxxxxxx
WWW: http://emacspeak.sf.net/raman/
AIM: emacspeak GTalk: tv.raman.tv@xxxxxxxxxxx
PGP: http://emacspeak.sf.net/raman/raman-almaden.asc
Google: tv+raman
IRC: irc://irc.freenode.net/#emacs
-----------------------------------------------------------------------------
To unsubscribe from the emacspeak list or change your address on the
emacspeak list send mail to "emacspeak-request@xxxxxxxxxxx" with a
subject of "unsubscribe" or "help"