purcell / emacs.d

An Emacs configuration bundle with batteries included
BSD 2-Clause "Simplified" License
6.82k stars 2.04k forks source link

Got error message, about function of sanityinc/make-read-only, pp-display-expression in .el file in emacs 29.0.60 #832

Closed kevinfis closed 1 year ago

kevinfis commented 1 year ago

Hi @purcell , Could i ask the purpose of the function of pp-display-expression and sanityinc/make-read-only for what?

Because i got error message when using emacs 29.0.60, after eval function in .el files, always got error message in my computer. (in scratch buffer or in org file buffer, the result of eval lisp function is as normal.) after comment out functions in init.el, finally, i found to comment out this will solved the situation: (advice-add 'pp-display-expression :after 'sanityinc/make-read-only) in init-lisp.el file.

Even though that solved, it might be the problem of the version of emacs, because i do not got such error in emacs 29.05 and i tested emacs 28.250, it also do not have such debug error message when i eval any function, in the config files of https://github.com/purcell/emacs.d.git. so i think if i want to report the issue, maybe need give some information for maintainer of emacs.

Here is the situation what i met and error message when i eval any funtion in .el buffer: I was using emacs 29.05 , till three days ago. duo to uding pacman only upgraded a single file, pacman broken, so after reinstalled arch linux, then download emacs: git clone https://github.com/emacs-mirror/emacs/tree/master but master branch become emacs 30, so i re-download old branch: git clone -b emacs-29 https://github.com/emacs-mirror/emacs/tree/master (by the way, today i found the branch 'emacs-29' disappeared suddenly.) after make, it's version is emacs 29.0.60 (i did not remain src file of 29.05) after test, emacs 28.250 do not have such issue, emacs 29.06 and 30.050 has the issue, in my computer.

===error message start===

Debugger entered--Lisp error: (wrong-number-of-arguments ((t) (expression out-buffer-name) "Enable view-mode' in the output buffer - if any -..." (when (get-buffer out-buffer-name) (with-current-buffer out-buffer-name (view-mode 1)))) 3) sanityinc/make-read-only(sanityinc/make-read-only "*Pp Eval Output*" nil) apply(sanityinc/make-read-only (sanityinc/make-read-only "*Pp Eval Output*" nil)) pp-display-expression(sanityinc/make-read-only "*Pp Eval Output*" nil) pp-eval-expression((defalias 'sanityinc/make-read-only #'(lambda (expression out-buffer-name) "Enableview-mode' in the output buffer - if any -..." (when (get-buffer out-buffer-name) (with-current-buffer out-buffer-name (view-mode 1)))))) pp-eval-last-sexp(nil) (if (and (mark) (use-region-p)) (eval-region (min (point) (mark)) (max (point) (mark))) (pp-eval-last-sexp prefix)) sanityinc/eval-last-sexp-or-region(nil) funcall-interactively(sanityinc/eval-last-sexp-or-region nil) call-interactively(sanityinc/eval-last-sexp-or-region nil nil) command-execute(sanityinc/eval-last-sexp-or-region)

===error message end===

purcell commented 1 year ago

(by the way, today i found the branch 'emacs-29' disappeared suddenly.)

I know @tarsius fixed some mirroring config for that branch in the emacsmirror/emacs repo recently — note also that the contents of that branch were previously very outdated.

Probably that function takes an extra arg now — I should be able to add a fix in my config code to ensure backwards compatibility.

kevinfis commented 1 year ago

(by the way, today i found the branch 'emacs-29' disappeared suddenly.)

I know @tarsius fixed some mirroring config for that branch in the emacsmirror/emacs repo recently — note also that the contents of that branch were previously very outdated.

Good news, hope them will finish it smoothly.

Probably that function takes an extra arg now — I should be able to add a fix in my config code to ensure backwards compatibility.

That good news for me, because my English is not so well, now i have one less issue for report. and after test, today emacs 30.0.50 with your config have no error in eval, work fine.

Thanks your reply, and improve your config. Your config is very good. Have a nice day.

purcell commented 1 year ago

Thank you — I hope you have a good day too!