;; An obvious case of a key substitution:
(save-excursion
(while (re-search-forward
- ;; Assume command name is only word and symbol
+ ;; Assume command name is only word and symbol
;; characters to get things like `use M-x foo->bar'.
- "\\<M-x\\s-+\\(\\sw\\(\\sw\\|\\s_\\)+\\)" nil t)
+ ;; Command required to end with word constituent
+ ;; to avoid `.' at end of a sentence.
+ "\\<M-x\\s-+\\(\\sw\\(\\sw\\|\\s_\\)*\\sw\\)" nil t)
(let ((sym (intern-soft (match-string 1))))
(if (fboundp sym)
(help-xref-button 1 'help-function sym)))))