|
From: Ethan A M. <sf...@us...> - 2014-09-23 18:24:10
|
On Tuesday, 23 September, 2014 17:54:44 Tatsuro MATSUOKA wrote: > > ----- Original Message ----- > > From: Ethan A Merritt > > To: gnuplot-beta > > Cc: > > Date: 2014/9/23, Tue 03:43 > > Subject: Persistent confusion about gnuplot -persist > > > > > > There have recently been several queries, bug reports, support requests, > > and so on that involve misunderstanding about what to expect from > > gnuplot -persist or set term <foo> persist. > > > > People seem to assume that if the window is still showing on the screen, > > they should be able to pan/zoom/unzoom and so on using the mouse > > buttons or the widgets at the top of the terminal GUI. > > > > The documentation is quite explicit that this isn't true in general because > > such operations require the main program to recalculate and redraw the > > plot, which cannot happen in -persist mode because the main program > > has already exited. As it happens, the wxt terminal back in version 4.4 > > was an exception to this general case. I guess people remember that > > exception and want to generalize it to all current terminals. > > > > That is, people expect this > > > > [1] gnuplot -persist -e "plot sinh(x); exit" > > > > to act like this > > > > [2] gnuplot -e "plot sinh(x); pause mouse close; exit" & > > > > The question is, should we continue pointing to the documented limitations > > of "persist", or should we change what persist does to match > > people's > > expectation? > > > > So far as I know [2] works properly for the x11, wxt, and qt terminals > > under linux. I don't know about MSWin (win) or OSX (aqua). > > > > Assuming that [2] can be made to work correctly on all three of these > > platforms, should we reimplement "set term ... persist" and > > "gnuplot -persist" > > to act like this instead of retaining the current implementation? > > > > > I have tested on windows (cvs changelog date is 2014-09-20) > > gnuplot -e "plot sinh(x); pause mouse close; exit" > > > works as expected for wxt and windows terminal. > But for qt terminal, gnuplot exit immediately and we cannot use mouse. Does "pause mouse close" work correctly from an interactive session using qt? Ethan > > For windows, there is not "fork" function so that persist mode works differently from other platforms. > In persist mode (case [1]), > gnuplot session does not terminated so that we can use mouse for windows and wxt > terminal. > > For qt terminal, perhaps gnuplot session is terminated but gnuplot_qt process exists. > We cannot use mouse for zoom for qt terminal. Yes. That is the documented behavior. But it seems to surprise some people. > > Tatsuro |