>>> "SM" == Stefan Monnier writes: >> table?". That can't be both two words separated by a space and a >> single word at the same time, ie using >> >> "\\(\\w+ \\w+\\)\\|\\(w+\\) > Note that these regexps will be matched via `re-search-backward` so > \\(w+\\) will typically only match a single character (it stops at the > *rightmost* match). > Another way to go about it is to construct the regexp from the set of > abbrevs using `regexp-opt`. Robert's solution works, the only downside is that I need and additional (setq local-abbrev-table (list my-abbrev-table fundamental-mode-abbrev-table)) In each buffer which is a bit cumbersome. Are you saying this could be avoided using regexp-opt? If so how?