* Re: emacs-28 d3a832a: Simplify hack-read-symbol-shorthands again (bug#50946) [not found] ` <20211003231920.7ACA521048@vcs0.savannah.gnu.org> @ 2021-10-04 2:02 ` Stefan Monnier 2021-10-04 7:32 ` João Távora 0 siblings, 1 reply; 2+ messages in thread From: Stefan Monnier @ 2021-10-04 2:02 UTC (permalink / raw) To: emacs-devel; +Cc: João Távora > --- a/lisp/international/mule.el > +++ b/lisp/international/mule.el > @@ -294,6 +294,9 @@ attribute." > > (apply 'define-charset-internal name (mapcar 'cdr attrs)))) > > +(defvar hack-read-symbol-shorthands-function nil > + "Holds function to compute `read-symbol-shorthands'.") I know mule.el is very namespace-unclean, but could we try and not make things worse. E.g. we could call this `shorthands--hack-read-symbol-function`? > +(defun hack-read-symbol-shorthands () > + "Compute `read-symbol-shorthands' from Local Variables section." > + ;; FIXME: relies on the `hack-local-variables--find-variables' > + ;; detail of files.el. That function should be exported, > + ;; possibly be refactored into two parts, since we're only > + ;; interested in basic "Local Variables" parsing. > + (alist-get 'read-symbol-shorthands (hack-local-variables--find-variables))) Same here? > + (setq shorthands > + ;; We need this indirection because hacking local > + ;; variables in too early seems to have cause > + ;; recursive load loops (bug#50946). Thus it > + ;; remains nil until it is save to do so. > + (and hack-read-symbol-shorthands-function > + (funcall hack-read-symbol-shorthands-function))) BTW, we could also skip the var and do (and (fboundp 'shorthands--hack-read-symbol) (shorthands--hack-read-symbol)) -- Stefan ^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: emacs-28 d3a832a: Simplify hack-read-symbol-shorthands again (bug#50946) 2021-10-04 2:02 ` emacs-28 d3a832a: Simplify hack-read-symbol-shorthands again (bug#50946) Stefan Monnier @ 2021-10-04 7:32 ` João Távora 0 siblings, 0 replies; 2+ messages in thread From: João Távora @ 2021-10-04 7:32 UTC (permalink / raw) To: Stefan Monnier; +Cc: emacs-devel [-- Attachment #1: Type: text/plain, Size: 926 bytes --] On Mon, Oct 4, 2021, 03:02 Stefan Monnier <monnier@iro.umontreal.ca> wrote: > > I know mule.el is very namespace-unclean, but could we try and not make > things worse. Use shorthands! ;-) E.g. we could call this `shorthands--hack-read-symbol-function`? > I was kidding. Go ahead. Variables" parsing. > > + (alist-get 'read-symbol-shorthands > (hack-local-variables--find-variables))) > > Same here? > Same, yes, it's the same variable. BTW, we could also skip the var and do > > (and (fboundp 'shorthands--hack-read-symbol) > (shorthands--hack-read-symbol)) > If the function is set up late enough, I guess. Else it'll make the loop described. I always find variables a cleaner API than fboundp. But feel free to change, this the part of the feature where I have no opinion. As long as it passes the tests... João > > [-- Attachment #2: Type: text/html, Size: 2268 bytes --] ^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2021-10-04 7:32 UTC | newest] Thread overview: 2+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- [not found] <20211003231919.18078.17793@vcs0.savannah.gnu.org> [not found] ` <20211003231920.7ACA521048@vcs0.savannah.gnu.org> 2021-10-04 2:02 ` emacs-28 d3a832a: Simplify hack-read-symbol-shorthands again (bug#50946) Stefan Monnier 2021-10-04 7:32 ` João Távora
Code repositories for project(s) associated with this external index https://git.savannah.gnu.org/cgit/emacs.git https://git.savannah.gnu.org/cgit/emacs/org-mode.git This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.