From 1cca162c8a3a8bab7d1deb5f679d1f3fbe285e71 Mon Sep 17 00:00:00 2001 From: Aryadev Chavali Date: Sun, 9 Aug 2020 17:18:57 +0100 Subject: ~moved window management --- Emacs/.config/emacs/config.org | 141 ++++++++++++++++++++++++----------------- 1 file changed, 83 insertions(+), 58 deletions(-) (limited to 'Emacs/.config') diff --git a/Emacs/.config/emacs/config.org b/Emacs/.config/emacs/config.org index b244371..2ecf3b2 100644 --- a/Emacs/.config/emacs/config.org +++ b/Emacs/.config/emacs/config.org @@ -680,6 +680,89 @@ when necessary. (setq eshell-cmpl-ignore-case t eshell-cd-on-directory t)) #+END_SRC +* Window management +Window management is really important. I find the default window +handling of Emacs incredibly annoying: sometimes consuming my windows, +sometimes creating new ones. So, as Emacs is the ultimate editor, I +want to configure and fine tune the window management of Emacs. +#+BEGIN_SRC emacs-lisp +(setq display-buffer-alist + '(("\\*e?shell\\*" + (display-buffer-in-side-window) + (window-height . 0.25) + (side . bottom) + (slot . 0)) + ("\\*[Hh]elp.*" + (display-buffer-in-side-window) + (window-height . 0.25) + (side . bottom) + (slot . 1)) + ("magit:.*" + (display-buffer-in-side-window) + (side . right) + (slot . -1) + (window-width . 0.5)) + ("magit-diff:.*" + (display-buffer-in-side-window) + (side . right) + (window-width . 0.5)) + ("magit-log:.*" + (display-buffer-in-side-window) + (side . right) + (window-width . 0.5)) + ("\\*compilation\\*" + (display-buffer-in-side-window) + (side . bottom) + (slot . -1) + (window-height . 0.25)) + ("\\*Flycheck.*" + (display-buffer-in-side-window) + (side . bottom) + (window-height . 0.25) + (slot . 0)) + ("\\*rg.*" + (display-buffer-in-side-window) + (side . bottom) + (window-height . 0.25) + (slot . 1)) + ("\\*Python\\*" + (display-buffer-in-side-window) + (side . bottom) + (window-height . 0.25)) + ("\\*Org Export.*" + (display-buffer-in-side-window) + (side . bottom) + (window-height . 0.25) + (slot . 0)) + ("\\*Async Shell Command\\*" + (display-buffer-in-side-window) + (side . bottom) + (window-height . 0.25)) + )) +#+END_SRC +* Text modes +** Flyspell +Flyspell allows me to quickly spell check text documents. I use +flyspell primarily in org mode, as that is my preferred prose writing +software, but I also need it in commit messages and so on. So +flyspell-mode should be hooked to text-mode. +#+BEGIN_SRC emacs-lisp +(use-package flyspell + :hook (text-mode . flyspell-mode) +#+END_SRC + +As I use ivy I'd like the flyspell correct interface (which allow for +corrections to real words) to use ivy. +#+BEGIN_SRC emacs-lisp +(use-package flyspell-correct-ivy + :after flyspell + :general + (general-def + :states '(normal insert) + :map flyspell-mode-map + "M-A" #'flyspell-correct-at-point + "M-a" #'ispell-word)) +#+END_SRC * Org ** Org default with evil Setup for org mode, currently basically nothing. Has evil-org for @@ -752,64 +835,6 @@ better than the default asterisks. (use-package org-superstar :hook (org-mode . org-superstar-mode)) #+END_SRC - -#+END_SRC -* Window management -Window management is really important. I find the default window -handling of Emacs incredibly annoying: sometimes consuming my windows, -sometimes creating new ones. So, as Emacs is the ultimate editor, I -want to configure and fine tune the window management of Emacs. -#+BEGIN_SRC emacs-lisp -(setq display-buffer-alist - '(("\\*e?shell\\*" - (display-buffer-in-side-window) - (window-height . 0.25) - (side . bottom) - (slot . 0)) - ("\\*[Hh]elp.*" - (display-buffer-in-side-window) - (window-height . 0.25) - (side . bottom) - (slot . 1)) - ("magit:.*" - (display-buffer-in-side-window) - (side . right) - (slot . -1) - (window-width . 0.5)) - ("magit-diff:.*" - (display-buffer-in-side-window) - (side . right) - (window-width . 0.5)) - ("magit-log:.*" - (display-buffer-in-side-window) - (side . right) - (window-width . 0.5)) - ("\\*compilation\\*" - (display-buffer-in-side-window) - (side . bottom) - (slot . -1) - (window-height . 0.25)) - ("\\*Flycheck.*" - (display-buffer-in-side-window) - (side . bottom) - (window-height . 0.25) - (slot . 0)) - ("\\*rg.*" - (display-buffer-in-side-window) - (side . bottom) - (window-height . 0.25) - (slot . 1)) - ("\\*Org Export.*" - (display-buffer-in-side-window) - (side . bottom) - (window-height . 0.25) - (slot . 0)) - ("\\*Async Shell Command\\*" - (display-buffer-in-side-window) - (side . bottom) - (window-height . 0.25)) - )) -#+END_SRC * Major modes and Programming Setups for common major modes and languages. Here are some basic packages for programming first -- cgit v1.2.3-13-gbd6f