]> git.donarmstrong.com Git - lib.git/blobdiff - emacs_el/configuration/don-configuration.org
re-enable eyebrowse
[lib.git] / emacs_el / configuration / don-configuration.org
index c75415c88bede087fe47e27f09fa211bf5be313f..d2b33c0bbb825fc97e0d985189fcb0eab026d4c8 100644 (file)
@@ -7,36 +7,68 @@
 #+BEGIN_SRC emacs-lisp
 (setq debug-on-event 'siguser2)
 #+END_SRC
-* Add library paths
-
+* Initial startup stuff
+** Disable startup screen
 #+BEGIN_SRC emacs-lisp
-  (add-to-list 'load-path '"~/lib/emacs_el/")
-  (add-to-list 'load-path '"~/lib/emacs_el/tiny-tools/lisp/tiny")
-  (add-to-list 'load-path '"~/lib/emacs_el/tiny-tools/lisp/other")
-  (add-to-list 'load-path '"~/lib/emacs_el/magit-annex")
+  (setq inhibit-startup-screen t)
 #+END_SRC
-
-* Package management
-** package repositories and package manager
+** Disable cluter
 #+BEGIN_SRC emacs-lisp
-  (require 'package)
-  (setq package-archives '(("gnu" . "https://elpa.gnu.org/packages/")
-                           ("melpa" . "https://melpa.org/packages/")
-                           ("org" . "http://orgmode.org/elpa/") ))
+  ; (if (fboundp 'menu-bar-mode) (menu-bar-mode -1))
+  (if (fboundp 'tool-bar-mode) (tool-bar-mode -1))
+  (if (fboundp 'scroll-bar-mode) (scroll-bar-mode -1))
 #+END_SRC
-** [[https://github.com/jwiegley/use-package/][use-package]]
+** Fullscreen
 #+BEGIN_SRC emacs-lisp
-  (package-initialize)
-  (condition-case nil
-      (require 'use-package)
-    (progn (package-install 'use-package)
-           (require 'use-package)))
+  (setq frame-resize-pixelwise t)
+  (add-to-list 'default-frame-alist '(fullscreen . maximixed))
+#+END_SRC
+* Package management
+** package repositories and package manager
+Borrowed from https://github.com/nilcons/emacs-use-package-fast/ to
+load  [[https://github.com/jwiegley/use-package/][use-package]] even faster
+#+BEGIN_SRC emacs-lisp
+  (setq package-enable-at-startup nil)
+  (setq package--init-file-ensured t)
+  (eval-and-compile
+    (setq use-package-verbose (not (bound-and-true-p byte-compile-current-file))))
+  (mapc #'(lambda (add) (add-to-list 'load-path add))
+    (eval-when-compile
+      (package-initialize)
+      (unless (package-installed-p 'use-package)
+        (package-refresh-contents)
+        (package-install 'use-package))
+      (let ((package-user-dir-real (file-truename package-user-dir)))
+        ;; The reverse is necessary, because outside we mapc
+        ;; add-to-list element-by-element, which reverses.
+        (nreverse (apply #'nconc
+                 ;; Only keep package.el provided loadpaths.
+                 (mapcar #'(lambda (path)
+                     (if (string-prefix-p package-user-dir-real path)
+                         (list path)
+                       nil))
+                     load-path))))))
+
+  (setq package-archives '(("gnu" . "https://elpa.gnu.org/packages/")
+               ("melpa" . "https://melpa.org/packages/")
+               ("org" . "http://orgmode.org/elpa/") ))
+  (require 'use-package)
+  (require 'diminish)
+  (require 'bind-key)
 #+END_SRC
 ** Paradox
 #+BEGIN_SRC emacs-lisp
   (use-package paradox
     :ensure paradox
-  )
+    :commands (paradox-upgrade-packages paradox-list-packages)
+    :config (setq paradox-execute-asynchronously t)
+    )
+#+END_SRC
+* Add library paths
+
+#+BEGIN_SRC emacs-lisp
+  (add-to-list 'load-path '"~/lib/emacs_el/")
+  (add-to-list 'load-path '"~/lib/emacs_el/magit-annex")
 #+END_SRC
 * Disable custom-vars
 #+BEGIN_SRC emacs-lisp
 ** Eyebrowse
 
 #+BEGIN_SRC emacs-lisp
-  ;; (use-package eyebrowse
-  ;;   :ensure t
-  ;;   :diminish eyebrowse-mode
-  ;;   :init (setq eyebrowse-keymap-prefix (kbd "C-c C-\\"))
-  ;;   :config (progn
-  ;;             (setq eyebrowse-wrap-around t)
-  ;;             (eyebrowse-mode t)
-  ;; 
-  ;;             (defun my/eyebrowse-new-window-config ()
-  ;;               (interactive)
-  ;;               (let ((done nil))
-  ;;                 (dotimes (i 10)
-  ;;                   ;; start at 1 run till 0
-  ;;                   (let ((j (mod (+ i 1) 10)))
-  ;;                     (when (and (not done)
-  ;;                                (not (eyebrowse--window-config-present-p j)))
-  ;;                       (eyebrowse-switch-to-window-config j)
-  ;;                       (call-interactively 'eyebrowse-rename-window-config2 j)
-  ;;                       (setq done t)
-  ;;                       ))
-  ;;                   )))
-  ;; 
-  ;;             ;; I don't use latex-preview-pane
-  ;;             ;; (require 'latex-preview-pane)
-  ;;             ;; (defun my/close-latex-preview-pane-before-eyebrowse-switch ()
-  ;;             ;;   ;; latex-preview-pane uses window-parameters which are
-  ;;             ;;   ;; not preserved by eyebrowse, so we close the preview
-  ;;             ;;   ;; pane before switching, it will be regenerated when we
-  ;;             ;;   ;; edit the TeX file.
-  ;;             ;;   (when (lpp/window-containing-preview)
-  ;;             ;;     (delete-window (lpp/window-containing-preview))))
-  ;; 
-  ;;             ;; (add-to-list 'eyebrowse-pre-window-switch-hook
-  ;;             ;;              #'my/close-latex-preview-pane-before-eyebrowse-switch)
-  ;; 
-  ;;             ;; (my/set-menu-key "["  #'my/eyebrowse-new-window-config)
-  ;;             ;; (my/set-menu-key ";"  #'eyebrowse-prev-window-config)
-  ;;             ;; (my/set-menu-key "'"  #'eyebrowse-next-window-config)
-  ;;             ;; (my/set-menu-key "]"  #'eyebrowse-close-window-config)
-  ;;             ;; (my/set-menu-key "\\" #'eyebrowse-rename-window-config)
-  ;;             )
-  ;;   )
+  (use-package eyebrowse
+    :ensure t
+    :diminish eyebrowse-mode
+    :init (setq eyebrowse-keymap-prefix (kbd "C-c e"))
+    :config (progn
+              (setq eyebrowse-wrap-around t)
+              (eyebrowse-mode t)
+
+              (defun my/eyebrowse-new-window-config ()
+                (interactive)
+                (let ((done nil))
+                  (dotimes (i 10)
+                    ;; start at 1 run till 0
+                    (let ((j (mod (+ i 1) 10)))
+                      (when (and (not done)
+                                 (not (eyebrowse--window-config-present-p j)))
+                        (eyebrowse-switch-to-window-config j)
+                        (call-interactively 'eyebrowse-rename-window-config2 j)
+                        (setq done t)
+                        ))
+                    )))
+
+              ;; I don't use latex-preview-pane
+              ;; (require 'latex-preview-pane)
+              ;; (defun my/close-latex-preview-pane-before-eyebrowse-switch ()
+              ;;   ;; latex-preview-pane uses window-parameters which are
+              ;;   ;; not preserved by eyebrowse, so we close the preview
+              ;;   ;; pane before switching, it will be regenerated when we
+              ;;   ;; edit the TeX file.
+              ;;   (when (lpp/window-containing-preview)
+              ;;     (delete-window (lpp/window-containing-preview))))
+
+              ;; (add-to-list 'eyebrowse-pre-window-switch-hook
+              ;;              #'my/close-latex-preview-pane-before-eyebrowse-switch)
+
+              ;; (my/set-menu-key "["  #'my/eyebrowse-new-window-config)
+              ;; (my/set-menu-key ";"  #'eyebrowse-prev-window-config)
+              ;; (my/set-menu-key "'"  #'eyebrowse-next-window-config)
+              ;; (my/set-menu-key "]"  #'eyebrowse-close-window-config)
+              ;; (my/set-menu-key "\\" #'eyebrowse-rename-window-config)
+              )
+    )
 #+END_SRC
 
 ** Window handling
@@ -809,7 +841,7 @@ From http://julien.danjou.info/projects/emacs-packages#rainbow-mode, this colori
 ** Mutt
 *** Message-mode
 #+BEGIN_SRC emacs-lisp
-  (use-package message-mode
+  (use-package message
 
     :mode "muttng-[a-z0-9]+-[0-9]+-"
     :mode "mutt-[a-z0-9]+-[0-9]+-"
@@ -878,10 +910,10 @@ From http://julien.danjou.info/projects/emacs-packages#rainbow-mode, this colori
 #+END_SRC
 ** Agenda Configuration
 #+BEGIN_SRC emacs-lisp
-  :mode "\\.\\(org\\|org_archive\\|txt\\)$"
+  :mode ("\\.\\(org\\|org_archive\\|txt\\)\\'" . org-mode)
   :bind (("C-c l"  . org-store-link)
          ("C-c a"  . org-agenda)
-         ("C-c b"  . org-iswitchb)
+         ("C-c b"  . org-iswitchb))
   :config
   (setq-default org-log-done 'time)
   (setq-default org-agenda-ndays 5)
@@ -1815,7 +1847,7 @@ From http://julien.danjou.info/projects/emacs-packages#rainbow-mode, this colori
     (defadvice org-save-all-org-buffers (after org-save-all-org-buffers-add-appts)
       "Re-add appts after saving all org buffers"
       (my/org-agenda-to-appt))
-                                          ; Display appointments as a window manager notification
+    ;; Display appointments as a window manager notification
     (setq appt-disp-window-function 'my/appt-display)
     (setq appt-delete-window-function (lambda () t))
   
@@ -1823,10 +1855,12 @@ From http://julien.danjou.info/projects/emacs-packages#rainbow-mode, this colori
   
     (defun my/appt-display (min-to-app new-time msg)
       (if (atom min-to-app)
-          (start-process "my/appt-notification-app" nil my/appt-notification-app min-to-app msg)
-        (dolist (i (number-sequence 0 (1- (length min-to-app))))
-          (start-process "my/appt-notification-app" nil my/appt-notification-app
-                         (nth i min-to-app) (nth i msg))))))
+      (start-process "my/appt-notification-app" nil my/appt-notification-app min-to-app msg)
+    (dolist (i (number-sequence 0 (1- (length min-to-app))))
+      (start-process "my/appt-notification-app" nil my/appt-notification-app
+                     (nth i min-to-app) (nth i msg))))
+      )
+    )
 
 
 #+END_SRC