 \\{ee-mode-map}
 
 {jpw: 10/05}"
-  (kill-all-local-variables)
-  (set-syntax-table ee-mode-syntax-table)
 
   ;; Define indentation function
   (make-local-variable 'indent-line-function)

                parent-statement-posn)
          )
    );; end let
;; TODO:
;; - Make sure that all of the words in ee-mode-blockelement-re do indeed start
;;   a block.
;; - Separate indentation level for the 2 kinds of blocks?
  )



;; 


(defun ee-electric-char (arg)
  "Inserts the character it's bound to.  Then, if this is the first
non-whitespace character on the line, indents the entire line correctly.
{jpw: 10/06}"
  (interactive "p")
  (self-insert-command arg)
  (save-excursion
    (let* ((bolp (progn (beginning-of-line)
                        (point)))
                 (is-lone-char (looking-at "\\s *.\\s *$"))
                 (indentp (progn (back-to-indentation)
                                 (point)))
                 ) ;;end vars
      (if is-lone-char
          (progn (delete-region bolp indentp)
                 (ee-mode-indent-line))
        );; end if
      );; end let
    );; end excursion
  )


(defun ee-electric-bang (arg)
  "Inserts the \"!\" character.  If this is/will be the first
non-whitespace character on the line, indents to the current level first, then
inserts the \"!\".
{jpw: 10/06}"
  (interactive "p")
  (let* ((bolp (progn (beginning-of-line)
                      (point)))
         (empty-line (looking-at "\\s *$"))
         (indentp (progn (back-to-indentation)
                         (point)))
         ) ;;end vars
    (if empty-line
        (progn (delete-region bolp indentp)
               (ee-mode-indent-line))
      );; end if
    (self-insert-command arg)
    );; end let
  )


(defun ee-mode-show-syntactic-analysis ()
  "Display the results of a call to `ee-mode-syntactic-analysis' in the
minibuffer.
