init.el
author Oleksandr Gavenko <gavenkoa@gmail.com>
Sat, 30 Jan 2021 22:44:34 +0200
changeset 1712 5ed78a45b299
parent 1711 621215ccccf9
child 1718 9d72f4424570
permissions -rw-r--r--
Grouped startup profiler related code with debug related.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
604
9084d12d924d Fix mode name for elisp files.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 386
diff changeset
     1
;; -*- mode: emacs-lisp; coding: utf-8; fill-column: 78 -*-
42
04fd7747bc49 Update copyright notice.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 41
diff changeset
     2
;;
278
35338cab99a9 Remove copyright as in public domain.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 277
diff changeset
     3
;; Written by Oleksandr Gavenko <gavenkoa@gmail.com>, 2008-2010.
83
d2eaf2ed6d1c Added basic jabber customization.
gavenkoa@gavenko.bifit.int
parents: 71
diff changeset
     4
;;
110
6b6e3f8cb371 Set copyright notice.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 102
diff changeset
     5
;; This file placed in public domain.
6b6e3f8cb371 Set copyright notice.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 102
diff changeset
     6
;;
351
e30e4bd7e85e Small spell correction.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 349
diff changeset
     7
;; For load order see README.
6
d1c4515c3cfa Add copyright notice.
Oleksander Gavenko <gavenko_a@3g.ua>
parents: 0
diff changeset
     8
1687
3f69332472cb Added Make target to preinstall packages from ELPA.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1675
diff changeset
     9
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1712
5ed78a45b299 Grouped startup profiler related code with debug related.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1711
diff changeset
    10
(message "turn on debugger/profiler during loading")
5ed78a45b299 Grouped startup profiler related code with debug related.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1711
diff changeset
    11
5ed78a45b299 Grouped startup profiler related code with debug related.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1711
diff changeset
    12
