Sorry, I should have written a longer message, with most, or all, parts of it written in the first person... In my experience hanging out at the #emacs channel at Freenode and asking for help or hints on elisp is fun, and it's easy to test ideas interactively with C-x C-e... asking for help on the C side of Emacs is not so fun - patching the C source is considered arcane knowledge (<- my impression!) and fewer people will be able to discuss that and to help... also, I don't know how to recompile Emacs after a change in a .c and restart it in less that 30 seconds (slow machine here - I use an old ThinkPad with LibreBoot) - in fact I don't think I've ever patched the C source before! Here's the script that I used to test Arthur's patch: # Download the attachments of this message: # https://lists.gnu.org/archive/html/emacs-devel/2019-12/msg00556.html # in /tmp/: cd /tmp/ wget -O bytecomp.patch https://lists.gnu.org/archive/html/emacs-devel/2019-12/txtkIKP0OSag7.txt wget -O lread.patch https://lists.gnu.org/archive/html/emacs-devel/2019-12/txttFA8rLAthl.txt wget -O chatty.el https://lists.gnu.org/archive/html/emacs-devel/2019-12/txt6f3pEXMWNI.txt # Apply the patches in /tmp/: cd /tmp/ cp -v ~/bigsrc/emacs/src/lread.c /tmp/ cp -v ~/bigsrc/emacs/lisp/emacs-lisp/bytecomp.el /tmp/ # (find-man "1 patch") patch lread.c lread.patch patch bytecomp.el bytecomp.patch # If they applied cleanly, copy the patched files back: cp -v /tmp/lread.c ~/bigsrc/emacs/src/lread.c cp -v /tmp/bytecomp.el ~/bigsrc/emacs/lisp/emacs-lisp/bytecomp.el # Rebuild Emacs. # I usually skip some of the steps below - my way of executing # these scripts line by line from Emacs is explained here: # http://angg.twu.net/emacsconf2019.html # http://angg.twu.net/eev-intros/find-eev-quick-intro.html#6 rm -Rfv ~/bigsrc/emacs/ mkdir -p ~/bigsrc/emacs/ cd ~/bigsrc/ git clone git://git.sv.gnu.org/emacs cd ~/bigsrc/emacs/ time ./autogen.sh 2>&1 | tee oa time ./configure 2>&1 | tee oc time make bootstrap 2>&1 | tee omb time make 2>&1 | tee om # Run the new Emacs: ~/bigsrc/emacs/src/emacs Cheers, Eduardo Ochs http://angg.twu.net/#eev On Fri, 20 Dec 2019 at 22:18, arthur miller wrote: > > I was expecting that Arthur would come up with a preprocessor written > > in (I guess) 30 lines of Elisp... > > Interesting 🙂. If you have red my previous mails to this list you > might have noticed that I am not an elisp guru. Stefan has > outlined two possible ways how this could be implemented in > Elisp, if you follow his advice I am sure you will have a working > solution you can present to us. I don't care how many lines of code > it will take. > > (...) >