Hopefully I'll end up with better luck than the last guy who asked this.
I'm willing to help out a good deal with debugging as well.

Basically, Java files load just as well as they did before I installed
JDE, but I can't see the JDE menu. However, several dozen JDE functions are
exported (at least I counted around that many by M-x jde-<tab>), and there
is a "JDE New" menu under the Files menu, so it looks like the Lisp is
being loaded more-or-less properly.

My setup is JDE 2.1.5 on Emacs 20.4 on red hat 6.1. JDE was installed by
extracting jde-latest.tar.gz into /usr/share/emacs/site-lisp/, as root.
BTW, I tried the latest JDE beta too - same problem.

My messages buffer is probably the most telling. Every java file I open, I
get an error like this:

---------------------------

Fontifying TestServerUpdateTransmitter.java... (regexps.............)
File mode specification error: (void-variable *) [2 times]

---------------------------

Unfortunately I lack the emacs skill necessary to track this error[s]
down the stack, beyond the obvious stuff about normal-mode calls that I
looked up online. From my limited comprehension of the Emacs major mode
system, it looks like JDE borks when it tries to assert its modeship over
the file. Some help would be gladly appreciated here :)

My .emacs file: (tell me if this is longer than should be posted)

----------------------------------------------------------------

;; -*- lisp -*-
;;
;; .emacs config file. Rich Tollerton <[EMAIL PROTECTED]>
;; currently this is emacs-20 only.

;;;;
;;;; Programming language configs
;;;;

;; set up JDE
(setq load-path
    (nconc '("/usr/share/emacs/site-lisp/jde-2.1.5/") load-path))

(require 'jde)

;; my mode hook for all C-likes
(defun tollerton-mode-hook ()
    (c-set-style "k&r")                 ; use K&R indenting style
    (c-toggle-auto-hungry-state 1)      ; delete all whitespace after
                                        ; cursor
    (c-toggle-auto-state 0)               ; no autonewlines
    (define-key c-mode-map "\C-m" 'newline-and-indent)
    (c-set-offset 'arglist-cont-nonempty *))  

(add-hook 'c-mode-hook    'tollerton-mode-hook)
(add-hook 'c++-mode-hook  'tollerton-mode-hook)
(add-hook 'java-mode-hook 'tollerton-mode-hook)
(add-hook 'jde-mode-hook  'tollerton-mode-hook)

;;;;
;;;; Syntax highlighting (font lock)
;;;;

;; Turn on font lock mode pretty much everywhere
(global-font-lock-mode t)

;; Set custom faces
(custom-set-faces
 '(default                      ((t (:foreground "white"))))
 '(font-lock-comment-face       ((t (:foreground "lightslateblue"))))
 '(font-lock-string-face        ((t (:foreground "palegreen"))))
 '(font-lock-keyword-face       ((t (:foreground "red"))))
 '(font-lock-preprocessor-face  ((t (:foreground "yellow"))))
 '(font-lock-type-face          ((t (:foreground "greenyellow"))))
 '(font-lock-variable-name-face ((t (:foreground "plum"))))
 '(font-lock-doc-string-face    ((t (:foreground "sky blue"))))
 '(font-lock-function-name-face ((t (:foreground "orange1")))))

;;;;
;;;; Key bindings
;;;;

;; Use something easier than C-x o to switch windows
;; (M-o instead)
(global-set-key "\M-o" 'other-window)

;; some keys and functions to pan the screen around
(setq my-pan-default-length 10)
(setq my-pan-horizontal-length 40)
(setq my-pan-vertical-length my-pan-horizontal-length)

(defun pan-up () (interactive)    (scroll-down  my-pan-vertical-length))
(defun pan-down () (interactive)  (scroll-up    my-pan-vertical-length))
(defun pan-left () (interactive)  (scroll-right my-pan-horizontal-length))
(defun pan-right () (interactive) (scroll-left  my-pan-horizontal-length))
(global-set-key [C-M-up]    'pan-up)
(global-set-key [C-M-down]  'pan-down)
(global-set-key [C-M-left]  'pan-left)
(global-set-key [C-M-right] 'pan-right)

;;;;
;;;; Miscellaneous
;;;;

;; Set foreground/background
(setq default-frame-alist
      (append default-frame-alist
              '((foreground-color . "white")
                (background-color . "black")
                (cursor-color . "violet"))))

;; Set up mouse wheel support
(autoload 'mwheel-install "mwheel" "Enable mouse wheel support.")
(mwheel-install)

(setq next-line-add-newlines nil)               ; don't add lines @ endscroll
(setq-default auto-fill-hook
              'do-auto-fill)                            ; wrap lines automatically
(transient-mark-mode t)                                 ; Display selected text
(line-number-mode t)                                    ; Show line numbers..
(column-number-mode t)                                  ; and column numbers
(show-paren-mode 1)                                             ; highlight matching 
parens
(setq default-tab-width 4)                              ; tab width constant across 
all modes
(setq scroll-step 1)                                    ; scroll a few lines at a time

;; now there are few ways to split up a really large window.
;; one way I've tried is to split a ~170x80 window in half horizontally:
;(split-window-horizontally)                            ; split my big window
;; but now I'm considering doing it thrice on a ~240x90 window:
(split-window-horizontally -78)                 ; create three horizontal panes
(split-window-horizontally -78)
                                                                     
--------------------------------------------------------------------------

-- 
Richard  D. Tollerton II
[EMAIL PROTECTED]

PGP signature

Reply via email to