This commit is contained in:
2023-09-13 12:54:21 +02:00
parent db1d04323f
commit a94cd9b513

164
.emacs
View File

@@ -1,6 +1,6 @@
;(toggle-debug-on-error) ;;(toggle-debug-on-error)
(setq gnutls-algorithm-priority "NORMAL:-VERS-TLS1.3") (setq gnutls-algorithm-priority "NORMAL:-VERS-TLS1.3")
;lsp performances ;;lsp performances
(setq gc-cons-threshold (* 100 1024 1024));; 100MB (setq gc-cons-threshold (* 100 1024 1024));; 100MB
(setq read-process-output-max (* 3 1024 1024));; 3MB (setq read-process-output-max (* 3 1024 1024));; 3MB
@@ -13,9 +13,9 @@
'(c-basic-offset 4) '(c-basic-offset 4)
'(c-default-style '(c-default-style
'((c++-mode . "tuleu-c++") '((c++-mode . "tuleu-c++")
(java-mode . "java") (java-mode . "java")
(awk-mode . "awk") (awk-mode . "awk")
(other . "gnu"))) (other . "gnu")))
'(company-idle-delay 20.0) '(company-idle-delay 20.0)
'(compilation-scroll-output 'first-error) '(compilation-scroll-output 'first-error)
'(custom-safe-themes '(custom-safe-themes
@@ -35,29 +35,28 @@
'(org-agenda-files '("~/org/1.TODO.org")) '(org-agenda-files '("~/org/1.TODO.org"))
'(package-enable-at-startup nil) '(package-enable-at-startup nil)
'(package-selected-packages '(package-selected-packages
'(doom-themes company-go zenburn-theme langtool smart-tabs-mode typescript-mode protobuf-mode opencl-mode glsl-mode go-mode markdown-mode srefactor irony cmake-mode company magit use-package)) '(aggressive-indent doom-themes company-go zenburn-theme langtool smart-tabs-mode typescript-mode protobuf-mode opencl-mode glsl-mode go-mode markdown-mode srefactor irony cmake-mode company magit use-package))
'(safe-local-variable-values '(safe-local-variable-values
'((vc-follow-symlinks . t) '((vc-follow-symlinks . t)
(TeX-master . t) (TeX-master . t)
(TeX-parse-self . t))) (TeX-parse-self . t)))
'(tab-width 4) '(tab-width 4)
'(warning-suppress-log-types '((comp))) '(warning-suppress-log-types '((comp)))
'(whitespace-style '(whitespace-style
'(face trailing tabs lines-tail newline space-before-tab::tab space-before-tab::space space-before-tab tab-mark))) '(face trailing tabs lines-tail newline space-before-tab::tab space-before-tab::space space-before-tab tab-mark)))
(if (display-graphic-p) (if (display-graphic-p)
(progn (progn
(if (fboundp 'tool-bar-mode) (if (fboundp 'tool-bar-mode)
(tool-bar-mode -1)) (tool-bar-mode -1))
) )
(progn (if (fboundp 'toggle-scroll-bar)
(if (fboundp 'toggle-scroll-bar) (toggle-scroll-bar -1))
(toggle-scroll-bar -1)) (menu-bar-mode -1)
(menu-bar-mode -1) (if (fboundp 'tool-bar-mode)
(if (fboundp 'tool-bar-mode) (tool-bar-mode -1))
(tool-bar-mode -1))
)
) )
)
(add-to-list 'default-frame-alist '(fullscreen . maximized)) (add-to-list 'default-frame-alist '(fullscreen . maximized))
(add-hook 'before-save-hook 'delete-trailing-whitespace) (add-hook 'before-save-hook 'delete-trailing-whitespace)
@@ -69,11 +68,12 @@
("gnu" . "https://elpa.gnu.org/packages/"))) ("gnu" . "https://elpa.gnu.org/packages/")))
(package-initialize) (package-initialize)
(eval-when-compile (eval-when-compile
(unless (package-installed-p 'use-package) (unless (package-installed-p 'use-package)
(unless package-archive-contents (unless package-archive-contents
(package-refresh-contents)) (package-refresh-contents))
(package-install 'use-package)) (package-install 'use-package)
(require 'use-package)) )
(require 'use-package))
(require 'use-package) (require 'use-package)
(require 'use-package-ensure) (require 'use-package-ensure)
@@ -88,7 +88,7 @@
:config :config
(delight '((eldoc-mode nil "eldoc") (delight '((eldoc-mode nil "eldoc")
(subword-mode nil "subword"))) (subword-mode nil "subword")))
) )
(use-package multiple-cursors (use-package multiple-cursors
:bind (("C-c m >" . 'mc/mark-next-like-this) :bind (("C-c m >" . 'mc/mark-next-like-this)
@@ -98,6 +98,39 @@
) )
) )
(use-package doom-themes
:config
(setq doom-themes-enable-bold t ; if nil, bold is universally disabled
doom-themes-enable-italic t) ; if nil, italics is universally disabled
(load-theme 'doom-spacegrey t)
;; Enable flashing mode-line on errors
(doom-themes-visual-bell-config )
;; or for treemacs users
;(setq doom-themes-treemacs-theme "doom-atom") ; use "doom-colors" for less minimal icon theme
;(doom-themes-treemacs-config)
;; Corrects (and improves) org-mode's native fontification.
(doom-themes-org-config)
(defun atu/toggle-display-line-mode ()
"toggle between relative and absolute display-line-mode"
(interactive)
(if (eq display-line-numbers 'relative)
(setq display-line-numbers 'absolute)
(setq display-line-numbers 'relative)
)
)
:init
(global-whitespace-mode 1)
:bind (
("C-c d l" . 'atu/toggle-display-line-mode)
)
)
(custom-set-faces
;; custom-set-faces was added by Custom.
;; If you edit it by hand, you could mess it up, so be careful.
;; Your init file should contain only one such instance.
;; If there is more than one, they won't work right.
)
;; (use-package ansi-color ;; (use-package ansi-color
;; :config ;; :config
@@ -112,9 +145,9 @@
(setq-default tab-width 4) ; or any other preferred value (setq-default tab-width 4) ; or any other preferred value
(setq cua-auto-tabify-rectangles nil) (setq cua-auto-tabify-rectangles nil)
(defadvice indent-relative (around smart-tabs activate) (defadvice indent-relative (around smart-tabs activate)
(let ((indent-tabs-mode nil)) ad-do-it)) (let ((indent-tabs-mode nil)) ad-do-it))
(defadvice indent-according-to-mode (around smart-tabs activate) (defadvice indent-according-to-mode (around smart-tabs activate)
(let ((indent-tabs-mode indent-tabs-mode)) (let ((indent-tabs-mode indent-tabs-mode))
(if (memq indent-line-function (if (memq indent-line-function
'(indent-relative '(indent-relative
indent-relative-maybe)) indent-relative-maybe))
@@ -133,11 +166,6 @@
(c-indent-region . c-basic-offset) (c-indent-region . c-basic-offset)
) )
) )
(smart-tabs-add-language-support html html-mode-hook
(
(sgml-indent-line . sgml-basic-offset)
)
)
(smart-tabs-add-language-support glsl glsl-mode-hook (smart-tabs-add-language-support glsl glsl-mode-hook
( (
(c-indent-line . c-basic-offset) (c-indent-line . c-basic-offset)
@@ -150,16 +178,20 @@
(c-indent-region . c-basic-offset) (c-indent-region . c-basic-offset)
) )
) )
(smart-tabs-insinuate 'c 'c++ 'cmake 'nxml 'protobuf 'html 'glsl) (smart-tabs-insinuate 'c 'c++ 'cmake 'nxml 'protobuf 'glsl)
) )
(use-package aggressive-indent
:hook
(emacs-lisp-mode . aggressive-indent-mode)
)
(use-package magit (use-package magit
:commands (magit-status) :commands (magit-status)
:bind ("C-x g" . magit-status) :bind ("C-x g" . magit-status)
:hook :hook
(magit-mode . (magit-mode .
(lambda () (setq-local whitespace-style nil))) (lambda () (setq-local whitespace-style nil)))
:custom :custom
(magit-credential-cache-daemon-socket nil) (magit-credential-cache-daemon-socket nil)
) )
@@ -185,8 +217,8 @@
(yas-global-mode) (yas-global-mode)
:after (company) :after (company)
:bind ( :map yas-minor-mode-map :bind ( :map yas-minor-mode-map
("TAB" . nil) ("TAB" . nil)
) )
) )
(use-package yasnippet-snippets (use-package yasnippet-snippets
@@ -195,8 +227,8 @@
(use-package projectile (use-package projectile
:bind ( :map projectile-mode-map :bind ( :map projectile-mode-map
( "C-c p" . 'projectile-command-map) ( "C-c p" . 'projectile-command-map)
) )
:delight :delight
:config :config
(projectile-mode +1) (projectile-mode +1)
@@ -276,7 +308,6 @@
(treemacs-project-follow-mode t) (treemacs-project-follow-mode t)
) )
(use-package treemacs-projectile) (use-package treemacs-projectile)
(use-package nerd-icons ) (use-package nerd-icons )
@@ -285,9 +316,9 @@
:config :config
(treemacs-load-theme "nerd-icons")) (treemacs-load-theme "nerd-icons"))
;; (use-package lsp-treemacs (use-package lsp-treemacs
;; :after lsp-mode :after lsp-mode
;; ) )
(use-package lsp-ltex (use-package lsp-ltex
:init :init
@@ -303,15 +334,11 @@
(python-mode . (lambda () (python-mode . (lambda ()
(require 'lsp-pyright) (require 'lsp-pyright)
(lsp-deferred))) ; or lsp-deferred (lsp-deferred))) ; or lsp-deferred
) )
(use-package yaml-mode) (use-package yaml-mode)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; PYTHON
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(use-package python (use-package python
:custom :custom
(python-shell-interpreter "ipython") (python-shell-interpreter "ipython")
@@ -413,8 +440,8 @@
) )
:hook :hook
(python-mode . atu/pyls-set-jedi-environment) (python-mode . atu/pyls-set-jedi-environment)
;(python-mode . atu/activate-flycheck) ;(python-mode . atu/activate-flycheck)
;(python-mode . atu/append-workspace-extra-paths) ;(python-mode . atu/append-workspace-extra-paths)
(lsp-managed-mode . atu/flycheck-set-python-paths) (lsp-managed-mode . atu/flycheck-set-python-paths)
) )
@@ -559,10 +586,6 @@
(use-package glsl-mode) (use-package glsl-mode)
(use-package opencl-mode) (use-package opencl-mode)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; Protobuf
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(use-package protobuf-mode (use-package protobuf-mode
:mode "\\.proto\\'" :mode "\\.proto\\'"
:config :config
@@ -603,7 +626,7 @@
'(("css" . "\\.\\(post\\)?css\\'"))) '(("css" . "\\.\\(post\\)?css\\'")))
:hook :hook
(web-mode . lsp-deferred) (web-mode . lsp-deferred)
) )
(use-package dockerfile-mode (use-package dockerfile-mode
@@ -612,39 +635,6 @@
) )
(use-package doom-themes
:config
(setq doom-themes-enable-bold t ; if nil, bold is universally disabled
doom-themes-enable-italic t) ; if nil, italics is universally disabled
(load-theme 'doom-spacegrey t)
;; Enable flashing mode-line on errors
(doom-themes-visual-bell-config )
;; or for treemacs users
;(setq doom-themes-treemacs-theme "doom-atom") ; use "doom-colors" for less minimal icon theme
;(doom-themes-treemacs-config)
;; Corrects (and improves) org-mode's native fontification.
(doom-themes-org-config)
(defun atu/toggle-display-line-mode ()
"toggle between relative and absolute display-line-mode"
(interactive)
(if (eq display-line-numbers 'relative)
(setq display-line-numbers 'absolute)
(setq display-line-numbers 'relative)
)
)
:init
(global-whitespace-mode 1)
:bind (
("C-c d l" . 'atu/toggle-display-line-mode)
)
)
(custom-set-faces
;; custom-set-faces was added by Custom.
;; If you edit it by hand, you could mess it up, so be careful.
;; Your init file should contain only one such instance.
;; If there is more than one, they won't work right.
)
;; Local Variables: ;; Local Variables:
;; vc-follow-symlinks: t ;; vc-follow-symlinks: t