Mercurial > emacs
changeset 104506:801834237f9c
* menu-bar.el: Remove ediff-misc from Tools menu.
* cedet/semantic.el (semantic-init-hook)
(semantic-init-mode-hook, semantic-init-db-hook): Rename
from *-hooks, to follow hook naming conventions.
(semantic-submode-list, semantic-default-submodes): New vars.
(semantic-mode): New mode.
(semantic-parser-working-message): Add ellipses to parse message.
* cedet/semantic/bovine/c.el:
* cedet/semantic/bovine/make.el:
* cedet/semantic/bovine/scm.el:
* cedet/semantic/wisent/java-tags.el:
* cedet/semantic/wisent/javascript.el: Don't set hooks directly.
This is now done in semantic-mode.
* cedet/semantic/decorate/mode.el (global-semantic-decoration-mode):
Autoload.
* cedet/srecode/compile.el:
* cedet/srecode/insert.el:
* cedet/srecode/mode.el: Fix require statements.
author | Chong Yidong <cyd@stupidchicken.com> |
---|---|
date | Mon, 21 Sep 2009 02:14:58 +0000 |
parents | 5dcce8f7fa66 |
children | 51e316109fba |
files | lisp/ChangeLog lisp/cedet/ede/cpp-root.el lisp/cedet/ede/pmake.el lisp/cedet/semantic.el lisp/cedet/semantic/bovine/c.el lisp/cedet/semantic/bovine/make.el lisp/cedet/semantic/bovine/scm.el lisp/cedet/semantic/decorate/mode.el lisp/cedet/semantic/html.el lisp/cedet/semantic/wisent/java-tags.el lisp/cedet/semantic/wisent/javascript.el lisp/cedet/srecode/compile.el lisp/cedet/srecode/insert.el lisp/cedet/srecode/mode.el lisp/ediff-hook.el lisp/menu-bar.el |
diffstat | 16 files changed, 166 insertions(+), 52 deletions(-) [+] |
line wrap: on
line diff
--- a/lisp/ChangeLog Sun Sep 20 22:18:36 2009 +0000 +++ b/lisp/ChangeLog Mon Sep 21 02:14:58 2009 +0000 @@ -1,5 +1,40 @@ +2009-09-21 Chong Yidong <cyd@stupidchicken.com> + + * menu-bar.el: Remove ediff-misc from Tools menu. + + * cedet/semantic.el (semantic-init-hook) + (semantic-init-mode-hook, semantic-init-db-hook): Rename + from *-hooks, to follow hook naming conventions. + (semantic-submode-list, semantic-default-submodes): New vars. + (semantic-mode): New mode. + (semantic-parser-working-message): Add ellipses to parse message. + + * cedet/semantic/bovine/c.el: + * cedet/semantic/bovine/make.el: + * cedet/semantic/bovine/scm.el: + * cedet/semantic/wisent/java-tags.el: + * cedet/semantic/wisent/javascript.el: Don't set hooks directly. + This is now done in semantic-mode. + + * cedet/semantic/decorate/mode.el (global-semantic-decoration-mode): + Autoload. + + * cedet/srecode/compile.el: + * cedet/srecode/insert.el: + * cedet/srecode/mode.el: Fix require statements. + 2009-09-20 Chong Yidong <cyd@stupidchicken.com> + * cedet/semantic/decorate/mode.el (global-semantic-decoration-mode): + Autoload. + + * cedet/ede/cpp-root.el (ede-set-project-variables): Fix featurep. + + * cedet/srecode/mode.el (global-srecode-minor-mode): Fix require. + + * cedet/srecode/insert.el (srecode--insert-into-buffer): Fix + require. + * cedet/cedet.el: Require srecode. * cedet/ede/system.el: Add local vars for autoloading. @@ -7,9 +42,11 @@ * cedet/ede/pmake.el (ede-proj-makefile-create): Require ede/srecode. + (ede-proj-makefile-create): Fix require. * cedet/srecode/compile.el (srecode-compile-split-code) (srecode-compile-parse-inserter): Fix compiler warning. + (srecode-compile-templates): Fix require. 2009-09-20 Chong Yidong <cyd@stupidchicken.com>
--- a/lisp/cedet/ede/cpp-root.el Sun Sep 20 22:18:36 2009 +0000 +++ b/lisp/cedet/ede/cpp-root.el Mon Sep 21 02:14:58 2009 +0000 @@ -467,7 +467,7 @@ "Set variables local to PROJECT in BUFFER. Also set up the lexical preprocessor map." (call-next-method) - (when (and (featurep 'semantic-c) (featurep 'semantic-lex-spp)) + (when (and (featurep 'semantic/c) (featurep 'semantic/lex-spp)) (setq semantic-lex-spp-project-macro-symbol-obarray (semantic-lex-make-spp-table (oref project spp-table))) ))
--- a/lisp/cedet/ede/pmake.el Sun Sep 20 22:18:36 2009 +0000 +++ b/lisp/cedet/ede/pmake.el Mon Sep 21 02:14:58 2009 +0000 @@ -204,7 +204,7 @@ ((eq (oref this makefile-type) 'Makefile.in) (error "Makefile.in is not supported")) ((eq (oref this makefile-type) 'Makefile.am) - (require 'ede-pconf) + (require 'ede/pconf) ;; Distribution variables (let ((targ (if isdist (oref this targets) mt))) (ede-compiler-begin-unique
--- a/lisp/cedet/semantic.el Sun Sep 20 22:18:36 2009 +0000 +++ b/lisp/cedet/semantic.el Mon Sep 21 02:14:58 2009 +0000 @@ -255,19 +255,26 @@ :group 'semantic :type 'hook) -(defvar semantic-init-hooks nil - "*Hooks run when a buffer is initialized with a parsing table.") +(defvar semantic-init-hook nil + "Hook run when a buffer is initialized with a parsing table.") -(defvar semantic-init-mode-hooks nil - "*Hooks run when a buffer of a particular mode is initialized.") -(make-variable-buffer-local 'semantic-init-mode-hooks) +(defvar semantic-init-mode-hook nil + "Hook run when a buffer of a particular mode is initialized.") +(make-variable-buffer-local 'semantic-init-mode-hook) -(defvar semantic-init-db-hooks nil - "Hooks run when a buffer is initialized with a parsing table for DBs. +(defvar semantic-init-db-hook nil + "Hook run when a buffer is initialized with a parsing table for DBs. This hook is for database functions which intend to swap in a tag table. This guarantees that the DB will go before other modes that require a parse of the buffer.") +(define-obsolete-variable-alias 'semantic-init-hooks + 'semantic-init-hook "23.2") +(define-obsolete-variable-alias 'semantic-init-mode-hooks + 'semantic-init-mode-hook "23.2") +(define-obsolete-variable-alias 'semantic-init-db-hooks + 'semantic-init-db-hook "23.2") + (defvar semantic-new-buffer-fcn-was-run nil "Non nil after `semantic-new-buffer-fcn' has been executed.") (make-variable-buffer-local 'semantic-new-buffer-fcn-was-run) @@ -306,17 +313,11 @@ ;; Force this buffer to have its cache refreshed. (semantic-clear-toplevel-cache) ;; Call DB hooks before regular init hooks - (run-hooks 'semantic-init-db-hooks) + (run-hooks 'semantic-init-db-hook) ;; Set up semantic modes - (run-hooks 'semantic-init-hooks) + (run-hooks 'semantic-init-hook) ;; Set up major-mode specific semantic modes - (run-hooks 'semantic-init-mode-hooks) - )) - -(add-hook 'mode-local-init-hook 'semantic-new-buffer-fcn) - -;; Test the above hook. -;;(add-hook 'semantic-init-hooks (lambda () (message "init for semantic"))) + (run-hooks 'semantic-init-mode-hook))) (defun semantic-fetch-tags-fast () "For use in a hook. When only a partial reparse is needed, reparse." @@ -325,9 +326,6 @@ (semantic-fetch-tags)) (error nil)) semantic--buffer-cache) - -(if (boundp 'eval-defun-hooks) - (add-hook 'eval-defun-hooks 'semantic-fetch-tags-fast)) ;;; Parsing Commands ;; @@ -528,7 +526,7 @@ If optional argument ARG is non-nil it is appended to the message string." (if semantic-parser-name - (format "%s/%s" semantic-parser-name (or arg "")) + (format "%s/%s..." semantic-parser-name (or arg "")) (format "%s" (or arg "")))) ;;; Application Parser Entry Points @@ -817,10 +815,104 @@ (make-obsolete 'semantic-bovinate-from-nonterminal-full 'semantic-parse-region) +;;; User interface + +;; The `semantic-mode' command, in conjuction with the +;; `semantic-default-submodes' variable, are used to collectively +;; toggle Semantic's various auxilliary minor modes. + +(defvar semantic-load-system-cache-loaded nil + "Non nil when the Semantic system caches have been loaded. +Prevent this load system from loading files in twice.") + +(defconst semantic-submode-list + '(global-semantic-highlight-func-mode + global-semantic-decoration-mode + global-semantic-stickyfunc-mode + global-semantic-idle-completions-mode + global-semantic-idle-scheduler-mode + global-semanticdb-minor-mode + global-semantic-idle-summary-mode + global-semantic-mru-bookmark-mode) + "List of auxilliary minor modes in the Semantic package.") + +;;;###autoload +(defcustom semantic-default-submodes + '(global-semantic-idle-scheduler-mode global-semanticdb-minor-mode) + "List of auxilliary Semantic minor modes enabled by `semantic-mode'. +The possible elements of this list include the following: + + `semantic-highlight-func-mode' - Highlight the current tag. + `semantic-decoration-mode' - Decorate tags based on various attributes. + `semantic-stickyfunc-mode' - Track current function in the header-line. + `semantic-idle-completions-mode' - Provide smart symbol completion + automatically when idle. + `semantic-idle-scheduler-mode' - Keep a buffer's parse tree up to date. + `semanticdb-minor-mode' - Store tags when a buffer is not in memory. + `semantic-idle-summary-mode' - Show a summary for the code at point. + `semantic-mru-bookmark-mode' - Provide `switch-to-buffer'-like + keybinding for tag names." + :group 'semantic + :type `(set ,@(mapcar (lambda (c) (list 'const c)) + semantic-submode-list))) + +;;;###autoload +(define-minor-mode semantic-mode + "Toggle Semantic mode. +With ARG, turn Semantic mode on if ARG is positive, off otherwise. + +In Semantic mode, Emacs parses the buffers you visit for their +semantic content. This information is used by a variety of +auxilliary minor modes, listed in `semantic-default-submodes'; +all the minor modes in this list are also enabled when you enable +Semantic mode." + :group 'semantic + (if semantic-mode + ;; Turn on Semantic mode + (progn + (dolist (mode semantic-submode-list) + (if (memq mode semantic-default-submodes) + (funcall mode 1))) + (unless semantic-load-system-cache-loaded + (setq semantic-load-system-cache-loaded t) + (when (and (boundp 'semanticdb-default-system-save-directory) + (stringp semanticdb-default-system-save-directory) + (file-exists-p semanticdb-default-system-save-directory)) + (semanticdb-load-ebrowse-caches))) + (add-hook 'mode-local-init-hook 'semantic-new-buffer-fcn) + ;; Add mode-local hooks + (add-hook 'javascript-mode-hook 'wisent-javascript-setup-parser) + (add-hook 'ecmascript-mode-hook 'wisent-javascript-setup-parser) + (add-hook 'java-mode-hook 'wisent-java-default-setup) + (add-hook 'scheme-mode-hook 'semantic-default-scheme-setup) + (add-hook 'makefile-mode-hook 'semantic-default-make-setup) + (add-hook 'c-mode-hook 'semantic-default-c-setup) + (add-hook 'c++-mode-hook 'semantic-default-c-setup) + (add-hook 'html-mode-hook 'semantic-default-html-setup)) + ;; Disable all Semantic features. + (remove-hook 'mode-local-init-hook 'semantic-new-buffer-fcn) + (remove-hook 'javascript-mode-hook 'wisent-javascript-setup-parser) + (remove-hook 'ecmascript-mode-hook 'wisent-javascript-setup-parser) + (remove-hook 'java-mode-hook 'wisent-java-default-setup) + (remove-hook 'scheme-mode-hook 'semantic-default-scheme-setup) + (remove-hook 'makefile-mode-hook 'semantic-default-make-setup) + (remove-hook 'c-mode-hook 'semantic-default-c-setup) + (remove-hook 'c++-mode-hook 'semantic-default-c-setup) + (remove-hook 'html-mode-hook 'semantic-default-html-setup) + + ;; FIXME: handle semanticdb-load-ebrowse-caches + + (dolist (mode semantic-submode-list) + (if (and (boundp mode) (eval mode)) + (funcall mode -1))))) + + (provide 'semantic) ;; Semantic-util is a part of the semantic API. Include it last ;; because it depends on semantic. (require 'semantic/util) +;; (require 'semantic/load) + ;;; semantic.el ends here
--- a/lisp/cedet/semantic/bovine/c.el Sun Sep 20 22:18:36 2009 +0000 +++ b/lisp/cedet/semantic/bovine/c.el Mon Sep 21 02:14:58 2009 +0000 @@ -1629,11 +1629,6 @@ (semantic-c-reset-preprocessor-symbol-map) ) -;;;###autoload -(add-hook 'c-mode-hook 'semantic-default-c-setup) -;;;###autoload -(add-hook 'c++-mode-hook 'semantic-default-c-setup) - ;;; SETUP QUERY ;; (defun semantic-c-describe-environment ()
--- a/lisp/cedet/semantic/bovine/make.el Sun Sep 20 22:18:36 2009 +0000 +++ b/lisp/cedet/semantic/bovine/make.el Mon Sep 21 02:14:58 2009 +0000 @@ -230,9 +230,6 @@ (setq semantic-lex-analyzer #'semantic-make-lexer) ) -;;;###autoload -(add-hook 'makefile-mode-hook 'semantic-default-make-setup) - (provide 'semantic/bovine/make) ;; Local variables:
--- a/lisp/cedet/semantic/bovine/scm.el Sun Sep 20 22:18:36 2009 +0000 +++ b/lisp/cedet/semantic/bovine/scm.el Mon Sep 21 02:14:58 2009 +0000 @@ -110,9 +110,6 @@ (setq semantic-lex-analyzer #'semantic-scheme-lexer) ) -;;;###autoload -(add-hook 'scheme-mode-hook 'semantic-default-scheme-setup) - (provide 'semantic/bovine/scm) ;; Local variables:
--- a/lisp/cedet/semantic/decorate/mode.el Sun Sep 20 22:18:36 2009 +0000 +++ b/lisp/cedet/semantic/decorate/mode.el Mon Sep 21 02:14:58 2009 +0000 @@ -234,6 +234,7 @@ :set (lambda (sym val) (global-semantic-decoration-mode (if val 1 -1)))) +;;;###autoload (defun global-semantic-decoration-mode (&optional arg) "Toggle global use of option `semantic-decoration-mode'. Decoration mode turns on all active decorations as specified @@ -558,5 +559,10 @@ (provide 'semantic/decorate/mode) +;; Local variables: +;; generated-autoload-file: "../loaddefs.el" +;; generated-autoload-feature: semantic/loaddefs +;; generated-autoload-load-name: "semantic/decorate/mode" +;; End: + ;;; semantic/decorate/mode.el ends here -
--- a/lisp/cedet/semantic/html.el Sun Sep 20 22:18:36 2009 +0000 +++ b/lisp/cedet/semantic/html.el Mon Sep 21 02:14:58 2009 +0000 @@ -254,9 +254,6 @@ t) ) -;;;###autoload -(add-hook 'html-mode-hook 'semantic-default-html-setup) - (define-child-mode html-helper-mode html-mode "`html-helper-mode' needs the same semantic support as `html-mode'.")
--- a/lisp/cedet/semantic/wisent/java-tags.el Sun Sep 20 22:18:36 2009 +0000 +++ b/lisp/cedet/semantic/wisent/java-tags.el Mon Sep 21 02:14:58 2009 +0000 @@ -111,9 +111,6 @@ ;; Setup javadoc stuff (semantic-java-doc-setup)) -;;;###autoload -(add-hook 'java-mode-hook 'wisent-java-default-setup) - (provide 'semantic/wisent/java-tags) ;; Local variables:
--- a/lisp/cedet/semantic/wisent/javascript.el Sun Sep 20 22:18:36 2009 +0000 +++ b/lisp/cedet/semantic/wisent/javascript.el Mon Sep 21 02:14:58 2009 +0000 @@ -92,11 +92,6 @@ semantic-command-separation-character ";" )) -;;;###autoload -(add-hook 'javascript-mode-hook 'wisent-javascript-setup-parser) -;;;###autoload -(add-hook 'ecmascript-mode-hook 'wisent-javascript-setup-parser) - (provide 'semantic/wisent/javascript-jv) ;; Local variables:
--- a/lisp/cedet/srecode/compile.el Sun Sep 20 22:18:36 2009 +0000 +++ b/lisp/cedet/srecode/compile.el Mon Sep 21 02:14:58 2009 +0000 @@ -197,7 +197,7 @@ (defun srecode-compile-templates () "Compile a semantic recode template file into a mode-local variable." (interactive) - (require 'srecode-insert) + (require 'srecode/insert) (message "Compiling template %s..." (file-name-nondirectory (buffer-file-name))) (let ((tags (semantic-fetch-tags))
--- a/lisp/cedet/srecode/insert.el Sun Sep 20 22:18:36 2009 +0000 +++ b/lisp/cedet/srecode/insert.el Mon Sep 21 02:14:58 2009 +0000 @@ -159,7 +159,7 @@ ;; while the field insert tool is loaded via autoloads during ;; the insert. (when (eq srecode-insert-ask-variable-method 'field) - (require 'srecode-fields)) + (require 'srecode/fields)) (let ((srecode-field-archive nil) ; Prevent field leaks during insert (start (point)) ; Beginning of the region.
--- a/lisp/cedet/srecode/mode.el Sun Sep 20 22:18:36 2009 +0000 +++ b/lisp/cedet/srecode/mode.el Mon Sep 21 02:14:58 2009 +0000 @@ -42,7 +42,7 @@ "Non-nil in buffers with Semantic Recoder macro keybindings." :group 'srecode :type 'boolean - :require 'srecode-mode + :require 'srecode/mode :initialize 'custom-initialize-default :set (lambda (sym val) (global-srecode-minor-mode (if val 1 -1))))
--- a/lisp/ediff-hook.el Sun Sep 20 22:18:36 2009 +0000 +++ b/lisp/ediff-hook.el Mon Sep 21 02:14:58 2009 +0000 @@ -123,7 +123,7 @@ :style toggle :selected (if (featurep 'ediff-tbar) (ediff-use-toolbar-p))])) - + ;; put these menus before Object-Oriented-Browser in Tools menu (if (and (featurep 'menubar) (not (featurep 'infodock)) (not (featurep 'ediff-hook))) @@ -141,8 +141,11 @@ (symbol-value 'menu-bar-ediff-merge-menu)) (defvar menu-bar-ediff-menu (make-sparse-keymap "Compare")) (fset 'menu-bar-ediff-menu (symbol-value 'menu-bar-ediff-menu)) - + ;; define ediff compare menu + (define-key menu-bar-ediff-menu [ediff-misc] + (list 'menu-item "Ediff Miscellanea" menu-bar-ediff-misc-menu)) + (define-key menu-bar-ediff-menu [separator-ediff-misc] '("--")) (define-key menu-bar-ediff-menu [window] '(menu-item "This Window and Next Window" compare-windows :help "Compare the current window and the next window"))
--- a/lisp/menu-bar.el Sun Sep 20 22:18:36 2009 +0000 +++ b/lisp/menu-bar.el Mon Sep 21 02:14:58 2009 +0000 @@ -1312,8 +1312,6 @@ (define-key menu-bar-tools-menu [separator-compare] '("--")) -(define-key menu-bar-tools-menu [ediff-misc] - '(menu-item "Ediff Miscellanea" menu-bar-ediff-misc-menu)) (define-key menu-bar-tools-menu [epatch] '(menu-item "Apply Patch" menu-bar-epatch-menu)) (define-key menu-bar-tools-menu [ediff-merge]