[Homeros] Emacspeak glitches
Michael Pozhidaev
msp на altlinux.ru
Вт Май 17 06:49:19 UTC 2011
Дима, работает!!! Упакечиваем и будем тестировать. От стандартного
поведения слегка отличается тем, что читает вывод даже если он отображается в
буфере "Shell command output". Твой e-mail пироги и блины принимает? На
текущий момент это снимает проблему. :))
> Я писал:
>
> ДП> Проще сделать озвучивание для dired-do-shell-command, чем погружаться в
> ДП> dired-aux.el.
>
> На пробу:
>
> (defun emacspeak-speak-shell-command-output (&optional output)
> (emacspeak-auditory-icon 'task-done)
> (cond
> ((or (stringp output) (bufferp output)) nil)
> ((not output)
> (let ((buffer (get-buffer "*Shell Command Output*")))
> (when buffer
> (with-current-buffer buffer
> (if (= (point-min) (point-max))
> (dtk-speak emacspeak-last-message)
> (emacspeak-speak-region (point-min) (min (point-max) 8192))
> (when (> (point-max) 8192)
> (emacspeak-queue-auditory-icon 'ellipses)))))))
> (:else
> (if (= (point) (mark 'force))
> (dtk-speak "Empty output")
> (emacspeak-speak-region (point) (min (mark 'force) (+ (point) 8192)))
> (when (> (mark 'force) (+ (point) 8192))
> (emacspeak-queue-auditory-icon 'ellipses))))))
>
> (defadvice shell-command (around emacspeak activate)
> (let ((emacspeak-speak-messages nil))
> ad-do-it)
> (when (called-interactively-p 'interactive)
> (emacspeak-speak-shell-command-output (ad-get-arg 1))))
>
> (defadvice dired-do-shell-command (around emacspeak activate)
> (let ((emacspeak-speak-messages nil))
> ad-do-it)
> (when (called-interactively-p 'interactive)
> (emacspeak-speak-shell-command-output)))
--
Michael Pozhidaev. Tomsk, Russia.
Russian info page: http://www.marigostra.ru/
Подробная информация о списке рассылки Homeros