change dump
This commit is contained in:
		
							parent
							
								
									fc0655dc04
								
							
						
					
					
						commit
						ad09b481ac
					
				
					 1 changed files with 92 additions and 17 deletions
				
			
		
							
								
								
									
										109
									
								
								init.el
									
										
									
									
									
								
							
							
						
						
									
										109
									
								
								init.el
									
										
									
									
									
								
							| 
						 | 
					@ -10,7 +10,7 @@
 | 
				
			||||||
  ;; Hide scroll bar
 | 
					  ;; Hide scroll bar
 | 
				
			||||||
  (toggle-scroll-bar -1)
 | 
					  (toggle-scroll-bar -1)
 | 
				
			||||||
  ;; Use JBMono
 | 
					  ;; Use JBMono
 | 
				
			||||||
  (set-frame-font "-JB-JetBrainsMonoNL Nerd Font-normal-normal-normal-*-18-*-*-*-m-0-iso10646-1" nil t))
 | 
					  (set-frame-font "-JB-JetBrainsMonoNL Nerd Font-normal-normal-normal-*-14-*-*-*-m-0-iso10646-1" nil t))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(apply-appearance-first-frame)
 | 
					(apply-appearance-first-frame)
 | 
				
			||||||
(apply-appearance-per-frame)
 | 
					(apply-appearance-per-frame)
 | 
				
			||||||
| 
						 | 
					@ -47,24 +47,42 @@
 | 
				
			||||||
      mouse-wheel-follow-mouse +1
 | 
					      mouse-wheel-follow-mouse +1
 | 
				
			||||||
      scroll-step 1) ;; C-n C-p scroll step
 | 
					      scroll-step 1) ;; C-n C-p scroll step
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					;; Fix (?) mouse focus getting stuck in a single frame = https://stackoverflow.com/questions/1139124/emacs-mouse-focus-stuck-in-one-frame
 | 
				
			||||||
 | 
					(setq focus-follows-mouse t
 | 
				
			||||||
 | 
					      mouse-autoselect-window t)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
;; Disable annoying bell sound
 | 
					;; Disable annoying bell sound
 | 
				
			||||||
