.emacs-my
changeset 626 a759aa107534
parent 625 78017f6d5b43
child 627 a64819b490c3
equal deleted inserted replaced
625:78017f6d5b43 626:a759aa107534
  1230 (message "CEDET, semantic")
  1230 (message "CEDET, semantic")
  1231 
  1231 
  1232 ;; For debug use 'semantic-debug-idle-function' and 'semantic-debug-idle-work-function'.
  1232 ;; For debug use 'semantic-debug-idle-function' and 'semantic-debug-idle-work-function'.
  1233 
  1233 
  1234 (unless (featurep 'cedet)
  1234 (unless (featurep 'cedet)
  1235   ;; (when (or (and (= emacs-major-version 23) (= emacs-minor-version 2)) (>= emacs-minor-version 24))
  1235   (when (or
  1236   ;;   (semantic-mode 1)
  1236          (and (= emacs-major-version 23) (>= emacs-minor-version 2))
  1237   ;;   )
  1237          (>= emacs-minor-version 24)
  1238   )
  1238          )
       
  1239     (semantic-mode 1)
       
  1240     ) )
  1239 
  1241 
  1240 (when (featurep 'cedet)
  1242 (when (featurep 'cedet)
  1241   (unless (equal cedet-version "1.0pre7") ; Come with Emacs 23.2.
  1243   (unless (equal cedet-version "1.0pre7") ; Come with Emacs 23.2.
  1242     ;; (semantic-load-enable-code-helpers)
  1244     ;; (semantic-load-enable-code-helpers)
  1243     ;; (semantic-load-enable-guady-code-helpers)
  1245     ;; (semantic-load-enable-guady-code-helpers)
  1258 
  1260 
  1259   (setq semantic-idle-scheduler-work-idle-time 60)
  1261   (setq semantic-idle-scheduler-work-idle-time 60)
  1260   ;; (setq semantic-idle-work-parse-neighboring-files-flag nil)
  1262   ;; (setq semantic-idle-work-parse-neighboring-files-flag nil)
  1261 
  1263 
  1262   ;; semantic-dependency-system-include-path, semantic-customize-system-include-path
  1264   ;; semantic-dependency-system-include-path, semantic-customize-system-include-path
  1263   (setq-mode-local c-mode semanticdb-find-default-throttle '(project unloaded system recursive))
  1265 
       
  1266   ;; file local project unloaded system recursive
       
  1267   (setq-mode-local c-mode semanticdb-find-default-throttle '(file))
  1264   (add-hook 'c-mode-hook (lambda nil (semantic-add-system-include "~/.emacs.d/include" 'c-mode)))
  1268   (add-hook 'c-mode-hook (lambda nil (semantic-add-system-include "~/.emacs.d/include" 'c-mode)))
  1265   (add-hook 'c-mode-hook (lambda nil (semantic-add-system-include "~/.emacs.d/include" 'c++-mode)))
  1269   (add-hook 'c-mode-hook (lambda nil (semantic-add-system-include "~/.emacs.d/include" 'c++-mode)))
  1266   (global-semanticdb-minor-mode 1)
  1270   (global-semanticdb-minor-mode 1)
  1267 
  1271 
  1268   (unless (equal cedet-version "1.0pre7") ; Come with Emacs 23.2.
  1272   ;; (add-to-list 'ede-locate-setup-options 'ede-locate-idutils)
  1269     (require 'ede-locate)
  1273   ;; (add-to-list 'ede-locate-setup-options 'ede-locate-global)
  1270     (when (cedet-idutils-version-check t)
  1274 
  1271       (add-to-list 'ede-locate-setup-options 'ede-locate-idutils)
  1275   (ignore-errors (require 'cedet-idutils))
  1272       )
  1276   (when (ignore-errors (require 'cedet-global))
  1273     (when (cedet-gnu-global-version-check t)
  1277     (semanticdb-enable-gnu-global-databases 'c-mode)
  1274       (add-to-list 'ede-locate-setup-options 'ede-locate-global)
  1278     (semanticdb-enable-gnu-global-databases 'c++-mode)
  1275       (semanticdb-enable-gnu-global-databases 'c-mode)
       
  1276       (semanticdb-enable-gnu-global-databases 'c++-mode)
       
  1277       )
       
  1278     )
  1279     )
  1279 
  1280 
  1280   (global-set-key (kbd "C-c , .") 'semantic-ia-fast-jump)
  1281   (global-set-key (kbd "C-c , .") 'semantic-ia-fast-jump)
  1281   (global-set-key (kbd "C-c , d") 'semantic-ia-show-doc)
  1282   (global-set-key (kbd "C-c , d") 'semantic-ia-show-doc)
  1282   (global-set-key (kbd "C-c , D") 'semantic-ia-describe-class)
  1283   (global-set-key (kbd "C-c , D") 'semantic-ia-describe-class)