Very glad to hear you found a solution. Do you have time to move your hook code to the source? If so, I can merge that in so that others don't have to add hooks as well.
Thanks Jason. On May 6, 2011, at 8:57 PM, <[email protected]> <[email protected] > wrote: > Actually, after continuing to futz with this stuff, I seem to have > figured > out a solution to the problem. I was a little suspicious of how the > jde-mode init method sets up the font-lock-defaults variable _after_ > the > java-mode has fully initialized. Indeed, I added a simple hook to > java-mode > to set the font-lock-defaults in that mode before jde-mode > initializes, and > that seems to consistently initialize my font-lock-keywords > correctly. This > is the code I added to my startup files: > > (add-hook 'java-mode-hook > '(lambda () > (set (make-local-variable 'font-lock-defaults) > jde-java-font-lock-defaults))) > > > -----Original Message----- > From: Paul Landes [mailto:[email protected]] > Sent: Wednesday, May 04, 2011 10:55 PM > To: [email protected][email protected] > Cc: 'Jason McBrayer'; [email protected] > Subject: Re: [jdee-users] erratic font-lock behavior (emacs 23) > > What are the values of font-lock-keywords before and after the buffer > fortification error? > > Anything interesting in *Messages*? > > > On May 3, 2011, at 10:31 PM, <[email protected]> > <[email protected] > wrote: > >> There is no exception. This is my original email: >> >> Hey, >> Just wondering if anyone else has experienced erratic font-lock >> behavior. >> When I run jdee in emacs 23 (and the trunk of jde), the font-lock- >> keywords >> seems to bounce back and forth between 2 different sets of values. >> When I >> first open up a java file, I'll get a certain font-lock behavior. >> If I >> refresh the buffer, often times (not always), I'll get different >> font-lock behavior. When I dump the value of the font-lock-keywords, >> I actually see 2 >> different values between the first buffer load and the refresh. >> After the >> first refresh, the font locking seems to settle down, but not always >> to the "correct" values. I don't know if this has something to do >> with my own setup or what, so I was wondering if anyone else saw >> similar behavior. To me, the effects are most noticeable in the >> import statements, as the package names are fontified in >> font-lock-constant face sometimes (incorrect), and >> jde-java-font-lock-package face other times (the "correct" face). >> Thanks, >> -james >> >> -----Original Message----- >> From: Paul Landes [mailto:[email protected]] >> Sent: Tuesday, May 03, 2011 10:46 PM >> To: [email protected][email protected] >> Cc: 'Jason McBrayer'; [email protected] >> Subject: Re: [jdee-users] erratic font-lock behavior (emacs 23) >> >> Sorry, I for some reason don't have the original and am extrapolating >> on what you wrote. >> >> Eval this: >> >> (setq stack-trace-on-signal t >> stack-trace-on-error t) >> >> and make the exception happen again. You should get a stack trace. >> >> Here's my font-lock-keywords (take it if it is helpful): >> >> (t >> (("[ ]\\([+-][^ \n]+\\)" 1 font-lock-comment-face) >> ("^[^ \n]+:.*" . font-lock-string-face) >> ("^\\[[1-9][0-9]*\\]" . font-lock-string-face)) >> ("[ ]\\([+-][^ \n]+\\)" >> (1 font-lock-comment-face)) >> ("^[^ \n]+:.*" >> (0 font-lock-string-face)) >> ("^\\[[1-9][0-9]*\\]" >> (0 font-lock-string-face))) >> >> >> >> On May 3, 2011, at 9:09 PM, <[email protected]> >> <[email protected] > wrote: >> >>> Maybe I'm not making myself clear. The problem isn't that my faces >>> have the wrong color, the problem is that the wrong faces are >>> applied >>> (due, presumably, to the different values of font-lock-keywords). >>> your configuration below is just face configuration, so I'm not sure >>> how that will help anything. What kind of stack trace are you >>> looking for? >>> You want >>> me to send the 2 different values of font-lock-keywords? >>> >>> -----Original Message----- >>> From: Paul Landes [mailto:[email protected]] >>> Sent: Tuesday, May 03, 2011 8:30 PM >>> To: [email protected][email protected] >>> Cc: 'Jason McBrayer'; [email protected] >>> Subject: Re: [jdee-users] erratic font-lock behavior (emacs 23) >>> >>> I've looked around and don't see anything. You're the first to >>> report this problem. >>> >>> Here's what I have in my custom elisp file. Try it and maybe it >>> will >>> fix something. Otherwise, I don't really have much to go on. Maybe >>> you could forward a full stack trace. >>> >>> '(compilation-mode-hook (quote (turn-on-font-lock))) >>> '(global-font-lock-mode t nil (font-lock)) '(font-lock-builtin-face >>> ((((class color) (background light)) (:foreground "dark violet")))) >>> '(font-lock-comment-face ((t (:foreground "#b00000")))) >>> '(font-lock-constant-face ((((class color) (background light)) >>> (:foreground "CadetBlue")))) '(font-lock-doc-face ((t (:foreground >>> "steel blue")))) '(font-lock-function-name-face ((t (:foreground >>> "blue3")))) '(font-lock-keyword-face ((t (:foreground >>> "DarkOrange4")))) '(font-lock-string-face ((t (:foreground "forest >>> green")))) '(font-lock-type-face ((t (:foreground "#ca3278")))) >>> '(font-lock-variable-name-face ((t (:foreground "darkcyan")))) >>> '(font-lock-warning-face ((t (:foreground "red" :weight bold)))) >>> '(jde-java-font-lock-bold-face ((t (:foreground "#666666" :weight >>> bold)))) >>> '(jde-java-font-lock-code-face ((t (:foreground "#993300")))) >>> '(jde-java-font-lock-javadoc-face ((t (:foreground "#a00020")))) >>> '(jde-java-font-lock-modifier-face ((((class color) (background >>> light)) (:foreground "#0033FF")))) >>> '(jde-java-font-lock-package-face ((((class color) (background >>> light)) (:foreground "#6600CC")))) >>> '(jde-java-font-lock-private-face ((((class color) (background >>> light)) (:foreground "forest green")))) >>> '(jde-java-font-lock-protected-face ((((class color) (background >>> light)) (:foreground "purple")))) >>> '(jde-java-font-lock-public-face ((((class color) (background >>> light)) (:foreground "red")))) >>> >>> >>> On May 1, 2011, at 10:04 PM, <[email protected]> >>> <[email protected] > wrote: >>> >>>> I haven't noticed the problem in any other modes, although I'm not >>>> opening many large files these days which aren't java files. When >>>> I've been testing this behavior, I've observed it both with the >>>> beanshell running and not running. >>>> >>>> -----Original Message----- >>>> From: Paul Landes [mailto:[email protected]] >>>> Sent: Saturday, April 30, 2011 3:33 PM >>>> To: [email protected][email protected] >>>> Cc: 'Jason McBrayer'; [email protected] >>>> Subject: Re: [jdee-users] erratic font-lock behavior (emacs 23) >>>> >>>> Does this happen in other modes? It sounds like an issue more >>>> related to font-lock. >>>> >>>> Do you have beanshell running while this is happening? If so, kill >>>> the *JDEE bsh* buffer. >>>> >>>> >>>> On Apr 27, 2011, at 10:48 AM, <[email protected]> >>>> <[email protected] >>>>> wrote: >>>> >>>>> A little more futzing led me to another interesting observation: >>>>> it >>>>> seems to be related to file size. A quick test on a few different >>>>> files only showed the coloring issues on files over ~700 lines. >>>>> Testing with a big file and a small file, it seems that the >>>>> _initial value for font-lock-keywords depends on the file size_! >>>>> When I load a small file, the font-lock-keywords variable get >>>>> init-ed to one value (let's call that value "A") in that buffer >>>>> and >>>>> the coloring is correct. No amount of reverting of the buffer >>>>> changes the coloring or the value. But, when I open a large file, >>>>> the initial coloring is wrong, and the value of font-lock-keywords >>>>> is _different_ (let's call that value "B"). when I revert the >>>>> large file, then the coloring is correct, and the >>>>> font-lock-keywords is now set to "A" >>>>> (and the coloring seems to stay correct through subsequent buffer >>>>> reverts). >>>>> >>>>> So, anyone have an idea when the font-lock-keywords variable may >>>>> get setup differently (at least initially) depending on buffer >>>>> size? >>>>> >>>>> -----Original Message----- >>>>> From: [email protected] [mailto:[email protected]] On Behalf >>>>> Of Jason McBrayer >>>>> Sent: Wednesday, April 27, 2011 10:07 AM >>>>> To: [email protected] >>>>> Cc: [email protected] >>>>> Subject: Re: [jdee-users] erratic font-lock behavior (emacs 23) >>>>> >>>>> On Tue, Apr 26, 2011 at 11:12 PM, >>>>> <[email protected]> >>>>> wrote: >>>>>> I'm not sure I understand what you are asking. I've customized >>>>>> all my faces. The issue isn't the face color, it's that the >>>>>> wrong >>>>>> faces are >>>>> being >>>>>> applied, seemingly due to the fact that the value of font-lock- >>>>>> keyworks changes over the lifetime of the buffer. >>>>> >>>>> Could it be that you are accidentally sometimes in java-mode, and >>>>> sometimes in jde-mode? Could you C-h m and see which mode is >>>>> active when each set of faces is applied? I've tested and seen >>>>> that >>>>> java- mode and jde-mode do have different sets of faces. >>>>> >>>>> -- >>>>> Jason F. McBrayer >>>>> http://jfm.carcosa.net/ >>>>> >>>>> >>>>> >>>> -------------------------------------------------------------------- >>>> - >>>> - >>>> ------ >>>> -- >>>>> WhatsUp Gold - Download Free Network Management Software The most >>>>> intuitive, comprehensive, and cost-effective network management >>>>> toolset available today. Delivers lowest initial acquisition cost >>>>> and overall TCO of any competing solution. >>>>> http://p.sf.net/sfu/whatsupgold-sd >>>>> _______________________________________________ >>>>> jdee-users mailing list >>>>> [email protected] >>>>> https://lists.sourceforge.net/lists/listinfo/jdee-users >>>> >>>> >>> >>> >> > ------------------------------------------------------------------------------ WhatsUp Gold - Download Free Network Management Software The most intuitive, comprehensive, and cost-effective network management toolset available today. Delivers lowest initial acquisition cost and overall TCO of any competing solution. http://p.sf.net/sfu/whatsupgold-sd _______________________________________________ jdee-users mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/jdee-users
