Compare commits

..

No commits in common. "e6617a7b33461e870f62a2a3ceb50a7c314d3be7" and "ee8fef3d1e4dbe5ce036eab9d707f0312d1fbb95" have entirely different histories.

2 changed files with 29 additions and 145 deletions

View File

@ -258,15 +258,6 @@ Show filesize human readable.
(setq-default dired-listing-switches "-alh")
#+end_src
** M-x customizations
Hide commands in M-x which do not work in the current mode.
#+begin_src emacs-lisp
(setq read-extended-command-predicate
#'command-completion-default-include-p)
#+end_src
* Package configuration
** General configuration
@ -434,7 +425,6 @@ Source: [[https://github.com/greduan/emacs-theme-gruvbox][Github: greduan/emacs-
#+begin_src emacs-lisp
(use-package gruvbox-theme
:disabled t
:config
(load-theme 'gruvbox-light-hard t))
#+end_src
@ -472,9 +462,11 @@ Installing and enabling ef-themes.
#+begin_src emacs-lisp
(use-package ef-themes
:disabled t
:init
(setq ef-themes-to-toggle '(ef-light ef-dark))
(setq ef-themes-mixed-fonts t)
(setq ef-themes-mixed-fonts t
ef-themes-variable-pitch-ui t)
(setq ef-themes-headings
'((0 . (variable-pitch light 1.9))
(1 . (variable-pitch light 1.8))
@ -504,8 +496,8 @@ Add a slight transparency to the frames. Code provided by David Wilson / System
During the last weeks I got used to using a light theme during daytime and a dark theme during nighttime. Luckily the themes based on Atom One are to my liking and the doom package provides a dark and light variant. One thing that was difficult with Emacs was actually switching theme since it involved disabling all current ones (for some reason on one machine there are two enabled while on the other machine its only one) and then loading the correct one. These functions try to make that process easier, at least for now. The long-term goal is to automatically change the theme based on the current system-wide setting.
#+begin_src emacs-lisp
(setq mmk2410/theme-night 'ef-dark)
(setq mmk2410/theme-day 'ef-light)
(setq mmk2410/theme-night 'gruvbox-dark-hard)
(setq mmk2410/theme-day 'gruvbox-light-hard)
(defun mmk2410/switch-theme (theme)
(mapcar 'disable-theme custom-enabled-themes)
@ -537,7 +529,6 @@ I'm currently trying doom-modeline instead of telephone-line.
#+begin_src emacs-lisp
(use-package doom-modeline
:disabled t
:init (doom-modeline-mode 1)
:config (setq doom-modeline-icon t))
#+end_src
@ -780,145 +771,38 @@ Source: [[https://github.com/Alexander-Miller/treemacs][Alexander-Miller/treemac
:after (treemacs evil))
#+end_src
** vertico
** counsel, ivy and swiper
Vertico is a minimal completion UI that uses core Emacs functionality whenever possible.
Emacs package collection (ivy, swiper and counsel) of flexible, simple tools for minibuffer completion.
[[https://github.com/minad/vertico][GitHub: minad/vertico]]
Source: [[https://github.com/abo-abo/swiper][GitHub: abo-abo/swiper]]
#+begin_src emacs-lisp
(use-package vertico
:init
(vertico-mode)
(setq vertico-scroll-margin 0)
(setq vertico-resize t)
(setq vertico-cycle t))
#+end_src
(use-package counsel
:bind ("M-x" . counsel-M-x))
** orderless
Emacs completion style that matches multiple regexps in any order
[[https://github.com/oantolin/orderless][GitHub: oantolin/orderless]]
#+begin_src emacs-lisp
(use-package orderless
:ensure t
:custom
(completion-styles '(orderless basic))
(completion-category-overrides '((file (styles basic partial-completion)))))
#+end_src
** marginalia
Marginalia in the minibuffer.
[[https://github.com/minad/marginalia][GitHub: minad/marginalia]]
#+begin_src emacs-lisp
(use-package marginalia
:init
(marginalia-mode)
:bind (:map minibuffer-local-map
("M-A" . marginalia-cycle)))
#+end_src
** consult
#+begin_src emacs-lisp
(use-package consult
;; Replace bindings. Lazily loaded due by `use-package'.
:bind (;; C-c bindings (mode-specific-map)
("C-c h" . consult-history)
("C-c m" . consult-mode-command)
("C-c k" . consult-kmacro)
;; C-x bindings (ctl-x-map)
("C-x M-:" . consult-complex-command) ;; orig. repeat-complex-command
("C-x b" . consult-buffer) ;; orig. switch-to-buffer
("C-x 4 b" . consult-buffer-other-window) ;; orig. switch-to-buffer-other-window
("C-x 5 b" . consult-buffer-other-frame) ;; orig. switch-to-buffer-other-frame
("C-x r b" . consult-bookmark) ;; orig. bookmark-jump
("C-x p b" . consult-project-buffer) ;; orig. project-switch-to-buffer
;; Custom M-# bindings for fast register access
("M-#" . consult-register-load)
("M-'" . consult-register-store) ;; orig. abbrev-prefix-mark (unrelated)
("C-M-#" . consult-register)
;; Other custom bindings
("M-y" . consult-yank-pop) ;; orig. yank-pop
;; M-g bindings (goto-map)
("M-g e" . consult-compile-error)
("M-g f" . consult-flymake) ;; Alternative: consult-flycheck
("M-g g" . consult-goto-line) ;; orig. goto-line
("M-g M-g" . consult-goto-line) ;; orig. goto-line
("M-g o" . consult-outline) ;; Alternative: consult-org-heading
("M-g m" . consult-mark)
("M-g k" . consult-global-mark)
("M-g i" . consult-imenu)
("M-g I" . consult-imenu-multi)
;; M-s bindings (search-map)
("M-s d" . consult-find)
("M-s D" . consult-locate)
("M-s g" . consult-grep)
("M-s G" . consult-git-grep)
("M-s r" . consult-ripgrep)
("M-s l" . consult-line)
("M-s L" . consult-line-multi)
("M-s m" . consult-multi-occur)
("M-s k" . consult-keep-lines)
("M-s u" . consult-focus-lines)
;; Isearch integration
("M-s e" . consult-isearch-history)
:map isearch-mode-map
("M-e" . consult-isearch-history) ;; orig. isearch-edit-string
("M-s e" . consult-isearch-history) ;; orig. isearch-edit-string
("M-s l" . consult-line) ;; needed by consult-line to detect isearch
("M-s L" . consult-line-multi) ;; needed by consult-line to detect isearch
;; Minibuffer history
:map minibuffer-local-map
("M-s" . consult-history) ;; orig. next-matching-history-element
("M-r" . consult-history)) ;; orig. previous-matching-history-element
:hook (completion-list-mode . consult-preview-at-point-mode)
:init
(setq register-preview-delay 0.5
register-preview-function #'consult-register-format)
(advice-add #'register-preview :override #'consult-register-window)
(setq xref-show-xrefs-function #'consult-xref
xref-show-definitions-function #'consult-xref)
(use-package ivy
:after (counsel)
:diminish (ivy-mode)
:config
(consult-customize
consult-theme :preview-key '(:debounce 0.2 any)
consult-ripgrep consult-git-grep consult-grep
consult-bookmark consult-recent-file consult-xref
consult--source-bookmark consult--source-file-register
consult--source-recent-file consult--source-project-recent-file
:preview-key '(:debounce 0.4 any))
(setq consult-narrow-key "<"))
#+end_src
** embark
Emacs Mini-Buffer Actions Rooted in Keymaps
[[https://github.com/oantolin/embark][GitHub: oantolin/embark]]
#+begin_src emacs-lisp
(use-package embark
(ivy-mode t)
(setq ivy-use-virtual-buffers t)
(setq ivy-count-format "(%d/%d) ")
:bind
(("C-." . embark-act) ;; pick some comfortable binding
("C-;" . embark-dwim) ;; good alternative: M-.
("C-h B" . embark-bindings)) ;; alternative for `describe-bindings'
(("C-c g" . counsel-git)
("C-s" . swiper)
("C-r" . swiper)))
#+end_src
:init
(setq prefix-help-command #'embark-prefix-help-command)
:config
(add-to-list 'display-buffer-alist
'("\\`\\*Embark Collect \\(Live\\|Completions\\)\\*"
nil
(window-parameters (mode-line-format . none)))))
** ivy-rich
(use-package embark-consult
:hook
(embark-collect-mode . consult-preview-at-point-mode))
ivy-rich enhances M-x and similar even more by giving more information directly in the minibuffer.
Source: [[https://github.com/Yevgnen/ivy-rich][GitHub: Yevgnen/ivy-rich]]
#+begin_src emacs-lisp
(use-package ivy-rich
:init (ivy-rich-mode 1))
#+end_src
** avy

View File

@ -48,7 +48,7 @@
(mmk2410/tab-bar-switch-or-create
"Agenda"
#'(lambda ()
(org-agenda nil "d")
(org-agenda nil "c")
(sit-for 1)
(split-window-horizontally)
(other-window 1)