I don't think this is a big problem. "Recurrent" means every several years,
and those raising it typically come from an APL background, where the IDE
is very different from J, and where they wish to preserve the APL way of
doing things rather than learn the J way.

For example, most of the time in J you should be working in scripts, which
allow you to recreate a session trivially, while in APL most of the time is
spent working in the terminal session where recreating it would be quite
troublesome. Having used both, I much prefer the J approach.

The essential problem is that some users edit the terminal session, then
complain that the terminal session has been edited. Refraining from editing
the terminal session would avoid this problem completely.

In APL, when you edit the terminal session it reverts to the original, but
we don't want or need to do that. J's session is really a scratchpad, not a
history or session log. In development, I clear it all the time.

I don't agree that the current recall behaviour is unintuitive or
confusing. AFAIK, this issue gets brought up when someone is unaware of the
recall mechanisms, rather than is confused by them.

BTW, there are three ways of recalling lines from history, and we have had
these since the early days:

  Ctrl+D  - input log dialog
  Ctrl+up/down arrows to step through the history
  move to a line in the session, press Enter to recall


On 26 January 2015 at 06:53, Björn Helgason <[email protected]> wrote:

> If you edit the line first before copying it the session log will be wrong
> and can be confusing.
>
> I use the editor and send the lines over to the execute window and
> sometimes copy results from there to the editor.
>
> You can also retrieve lines from the input log.
> On 26 Jan 2015 14:30, "'Pascal Jasmin' via Programming" <
> [email protected]> wrote:
>
> > The big change everyone would like is (cmd or) ctrl-up/down instead of
> > ctrl-shift-up/down.
> >
> > The smart enter on a previous line request is ok.  It might be something
> > we can do with the recent additions for hotkey information, but a
> > workaround is to edit the line where it is, and press enter twice.  You
> can
> > still obtain original previous commands with ctrl-shift up or ctrl-D
> >
> >
> > ----- Original Message -----
> > From: Jan-Pieter Jacobs <[email protected]>
> > To: [email protected]
> > Cc:
> > Sent: Monday, January 26, 2015 5:15 AM
> > Subject: Re: [Jprogramming] Recalling and editing lines in jqt
> >
> > I agree the current recall behavior is unintuitive, and often confusion,
> > especially when using the J session as a scratch pad.
> > When trying out different things, not paying too much attention to where
> > you do the edit, all edited commands and their outputs are inconsistent,
> > and thus useless. Of course, changing the default workflow will upset a
> lot
> > of people.
> >
> > A solution that eg. wxMaxima[1] has gone for is putting output belonging
> to
> > changed commands in grey, marking the output as not corresponding with
> the
> > command above. Executing the command in place replaces this output in the
> > history with an updated version.
> > This forced update could for instance be another shortcut (eg.
> ctrl-enter),
> > without interfering with the "standard" way J's session works.
> >
> > I can imagine there's a fair amount of code going into implementing this,
> > as it would mean keeping track of where which commands and their output
> are
> > put, but I think it would be a nice addition which defuses this recurrent
> > issue people seem to have with J.
> >
> > Either way, I'm open for brainstorming about this.
> >
> > A smaller thing which I would like when recalling stuff is that the
> cursor
> > position would be saved when using Enter on a previous line to pull it
> > down. A lot of times I automatically click where I want to edit a line,
> > after having it pulled down. This would save some mouse or cursor key
> work.
> >
> > Also, I like the smart home key behavior (first going to the first
> > non-space character before skipping to the real home). Could it be
> extended
> > to also work when selecting stuff with shift-home?
> >
> > Thanks,
> >
> > Jan-Pieter
> >
> > [1]: http://wxmaxima.sourceforge.net/
> >
> > 2015-01-26 7:01 GMT+01:00 Skip Cave <[email protected]>:
> >
> > > In jqt on Win 8.1 I just go to the line in question and hit enter. That
> > > moves a copy of the line to the bottom of the session, but doesn't
> > execute
> > > it. Then I can edit it, and then execute it by hitting enter on that
> > line.
> > >
> > > Skip
> > > ----------------------------------------------------------------------
> > > For information about J forums see http://www.jsoftware.com/forums.htm
> >
> > >
> > ----------------------------------------------------------------------
> > For information about J forums see http://www.jsoftware.com/forums.htm
> > ----------------------------------------------------------------------
> > For information about J forums see http://www.jsoftware.com/forums.htm
> >
> ----------------------------------------------------------------------
> For information about J forums see http://www.jsoftware.com/forums.htm
>
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

Reply via email to