[ESS] Some annoyances with ESS >= 24.x + polymode

LaurentEss |@urente@@ @end|ng |rom |ree@|r
Tue Aug 27 19:44:30 CEST 2024


Hi Vincent,

Concerning the trouble:

- [noweb files] With older ESS, M-n C-n would allow to reach a code chunk by its name, a la iswitch-buffer. Is there something equivalent in Polymode? (No, 'M-s <<chunk-name' is not as convenient.)

Tyler Smith gave me on this mailing-list (see link below) a very nice workaround, not really identical but very convenient.

https://www.mail-archive.com/ess-help@r-project.org/msg01017.html


Le 27/08/2024 à 10:49, Martin Maechler via ESS-help a écrit :
> On Mon, Aug 26, 2024 at 10:06 PM Vincent Goulet via ESS-help
> <ess-help using r-project.org>  wrote:
>> Hi all,
>>
>> As many of you will know, I have been a very long time user of ESS. For my literate programming needs, I also stuck mostly to Sweave and .Rnw files. Therefore, Rmarkdown and knitr are neither a priority nor an answer for me.
> long time ESS user indeed -- and to most of us even more importantly,
> provider of ESS+Emacs  for Windows and macOSX for a very long time.
>
>
>> ESS 24.01.1 marked an important transition in ESS life with what is now a strong reliance on polymode to edit noweb files and help pages. I must say that transitioning as an end user proved much smoother than I thought it'd be. Kudos to the developers! Polymode is also *much* better than noweb-mode (ess-noweb-mode?) at keeping track of whether the point is in a code or a documentation chunk. Nice.
> Indeed!  (The development version of ESS had moved to polymode much
> earlier .. but you didn't see it for "released ESS", because the ESS
> release manager (me)  did not want to release with too many open
> issues ...  which was a mistake in hindsight -- mea culpa!).
>
>> That said, a stumbled on a few annoyances when working with .Rnw and man pages, and I'd like to either report them or get workarounds (when a feature rather than a bug). In no particular order:
>>
>> - [noweb files] With older ESS, M-n C-n would allow to reach a code chunk by its name, a la iswitch-buffer. Is there something equivalent in Polymode? (No, 'M-s <<chunk-name' is not as convenient.)
>>
>> - [noweb files] fill-paragraph in (LaTeX) documentation does not respect a code chunk that is not separated by a blank line as the older ESS would do. In other words M-q in
>>
>> lorem ipsum
>> <<>>=
>> 2 + 3
>> @
>>
>> with the point in "lorum ipsum" results in
>>
>> lorem ipsum <<>>= 2 + 3 @
>>
>> - I found that when editing code inside a code chunk, comment-column is not respected. Reusing the previous example, M-; on the '2 + 3' line results in
>>
>> lorem ipsum
>> <<>>=
>> 2 + 3 #
>> @
>>
>> even though comment-column is 40. [I don't know why it is 40, by the way. C-h v comment-column RET yields
>>
>> comment-column is a variable defined in ‘newcomment.el’.
>> Its value is 40
>> Original value was 32
>> Local in buffer tri.Rnw[R]; global value is 32
>>
>> I didn't set the value to 40 anywhere. Beats me.]
>>
>> - [noweb files] I use plain vc-mode for version control. Running vc-diff on a .Rnw file does highlight the changes, but it brings a useless buffer named *diff syntax* in front of the *vc-diff* buffer. If one kills the latter buffer and moves within the *vc-diff* buffer with n or b, moving past a code chunk brings back the *diff-syntax* buffer. In other words, vc-diff is pretty unusable on .Rnw files.
>>
>> - [noweb files] This is more a convenience thing not necessarily related to ESS. When visiting files, how can I get .Rnw at the beginning of the list of files, even before .R or .tex files? I'm using ido-mode.
>>
>> - [R man pages] It used to be that all navigation in a man page used nifty one- or two-letter combinations. This still works, except in examples, where the standard R mode gets activated. I understand that this may be convenient to edit the examples, but it makes it no longer makes it possible to exit a man page from the Examples section using x or q. Is there a toggle somewhere to get the old behavior? What do you guys do? C-x k every time?
>>
>> This is all with my latest Emacs Modified for macOS distribution: Emacs 29.4, ESS 24.01.1.
>>
>> If I should file bug reports, please tell me.
> polymode is not really part of ESS ... but its creator and maintainer,
> Vitalie Spinu,  made 3 of ESS cores most active maintainers,  Lionel,
> Rodney, and me  to "co-admin"s of the  github repos where polymode has
> been developed.
> So yes, I think it would be greate to open  github issues in the
> polymode repos  {{and even more useful may be to create pull request
> for fixing the above problems}}:
>     https://github.com/polymode/polymode/issues
>
> and ... to all readers ... if you can, it'd be great to get some
> issues closed etc;  many of the current ones seem related to
> "cooperation" between polymode and other emacs tools / packages/ etc.
> These need "testing" by users of both polymode *and* these other emacs
> tools.
> Many thanks in advance for all constructive collaboration here.
>
> Martin
>
>
>> Thanks in advance!
>>
>> v.
>>
>> Vincent Goulet
>> Professeur titulaire
>> École d'actuariat, Université Laval
>>
>> ______________________________________________
>> ESS-help using r-project.org  mailing list
>> https://stat.ethz.ch/mailman/listinfo/ess-help
>
>
	[[alternative HTML version deleted]]



More information about the ESS-help mailing list