Edouard Klein <[email protected]> writes:
> Hi Kyle, > > > Running > guix shell r > > and then > R > > will get you the C-c handling you want. > > There is indeed readline support with guix shell r -- R: > up arrow to get history, c-E, c-A for end of line, start if line, etc. > > I think maybe the problem lies not with readline but with the way > signals are handled. I can't seem to understand exactly how, but I would > look into that direction. > > Cheers, > > Edouard. Thanks Edouard for pointing out that the problem is signals-related and not readline related. I spent a little time refreshing my memory about signals, looking at the following shell scripting references. => https://linuxcommand.org/lc3_wss0150.php => https://mywiki.wooledge.org/SignalTrap I tried using tools like trap, wait, and exec, but haven't yet found an approach that worked. I placed a basic R manifest here if anyone would like to try: => https://paste.debian.net/1284782/ Basically my shell script was: ``` #!/bin/sh guix shell -m /tmp/manifest.scm -- R --no-save --quiet --no-restore ``` In the R REPL I interactively test the problem with: ``` while(TRUE) Sys.sleep(1) C-c C-c ``` Cheers, Kyle > Kyle Andrews <[email protected]> writes: > >> Dear Guix, >> >> When I run `guix install r` and then start an R process I get a >> readline-enabled >> REPL where I can abort commands with C-c C-c while keeping the process alive >> afterwards. When I run R from `guix shell r -- R` I don't get any readline >> support in R. Pressing C-c immediately aborts the process. This is >> inconvenient >> for interactive exploration. Is there a way to make guix shell work the same >> way >> as if the R command was installed into a profile? >> >> Thanks for your help, >> Kyle
