Click on the following link to view my customizations to GNU Emacs http://davinpearson.nz/binaries/java-training-wheels--bagatelles_20220506-110613.tar.gz You should really extract the tarball to ~/java-training-wheels The name is unfortunate as my java-training-wheels preprocessor is not yet working, just the dlisp part is working, where dlisp stands for _D_avin's version of Elisp. One feature of my code is that M-y is rebound to create a new buffer listing all of the entries in the kill ring. It is this code that I am submitting for consideration of adding my feature to GNU Emacs. The rest of the code is sometimes necessary to get dmp-kill-ring--file.el online. Features of my code include the following: DONE: M-y is bound to a new function dmp-kill-ring--key--meta-y DONE: (shift/control/meta) - up/down & prior/next are bound to sensible bindings DONE: f9, shift/control/meta f9 bound to compile DONE: Binding the following colours: dmp-foo--bar--zip in the following colours: RED(dmp-foo) & GRN(bar) & BLU(zip) etc. DONE: Insert takes you to the electric buffers menu DONE: Insert Insert takes you to the second buffer in the (buffer-list) DONE: Files in the electric-buffer-list are coloured according to each file's location. DONE: Defuns hungry-delete-backwards and hungry-delete-forwards: respectively for control/shift/meta (backspace and delete) DONE: Major use of syntax highlighting (especially in emacs-lisp-mode). Try loading the .../java-training-wheels/dlisp/coolmacs/*.el files to see my preferences for syntax highlighting. DONE: Sound samples are played at different milestones... You will need to move ~/java-training-wheels/.emacs to ~/.emacs or otherwise load ~/java-training-wheels/.emacs into Emacs. Browse the following screenshots by clicking on the following link.... http://davinpearson.nz/binaries/