Commit 4eb85f7e75e9b56f7f36ce04099daff280cfcbdd

Thomas de Grivel 2022-01-13T09:22:26

emacs conf

diff --git a/.emacs b/.emacs
index dc4b9ad..e167e63 100644
--- a/.emacs
+++ b/.emacs
@@ -1,37 +1,56 @@
 
+(show-paren-mode)
+
 ;;  Packages
+(require 'package)
+(add-to-list 'package-archives '("melpa" . "http://melpa.org/packages/") t)
 (package-initialize)
-(add-to-list 'package-archives
-             (cons "melpa" "https://melpa.org/packages/") t)
+(setq package-selected-packages
+  '(dart-mode lsp-mode lsp-dart lsp-treemacs flycheck company
+    lsp-ui hover web-mode alchemist elixir-mode))
+(when (cl-find-if-not #'package-installed-p package-selected-packages)
+  (package-refresh-contents)
+  (mapc #'package-install package-selected-packages))
 
 ;;  Adams
 (add-to-list 'auto-mode-alist '("\\.adams\\'" . lisp-mode))
 
-;;  web-mode
-(add-to-list 'auto-mode-alist '("\\.erb\\'" . web-mode))
-(add-to-list 'auto-mode-alist '("\\.eex\\'" . web-mode))
+;;  Dart
+(add-hook 'dart-mode-hook 'lsp)
+(setq gc-cons-threshold (* 100 1024 1024)
+      read-process-output-max (* 1024 1024)
+      company-minimum-prefix-length 1
+      lsp-lens-enable t
+      lsp-signature-auto-activate nil)
 
 ;;  Erlang
-(add-to-list 'load-path "/usr/local/lib/erlang21/lib/tools-3.0.2/emacs")
-(setq erlang-root-dir "/usr/local/lib/erlang21")
-(setq exec-path (cons "/usr/local/lib/erlang21/bin" exec-path))
+(add-to-list 'load-path "/opt/homebrew/lib/erlang/lib/tools-3.5.2/emacs")
+(setq erlang-root-dir "/opt/homebrew/lib/erlang")
+(setq exec-path (cons "/opt/homebrew/lib/erlang/bin" exec-path))
 (require 'erlang-start)
 
+;;  Ruby
+(setq ruby-insert-encoding-magic-comment nil)
+
 ;;  slime
 (add-to-list 'load-path "~/common-lisp/slime/slime/")
 (require 'slime-autoloads)
 (add-to-list 'slime-contribs 'slime-fancy)
 (setq inferior-lisp-program
-      "/usr/local/bin/sbcl")
+      "/opt/homebrew/bin/sbcl")
 (setq common-lisp-hyperspec-root
-      "/usr/share/doc/hyperspec/HyperSpec/")
+      "/opt/homebrew/share/doc/hyperspec/HyperSpec/")
+(setq common-lisp-hyperspec-symbol-table
+      (concat common-lisp-hyperspec-root "Data/Map_Sym.txt"))
+(setq common-lisp-hyperspec-issuex-table
+      (concat common-lisp-hyperspec-root "Data/Map_IssX.txt"))
 (setq slime-net-coding-system
       'utf-8-unix)
 
-;;  ruby
-(setq ruby-insert-encoding-magic-comment nil)
+;;  web-mode
+(add-to-list 'auto-mode-alist '("\\.erb\\'" . web-mode))
+(add-to-list 'auto-mode-alist '("\\.eex\\'" . web-mode))
 
-;;  customize
 (custom-set-variables
  ;; custom-set-variables was added by Custom.
  ;; If you edit it by hand, you could mess it up, so be careful.
@@ -45,23 +64,19 @@
  '(inhibit-startup-screen t)
  '(js-indent-level 2)
  '(menu-bar-mode nil)
- '(package-selected-packages '(web-mode alchemist elixir-mode))
- '(scroll-bar-mode nil)
- '(show-paren-mode t)
- '(tool-bar-mode nil)
+ '(package-selected-packages '(haml-mode alchemist elixir-mode json-mode web-mode))
+ '(web-mode-attr-indent-offset nil)
  '(web-mode-code-indent-offset 2)
- '(web-mode-css-indent-offset 2)
  '(web-mode-markup-indent-offset 2))
 (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.
- '(default ((t (:inherit nil :extend nil :stipple nil :background "#fff" :foreground "#000" :inverse-video nil :box nil :strike-through nil :overline nil :underline nil :slant normal :weight normal :height 1 :width normal :foundry "default" :family "default"))))
+ '(default ((t (:inherit nil :extend nil :stipple nil :foreground "#000" :inverse-video nil :box nil :strike-through nil :overline nil :underline nil :slant normal :weight normal :height 100 :width normal :foundry "courier" :family "adobe"))))
  '(fringe ((t (:background "white"))))
  '(mode-line ((t (:background "gray" :foreground "black"))))
  '(mode-line-inactive ((t (:inherit mode-line :background "grey" :foreground "gray30"))))
- '(region ((t nil)))
  '(window-divider ((t (:foreground "gray"))))
  '(window-divider-first-pixel ((t (:foreground "blue"))))
  '(window-divider-last-pixel ((t (:foreground "gray")))))