Good catch, fixed and checked in. -- Best Regards, --raman -- Best Regards, --raman On 1/31/11, Tim Cross <tcross@xxxxxxxxxxx> wrote: > > I forgot to add my modified version of the code. Here it is. It appears to > have > fixed the problem, though not extensively tested. > > (defsubst emacspeak-get-voicefied-mode-name (mode-name) > "Return voicefied version of this mode-name." > (declare (special emacspeak-voicefied-mode-names)) > (let* ((mode-name-str (if (stringp mode-name) > mode-name > (format-mode-line mode-name))) > (result (gethash mode-name-str emacspeak-voicefied-mode-names))) > (or result > (progn > (setq result (copy-sequence mode-name-str)) > (put-text-property 0 (length result) > 'personality voice-animate result) > (puthash mode-name-str result emacspeak-voicefied-mode-names) > result)))) > > > Tim Cross writes: > > Hi Raman, > > > > I have found a bug in emacspeak-get-voicefied-mode-name. I think I know > what > > needs to be done to fix it, but wanted to check first. > > > > Details > > > > GNU Emacs 24.0.50.1 (i686-pc-linux-gnu, GTK+ Version 2.22.0) of > 2011-01-31 on > > blind-mole > > > > Latest emacspeak from svn > > > > Recipe to reproduce. > > > > 1. Open an org-mode agenda todo list with C-c a t > > 2. Hit C-e m to speak the mode line > > > > Gives the backtrace > > > > Debugger entered--Lisp error: (wrong-type-argument buffer-or-string-p > ("Org-Agenda" > > "" " " (:eval (org-agenda-span-name org-agenda-current-span)) "" "" " > Diary" " Ddl" > > " Grid" "" "" "" "" "")) > > ad-Orig-put-text-property(0 14 personality acss-a7-p7-s6 ("Org-Agenda" > "" " " > > (:eval (org-agenda-span-name org-agenda-current-span)) "" "" " Diary" " > Ddl" " Grid" > > "" "" "" "" "")) > > put-text-property(0 14 personality acss-a7-p7-s6 ("Org-Agenda" "" " " > (:eval > > (org-agenda-span-name org-agenda-current-span)) "" "" " Diary" " Ddl" " > Grid" "" "" > > "" "" "")) > > > > I've tracked this down to emacspeak-get-voicefied-mode-name. The problem > > appears to be that this function expects the mode name to be a string. > However, > > according to the documentation, is usually a string, but can be any of > the > > constructs for mode-line-format. > > > > According to the documentation, to get a string, you need to format > mode-name > > with format-mode-line. Therefore, my suggested (untested) solution would > be to > > format mode-name using mode-line-format and use that string as the key to > the > > hash and as the argument passed to put-text-properties. My only concern > with > > doing this is that it would seem you get more than just the mode name, > > potentially making the function return a more verbose result than is > > desired. Therefore, it may need to be slightly more complicated i.e. test > if > > the argument is a string, if it is use it, if it is not, format with > > format-mode-line and take the first word from that string. > > > > Am I on the right track? > > > > Tim > > > > > > > > -- > > Tim Cross > > Information Technology > > University of New England > > Phone: +61 2 6773 3210 > > Mobile: 0428 212217 > > Fax: +61 2 6773 3424 > > E-Mail: tcross@xxxxxxxxxxx > > Web: http://www.une.edu.au/itd > > --- > > Please avoid sending me Word or PowerPoint attachments. > > See http://www.gnu.org/philosophy/no-word-attachments.html > > > > Any fool can make things bigger, more complex, and more violent. It takes > a > > touch of genius (and a lot of courage) to move in the opposite direction. > > —Albert > Einstein > > > > > > > > > > > > > > > ----------------------------------------------------------------------------- > > To unsubscribe from the emacspeak list or change your address on the > > emacspeak list send mail to "emacspeak-request@xxxxxxxxxxx" with a > > subject of "unsubscribe" or "help". > > > > -- > Tim Cross > Information Technology > University of New England > Phone: +61 2 6773 3210 > Mobile: 0428 212217 > Fax: +61 2 6773 3424 > E-Mail: tcross@xxxxxxxxxxx > Web: http://www.une.edu.au/itd > --- > Please avoid sending me Word or PowerPoint attachments. > See http://www.gnu.org/philosophy/no-word-attachments.html > > Any fool can make things bigger, more complex, and more violent. It takes a > touch of genius (and a lot of courage) to move in the opposite direction. > —Albert Einstein > > > > > > > ----------------------------------------------------------------------------- > To unsubscribe from the emacspeak list or change your address on the > emacspeak list send mail to "emacspeak-request@xxxxxxxxxxx" with a > subject of "unsubscribe" or "help". > > ----------------------------------------------------------------------------- To unsubscribe from the emacspeak list or change your address on the emacspeak list send mail to "emacspeak-request@xxxxxxxxxxx" with a subject of "unsubscribe" or "help".
If you have questions about this archive or had problems using it, please send mail to:
priestdo@xxxxxxxxxxx No Soliciting!Emacspeak List Archive | 2010 | 2009 | 2008 | 2007 | 2006 | 2005 | 2004 | 2003 | 2002 | 2001 | 2000 | 1999 | 1998 | Pre 1998