Browse Source

lazy loading for packages I don't need right away

master
Marc Pohling 6 years ago
parent
commit
96d1a94d17
1 changed files with 82 additions and 66 deletions
  1. 148
      config.org

148
config.org

@ -306,12 +306,14 @@ Smooth scrolling. Emacs tends to be jumpy, this should change it.
#+END_SRC #+END_SRC
** General (keymapper) ** General (keymapper)
I just use general.el to define keys and keymaps. With it I can set leader keys and create keymaps for them. It also integrates well with which-key. I just use general.el to define keys and keymaps. With it I can set leader keys and create keymaps for them. It also integrates well with which-key.
[[https://github.com/noctuid/general.el][Source]]
#+BEGIN_SRC emacs-lisp #+BEGIN_SRC emacs-lisp
(use-package general (use-package general
:ensure t :ensure t
) )
#+END_SRC #+END_SRC
** Custom key mappings ** Custom key mappings
Now some keymaps. Now some keymaps.
If there is no map defined, it is considered the global key map. If there is no map defined, it is considered the global key map.
@ -839,6 +841,7 @@ sudo apt install pandoc
#+BEGIN_SRC emacs-lisp #+BEGIN_SRC emacs-lisp
(unless (string-equal user-login-name "POH") (unless (string-equal user-login-name "POH")
(use-package notmuch (use-package notmuch
:defer t
:ensure t :ensure t
) )
) )
@ -864,22 +867,23 @@ sudo apt install pandoc
Activate the beancount mode. ATTENTION: This mode is made by myself. Activate the beancount mode. ATTENTION: This mode is made by myself.
#+BEGIN_SRC emacs-lisp #+BEGIN_SRC emacs-lisp
(unless (string-equal user-login-name "POH")
(load "/home/marc/.emacs.d/user-local/elisp/beancount-mode.el") ; somehow load-path in use-package doesn't work
(use-package beancount
:load-path "/home/marc/.emacs.d/elisp"
:mode ("\\.beancount$" . beancount-mode)
:init
(add-hook 'beancount-mode-hook 'company/beancount-mode-hook)
(setenv "PATH"
(concat
"/opt/beancount/bin:"
(getenv "PATH"))
)
:config
(setq beancount-filename-main "/home/marc/Archiv/Finanzen/transactions.beancount")
)
(unless (string-equal user-login-name "POH")
(load "/home/marc/.emacs.d/user-local/elisp/beancount-mode.el") ; somehow load-path in use-package doesn't work
(use-package beancount
:load-path "/home/marc/.emacs.d/elisp"
:defer t
:mode ("\\.beancount$" . beancount-mode)
:init
(add-hook 'beancount-mode-hook 'company/beancount-mode-hook)
(setenv "PATH"
(concat
"/opt/beancount/bin:"
(getenv "PATH"))
)
:config
(setq beancount-filename-main "/home/marc/Archiv/Finanzen/transactions.beancount")
) )
)
#+END_SRC #+END_SRC
Installing fava for reports is strongly recommended. Installing fava for reports is strongly recommended.
@ -989,27 +993,29 @@ Highlight parens etc. for improved readability
- F u git pull - F u git pull
#+BEGIN_SRC emacs-lisp #+BEGIN_SRC emacs-lisp
(use-package magit
:ensure t
:init
;; set git-path in work environment
(if (string-equal user-login-name "POH")
(setq magit-git-executable "P:/Eigene Dateien/Tools/Git/bin/git.exe")
)
:defer t
:bind (("C-x g" . magit-status))
)
(use-package magit
:ensure t
:defer t
:init
;; set git-path in work environment
(if (string-equal user-login-name "POH")
(setq magit-git-executable "P:/Eigene Dateien/Tools/Git/bin/git.exe")
)
:defer t
:bind (("C-x g" . magit-status))
)
#+END_SRC #+END_SRC
*** Git-gutter *** Git-gutter
Display line changes in gutter based on git history. Enable it everywhere Display line changes in gutter based on git history. Enable it everywhere
[[https://github.com/syohex/emacs-git-gutter][Source]] [[https://github.com/syohex/emacs-git-gutter][Source]]
#+BEGIN_SRC emacs-lisp #+BEGIN_SRC emacs-lisp
(use-package git-gutter
:ensure t
:config
(global-git-gutter-mode t)
:diminish git-gutter-mode
)
(use-package git-gutter
:ensure t
:defer t
:config
(global-git-gutter-mode t)
:diminish git-gutter-mode
)
#+END_SRC #+END_SRC
Some persistent navigation in git-gutter is nice, so here's a hydra for it: Some persistent navigation in git-gutter is nice, so here's a hydra for it:
@ -1045,9 +1051,10 @@ _l_: last hunk set start _R_evision
Time machine lets me step through the history of a file as recorded in git. Time machine lets me step through the history of a file as recorded in git.
[[https://github.com/pidu/git-timemachine][Source]] [[https://github.com/pidu/git-timemachine][Source]]
#+BEGIN_SRC emacs-lisp #+BEGIN_SRC emacs-lisp
(use-package git-timemachine
:ensure t
)
(use-package git-timemachine
:ensure t
:defer t
)
#+END_SRC #+END_SRC
** Company Mode ** Company Mode
@ -1214,6 +1221,7 @@ Maybe add [[https://github.com/hlissner/emacs-company-dict][company-dict]]? It's
#+BEGIN_SRC emacs-lisp #+BEGIN_SRC emacs-lisp
(use-package yasnippet (use-package yasnippet
:ensure t :ensure t
:defer t
:diminish yas-minor-mode :diminish yas-minor-mode
:init :init
(setq yas-snippet-dirs (concat PATH_USER_GLOBAL "snippets")) (setq yas-snippet-dirs (concat PATH_USER_GLOBAL "snippets"))
@ -1233,6 +1241,7 @@ Add some helpers to handle and understand macros
#+BEGIN_SRC emacs-lisp #+BEGIN_SRC emacs-lisp
(use-package macrostep (use-package macrostep
:ensure t :ensure t
:defer t
:init :init
(define-key emacs-lisp-mode-map (kbd "C-c e") 'macrostep-expand) (define-key emacs-lisp-mode-map (kbd "C-c e") 'macrostep-expand)
(define-key emacs-lisp-mode-map (kbd "C-c c") 'macrostep-collapse)) (define-key emacs-lisp-mode-map (kbd "C-c c") 'macrostep-collapse))
@ -1255,17 +1264,18 @@ Add some helpers to handle and understand macros
Also limit the completion backends to those which make sense in Python. Also limit the completion backends to those which make sense in Python.
#+BEGIN_SRC emacs-lisp #+BEGIN_SRC emacs-lisp
(use-package python
:mode ("\\.py\\'" . python-mode)
:interpreter ("python" . python-mode)
:init
(add-hook 'python-mode-hook (lambda ()
'company/python-mode-hook
(semantic-mode t)
(flycheck-select-checker 'python-pylint)))
:config
(setq python-shell-completion-native-enable nil)
)
(use-package python
:mode ("\\.py\\'" . python-mode)
:interpreter ("python" . python-mode)
:defer t
:init
(add-hook 'python-mode-hook (lambda ()
'company/python-mode-hook
(semantic-mode t)
(flycheck-select-checker 'python-pylint)))
:config
(setq python-shell-completion-native-enable nil)
)
#+END_SRC #+END_SRC
@ -1297,6 +1307,7 @@ TODO: automatically start an inferior python process or switch to it if already
#+BEGIN_SRC emacs-lisp #+BEGIN_SRC emacs-lisp
(use-package pyvenv (use-package pyvenv
:ensure t :ensure t
:defer t
:init :init
(setenv "WORKON_HOME" (expand-file-name "~/Archiv/Programmierprojekte/Python/virtualenv/")) (setenv "WORKON_HOME" (expand-file-name "~/Archiv/Programmierprojekte/Python/virtualenv/"))
:config :config
@ -1334,7 +1345,7 @@ Depends on pyvenv
(use-package auto-virtualenv (use-package auto-virtualenv
:ensure t :ensure t
;; :after pyvenv ;; :after pyvenv
;; :defer t
:defer t
:init :init
(add-hook 'python-mode-hook 'auto-virtualenv-set-virtualenv) (add-hook 'python-mode-hook 'auto-virtualenv-set-virtualenv)
;; activate on changing buffers ;; activate on changing buffers
@ -1375,15 +1386,16 @@ Anaconda test
- pdf-tools - pdf-tools
#+BEGIN_SRC emacs-lisp #+BEGIN_SRC emacs-lisp
(unless (string-equal user-login-name "POH")
(use-package pdf-tools
:ensure t
:config
(pdf-tools-install)
(setq TeX-view-program-selection '((output-pdf "pdf-tools")))
(setq TeX-view-program-list '(("pdf-tools" "Tex-pdf-tools-sync-view")))
)
)
(unless (string-equal user-login-name "POH")
(use-package pdf-tools
:ensure t
:defer t
:config
(pdf-tools-install)
(setq TeX-view-program-selection '((output-pdf "pdf-tools")))
(setq TeX-view-program-list '(("pdf-tools" "Tex-pdf-tools-sync-view")))
)
)
#+END_SRC #+END_SRC
For latex-preview-pane a patch might be necessary (as of 2017-10), see the issue [[https://github.com/jsinglet/latex-preview-pane/issues/37][here]] For latex-preview-pane a patch might be necessary (as of 2017-10), see the issue [[https://github.com/jsinglet/latex-preview-pane/issues/37][here]]
@ -1396,18 +1408,21 @@ Anaconda test
After that M-x byte-compile-file After that M-x byte-compile-file
#+BEGIN_SRC emacs-lisp #+BEGIN_SRC emacs-lisp
(use-package latex-preview-pane
:ensure t
)
(setq auto-mode-alist
(append '(("\\.tex$" . latex-mode)) auto-mode-alist))
;; one of these works
(add-hook 'LaTeX-mode-hook 'latex-preview-pane-mode)
(add-hook 'latex-mode-hook 'latex-preview-pane-mode)
(use-package latex-preview-pane
:ensure t
:defer t
:init
;; one of these works
(add-hook 'LaTeX-mode-hook 'latex-preview-pane-mode)
(add-hook 'latex-mode-hook 'latex-preview-pane-mode)
(setq auto-mode-alist
(append '(("\\.tex$" . latex-mode)) auto-mode-alist))
)
;; necessary, because linum-mode isn't compatible and prints errors
(add-hook 'pdf-view-mode-hook (lambda () (linum-mode -1)))
;; necessary, because linum-mode isn't compatible and prints errors
(add-hook 'pdf-view-mode-hook (lambda () (linum-mode -1)))
#+END_SRC #+END_SRC
** Markdown ** Markdown
Major mode to edit markdown files. Major mode to edit markdown files.
For previews it needs markdown installed on the system. For previews it needs markdown installed on the system.
@ -1418,7 +1433,8 @@ Anaconda test
#+BEGIN_SRC emacs-lisp #+BEGIN_SRC emacs-lisp
(use-package markdown-mode (use-package markdown-mode
:ensure t)
:ensure t
:defer t)
#+END_SRC #+END_SRC
** Hydra Flycheck ** Hydra Flycheck

Loading…
Cancel
Save