Dyrcona's initialization scripts and libraries for GNU Emacs.
This repository holds Jason Stephenson's current initialization scripts and other code for GNU Emacs, developed over 30 years of using GNU Emacs for programming and other text editing chores. They not only set up the work environment on 3 different systems but also provide commands and skeletons to automate the drudgery of working with certain kinds of programs. They were recently spiffed up and pared down for sharing with the public.
Perhaps you'll find some inspiration for improving your GNU Emacs experience and automating some of your routine chores?
You will need a recent version of GNU Emacs. The author currently uses these scripts with versions 29.4 and 30.1.
You might need a few other packages and programs such as slime, Steel Bank Common Lisp, Guile, Python 3, etc.
If you want to use these files as they are, you should copy them to
your ~/.emacs.d/ directory.
It is NOT recommended that you use them as-is because much of the code found herein is specialized for the kinds of work that the author does. However, they may serve as examples to others who need to automate similar kinds of tasks.
Jason Stephenson is responsible for most of the code here.
Some portions were taken from, or inspired by, other sources as listed in the Acknowledgments and comments in the code.
The scripts are licensed under the terms of the GNU General Public License - see LICENSE.md file for details
Two files, buffer-advice.el and unscroll.el, were largely taken from Writing GNU Emacs Extensions by Bob Glickstein, published in 1997 by O'Reilly Media & Associates, Inc. No license other than copyright is mentioned in the text, though Appendix C suggests sharing code under the GNU General Public License.
The funcall-region function in
funcall-region.el was taken from a
StackOverflow answer by
db48x.
Code for moving within skeletons was taken from Emacs Wiki as indicated in the comments of my-skeletons.el.
Additional code taken from EmacsWiki, see code comments for attribution.