bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#4565: 23.1.50; [Patch] The doctor thinks that "family" is an adverb


From: Ulrich Mueller
Subject: bug#4565: 23.1.50; [Patch] The doctor thinks that "family" is an adverb
Date: Sun, 27 Sep 2009 16:57:56 +0200

When calling "psychoanalyze-pinhead" in Emacs from today's CVS trunk,
but with the yow.lines file restored from Emacs 21, it stops at a
phrase containing the word "family".

To reproduce:
   $ emacs -Q
   M-x doctor RET
   While I'm in LEVITTOWN I thought I'd like to see the NUCLEAR FAMILY!!
   RET RET

Actual behaviour:
   Minibuffer prompt "family what ?" appears.

Expected behaviour:
   Doctor printing an answer like "Tell me something about your family."

The problem is in function doctor-adverbp which recognises all words
ending with "ly" as adverbs. The patch included below fixes it for
some common words.

(Actually, there are many more non-adverbs ending with "ly". I've
limited it to words contained in the list of 850 words of Ogden's
Basic English, or in yow.lines.)

Ulrich


2009-09-27  Ulrich Mueller  <ulm@gentoo.org>

        * play/doctor.el (doctor-adverbp): Exclude some common nouns.

--- emacs-orig/lisp/play/doctor.el
+++ emacs/lisp/play/doctor.el
@@ -1190,7 +1190,8 @@
 (defun doctor-adverbp (xx)
   (let ((xxstr (doctor-make-string xx)))
     (and (>= (length xxstr) 2)
-        (string-equal (substring (doctor-make-string xx) -2) "ly"))))
+        (string-equal (substring (doctor-make-string xx) -2) "ly")
+        (not (memq xx '(family fly jelly rally))))))
 
 (defun doctor-articlep (x)
   (memq x '(the a an)))





reply via email to

[Prev in Thread] Current Thread [Next in Thread]