Re: [CEDET-devel] mode variables & override functions
Brought to you by:
zappo
From: David P. <da...@dp...> - 2002-08-13 17:17:28
|
Hi Eric, [...] > I do recommend checking these in. Don't bother waiting for a > response from me on a patch though. I won't have time to do a > reasonable review for a day or two anyway. That's fine with me ;-) I committed changes in semantic.el, semantic-fw.el and semantic-el.el to enable the new API! It remains to include the edebug stuff you suggested. I also committed small fixes in semantic-java.el and wisent-comp.el. In the former I commented out the code that installed function overrides and `java-hook' to eliminate conflicts with the install code in wisent-java-tags.el. I got strange errors in semantic which tried to use the LALR table with the LL parser! This happened because some Elisp files in the JDEE do (require 'semantic-java) :-( Probably the current organization of Java related files need to be changed. For compatibility reason, semantic-java.el would become the main library, containing all the common and setup code. The code specific to the LL parser would be in, for example, semantic-java-bovine.el, and the code specific to the LALR parser would be left in wisent-java-tags.el or wisent-java.el. semantic-java.el would be responsible to load the right one. Thoughts? In wisent-comp.el I fixed a compatibility problem with XEmacs which don't provide the function `char-valid-p'. I appended the change log. Semantic 2.0 seems to work well now. It successfully passed my basic tests in Emacs 21.4 (CVS), 20.7 and XEmacs 21.4.8 :-) Thanks for your help! David ----- Change Log: * semantic-el.el: (setq-major-mode): Replaced by `defvar-mode-local'. * semantic-java.el: (semantic-default-java-setup) (add-hook 'java-mode-hook): Commented out. * semantic-fw.el: (semantic-override-table, semantic-current-overrides) (semantic-new-overrides, semantic-symbol-value-for-mode) (semantic-symbol-value-mode-assign, semantic-setq-major-mode) (setq-major-mode): Removed. Replaced by the following new API... (semantic-symbol-table, semantic-current-bindings) (semantic-new-bindings, semantic-bind) (semantic-symbol, semantic-symbol-value) (semantic-set-local-variable, semantic-activate-mode-bindings) (mode-local-value, setq-mode-local, defvar-mode-local) (defconst-mode-local): New. (semantic-fetch-overload) (semantic-install-function-overrides): Use new API. (semantic-fw-font-lock-keywords): New constant. Font lock keywords to highlight Semantic forms. Installed with `font-lock-add-keywords' if possible. * semantic.el: (semantic-new-buffer-fcn): Use `semantic-activate-mode-bindings'. * wisent-comp.el: (wisent-char-p): New compatibility function. (wisent-tag, wisent-ISVALID-TOKEN) (wisent-parse-nonterminals): Use it. |