I can confirm same observations as Ric (and agree that tab-completion of paths is missed but less critical that other things).
I do note that ~/.jhistory gets stomped on and while previous history seems to be there in jconsolemr, it is gone from 901/bin/jconsole instances. As someone whose use of J is 99.9% from a CLI, I'm concerned about this. As an added "benefit" to being so retro, I've never had any trouble with ^C for breaking a long running task and confess to never having used jbreak which has been a UI topic of late. - joey > On 2019May 22, at 23:10, Ric Sherlock <[email protected]> wrote: > > Thanks, yes I can confirm that ctrl+z works with jconsolemr. > No tab-completion of paths though, but given there will be both options > (readline and a new "no dependencies" version, then that's a reasonable > compromise. > Cheers, > > On Thu, May 23, 2019 at 3:03 PM bill lam <[email protected]> wrote: > >> Yes, but I don't think this fork is good because it used c++ >> which make building binaries complicated. It is not the only >> fork for linenoise. >> >> I have made patch from another fork and jconsole (linenosie) can >> work for utf8 ctrl-r ctrl-z ctrl-c. >> >> please get and try the jconsolemr (minimalist readline) >> from www.jsoftware.com/download/jengine/j901-beta/linux/j64 >> >> Thu, 23 May 2019, Ric Tikkanz написал(а): >>> Did you take a look at https://github.com/AmokHuginnsson/replxx ? >>> >>> From my reading it would also provide a self-contained, no outside >>> dependency solution, but has a significantly enhanced feature set. >>> >>> Features: >>>> >>> >>> - single-line and multi-line editing mode with the usual key bindings >>> implemented >>> - history handling >>> - completion >>> - syntax highlighting >>> - hints >>> - BSD license source code >>> - Only uses a subset of VT100 escapes (ANSI.SYS compatible) >>> - UTF8 aware >>> - support for Linux, MacOS and Windows >>> >>> It deviates from Salvatore's original goal to have a minimal readline >>> replacement for the sake of supporting UTF8 and Windows. It deviates from >>> 10gen Inc.'s goal to create a C++ interface to linenoise. This library >> uses >>> C++ internally, but to the user it provides a pure C interface that is >>> compatible with the original linenoise API. C interface. >>> >>> >>> On Wed, May 22, 2019 at 12:23 PM bill lam <[email protected]> wrote: >>> >>>> Sorry for missing some context for discussion. linenoise here refers to >>>> >>>> https://github.com/antirez/linenoise >>>> >>>> >>>> On Tue, May 21, 2019, 12:14 AM Raul Miller <[email protected]> >> wrote: >>>> >>>>> P.S. if the point of "linenoise" was to cope with faulty modem >>>>> sessions, note that people with this issue could disable control-z >>>>> before starting J, using >>>>> >>>>> stty susp undef >>>>> >>>>> But I don't think J should be optimized for faulty hardware. >>>>> >>>>> Thanks, >>>>> >>>>> >>>>> -- >>>>> Raul >>>>> >>>>> On Mon, May 20, 2019 at 12:09 PM Raul Miller <[email protected]> >>>>> wrote: >>>>>> >>>>>> I do not know what linenoise is, in this context, but control-z is >>>>>> basic functionality which predates libedit by decades. >>>>>> >>>>>> My inclination would be to remove that entire section of code (from >>>>>> the case statement to the continue statement) from the >> feature-reduced >>>>>> implementation of jconsole. >>>>>> >>>>>> Thanks, >>>>>> >>>>>> -- >>>>>> Raul >>>>>> >>>>>> On Mon, May 20, 2019 at 11:55 AM bill lam <[email protected]> >> wrote: >>>>>>> >>>>>>> Right, the original linenoise ignore ctrl-z. There is another >>>>>>> fork that seemed has a patch for it. >>>>>>> >>>>>>> case ctrl('Z'): /* ctrl-z */ >>>>>>> #ifdef SIGTSTP >>>>>>> /* send ourselves SIGSUSP */ >>>>>>> disableRawMode(current); >>>>>>> raise(SIGTSTP); >>>>>>> /* and resume */ >>>>>>> enableRawMode(current); >>>>>>> refreshLine(current); >>>>>>> #endif >>>>>>> continue; >>>>>>> >>>>>>> If users want the same level of functions of libedit, the >>>>>>> linenoise version can never satisfy them no matter how hard >>>>>>> we put efforts to improve linenoise. It is better to use the >>>>>>> libedit in that case. >>>>>>> >>>>>>> Mon, 20 May 2019, Raul Miller написал(а): >>>>>>>> On Mon, May 20, 2019 at 11:04 AM bill lam <[email protected] >>> >>>>> wrote: >>>>>>>>> jconsole can not run on rhel if users do not have sudo right >> to >>>>> symlink >>>>>>>>> some shared library. I hope this issue can be addressed >> properly >>>>>>>>> in j901. >>>>>>>> >>>>>>>> This is an example of a bigger problem that can occur in a >> variety >>>>> of contexts. >>>>>>>> >>>>>>>> I think the "jconsole without libedit" mechanism is a good >> thing. >>>> If >>>>>>>> we want J to be usable in docker instances, ec2 instances, >> docker >>>>>>>> instances in ec2 instances, etc. etc. then we want it to be >> simple >>>>> and >>>>>>>> robust. (We also would want relevant documentation and some >> way of >>>>>>>> coping with feature drift and stale documentation in the >> hosting >>>>>>>> environments, but that just gives you an idea of the scope of >> the >>>>>>>> problems.) >>>>>>>> >>>>>>>> That said: >>>>>>>> >>>>>>>> (1) It's odd that this beta jconsole instance is ignoring >>>> control-Z. >>>>>>>> This issue suggests that the SIGTSTP signal is being caught and >>>> then >>>>>>>> jconsole is ignoring it. (It would probably be a good idea to >> not >>>>>>>> catch signals if you do not have a specific reason for doing >> so. If >>>>>>>> there's a reason for this one, it might need a foreign?) >>>>>>>> >>>>>>>> (2) If symlinks are the showstopper for the feature-enhanced >>>>> jconsole, >>>>>>>> it would make sense to put the symlinks in the same directory >> as J >>>>> and >>>>>>>> link against those. If there are other issues (like different >>>>> versions >>>>>>>> of libedit having different interfaces for needed mechanisms) >> it >>>>> would >>>>>>>> make sense to let the user compile the code that uses the >>>> libraries. >>>>>>>> If the user needs privileges to compile and deploy which they >> do >>>> not >>>>>>>> have, they can fall back on the feature reduced jconsole. >>>>>>>> >>>>>>>> Thanks, >>>>>>>> >>>>>>>> -- >>>>>>>> Raul >>>>>>>> >>>>> >> ---------------------------------------------------------------------- >>>>>>>> For information about J forums see >>>>> http://www.jsoftware.com/forums.htm >>>>>>> >>>>>>> -- >>>>>>> regards, >>>>>>> ==================================================== >>>>>>> GPG key 1024D/4434BAB3 2008-08-24 >>>>>>> gpg --keyserver subkeys.pgp.net --armor --export 4434BAB3 >>>>>>> >>>> ---------------------------------------------------------------------- >>>>>>> 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 >> >> -- >> regards, >> ==================================================== >> GPG key 1024D/4434BAB3 2008-08-24 >> gpg --keyserver subkeys.pgp.net --armor --export 4434BAB3 >> ---------------------------------------------------------------------- >> 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
