;;; Project : esdfm ;;; Version : 1.95-beta-rc01 ;;; File : esdfm-client.el ;;; Author : P.L. Nageoire ;;; Date : Thu Jun 16 12:48:04 2005 ;;; Licence : GPL ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; (eval-when-compile (require 'cl)) (declaim (optimize (safety 0) (speed 3))) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;; Most of the required methods are already implemented in the ;;; speechd module. So we simply first require this module. (setq load-path (cons "/usr/share/emacs/site-lisp/emacspeak/lisp" (cons "/usr/share/emacs/site-lisp/speechd" load-path))) (load-library "speechd-speak") (speechd-speak) (setq speechd-speak-read-command-keys nil) (speechd-set-rate 100 t) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; (require 'custom) (defgroup esdfm nil "Group customizing esdfm." :prefix "esdfm-") (defcustom esdfm-with-emacspeak nil "Set to ``t'' if you want to use emacspeak. This feature is a work in progress and you can only use certain emacspeak modules for the moment." :type 'boolean :group 'esdfm) (if esdfm-with-emacspeak (require 'esdfm-emacspeak)) (defun esdfm-hexa-code () (interactive) (message "%x" (char-after))) (defun esdfm-speak-column () (interactive) (message "Point at %d" (current-column))) (defun esdfm-indent () (interactive) (beginning-of-line) (lisp-indent-line) (message "point at %d" (current-column))) (define-key speechd-speak-info-map "x" 'esdfm-hexa-code) (define-key speechd-speak-mode-map "\C-s" 'speechd-speak) (define-key speechd-speak-mode-map "\C-l" 'what-line) (define-key speechd-speak-mode-map "\C-f" 'esdfm-indent) (define-key speechd-speak-mode-map "=" 'esdfm-speak-column)