Pending changes
This commit is contained in:
		
							parent
							
								
									26b32fb80d
								
							
						
					
					
						commit
						7e71c3e4c7
					
				
					 2 changed files with 29 additions and 62 deletions
				
			
		
							
								
								
									
										83
									
								
								init.el
									
										
									
									
									
								
							
							
						
						
									
										83
									
								
								init.el
									
										
									
									
									
								
							| 
						 | 
					@ -4,7 +4,7 @@
 | 
				
			||||||
  ;; Set theme
 | 
					  ;; Set theme
 | 
				
			||||||
  (load-theme 'my-theme +1)
 | 
					  (load-theme 'my-theme +1)
 | 
				
			||||||
  ;; Use JBMono
 | 
					  ;; Use JBMono
 | 
				
			||||||
  (set-frame-font "-JB-JetBrainsMonoNL Nerd Font-normal-normal-normal-*-13-*-*-*-m-0-iso10646-1" nil t)
 | 
					  (set-frame-font "-JB-JetBrainsMonoNL Nerd Font-normal-normal-normal-*-18-*-*-*-m-0-iso10646-1" nil t)
 | 
				
			||||||
  ;; Hide GTK scroll bar
 | 
					  ;; Hide GTK scroll bar
 | 
				
			||||||
  (toggle-scroll-bar -1))
 | 
					  (toggle-scroll-bar -1))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -36,13 +36,18 @@
 | 
				
			||||||
      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
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					;; Disable annoying bell sound
 | 
				
			||||||
 | 
					(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)
 | 
					(setq 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 +1))
 | 
					  (indent-tabs-mode +1))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(add-hook 'prog-mode-hook 'enable-tabs)
 | 
					(add-hook 'prog-mode-hook 'enable-tabs)
 | 
				
			||||||
| 
						 | 
					@ -132,9 +137,6 @@
 | 
				
			||||||
  :config
 | 
					  :config
 | 
				
			||||||
  (add-hook 'prog-mode-hook #'ws-butler-mode))
 | 
					  (add-hook 'prog-mode-hook #'ws-butler-mode))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
;; Code folding
 | 
					 | 
				
			||||||
(use-package ts-fold)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
;; Markdown
 | 
					;; Markdown
 | 
				
			||||||