(setq ring-bell-function 'ignore)
 | 
					(setq ring-bell-function 'ignore)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
;; Highlight matching parens faster
 | 
					;; Highlight matching parens faster
 | 
				
			||||||
(setq show-paren-delay 0)
 | 
					(setq show-paren-delay 0)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(setq tab-width 2)
 | 
					;; Indentation
 | 
				
			||||||
 | 
					(setq-default tab-width 2)
 | 
				
			||||||
(defun disable-tabs ()
 | 
					(defun disable-tabs ()
 | 
				
			||||||
  (setq tab-width 2)
 | 
					 | 
				
			||||||
  (indent-tabs-mode -1))
 | 
					  (indent-tabs-mode -1))
 | 
				
			||||||
(defun enable-tabs ()
 | 
					(defun enable-tabs ()
 | 
				
			||||||
  (setq tab-width 2)
 | 
					  (indent-tabs-mode t))
 | 
				
			||||||
  (indent-tabs-mode +1))
 | 
					(setq tab-always-indent nil) ;; tab key inserts tabs after hitting indent point
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					;; display mismatched whitespace at the beginning or end of lines
 | 
				
			||||||
 | 
					(add-hook 'after-change-major-mode-hook
 | 
				
			||||||
 | 
					          (lambda ()
 | 
				
			||||||
 | 
					            (if (derived-mode-p 'prog-mode)
 | 
				
			||||||
 | 
					                (progn
 | 
				
			||||||
 | 
					                  (if (eq indent-tabs-mode t)
 | 
				
			||||||
 | 
					                      (setq whitespace-style '(face indentation::tab trailing missing-newline-at-eof))
 | 
				
			||||||
 | 
					                    (setq whitespace-style '(face indentation::space trailing missing-newline-at-eof)))
 | 
				
			||||||
 | 
					                  (whitespace-mode t)))))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(add-hook 'prog-mode-hook 'enable-tabs)
 | 
					(add-hook 'prog-mode-hook 'enable-tabs)
 | 
				
			||||||
(add-hook 'lisp-mode-hook 'disable-tabs)
 | 
					(add-hook 'lisp-mode-hook 'disable-tabs)
 | 
				
			||||||
(add-hook 'emacs-lisp-mode-hook 'disable-tabs)
 | 
					(add-hook 'emacs-lisp-mode-hook 'disable-tabs)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(add-hook 'nxml-mode-hook 'enable-tabs)
 | 
				
			||||||
 | 
					(setq nxml-child-indent 2
 | 
				
			||||||
 | 
					      nxml-attribute-indent 4)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(let ((savedir (concat (file-name-as-directory (getenv "XDG_DATA_HOME")) "emacs/autosave/")))
 | 
					(let ((savedir (concat (file-name-as-directory (getenv "XDG_DATA_HOME")) "emacs/autosave/")))
 | 
				
			||||||
  (make-directory savedir t)
 | 
					  (make-directory savedir t)
 | 
				
			||||||
  (setq backup-directory-alist `(("." . ,savedir)))
 | 
					  (setq backup-directory-alist `(("." . ,savedir)))
 | 
				
			||||||
| 
						 | 
					@ -95,6 +113,11 @@
 | 
				
			||||||
                                    (setq-local interprogram-paste-function nil)))
 | 
					                                    (setq-local interprogram-paste-function nil)))
 | 
				
			||||||
  (evil-mode +1))
 | 
					  (evil-mode +1))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(use-package evil-collection
 | 
				
			||||||
 | 
					  :after evil
 | 
				
			||||||
 | 
						:config
 | 
				
			||||||
 | 
						(evil-collection-init '(magit ibuffer)))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(use-package better-jumper
 | 
					(use-package better-jumper
 | 
				
			||||||
  :after evil
 | 
					  :after evil
 | 
				
			||||||
  :config
 | 
					  :config
 | 
				
			||||||
| 
						 | 
					@ -107,18 +130,14 @@
 | 
				
			||||||
  (define-key evil-normal-state-map (kbd "SPC j") #'better-jumper-set-jump)
 | 
					  (define-key evil-normal-state-map (kbd "SPC j") #'better-jumper-set-jump)
 | 
				
			||||||
  (better-jumper-mode))
 | 
					  (better-jumper-mode))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(use-package evil-collection
 | 
					 | 
				
			||||||
  :after evil
 | 
					 | 
				
			||||||
	:config
 | 
					 | 
				
			||||||
	(evil-collection-init '(magit ibuffer)))
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
(use-package crux)
 | 
					(use-package crux)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
;; Avy (jump to char)
 | 
					;; Avy (jump to char)
 | 
				
			||||||
(use-package avy
 | 
					(use-package avy
 | 
				
			||||||
  :bind (("C-;" . avy-goto-char)
 | 
					  :bind
 | 
				
			||||||
	 ("C-:" . avy-goto-word-1)
 | 
					    (("C-;" . avy-goto-char)
 | 
				
			||||||
	 ("M-g g" . avy-goto-line)))
 | 
						   ("C-:" . avy-goto-word-1)
 | 
				
			||||||
 | 
						   ("M-g g" . avy-goto-line)))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(use-package undo-tree
 | 
					(use-package undo-tree
 | 
				
			||||||
  :after evil
 | 
					  :after evil
 | 
				
			||||||
| 
						 | 
					@ -130,7 +149,10 @@
 | 
				
			||||||
  (global-undo-tree-mode))
 | 
					  (global-undo-tree-mode))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
;; Magit (git frontend)
 | 
					;; Magit (git frontend)
 | 
				
			||||||
(use-package magit)
 | 
					(use-package magit
 | 
				
			||||||
 | 
					  :config
 | 
				
			||||||
 | 
					  (setq magit-diff-refine-hunk t
 | 
				
			||||||
 | 
					        magit-diff-refine-ignore-whitespace t))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
;; Rainbow-Mode (show hex strings in color)
 | 
					;; Rainbow-Mode (show hex strings in color)
 | 
				
			||||||
(use-package rainbow-mode)
 | 
					(use-package rainbow-mode)
 | 
				
			||||||
| 
						 | 
					@ -140,7 +162,10 @@
 | 
				
			||||||
  :config
 | 
					  :config
 | 
				
			||||||
  (keymap-set vertico-map "M-j" #'vertico-next)
 | 
					  (keymap-set vertico-map "M-j" #'vertico-next)
 | 
				
			||||||
  (keymap-set vertico-map "M-k" #'vertico-previous)
 | 
					  (keymap-set vertico-map "M-k" #'vertico-previous)
 | 
				
			||||||
 | 
					  (keymap-set vertico-map "C-j" #'vertico-next)
 | 
				
			||||||
 | 
					  (keymap-set vertico-map "C-k" #'vertico-previous)
 | 
				
			||||||
  (keymap-set vertico-map "M-`" #'vertico-exit)
 | 
					  (keymap-set vertico-map "M-`" #'vertico-exit)
 | 
				
			||||||
 | 
					  (keymap-set vertico-map "M-ESC" #'vertico-exit)
 | 
				
			||||||
  (vertico-mode))
 | 
					  (vertico-mode))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(use-package vertico-indexed
 | 
					(use-package vertico-indexed
 | 
				
			||||||
| 
						 | 
					@ -257,6 +282,7 @@
 | 
				
			||||||
  (define-key company-active-map (kbd "<return>") nil)
 | 
					  (define-key company-active-map (kbd "<return>") nil)
 | 
				
			||||||
  (define-key company-active-map (kbd "RET") nil)
 | 
					  (define-key company-active-map (kbd "RET") nil)
 | 
				
			||||||
  (define-key company-active-map (kbd "M-`") #'company-complete-selection)
 | 
					  (define-key company-active-map (kbd "M-`") #'company-complete-selection)
 | 
				
			||||||
 | 
					  (define-key company-active-map (kbd "M-ESC") #'company-complete-selection)
 | 
				
			||||||
  (define-key company-active-map (kbd "M-n") #'company-select-next)
 | 
					  (define-key company-active-map (kbd "M-n") #'company-select-next)
 | 
				
			||||||
  (define-key company-active-map (kbd "M-p") #'company-select-previous)
 | 
					  (define-key company-active-map (kbd "M-p") #'company-select-previous)
 | 
				
			||||||
  (define-key company-active-map (kbd "M-j") #'company-select-next)
 | 
					  (define-key company-active-map (kbd "M-j") #'company-select-next)
 | 
				
			||||||
| 
						 | 
					@ -306,7 +332,10 @@
 | 
				
			||||||
(use-package lsp-treemacs
 | 
					(use-package lsp-treemacs
 | 
				
			||||||
  :after (lsp-mode treemacs))
 | 
					  :after (lsp-mode treemacs))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
;; Java lsp
 | 
					(use-package kotlin-mode
 | 
				
			||||||
 | 
					  :after lsp-mode
 | 
				
			||||||
 | 
					  :hook (kotlin-mode . lsp-deferred))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(use-package lsp-java
 | 
					(use-package lsp-java
 | 
				
			||||||
  :after lsp-mode
 | 
					  :after lsp-mode
 | 
				
			||||||
  :hook (java-ts-mode . lsp-deferred)
 | 
					  :hook (java-ts-mode . lsp-deferred)
 | 
				
			||||||
| 
						 | 
					@ -318,6 +347,13 @@
 | 
				
			||||||
          "-configuration" (concat (file-name-as-directory (getenv "XDG_CACHE_HOME")) "jdtls")
 | 
					          "-configuration" (concat (file-name-as-directory (getenv "XDG_CACHE_HOME")) "jdtls")
 | 
				
			||||||
          "-data" "../.jdtls")))
 | 
					          "-data" "../.jdtls")))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(setq lsp-glsl-executable '("glslls" "--stdin" "--target-env" "opengl"))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(use-package groovy-mode)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					;; Nasm support
 | 
				
			||||||
 | 
					(use-package nasm-mode)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
;; Nix support
 | 
					;; Nix support
 | 
				
			||||||
(use-package nix-mode
 | 
					(use-package nix-mode
 | 
				
			||||||
  :mode "\\.nix\\'"
 | 
					  :mode "\\.nix\\'"
 | 
				
			||||||
| 
						 | 
					@ -325,24 +361,63 @@
 | 
				
			||||||
 | 
					
 | 
				
			||||||
;; QML Support
 | 
					;; QML Support
 | 
				
			||||||
(setq qml-ts-mode-indent-offset 2)
 | 
					(setq qml-ts-mode-indent-offset 2)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					;; Haskell
 | 
				
			||||||
 | 
					(use-package haskell-ts-mode
 | 
				
			||||||
 | 
					  :hook (haskell-ts-mode . disable-tabs))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					;; Zig
 | 
				
			||||||
 | 
					(use-package zig-ts-mode
 | 
				
			||||||
 | 
					  :mode (("\\.zig\\'" . zig-ts-mode)
 | 
				
			||||||
 | 
					         ("\\.zon\\'" . zig-ts-mode))
 | 
				
			||||||
 | 
					  :hook ((zig-ts-mode . lsp-deferred)
 | 
				
			||||||
 | 
					         (zig-ts-mode . disable-tabs)
 | 
				
			||||||
 | 
					         (zig-ts-mode . (lambda () (setq-local tab-width 4)))))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(use-package qml-ts-mode
 | 
					(use-package qml-ts-mode
 | 
				
			||||||
 | 
					  :after lsp-mode
 | 
				
			||||||
  :config
 | 
					  :config
 | 
				
			||||||
  (add-hook 'qml-ts-mode-hook
 | 
					  (add-to-list 'lsp-language-id-configuration '(qml-ts-mode . "qml-ts"))
 | 
				
			||||||
            (lambda () (setq-local electric-indent-chars '(?\n ?\( ?\) ?{ ?} ?\[ ?\] ?\; ?,)))))
 | 
					  (lsp-register-client
 | 
				
			||||||
 | 
					   (make-lsp-client :new-connection (lsp-stdio-connection '("qmlls" "-E"))
 | 
				
			||||||
 | 
					                    :activation-fn (lsp-activate-on "qml-ts")
 | 
				
			||||||
 | 
					                    :server-id 'qmlls))
 | 
				
			||||||
 | 
					  (add-hook 'qml-ts-mode-hook (lambda ()
 | 
				
			||||||
 | 
					                                (setq-local electric-indent-chars '(?\n ?\( ?\) ?{ ?} ?\[ ?\] ?\; ?,))
 | 
				
			||||||
 | 
					                                (lsp-deferred))))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					;; Astro support
 | 
				
			||||||
 | 
					;;(use-package astro-ts-mode
 | 
				
			||||||
 | 
					  ;;:after lsp-mode
 | 
				
			||||||
 | 
					  ;;:config
 | 
				
			||||||
 | 
					  ;;(add-to-list 'lsp-language-id-configuration '(astro-ts-mode . "astro-ts"))
 | 
				
			||||||
 | 
					  ;;(lsp-register-client
 | 
				
			||||||
 | 
					   ;;(make-lsp-client :new-connection (lsp-stdio-connection "astro-ls")
 | 
				
			||||||
 | 
					                    ;;:activation-fn (lsp-activate-on "astro-ts")
 | 
				
			||||||
 | 
					                    ;;:server-id 'astro-ls)))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(add-to-list 'auto-mode-alist '("\\.rs\\'" . rust-ts-mode))
 | 
					(add-to-list 'auto-mode-alist '("\\.rs\\'" . rust-ts-mode))
 | 
				
			||||||
 | 
					(add-to-list 'auto-mode-alist '("\\.hs\\'" . haskell-ts-mode))
 | 
				
			||||||
(add-to-list 'auto-mode-alist '("\\.ts\\'" . typescript-ts-mode))
 | 
					(add-to-list 'auto-mode-alist '("\\.ts\\'" . typescript-ts-mode))
 | 
				
			||||||
(add-to-list 'auto-mode-alist '("\\.tsx\\'" . typescript-ts-mode))
 | 
					(add-to-list 'auto-mode-alist '("\\.tsx\\'" . typescript-ts-mode))
 | 
				
			||||||
 | 
					(add-to-list 'auto-mode-alist '("\\.astro\\'" . astro-ts-mode))
 | 
				
			||||||
(add-to-list 'auto-mode-alist '("\\.toml\\'" . toml-ts-mode))
 | 
					(add-to-list 'auto-mode-alist '("\\.toml\\'" . toml-ts-mode))
 | 
				
			||||||
(add-to-list 'auto-mode-alist '("\\.yaml\\'" . yaml-ts-mode))
 | 
					(add-to-list 'auto-mode-alist '("\\.yaml\\'" . yaml-ts-mode))
 | 
				
			||||||
 | 
					(add-to-list 'auto-mode-alist '("\\.yml\\'" . yaml-ts-mode))
 | 
				
			||||||
(add-hook 'rust-ts-mode-hook #'lsp-deferred)
 | 
					(add-hook 'rust-ts-mode-hook #'lsp-deferred)
 | 
				
			||||||
(add-hook 'c++-ts-mode-hook #'lsp-deferred)
 | 
					(add-hook 'c++-ts-mode-hook #'lsp-deferred)
 | 
				
			||||||
(add-hook 'typescript-ts-mode-hook #'lsp-deferred)
 | 
					(add-hook 'typescript-ts-mode-hook #'lsp-deferred)
 | 
				
			||||||
 | 
					(add-hook 'astro-ts-mode-hook #'lsp-deferred)
 | 
				
			||||||
 | 
					(add-hook 'glsl-mode-hook #'lsp-deferred)
 | 
				
			||||||
 | 
					(add-hook 'haskell-ts-mode-hook #'lsp-deferred)
 | 
				
			||||||
 | 
					(add-hook 'zig-ts-mode-hook #'lsp-deferred)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
;; Fix indent
 | 
					;; Fix indent
 | 
				
			||||||
(add-hook 'rust-ts-mode-hook
 | 
					(add-hook 'rust-ts-mode-hook
 | 
				
			||||||
          (lambda () (setq-local electric-indent-chars '(?\n ?\( ?\) ?{ ?} ?\[ ?\] ?\; ?,))))
 | 
					          (lambda () (setq-local electric-indent-chars '(?\n ?\( ?\) ?{ ?} ?\[ ?\] ?\; ?,))))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(add-hook 'yaml-ts-mode #'disable-tabs)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(setq gc-cons-threshold (* 1024 1024 100)
 | 
					(setq gc-cons-threshold (* 1024 1024 100)
 | 
				
			||||||
      read-process-output-max (* 1024 1024))
 | 
					      read-process-output-max (* 1024 1024))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue