[ESS] unexpected behavior for Emacs-27.1-1-modified-1 for two MacBooks.

Richard M. Heiberger rmh @end|ng |rom temp|e@edu
Wed Jan 27 02:38:50 CET 2021

Thank you Stephen.

The two emacs repairs (find-dired-refine-function and find-dired-filter) you sent worked for me.

The aspell I pushed a bit farther.  In 2015 I replaced the aspell (dated 2009) in /usr/local/bin with something from homebrew.
I remember no details.  When I installed the new M1, the Apple installation process automatically copied everything from the old machine,
including the homebrew aspell and my subdirectory containing the 2009 files.
If there had been an Apple M1 aspell, it was overridden.  Based on Vincent Goulet's notes, there might
not have been one, and in any case he recommends hunspell.  I will address the spelling problem soon, but not today.


From: Stephen Berman <stephen.berman using gmx.net>
Sent: Tuesday, January 26, 2021 4:07 PM
To: Richard M. Heiberger via ESS-help
Cc: Richard M. Heiberger
Subject: Re: unexpected behavior for Emacs-27.1-1-modified-1 for two MacBooks.

On Tue, 26 Jan 2021 18:49:57 +0000 "Richard M. Heiberger via ESS-help" <ess-help using r-project.org> wrote:

> I just downloaded Emacs-27.1-1-modified-1 for two MacBooks.
> I have been using the previous 25.1.1 successfully on both machines.
> 1. My new MacBook Air M1, running Big Sur
> 2. My old MacBook Air mid 2012, running Catalina (it is too old for Big Sur)
> I have three unexpected behaviors, and they are not identical on the two machines.
> Has anyone seen these before?  Do you have idea about what is happening?
> Thank you,
> Rich
> I. Both machines report in *Messages*
>    Package cl is deprecated

The NEWS file in Emacs 27 says:

  ** The 'cl' package is now officially deprecated in favor of 'cl-lib'.

> II. When I search find-dired in
> /Applications.Emacs.app/Contents/Resources/site-lisp with the command
> I have been using for many years
>     -name \*.el -exec grep 'cl-' {} ";"
> new machine:
>   searches normally with instances found in each followed by the
>   file's dired information.  Then before stopping, it sorts all
>   instances together, followed by all dired entries together.
>   Essentialy useless.
> old machine:
>   same as above

The NEWS file in Emacs 27 says:

  *** New user option 'find-dired-refine-function'.
  The default value is 'find-dired-sort-by-filename'.

So you can prevent the resorting by setting find-dired-refine-function
to nil (by setq in your init file or by `M-x customize-option').

> On both machines, when I pick one of my own directories and do a similar search,
> old machine:
>   behaves normally but reports:
>   error in process sentinel: Wrong type argument: integer-or-marker-p, nil
> new machine:
>   did the useless re-sort as described above.

When I try your find-dired string in emacs-27 (and also in emacs-28) I
also get an error in process sentinel, but a different one:
"find-dired-filter: Invalid use of ‘\’ in replacement text".  This
appears to be due to this change:

commit fb20043b2fec8e8aff6354ec1396fd5ba688b76b
Author:     Sebastian Reuße <seb using wirrsal.net>
AuthorDate: Sat Dec 30 12:41:23 2017 +0200
Commit:     Eli Zaretskii <eliz using gnu.org>
CommitDate: Sat Dec 30 12:41:23 2017 +0200

    Fix output alignment in 'find-dired' for "ls -h"

    * lisp/find-dired.el (find-dired-filter): Fix alignment of
    the file size column when the -h ls option is used in
    'find-ls-option'.  (Bug#29803)

index 3b0613b280..bf815d500d 100644
--- a/lisp/find-dired.el
+++ b/lisp/find-dired.el
@@ -295,7 +295,7 @@ find-dired-filter
                    (l-opt (and (consp find-ls-option)
                                (string-match "l" (cdr find-ls-option))))
                    (ls-regexp (concat "^ +[^ \t\r\n]+\\( +[^ \t\r\n]+\\) +"
-                                      "[^ \t\r\n]+ +[^ \t\r\n]+\\( +[0-9]+\\)")))
+                                      "[^ \t\r\n]+ +[^ \t\r\n]+\\( +[^[:space:]]+\\)")))
                (goto-char beg)
                (insert string)
                (goto-char beg)

When I revert this change (by replacing `^[:space:]' by `0-9' in the
above code excerpt), I don't get the error anymore.  Since the error
message you got is different, it may have a different cause.  In any
case, it looks like it warrents a bug report (`M-x report-emacs-bug').

> ispell behaves differently (previous ispell, not using the hunspell additional).
> old machine:
>   it works normally
> new machine:
>   ispell-check-version: /usr/local/bin/aspell exited with signal Illegal instruction: 4

I can't help with this one, but maybe it's also worth a bug report.

Steve Berman

More information about the ESS-help mailing list