~rgrjr/rgr-hacks

Update for Emacs 31

* rgr-x11-hacks.el:
   + (rgr-install-frame-properties):  The current development version is
     now Emacs 31.
Correct ssh-host-history

* emacs-init.el:
   + (ssh-host-history):  Fix the syntax of this variable (it's just a
     list), and replace rogers@lincoln.modulargenetics.com with
     rogers@morgantown.modulargenetics.com.
Add rgr-mangle-log

* rgr-mangle-log.el (added):
   + (rgr-reverse-paragraphs):  New command.
   + (rgr-mangle-log):  Reformat the dates in log file paragraphs.
* compile-rgr-hacks.el:
   + (rgr-hacks-source-files):  Add rgr-mangle-log.
* rgr-pumpernickel.el:  (rgr-show-pumpernickel-intervals):  Add 2024 May 08
Don't die when checking email if an inbox doesn't exist

* vm+qmail.el:
   + (v+q-mbox-status-internal):  Bug fix:  Don't die if the mail file
     or maildir doesn't exist.
   + Update to use lexical binding.
   + (v+q-folder-spool-file-entry):  Remove unused lexical.
Don't predict pumpernickel weeks in the past

* rgr-pumpernickel.el:
   + (rgr-show-pumpernickel-intervals):  Add a verbose parameter to use
     a numeric arg to display the table of dates and intervals.   Allow
     for the passage of time to the present since the last pumpernickel
     week by dropping the counts for all shorter intervals, regarding
     them as impossible.  That is done for the "next week" prediction,
     then use that data with the full set for the subsequent prediction.
   + (rgr-alist-convolution):  Add another arg so we can convolve a list
     against another.
* emacs-init.el:  Change default sql-user and sql-database
Tweak my email sig, autoload the alternative folder fn

* rgr-mail-hacks.el:
   + (rgr-email-signature-strings):  Update my sig with my cell phone.
   + (rgr-invoke-vm-alt-folder):  Add an autoload cookie.
* rgr-pumpernickel.el:
   + (rgr-show-pumpernickel-intervals):  Add 20-Mar.
Ajdust the f3 mail folder binding

* emacs-init.el:
   + Move the f3 mail folder binding here, where it belongs, and change
     it to visit /modgen/rogers/mail/morgantown.vm instead.
* rgr-hacks.el:
   + (rgr-install-function-keys):  Remove the f3 key binding, add
     "lexical-binding: t" to the file.
Improve abbrev-completion.

   This amounts to a nearly-complete rewrite.
   From the improve-abbrev-completion branch.
* rgr-abbrev-completion.el:
   + (rgr-abbrev-kill):  Renamed from rgr-kill-last-symbol-abbreviation.
   + Content in save files written the same day is now merged.
   + Use lexical binding.
   + The code has also been modernized, and naming has been cleaned up.
* test/test-rgr-abbrev-completion.el:
   + Now with more thorough testing.
Fix string-to-number in rgr-perl-update-method-documentation

* rgr-perl-hacks.el:
   + (rgr-perl-update-method-documentation):  Oops; it's string-to-number
   + Also, use lexical binding.
Set up <f3> to run vm on a specified alternate mail folder

* rgr-mail-hacks.el:
   + (rgr-mail-alternate-folder):  Designated alternate VM folder.
   + (rgr-invoke-vm-alt-folder):  Run VM on rgr-mail-alternate-folder.
* rgr-hacks.el:
   + (rgr-install-function-keys):  If there's a modgen-consulting.vm
     folder, bind <f3> to run rgr-invoke-vm-alt-folder on it.
* rgr-elisp-hacks.el:  (rgr-make-tags-table-list-hook):  Add WebFrame
Handle subheads in Perl POD method doc

* rgr-perl-hacks.el:
   + (rgr-perl-update-method-documentation):  Bug fix:  Handle subheads
     within method documentation gracefully.  Previously, they would be
     treated as oddly-named methods, which fails when they sort badly.
Also predict the pumpernickel week after next

* rgr-pumpernickel.el:
   + (rgr-pump--make-prediction):  Pass in a title, do our own
     probability normalization. and fix the fill-paragraph so it works.
   + (rgr-alist-convolution):  Quick and dirty.
   + (rgr-show-pumpernickel-intervals):  Predict the next pumpernickel
     week, and the one after.
Add a pumpernickel histogram and make all predictions >=20%

* rgr-pumpernickel.el:
   + (rgr-pump--draw-histogram):  New ASCII-art hack.
   + (rgr-pump--make-prediction):  Split this out, show all weeks with
     at least 20% probability.
Add rgr-show-pumpernickel-intervals dates, use lexical binding

* rgr-pumpernickel.el:
   + (rgr-show-pumpernickel-intervals):  Add 13-Dec and 14-Feb.
   + Also add a provide form.
Fix parse-date hyphen handling

* parse-date.el:
   + (parse-date--tokenize-string):  Bug fix:  End the token only on
     only non-initial hyphens, and then be sure to skip over them.
* test/test-parse-date.el:
   + (parse-date-tests):  Add some hyphen (and other) tests.
Make parse-date &optional work, add basic testing

* parse-date.el:
   + (parse-date-2):  Rename the generic function from parse-date to
     parse-date-2 because &optional doesn't work with generics.
   + (parse-date):  The entrypoint is now an ordinary function with an
     &optional format argument.
* test/test-parse-date.el (added):
   + New test script, based on Emacs date parsing.
Next