(when my-profiler-enabled
5ed78a45b299 Grouped startup profiler related code with debug related.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1711
diff changeset
    13
  (profiler-start 'cpu))
1711
621215ccccf9 Activate debugger of errors during Emacs initialization. This allows to get backtrace without passing --debug-init.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1688
diff changeset
    14
621215ccccf9 Activate debugger of errors during Emacs initialization. This allows to get backtrace without passing --debug-init.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1688
diff changeset
    15
(defun my-debug (mode)
621215ccccf9 Activate debugger of errors during Emacs initialization. This allows to get backtrace without passing --debug-init.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1688
diff changeset
    16
  "With any prefix enables entering into a debuger and shows the
621215ccccf9 Activate debugger of errors during Emacs initialization. This allows to get backtrace without passing --debug-init.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1688
diff changeset
    17
backtrace when problems occur. Also activates entering into
621215ccccf9 Activate debugger of errors during Emacs initialization. This allows to get backtrace without passing --debug-init.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1688
diff changeset
    18
debugger on C-g.
621215ccccf9 Activate debugger of errors during Emacs initialization. This allows to get backtrace without passing --debug-init.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1688
diff changeset
    19
621215ccccf9 Activate debugger of errors during Emacs initialization. This allows to get backtrace without passing --debug-init.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1688
diff changeset
    20
With double prefix (or any number) additonally enable debugging
621215ccccf9 Activate debugger of errors during Emacs initialization. This allows to get backtrace without passing --debug-init.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1688
diff changeset
    21
on events and signals.
621215ccccf9 Activate debugger of errors during Emacs initialization. This allows to get backtrace without passing --debug-init.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1688
diff changeset
    22
621215ccccf9 Activate debugger of errors during Emacs initialization. This allows to get backtrace without passing --debug-init.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1688
diff changeset
    23
Without prefix (or `nil' argument) disables entering into the
621215ccccf9 Activate debugger of errors during Emacs initialization. This allows to get backtrace without passing --debug-init.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1688
diff changeset
    24
debugger."
621215ccccf9 Activate debugger of errors during Emacs initialization. This allows to get backtrace without passing --debug-init.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1688
diff changeset
    25
  (interactive "P")
621215ccccf9 Activate debugger of errors during Emacs initialization. This allows to get backtrace without passing --debug-init.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1688
diff changeset
    26
  (let ( (lvl1 (not (not mode)))
621215ccccf9 Activate debugger of errors during Emacs initialization. This allows to get backtrace without passing --debug-init.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1688
diff changeset
    27
         (lvl2 (or (equal mode '(16)) (numberp mode))) )
621215ccccf9 Activate debugger of errors during Emacs initialization. This allows to get backtrace without passing --debug-init.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1688
diff changeset
    28
    (setq debug-on-error lvl1)
621215ccccf9 Activate debugger of errors during Emacs initialization. This allows to get backtrace without passing --debug-init.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1688
diff changeset
    29
    ;; Get trace when press C-g.
621215ccccf9 Activate debugger of errors during Emacs initialization. This allows to get backtrace without passing --debug-init.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1688
diff changeset
    30
    (setq debug-on-quit lvl1)
621215ccccf9 Activate debugger of errors during Emacs initialization. This allows to get backtrace without passing --debug-init.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1688
diff changeset
    31
    (setq debug-on-event lvl2)
621215ccccf9 Activate debugger of errors during Emacs initialization. This allows to get backtrace without passing --debug-init.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1688
diff changeset
    32
    (setq debug-on-signal lvl2)
621215ccccf9 Activate debugger of errors during Emacs initialization. This allows to get backtrace without passing --debug-init.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1688
diff changeset
    33
    (cond
621215ccccf9 Activate debugger of errors during Emacs initialization. This allows to get backtrace without passing --debug-init.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1688
diff changeset
    34
     (lvl2 (message "Debugging on quit/event/signal..."))
621215ccccf9 Activate debugger of errors during Emacs initialization. This allows to get backtrace without passing --debug-init.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1688
diff changeset
    35
     (lvl1 (message "Debugging on quit..."))
621215ccccf9 Activate debugger of errors during Emacs initialization. This allows to get backtrace without passing --debug-init.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1688
diff changeset
    36
     (t (message "Debugging disabled...")))))
621215ccccf9 Activate debugger of errors during Emacs initialization. This allows to get backtrace without passing --debug-init.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1688
diff changeset
    37
621215ccccf9 Activate debugger of errors during Emacs initialization. This allows to get backtrace without passing --debug-init.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1688
diff changeset
    38
;; Instead of launching Emacs with "--debug-init" I enable entering into
621215ccccf9 Activate debugger of errors during Emacs initialization. This allows to get backtrace without passing --debug-init.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1688
diff changeset
    39
;; debugger on error & on C-g.
621215ccccf9 Activate debugger of errors during Emacs initialization. This allows to get backtrace without passing --debug-init.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1688
diff changeset
    40
(my-debug t)
621215ccccf9 Activate debugger of errors during Emacs initialization. This allows to get backtrace without passing --debug-init.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1688
diff changeset
    41
621215ccccf9 Activate debugger of errors during Emacs initialization. This allows to get backtrace without passing --debug-init.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1688
diff changeset
    42
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
1687
3f69332472cb Added Make target to preinstall packages from ELPA.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1675
diff changeset
    43
(message "load-path")
765
bbeae3f53afa Recursively add dirs from 'my-usr-el-dir' to 'load-path'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 604
diff changeset
    44
1241
4f22d9fe2e5b Byte compile '.emacs-my' and 'my/*.el'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1228
diff changeset
    45
(load "~/.emacs.d/.emacs-defs")
1687
3f69332472cb Added Make target to preinstall packages from ELPA.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1675
diff changeset
    46
3f69332472cb Added Make target to preinstall packages from ELPA.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1675
diff changeset
    47
(load custom-file t)
3f69332472cb Added Make target to preinstall packages from ELPA.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1675
diff changeset
    48
(load my-lisp-autogen t)
3f69332472cb Added Make target to preinstall packages from ELPA.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1675
diff changeset
    49
(load my-lisp-auth t)
3f69332472cb Added Make target to preinstall packages from ELPA.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1675
diff changeset
    50
(load my-lisp-pre)
3f69332472cb Added Make target to preinstall packages from ELPA.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1675
diff changeset
    51
1675
08f7fd3c4d5b Load more files for byte compilation check. Switched to my-lisp-* prefix.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1439
diff changeset
    52
(my-lisp--load-usr-home)
1199
dff272add01e Move all configs to "~/.emacs.d/my".
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1198
diff changeset
    53
1687
3f69332472cb Added Make target to preinstall packages from ELPA.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1675
diff changeset
    54
;; (setq package-enable-at-startup t)
3f69332472cb Added Make target to preinstall packages from ELPA.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1675
diff changeset
    55
(when (fboundp 'package-initialize)
3f69332472cb Added Make target to preinstall packages from ELPA.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1675
diff changeset
    56
  (package-initialize))
3f69332472cb Added Make target to preinstall packages from ELPA.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1675
diff changeset
    57
3f69332472cb Added Make target to preinstall packages from ELPA.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1675
diff changeset
    58
(load my-lisp-autoload t)
3f69332472cb Added Make target to preinstall packages from ELPA.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1675
diff changeset
    59
(load my-lisp-dotemacs t)
3f69332472cb Added Make target to preinstall packages from ELPA.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1675
diff changeset
    60
(load my-lisp-post t)
3f69332472cb Added Make target to preinstall packages from ELPA.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1675
diff changeset
    61
1712
5ed78a45b299 Grouped startup profiler related code with debug related.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1711
diff changeset
    62
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
5ed78a45b299 Grouped startup profiler related code with debug related.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1711
diff changeset
    63
(message "turn off debugger/profiler after loading")
5ed78a45b299 Grouped startup profiler related code with debug related.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1711
diff changeset
    64
5ed78a45b299 Grouped startup profiler related code with debug related.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1711
diff changeset
    65
(my-debug nil)
5ed78a45b299 Grouped startup profiler related code with debug related.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1711
diff changeset
    66
1688
0bab53c47567 Moved startup profiler settings to init.el and simplified activation.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1687
diff changeset
    67
(when my-profiler-enabled
0bab53c47567 Moved startup profiler settings to init.el and simplified activation.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1687
diff changeset
    68
  (profiler-report)
0bab53c47567 Moved startup profiler settings to init.el and simplified activation.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1687
diff changeset
    69
  (profiler-stop))