Opened 10 years ago

Closed 10 years ago

#557 closed defect (fixed)

Return key behavior is kerfliggered

Reported by: rongarret Owned by: mikel
Priority: major Milestone:
Component: IDE Version: trunk
Keywords: Cc:

Description

The behavior of the return key in the listener in the latest release seems to have changed in a very annoying way. The previous behavior was:

  1. If the cursor was on the last line of the listener, and there was

a complete sexpr on that line, that sexpr would be evaluated.

  1. If the cursor was on the last line of the listener and there was

not a complete sexpr on that line, a newline would inserted.

  1. If the cursor was anywhere else in the buffer, the sexpr to the

left of the cursor would replace the last line in the buffer. (IMHO, this was not the correct behavior. The correct behavior is what Fred used to do: append the sexpr to the left of the cursor to the last line. But that's another issue.)

The new behavior, as best I can make out, is:

  1. If the cursor is at the end of the buffer (not merely on the last

line) and there is a complete sexpr to the left of the cursor then the sexpr is evaluated. This is as it should be. However...

  1. If the cursor is on a line other than the last, then the sexpr on

that line is copied to the last line AND it is evaluated. This is badly broken IMHO because there is no opportunity to edit the line. Now to re-use a previous line of input with changes you have to select, copy, click, and paste. Very annoying. Worse...

  1. If the cursor is on the last line but not at the end of the line,

then a newline is inserted. In addition, if there was a complete sexpr on the last line, it is evaluated. However, the cursor does not drop down to the new last line. It stays where it is. This is just b0rken. It's particularly annoying because there's a bug in the listener scrolling code so that if you do this at the bottom of a window, you get output that you don't see unless you manually scroll the window down.

I'm rating this "major" because it's really messing me up, especially the last item.

Change History (2)

comment:1 Changed 10 years ago by mikel

  • Owner set to mikel
  • Status changed from new to assigned

comment:2 Changed 10 years ago by mikel

  • Resolution set to fixed
  • Status changed from assigned to closed

Fixed in a recent check-in, but the fix left one dangling annoyance:

(per ron@…, July 15, 2009):

he new behavior is much improved. There's just one minor annoyance: CR at the end of a listener doesn't seem to do a self-insert, so if you PRINC something it ends up to the right of the form you entered instead of on a line by itself. This is particularly evidence if you do an APROPOS:

? (apropos 'foo) HI::FOO GUI::FOO

FOO

CCL::FOO ?

This is now fixed.

Note: See TracTickets for help on using tickets.