Very interesting John, I get it now--that may be very useful--thanks for that.

Also, I left out a main reason to use QEmacs: I use it for visually editing very large multi-gigabyte files--I use it for some of the things we discussed--search and replace and/or incremental-search-and-replace.

On Sat, Mar 28, 2015 at 2:20 PM, John Kitchin <jkitchin@andrew.cmu.edu> wrote:
This is the code Samuel refers to. It is awesome. I use it less and less ;) by which I mean everytime I use it is one less time I ever have to use it.

;; http://endlessparentheses.com/ispell-and-abbrev-the-perfect-auto-correct.html
(define-key ctl-x-map "\C-i" 'endless/ispell-word-then-abbrev)

(defun endless/ispell-word-then-abbrev (p)
  "Call `ispell-word'. Then create an abbrev for the correction made.
With prefix P, create local abbrev. Otherwise it will be global."
  (interactive "P")
  (let ((bef (downcase (or (thing-at-point 'word) ""))) aft)
    (call-interactively 'ispell-word)
    (setq aft (downcase (or (thing-at-point 'word) "")))
    (unless (string= aft bef)
      (message "\"%s\" now expands to \"%s\" %sally"
               bef aft (if p "loc" "glob"))
      (define-abbrev
        (if p global-abbrev-table local-abbrev-table)
        bef aft)))) 



John

-----------------------------------
Professor John Kitchin 
Doherty Hall A207F
Department of Chemical Engineering
Carnegie Mellon University
Pittsburgh, PA 15213
412-268-7803

On Sat, Mar 28, 2015 at 12:57 PM, Samuel W. Flint <swflint@flintfam.org> wrote:
There's something on endless parentheses that will let you generate a correction abbrev with a keystroke.

Samuel W. Flint
Please forgive any typos as this was composed on a screen keyboard.

> On Mar 28, 2015, at 9:19 AM, Matt Price <moptop99@gmail.com> wrote:
>
> I make a lot of typing errors (I have an injury to one hand, which impedes bilateral cooperation). In Libreoffice I am able to define wildcard autocorrect objects, e.g.:
>
> oc.* ---> co.*
>
> This will correct ocrrect, ocmputer, ocndition, etc.  Does anyone know a way to do something similar in Emacs? Right now I am using abbrev mode and defining my errors one by one -- it is a very slow process since I make so many mistakes and have a moderately large vocabulary.
>
> I am sure this is possible somehow, I just don't know how.
>
> thanks as always,
> m
>
>