(use-package markdown-mode
 | 
					(use-package markdown-mode
 | 
				
			||||||
	:init
 | 
						:init
 | 
				
			||||||
| 
						 | 
					@ -144,60 +146,18 @@
 | 
				
			||||||
(use-package string-inflection)
 | 
					(use-package string-inflection)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
;; Treesitter
 | 
					;; Treesitter
 | 
				
			||||||
(use-package tree-sitter
 | 
					(use-package treesit
 | 
				
			||||||
  :config
 | 
					  :config
 | 
				
			||||||
  (use-package tree-sitter-langs
 | 
					  (customize-set-variable 'treesit-font-lock-level 4)
 | 
				
			||||||
    :config
 | 
					  (setq major-mode-remap-alist
 | 
				
			||||||
    (tree-sitter-require 'rust)
 | 
					        '((c-mode . c-ts-mode)
 | 
				
			||||||
    (tree-sitter-require 'java)
 | 
					          (csharp-mode . csharp-ts-mode)
 | 
				
			||||||
    (tree-sitter-require 'nix))
 | 
					          (cmake-mode . cmake-ts-mode)
 | 
				
			||||||
  (add-hook 'tree-sitter-after-on-hook #'ts-fold-mode)
 | 
					          (c++-mode . c++-ts-mode)
 | 
				
			||||||
  (add-hook 'tree-sitter-after-on-hook #'tree-sitter-hl-mode)
 | 
					          (css-mode . css-ts-mode)
 | 
				
			||||||
  (global-tree-sitter-mode +1))
 | 
					          (java-mode . java-ts-mode)
 | 
				
			||||||
 | 
					          (json-mode . json-ts-mode)
 | 
				
			||||||
;; Rust support
 | 
					          (python-mode . python-ts-mode))))
 | 
				
			||||||
(use-package rustic
 | 
					 | 
				
			||||||
  :after lsp-mode)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
;; Nix support
 | 
					 | 
				
			||||||
(use-package nix-mode
 | 
					 | 
				
			||||||
  :mode "\\.nix\\'"
 | 
					 | 
				
			||||||
  :config
 | 
					 | 
				
			||||||
  (add-hook 'nix-mode-hook 'disable-tabs))
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
;; Treesitter based navigation
 | 
					 | 
				
			||||||
(use-package evil-textobj-tree-sitter
 | 
					 | 
				
			||||||
  :after (evil tree-sitter)
 | 
					 | 
				
			||||||
  :config
 | 
					 | 
				
			||||||
  (let ((define-scope (lambda (key outer inner)
 | 
					 | 
				
			||||||
                        (define-key evil-outer-text-objects-map key outer)
 | 
					 | 
				
			||||||
                        (define-key evil-inner-text-objects-map key inner)))
 | 
					 | 
				
			||||||
        (define-jumps (lambda (key name)
 | 
					 | 
				
			||||||
                        (let ((key key) (name name))
 | 
					 | 
				
			||||||
                          (define-key evil-normal-state-map (kbd (concat "]" key))
 | 
					 | 
				
			||||||
                            `(lambda () (interactive)
 | 
					 | 
				
			||||||
                               (evil-textobj-tree-sitter-goto-textobj (concat ',name ".outer"))))
 | 
					 | 
				
			||||||
                          (define-key evil-normal-state-map (kbd (concat "[" key))
 | 
					 | 
				
			||||||
                            `(lambda () (interactive)
 | 
					 | 
				
			||||||
                               (evil-textobj-tree-sitter-goto-textobj (concat ',name ".outer") t)))
 | 
					 | 
				
			||||||
                          (define-key evil-normal-state-map (kbd (concat "]" (upcase key)))
 | 
					 | 
				
			||||||
                            `(lambda () (interactive)
 | 
					 | 
				
			||||||
                               (evil-textobj-tree-sitter-goto-textobj (concat ',name ".outer") nil t)))
 | 
					 | 
				
			||||||
                          (define-key evil-normal-state-map (kbd (concat "[" (upcase key)))
 | 
					 | 
				
			||||||
                            `(lambda () (interactive)
 | 
					 | 
				
			||||||
                               (evil-textobj-tree-sitter-goto-textobj (concat ',name ".outer") t t)))))
 | 
					 | 
				
			||||||
          ))
 | 
					 | 
				
			||||||
    ;; Define new scope symbols for use with i and a
 | 
					 | 
				
			||||||
    (funcall define-scope "c"
 | 
					 | 
				
			||||||
             (evil-textobj-tree-sitter-get-textobj "class.outer")
 | 
					 | 
				
			||||||
             (evil-textobj-tree-sitter-get-textobj "class.inner"))
 | 
					 | 
				
			||||||
    (funcall define-scope "f"
 | 
					 | 
				
			||||||
             (evil-textobj-tree-sitter-get-textobj "function.outer")
 | 
					 | 
				
			||||||
             (evil-textobj-tree-sitter-get-textobj "function.inner"))
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    ;; Define jumps with ] and [
 | 
					 | 
				
			||||||
    (funcall define-jumps "c" "class")
 | 
					 | 
				
			||||||
    (funcall define-jumps "f" "function")))
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
;; Highlight operations
 | 
					;; Highlight operations
 | 
				
			||||||
(use-package evil-goggles
 | 
					(use-package evil-goggles
 | 
				
			||||||
| 
						 | 
					@ -307,5 +267,14 @@
 | 
				
			||||||
(use-package lsp-treemacs
 | 
					(use-package lsp-treemacs
 | 
				
			||||||
  :after (lsp-mode treemacs))
 | 
					  :after (lsp-mode treemacs))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(add-to-list 'auto-mode-alist '("\\.rs\\'" . rust-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 '("\\.toml\\'" . toml-ts-mode))
 | 
				
			||||||
 | 
					(add-to-list 'auto-mode-alist '("\\.yaml\\'" . yaml-ts-mode))
 | 
				
			||||||
 | 
					(add-hook 'rust-ts-mode-hook #'lsp-deferred)
 | 
				
			||||||
 | 
					(add-hook 'c++-ts-mode-hook #'lsp-deferred)
 | 
				
			||||||
 | 
					(add-hook 'typescript-ts-mode-hook #'lsp-deferred)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(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))
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -7,7 +7,8 @@
 | 
				
			||||||
                                             (if (plist-get args :fg) (if (nth type (plist-get args :fg))
 | 
					                                             (if (plist-get args :fg) (if (nth type (plist-get args :fg))
 | 
				
			||||||
                                                                          `(:foreground ,(nth type (plist-get args :fg)))))
 | 
					                                                                          `(:foreground ,(nth type (plist-get args :fg)))))
 | 
				
			||||||
                                             (if (plist-get args :bg) (if (nth type (plist-get args :bg))
 | 
					                                             (if (plist-get args :bg) (if (nth type (plist-get args :bg))
 | 
				
			||||||
                                                                          `(:background ,(nth type (plist-get args :bg)))))))))
 | 
					                                                                          `(:background ,(nth type (plist-get args :bg)))))
 | 
				
			||||||
 | 
					                                             (if (plist-member args :italic) '(:slant italic))))))
 | 
				
			||||||
                 `(,face
 | 
					                 `(,face
 | 
				
			||||||
                   ,`(,(funcall build-face '((min-colors 256)) 0 args)
 | 
					                   ,`(,(funcall build-face '((min-colors 256)) 0 args)
 | 
				
			||||||
                      ,(funcall build-face '((min-colors 8)) 1 args))))))
 | 
					                      ,(funcall build-face '((min-colors 8)) 1 args))))))
 | 
				
			||||||
| 
						 | 
					@ -85,13 +86,10 @@
 | 
				
			||||||
   (funcall face 'font-lock-preprocessor-face :fg preprocessor)
 | 
					   (funcall face 'font-lock-preprocessor-face :fg preprocessor)
 | 
				
			||||||
   (funcall face 'font-lock-function-name-face :fg function)
 | 
					   (funcall face 'font-lock-function-name-face :fg function)
 | 
				
			||||||
   (funcall face 'font-lock-variable-name-face :fg variable)
 | 
					   (funcall face 'font-lock-variable-name-face :fg variable)
 | 
				
			||||||
 | 
					   (funcall face 'font-lock-property-name-face :fg variable :italic)
 | 
				
			||||||
   (funcall face 'font-lock-string-face :fg string)
 | 
					   (funcall face 'font-lock-string-face :fg string)
 | 
				
			||||||
   (funcall face 'font-lock-type-face :fg type)
 | 
					   (funcall face 'font-lock-type-face :fg type)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
   ;; Treesitter
 | 
					 | 
				
			||||||
   (funcall face 'tree-sitter-hl-face:function\.call :fg function)
 | 
					 | 
				
			||||||
   (funcall face 'tree-sitter-hl-face:method\.call :fg function)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
   ;; Lsp
 | 
					   ;; Lsp
 | 
				
			||||||
   (funcall face 'lsp-face-highlight-textual :bg lsp-hover-highlight)
 | 
					   (funcall face 'lsp-face-highlight-textual :bg lsp-hover-highlight)
 | 
				
			||||||
   (funcall face 'lsp-face-highlight-read :bg lsp-hover-highlight)
 | 
					   (funcall face 'lsp-face-highlight-read :bg lsp-hover-highlight)
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue