Disabled activation of CEDET and Semantic. It consumes 48% of startup time.
On Cygwin load time shortened 10s => 6s.
--- a/.emacs-my Sat Jan 02 19:49:06 2021 +0200
+++ b/.emacs-my Sat Jan 02 20:02:16 2021 +0200
@@ -2885,103 +2885,6 @@
(global-set-key [M-return] #'my-complete-tag)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
-(message "CEDET, semantic, SRecord")
-
-;; For debug use 'semantic-debug-idle-function' and 'semantic-debug-idle-work-function'.
-
-(eval-when 'compile
- (require 'cedet nil t)
- (require 'srecode nil t)
- (require 'srecode/table nil t)
- (require 'semantic nil t)
- (require 'semantic/idle nil t)
- (require 'ede/linux nil t))
-
-(eval-and-compile
- (when (or
- (and (= emacs-major-version 23) (>= emacs-minor-version 2))
- (>= emacs-major-version 24) )
- (require 'cedet)
- (require 'mode-local)))
-
-(defun my-srecode-reload-templates ()
- "Reload all templates under `srecode-map-load-path'. Useful
-during template developing."
- (interactive)
- (setq srecode-mode-table-list nil
- srecode-current-map nil)
- (srecode-map-update-map) )
-
-(defun my-c-mode-cedet-hook ()
- ;; (local-set-key [C-return] 'semantic-complete-symbol)
- ;; (local-set-key [C-return] 'semantic-complete-analyze-inline)
- ;; (local-set-key "." 'semantic-complete-self-insert)
- ;; (local-set-key ">" 'semantic-complete-self-insert)
- )
-(add-hook 'c-mode-common-hook 'my-c-mode-cedet-hook)
-
-(when (featurep 'cedet)
- (require 'semantic)
- (global-semantic-idle-scheduler-mode 1)
- (global-semantic-idle-summary-mode 1)
- (global-semantic-idle-completions-mode -1)
- (global-semantic-mru-bookmark-mode 1)
- ;; (setq semantic-stickyfunc-sticky-classes '(function type variable include package))
- (global-semantic-stickyfunc-mode -1)
- (global-semantic-highlight-func-mode -1)
- (global-semantic-decoration-mode 1)
- (when (fboundp 'global-semantic-idle-local-symbol-highlight-mode)
- (global-semantic-idle-local-symbol-highlight-mode 1))
- (setq semantic-idle-scheduler-idle-time 10)
- (setq semantic-idle-scheduler-work-idle-time 60)
- (setq semantic-idle-scheduler-max-buffer-size 100000)
- ;; (setq semantic-idle-work-parse-neighboring-files-flag nil)
- ;; semantic-dependency-system-include-path, semantic-customize-system-include-path
- ;; file local project unloaded system recursive
- (setq-mode-local c-mode semanticdb-find-default-throttle '(file local))
- (add-hook 'c-mode-hook (lambda nil (semantic-add-system-include "~/.emacs.d/include" 'c-mode)))
- (add-hook 'c-mode-hook (lambda nil (semantic-add-system-include "~/.emacs.d/include" 'c++-mode)))
- (global-semanticdb-minor-mode 1)
- (ignore-errors
- (global-cedet-m3-minor-mode 1))
- (semantic-mode 1)
- (global-ede-mode 1)
- (require 'srecode)
- (defvar srecode-map-load-path nil)
- (add-to-list 'srecode-map-load-path (locate-user-emacs-file "srecode/"))
- (global-srecode-minor-mode 1)
- (add-hook 'prog-mode-hook 'srecode-minor-mode)
- (ignore-errors
- (cedet-ectag-version-check)
- (semantic-load-enable-primary-ectags-support))
- (ignore-errors
- (cedet-gnu-global-version-check)
- (require 'cedet-global)
- (semanticdb-enable-gnu-global-databases 'c-mode)
- (semanticdb-enable-gnu-global-databases 'c++-mode))
- (ignore-errors
- (require 'cedet-java))
- (setq project-linux-build-directory-default 'same
- project-linux-architecture-default "x86")
- ;; (require 'semantic/db-javap)
- ;; (add-to-list 'ede-locate-setup-options 'ede-locate-idutils)
- ;; (add-to-list 'ede-locate-setup-options 'ede-locate-global)
- ;; (ignore-errors (require 'cedet-idutils))
- (ignore-errors
- (require 'semantic/ia)
- (define-key semantic-mode-map (kbd "C-c , .") 'semantic-ia-fast-jump)
- (define-key semantic-mode-map (kbd "C-c , d") 'semantic-ia-show-doc)
- (define-key semantic-mode-map (kbd "C-c , D") 'semantic-ia-show-summary)
- (define-key semantic-mode-map (kbd "C-c , ?") 'semantic-ia-complete-symbol-menu)
- ;; (define-key semantic-mode-map [(control return)] 'semantic-ia-complete-symbol)
- ;; (define-key semantic-mode-map (kbd "C-c , C") 'semantic-ia-describe-class)
- ;; semantic-decoration-include-visit
- ;; semantic-analyze-proto-impl-toggle
- )
- ;; END OF: (when (featurep 'cedet) ...)
- )
-
-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(message "imenu")
(require 'imenu)
--- a/.emacs-obsolete Sat Jan 02 19:49:06 2021 +0200
+++ b/.emacs-obsolete Sat Jan 02 20:02:16 2021 +0200
@@ -388,3 +388,100 @@
(let ( (grep-find-template "find . -type f <F> -exec zgrep <C> -nH -e <R> {} +") (grep-find-ignored-files nil) )
(cl-flet ( (grep-compute-defaults () nil) )
(call-interactively #'rgrep))))
+
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+(message "CEDET, semantic, SRecord")
+
+;; For debug use 'semantic-debug-idle-function' and 'semantic-debug-idle-work-function'.
+
+(eval-when 'compile
+ (require 'cedet nil t)
+ (require 'srecode nil t)
+ (require 'srecode/table nil t)
+ (require 'semantic nil t)
+ (require 'semantic/idle nil t)
+ (require 'ede/linux nil t))
+
+(eval-and-compile
+ (when (or
+ (and (= emacs-major-version 23) (>= emacs-minor-version 2))
+ (>= emacs-major-version 24) )
+ (require 'cedet)
+ (require 'mode-local)))
+
+(defun my-srecode-reload-templates ()
+ "Reload all templates under `srecode-map-load-path'. Useful
+during template developing."
+ (interactive)
+ (setq srecode-mode-table-list nil
+ srecode-current-map nil)
+ (srecode-map-update-map) )
+
+(defun my-c-mode-cedet-hook ()
+ ;; (local-set-key [C-return] 'semantic-complete-symbol)
+ ;; (local-set-key [C-return] 'semantic-complete-analyze-inline)
+ ;; (local-set-key "." 'semantic-complete-self-insert)
+ ;; (local-set-key ">" 'semantic-complete-self-insert)
+ )
+(add-hook 'c-mode-common-hook 'my-c-mode-cedet-hook)
+
+(when (featurep 'cedet)
+ (require 'semantic)
+ (global-semantic-idle-scheduler-mode 1)
+ (global-semantic-idle-summary-mode 1)
+ (global-semantic-idle-completions-mode -1)
+ (global-semantic-mru-bookmark-mode 1)
+ ;; (setq semantic-stickyfunc-sticky-classes '(function type variable include package))
+ (global-semantic-stickyfunc-mode -1)
+ (global-semantic-highlight-func-mode -1)
+ (global-semantic-decoration-mode 1)
+ (when (fboundp 'global-semantic-idle-local-symbol-highlight-mode)
+ (global-semantic-idle-local-symbol-highlight-mode 1))
+ (setq semantic-idle-scheduler-idle-time 10)
+ (setq semantic-idle-scheduler-work-idle-time 60)
+ (setq semantic-idle-scheduler-max-buffer-size 100000)
+ ;; (setq semantic-idle-work-parse-neighboring-files-flag nil)
+ ;; semantic-dependency-system-include-path, semantic-customize-system-include-path
+ ;; file local project unloaded system recursive
+ (setq-mode-local c-mode semanticdb-find-default-throttle '(file local))
+ (add-hook 'c-mode-hook (lambda nil (semantic-add-system-include "~/.emacs.d/include" 'c-mode)))
+ (add-hook 'c-mode-hook (lambda nil (semantic-add-system-include "~/.emacs.d/include" 'c++-mode)))
+ (global-semanticdb-minor-mode 1)
+ (ignore-errors
+ (global-cedet-m3-minor-mode 1))
+ (semantic-mode 1)
+ (global-ede-mode 1)
+ (require 'srecode)
+ (defvar srecode-map-load-path nil)
+ (add-to-list 'srecode-map-load-path (locate-user-emacs-file "srecode/"))
+ (global-srecode-minor-mode 1)
+ (add-hook 'prog-mode-hook 'srecode-minor-mode)
+ (ignore-errors
+ (cedet-ectag-version-check)
+ (semantic-load-enable-primary-ectags-support))
+ (ignore-errors
+ (cedet-gnu-global-version-check)
+ (require 'cedet-global)
+ (semanticdb-enable-gnu-global-databases 'c-mode)
+ (semanticdb-enable-gnu-global-databases 'c++-mode))
+ (ignore-errors
+ (require 'cedet-java))
+ (setq project-linux-build-directory-default 'same
+ project-linux-architecture-default "x86")
+ ;; (require 'semantic/db-javap)
+ ;; (add-to-list 'ede-locate-setup-options 'ede-locate-idutils)
+ ;; (add-to-list 'ede-locate-setup-options 'ede-locate-global)
+ ;; (ignore-errors (require 'cedet-idutils))
+ (ignore-errors
+ (require 'semantic/ia)
+ (define-key semantic-mode-map (kbd "C-c , .") 'semantic-ia-fast-jump)
+ (define-key semantic-mode-map (kbd "C-c , d") 'semantic-ia-show-doc)
+ (define-key semantic-mode-map (kbd "C-c , D") 'semantic-ia-show-summary)
+ (define-key semantic-mode-map (kbd "C-c , ?") 'semantic-ia-complete-symbol-menu)
+ ;; (define-key semantic-mode-map [(control return)] 'semantic-ia-complete-symbol)
+ ;; (define-key semantic-mode-map (kbd "C-c , C") 'semantic-ia-describe-class)
+ ;; semantic-decoration-include-visit
+ ;; semantic-analyze-proto-impl-toggle
+ )
+ ;; END OF: (when (featurep 'cedet) ...)
+ )