Doom modeline, centaur tabs, leader consult bindings, F#

This commit is contained in:
Joseph Ferano 2022-11-13 12:56:40 +03:00
parent b51177bde8
commit 0465cc52e1

View File

@ -243,15 +243,31 @@ Setup other stuff
(setq inhibit-startup-screen t) (setq inhibit-startup-screen t)
;; Dont compact font caches during GC, in case doom modeline gets laggy issue
(setq inhibit-compacting-font-caches t)
(straight-use-package 'ligature) (straight-use-package 'ligature)
(global-ligature-mode) (global-ligature-mode)
(straight-use-package 'highlight-quoted) (straight-use-package 'highlight-quoted)
(add-hook 'emacs-lisp-mode-hook 'highlight-quoted-mode) (add-hook 'emacs-lisp-mode-hook 'highlight-quoted-mode)
(straight-use-package 'nano-modeline) ;; (straight-use-package 'nano-modeline)
(nano-modeline-mode) ;; (nano-modeline-mode)
(setq nano-modeline-prefix 'icon) ;; (setq nano-modeline-prefix 'icon)
;; (straight-use-package 'mini-modeline)
(straight-use-package 'doom-modeline)
(doom-modeline-mode)
;; (straight-use-package 'mood-line)
;; (mood-line-mode 1)
(straight-use-package 'centaur-tabs)
(setq centaur-tabs-set-bar 'under)
;; Note: If you're not using Spacmeacs, in order for the underline to display
;; correctly you must add the following line:
(setq x-underline-at-descent-line t)
(setq centaur-tabs-set-close-button t)
(setq centaur-tabs-show-navigation-buttons t)
#+end_src #+end_src
** Text ** Text
@ -727,7 +743,12 @@ startup. Reason we have to call this is so the vterm fucntion can call `vterm--i
(straight-use-package 'undo-fu-session) (straight-use-package 'undo-fu-session)
(straight-use-package 'vundo) (straight-use-package 'vundo)
(global-undo-fu-session-mode) (global-undo-fu-session-mode)
(setq undo-fu-session-incompatible-files '("/COMMIT_EDITMSG\\'" "/git-rebase-todo\\'")) (setq undo-fu-session-incompatible-files '("/COMMIT_EDITMSG\\'" "/git-rebase-todo\\'"))
(setq undo-limit 6710886400) ;; 64mb.
(setq undo-strong-limit 100663296) ;; 96mb.
(setq undo-outer-limit 1006632960) ;; 960mb.
#+end_src #+end_src
** Text Editor ** Text Editor
@ -799,38 +820,48 @@ Emacs is an great operating system, if only it had a good text editor...
(evil-define-key 'normal 'global (kbd "<leader>hg") 'helpful-at-point) (evil-define-key 'normal 'global (kbd "<leader>hg") 'helpful-at-point)
(evil-define-key 'normal 'global (kbd "<leader>fb") 'bookmark-jump) (evil-define-key 'normal 'global (kbd "<leader>fb") 'bookmark-jump)
(evil-define-key 'normal 'global (kbd "<leader>fr") 'consult-recent-file) (evil-define-key 'normal 'global (kbd "<leader>fr") 'consult-recent-file)
(evil-define-key 'normal 'global (kbd "<leader>ff") 'ffip) (evil-define-key 'normal 'global (kbd "<leader>ff") 'project-find-file)
(evil-define-key 'normal 'global (kbd "<leader>fi") 'joe/edit-init) (evil-define-key 'normal 'global (kbd "<leader>fi") 'joe/edit-init)
(evil-define-key 'normal 'global (kbd "<leader>bl") 'mode-line-other-buffer) (evil-define-key 'normal 'global (kbd "<leader>bl") 'mode-line-other-buffer)
(evil-define-key 'normal 'global (kbd "<leader>bb") 'switch-to-buffer) (evil-define-key 'normal 'global (kbd "<leader>ba") 'consult-buffer)
(evil-define-key 'normal 'global (kbd "<leader>bb") 'consult-project-buffer)
(evil-define-key 'normal 'global (kbd "<leader>bi") 'ibuffer) (evil-define-key 'normal 'global (kbd "<leader>bi") 'ibuffer)
(evil-define-key 'normal 'global (kbd "<leader>bm") 'joe/toggle-buffer-mode) (evil-define-key 'normal 'global (kbd "<leader>bm") 'joe/toggle-buffer-mode)
(evil-define-key 'normal 'global (kbd "<leader>br") 'joe/revert-buffer-no-confirm) (evil-define-key 'normal 'global (kbd "<leader>br") 'joe/revert-buffer-no-confirm)
(evil-define-key 'normal 'global (kbd "<leader>bk") 'kill-this-buffer)
(evil-define-key 'normal 'global (kbd "<leader>gg") 'magit-status) (evil-define-key 'normal 'global (kbd "<leader>gg") 'magit-status)
(evil-define-key 'normal 'global (kbd "<leader>gc") 'magit-clone) (evil-define-key 'normal 'global (kbd "<leader>gc") 'magit-clone)
(evil-define-key 'normal 'global (kbd "<leader>pi") 'package-install)
(evil-define-key 'normal 'global (kbd "<leader>pd") 'package-delete)
(evil-define-key 'normal 'global (kbd "<leader>pf") 'package-refresh-contents)
(evil-define-key 'normal 'global (kbd "<leader>pl") 'package-list-packages)
(evil-define-key 'normal 'global (kbd "<leader>pr") 'package-reinstall)
(evil-define-key 'normal 'global (kbd "<leader>ss") 'joe/vterm-here) (evil-define-key 'normal 'global (kbd "<leader>ss") 'joe/vterm-here)
(evil-define-key 'normal 'global (kbd "<leader>sv") 'vterm) (evil-define-key 'normal 'global (kbd "<leader>sv") 'vterm)
(evil-define-key 'normal 'global (kbd "<leader>tv") 'vterm-other-window) (evil-define-key 'normal 'global (kbd "<leader>tv") 'vterm-other-window)
(evil-define-key 'normal 'global (kbd "<leader>Ba") 'joe/bookmark-set-and-save) (evil-define-key 'normal 'global (kbd "<leader>Ba") 'joe/bookmark-set-and-save)
(evil-define-key 'normal 'global (kbd "<leader>Bd") 'bookmark-delete) (evil-define-key 'normal 'global (kbd "<leader>Bd") 'bookmark-delete)
(evil-define-key 'normal 'global (kbd "<leader>cr") 'joe/compile-run) (evil-define-key 'normal 'global (kbd "<leader>mr") 'joe/compile-run)
(evil-define-key 'normal 'global (kbd "<leader>cc") 'joe/compile-comp) (evil-define-key 'normal 'global (kbd "<leader>mc") 'joe/compile-comp)
(evil-define-key 'normal 'global (kbd "<leader>ct") 'consult-theme) (evil-define-key 'normal 'global (kbd "<leader>ct") 'consult-theme)
(evil-define-key 'normal 'global (kbd "<leader>cl") 'consult-line)
(evil-define-key 'normal 'global (kbd "<leader>ci") 'consult-imenu)
(evil-define-key 'normal 'global (kbd "<leader>cy") 'consult-yank-from-kill-ring)
(evil-define-key 'normal 'global (kbd "<leader>cg") 'consult-ripgrep)
(evil-define-key 'normal 'global (kbd "<leader>cF") 'consult-find)
(evil-define-key 'normal 'global (kbd "<leader>co") 'consult-outline)
(evil-define-key 'normal 'global (kbd "C-h") 'evil-window-left) (evil-define-key 'normal 'global (kbd "C-h") 'evil-window-left)
(evil-define-key 'normal 'global (kbd "C-j") 'evil-window-down) (evil-define-key 'normal 'global (kbd "C-j") 'evil-window-down)
(evil-define-key 'normal 'global (kbd "C-k") 'evil-window-up) (evil-define-key 'normal 'global (kbd "C-k") 'evil-window-up)
(evil-define-key 'normal 'global (kbd "C-l") 'evil-window-right) (evil-define-key 'normal 'global (kbd "C-l") 'evil-window-right)
(evil-define-key 'normal 'global (kbd "M-h") 'tab-previous) (evil-define-key 'normal 'global (kbd "C-p") 'tab-previous)
(evil-define-key 'normal 'global (kbd "M-l") 'tab-next) (evil-define-key 'normal 'global (kbd "C-n") 'tab-next)
(evil-define-key 'normal 'global (kbd "<leader>tn") 'tab-new) (evil-define-key 'normal 'global (kbd "<leader>tn") 'tab-new)
(evil-define-key 'normal 'global (kbd "<leader>tc") 'tab-close) (evil-define-key 'normal 'global (kbd "<leader>tc") 'tab-close)
(evil-define-key 'normal 'global (kbd "<leader>tr") 'tab-rename)
(evil-define-key 'normal 'global (kbd "q") 'avy-goto-word-0)
;; (define-prefix-command 'evil-consult-map)
;; (define-key evil-consult-map "b" 'evil-window-bottom-right)
;; (define-key evil-consult-map "c" 'evil-window-delete)
;; (define-key evil-normal-state-map "," 'evil-consult-map)
(defvar global-evil-leader-map (make-sparse-keymap)) (defvar global-evil-leader-map (make-sparse-keymap))
(evil-define-key 'normal 'global-evil-leader-map (kbd "SPC") 'evil-send-leader) (evil-define-key 'normal 'global-evil-leader-map (kbd "SPC") 'evil-send-leader)
@ -866,17 +897,18 @@ Emacs is an great operating system, if only it had a good text editor...
(setq which-key-idle-delay 0.3) (setq which-key-idle-delay 0.3)
(add-hook 'after-init-hook (lambda () (which-key-mode))) (add-hook 'after-init-hook (lambda () (which-key-mode)))
;; (which-key-add-keymap-based-replacements evil-normal-state-map (which-key-add-keymap-based-replacements evil-normal-state-map
;; "<leader>f" '("Files") "<leader>f" '("Files")
;; "<leader>b" '("Buffers") "<leader>b" '("Buffers")
;; "<leader>B" '("Bookmarks") "<leader>B" '("Bookmarks")
;; "<leader>c" '("Compile") "<leader>c" '("Consult")
;; "<leader>d" '("Dired") "<leader>d" '("Dired")
;; "<leader>g" '("Git") "<leader>g" '("Git")
;; "<leader>t" '("Tabs") "<leader>m" '("Make")
;; "<leader>p" '("Packages") "<leader>t" '("Tabs")
;; "<leader>s" '("Shell (vterm)") "<leader>p" '("Packages")
;; "<leader>h" '("Help")) "<leader>s" '("Shell (vterm)")
"<leader>h" '("Help"))
#+end_src #+end_src
** IDE Features ** IDE Features
@ -885,9 +917,10 @@ Emacs is an great operating system, if only it had a good text editor...
#+begin_src emacs-lisp #+begin_src emacs-lisp
;; (straight-use-package 'yasnippet) ;; (straight-use-package 'yasnippet)
(straight-use-package 'markdown-mode) (straight-use-package 'markdown-mode)
(straight-use-package 'lsp-mode) ;; (straight-use-package 'lsp-mode)
(setq lsp-keymap-prefix "C-c c")
;; (setq lsp-keymap-prefix "C-c c")
;; (lsp-enable-which-key-integration t) ;; (lsp-enable-which-key-integration t)
;; (require 'lsp) ;; (require 'lsp)
;; (straight-use-package 'eglot) ;; (straight-use-package 'eglot)
@ -1012,6 +1045,13 @@ it doesn't close it.
#+begin_src emacs-lisp #+begin_src emacs-lisp
(straight-use-package 'go-mode) (straight-use-package 'go-mode)
;; (straight-use-package 'go-imports) ;; (straight-use-package 'go-imports)
#+end_src
*** FSharp
#+begin_src emacs-lisp
;; (straight-use-package 'eglot)
(straight-use-package 'fsharp-mode)
;; (straight-use-package 'eglot-fsharp)
#+end_src #+end_src
** Magit ** Magit