[emacs] Switch to use-package everywhere.
This commit is contained in:
		
							
								
								
									
										173
									
								
								.emacs.d/init.el
									
									
									
									
									
								
							
							
						
						
									
										173
									
								
								.emacs.d/init.el
									
									
									
									
									
								
							@@ -1,4 +1,6 @@
 | 
				
			|||||||
;;; init.el --- Init file for emacs
 | 
					;;; init.el --- -*- lexical-binding: t -*-
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					;;; Init file for emacs
 | 
				
			||||||
 | 
					
 | 
				
			||||||
;;; Commentary:
 | 
					;;; Commentary:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -11,25 +13,57 @@
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
;; Themes
 | 
					;; Themes
 | 
				
			||||||
(setq custom-theme-directory "~/.emacs.d/themes/")
 | 
					(setq custom-theme-directory "~/.emacs.d/themes/")
 | 
				
			||||||
 | 
					(setq gnutls-algorithm-priority "NORMAL:-VERS-TLS1.3")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
;; Packages
 | 
					;; Packages
 | 
				
			||||||
(require 'package) ;; You might already have this line
 | 
					(require 'package) ;; You might already have this line
 | 
				
			||||||
(add-to-list 'package-archives
 | 
					(setq package-user-dir (expand-file-name "elpa" user-emacs-directory)
 | 
				
			||||||
             '("melpa" . "http://melpa.org/packages/"))
 | 
					      package-archives
 | 
				
			||||||
(when (< emacs-major-version 24)
 | 
					      '(("gnu"   . "http://elpa.gnu.org/packages/")
 | 
				
			||||||
  ;; For important compatibility libraries like cl-lib
 | 
					        ("melpa" . "http://melpa.org/packages/")
 | 
				
			||||||
  (add-to-list 'package-archives '("gnu" . "http://elpa.gnu.org/packages/")))
 | 
					        ("cselpa" . "http://elpa.thecybershadow.net/packages/")))
 | 
				
			||||||
(setq package-enable-at-startup nil)
 | 
					 | 
				
			||||||
(package-initialize) ;; You might already have this line
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
(load-theme 'material t)
 | 
					(unless (bound-and-true-p package--initialized)
 | 
				
			||||||
 | 
					  (setq package-enable-at-startup nil)          ; To prevent initializing twice
 | 
				
			||||||
 | 
					  (package-initialize))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					;; set use-package-verbose to t for interpreted .emacs,
 | 
				
			||||||
 | 
					;; and to nil for byte-compiled .emacs.elc.
 | 
				
			||||||
 | 
					(eval-and-compile
 | 
				
			||||||
 | 
					  (setq use-package-verbose (not (bound-and-true-p byte-compile-current-file))))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					;; Install use-package if not installed
 | 
				
			||||||
 | 
					(unless (package-installed-p 'use-package)
 | 
				
			||||||
 | 
					  (package-refresh-contents)
 | 
				
			||||||
 | 
					  (package-install 'use-package))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(eval-and-compile
 | 
				
			||||||
 | 
					  (setq use-package-always-ensure t)
 | 
				
			||||||
 | 
					  (setq use-package-expand-minimally t)
 | 
				
			||||||
 | 
					  (setq use-package-compute-statistics t)
 | 
				
			||||||
 | 
					  (setq use-package-enable-imenu-support t))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(eval-when-compile
 | 
				
			||||||
 | 
					  (require 'use-package)
 | 
				
			||||||
 | 
					  (require 'bind-key))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(use-package auto-package-update
 | 
				
			||||||
 | 
					  :if (not (daemonp))
 | 
				
			||||||
 | 
					  :custom
 | 
				
			||||||
 | 
					  (auto-package-update-interval 7) ;; in days
 | 
				
			||||||
 | 
					  (auto-package-update-prompt-before-update t)
 | 
				
			||||||
 | 
					  (auto-package-update-delete-old-versions t)
 | 
				
			||||||
 | 
					  (auto-package-update-hide-results t)
 | 
				
			||||||
 | 
					  :config
 | 
				
			||||||
 | 
					  (auto-package-update-maybe))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(use-package diminish)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(require 'iso-transl)
 | 
					(require 'iso-transl)
 | 
				
			||||||
(require 'use-package)
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
(setq use-package-verbose t)
 | 
					(global-display-line-numbers-mode)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
;; No menu, scrollbar, display line and column
 | 
					;; No menu, scrollbar, displayline and column
 | 
				
			||||||
(menu-bar-mode -1)
 | 
					(menu-bar-mode -1)
 | 
				
			||||||
(tool-bar-mode -1)
 | 
					(tool-bar-mode -1)
 | 
				
			||||||
(when (display-graphic-p)
 | 
					(when (display-graphic-p)
 | 
				
			||||||
@@ -53,9 +87,34 @@
 | 
				
			|||||||
;; M-> (end-of-buffer) : Déplacement à la fin du buffer.
 | 
					;; M-> (end-of-buffer) : Déplacement à la fin du buffer.
 | 
				
			||||||
;; M-< (beginning-of-buffer) : Déplacement au début du buffer.
 | 
					;; M-< (beginning-of-buffer) : Déplacement au début du buffer.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(use-package material-theme
 | 
				
			||||||
 | 
					  :config
 | 
				
			||||||
 | 
					  (load-theme 'material t))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
;; No split screen at startup
 | 
					;; No split screen at startup
 | 
				
			||||||
(setq inhibit-startup-screen t)
 | 
					(setq inhibit-startup-screen t)
 | 
				
			||||||
 | 
					;; Or if you use use-package
 | 
				
			||||||
 | 
					(setq dashboard-items '((recents  . 5)
 | 
				
			||||||
 | 
					                        ;; (bookmarks . 5)
 | 
				
			||||||
 | 
					                        (projects . 5)
 | 
				
			||||||
 | 
					                        (agenda . 5)
 | 
				
			||||||
 | 
					                        (registers . 5)))
 | 
				
			||||||
 | 
					(setq dashboard-set-heading-icons t)
 | 
				
			||||||
 | 
					(setq dashboard-set-file-icons t)
 | 
				
			||||||
 | 
					(setq dashboard-set-navigator t)
 | 
				
			||||||
 | 
					(use-package dashboard
 | 
				
			||||||
 | 
					  :ensure t
 | 
				
			||||||
 | 
					  :config
 | 
				
			||||||
 | 
					  (dashboard-setup-startup-hook))
 | 
				
			||||||
 | 
					(add-hook 'dashboard-mode-hook (lambda () (display-line-numbers-mode -1)))
 | 
				
			||||||
 | 
					(setq initial-buffer-choice (lambda () (get-buffer "*dashboard*")))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(use-package doom-modeline
 | 
				
			||||||
 | 
					  :ensure t
 | 
				
			||||||
 | 
					  :hook (after-init . doom-modeline-mode))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(use-package ace-window
 | 
				
			||||||
 | 
					  :bind ("C-x C-o" . ace-window))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
;; Encoding
 | 
					;; Encoding
 | 
				
			||||||
(set-language-environment "UTF-8")
 | 
					(set-language-environment "UTF-8")
 | 
				
			||||||
@@ -78,32 +137,31 @@
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
;; Retrieve PATH from fish shell
 | 
					;; Retrieve PATH from fish shell
 | 
				
			||||||
(when (memq window-system '(mac ns x))
 | 
					(when (memq window-system '(mac ns x))
 | 
				
			||||||
  (setq exec-path-from-shell-shell-name "/usr/bin/fish")
 | 
					  (setq exec-path-from-shell-shell-name "/usr/local/bin/fish")
 | 
				
			||||||
  (exec-path-from-shell-initialize))
 | 
					  (exec-path-from-shell-initialize))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
;; Auto complete + Yasnippet
 | 
					;; Auto complete + Yasnippet
 | 
				
			||||||
 | 
					(use-package projectile
 | 
				
			||||||
(use-package sr-speedbar
 | 
					 | 
				
			||||||
  :config
 | 
					  :config
 | 
				
			||||||
  (setq speedbar-show-unknown-files t)
 | 
					  (projectile-mode 1)
 | 
				
			||||||
  (setq speedbar-use-images t))
 | 
					  (define-key projectile-mode-map (kbd "s-p") 'projectile-command-map)
 | 
				
			||||||
 | 
					  (define-key projectile-mode-map (kbd "C-c p") 'projectile-command-map)
 | 
				
			||||||
 | 
					  (setq projectile-enable-caching t))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(use-package semantic/sb
 | 
					(use-package helm
 | 
				
			||||||
  :config
 | 
					 | 
				
			||||||
  ;; (semantic-mode)
 | 
					 | 
				
			||||||
  (global-set-key (kbd "C-c C-k C-l") 'sr-speedbar-toggle))
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
(use-package helm-config
 | 
					 | 
				
			||||||
  :config
 | 
					  :config
 | 
				
			||||||
  (global-set-key (kbd "M-x")      'helm-M-x)
 | 
					  (global-set-key (kbd "M-x")      'helm-M-x)
 | 
				
			||||||
  (global-set-key (kbd "C-x r b")  'helm-filtered-bookmarks)
 | 
					  (global-set-key (kbd "C-x r b")  'helm-filtered-bookmarks)
 | 
				
			||||||
  (global-set-key (kbd "C-x C-f")  'helm-find-files)
 | 
					  (global-set-key (kbd "C-x C-f")  'helm-find-files)
 | 
				
			||||||
  (global-set-key (kbd "C-x C-b")  'helm-buffers-list)
 | 
					  (global-set-key (kbd "C-x C-b")  'helm-buffers-list)
 | 
				
			||||||
  (helm-mode 1)
 | 
					  (helm-mode 1)
 | 
				
			||||||
  (projectile-global-mode)
 | 
					  (add-to-list 'helm-boring-buffer-regexp-list "\\*.*"))
 | 
				
			||||||
  (setq projectile-completion-system 'helm)
 | 
					
 | 
				
			||||||
  (add-to-list 'helm-boring-buffer-regexp-list "\\*.*")
 | 
					(use-package helm-projectile
 | 
				
			||||||
  (helm-projectile-on))
 | 
					  :after (helm projectile)
 | 
				
			||||||
 | 
					  :config
 | 
				
			||||||
 | 
					    (setq projectile-completion-system 'helm)
 | 
				
			||||||
 | 
					    (helm-projectile-on))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(use-package yasnippet
 | 
					(use-package yasnippet
 | 
				
			||||||
  :config
 | 
					  :config
 | 
				
			||||||
@@ -111,30 +169,43 @@
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
(use-package flycheck
 | 
					(use-package flycheck
 | 
				
			||||||
  :config
 | 
					  :config
 | 
				
			||||||
  (require 'flycheck-color-mode-line)
 | 
					 | 
				
			||||||
  (add-hook 'flycheck-mode-hook 'flycheck-color-mode-line-mode)
 | 
					 | 
				
			||||||
  (add-hook 'flycheck-mode-hook 'flycheck-pos-tip-mode)
 | 
					 | 
				
			||||||
  (add-hook 'flycheck-after-syntax-check-hook 'flycheck-autolist-hook)
 | 
					  (add-hook 'flycheck-after-syntax-check-hook 'flycheck-autolist-hook)
 | 
				
			||||||
  (global-flycheck-mode)
 | 
					  (global-flycheck-mode)
 | 
				
			||||||
  (setq flycheck-emacs-lisp-load-path "inherit")
 | 
					  (setq flycheck-emacs-lisp-load-path "inherict")
 | 
				
			||||||
  (setq flycheck-clang-args '("-stdlib=libc++" "-W" "-Wall"))
 | 
					  (setq flycheck-clang-args '("-stdlib=libc++" "-W" "-Wall"))
 | 
				
			||||||
  (add-hook 'c++-mode-hook
 | 
					  (add-hook 'c++-mode-hook
 | 
				
			||||||
            (lambda ()
 | 
					            (lambda ()
 | 
				
			||||||
              (setq-local flycheck-clang-language-standard "c++14"))))
 | 
					              (setq-local flycheck-clang-language-standard "c++14"))))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(use-package flycheck-pos-tip
 | 
				
			||||||
 | 
					  :after (flycheck)
 | 
				
			||||||
 | 
					  :config
 | 
				
			||||||
 | 
					  (add-hook 'flycheck-mode-hook 'flycheck-pos-tip-mode))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					(use-package flycheck-color-mode-line
 | 
				
			||||||
 | 
					  :after (flycheck)
 | 
				
			||||||
 | 
					  :config
 | 
				
			||||||
 | 
					  (add-hook 'flycheck-mode-hook 'flycheck-color-mode-line-mode))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(use-package company
 | 
					(use-package company
 | 
				
			||||||
  :init
 | 
					 | 
				
			||||||
  (require 'company-auctex)
 | 
					 | 
				
			||||||
  (setq company-backends (append company-backends '(company-c-headers
 | 
					 | 
				
			||||||
                                                    company-jedi
 | 
					 | 
				
			||||||
                                                    company-web-html)))
 | 
					 | 
				
			||||||
  (add-hook 'LaTeX-mode-hook 'company-auctex-init)
 | 
					 | 
				
			||||||
  :config
 | 
					  :config
 | 
				
			||||||
  (add-hook 'after-init-hook 'global-company-mode)
 | 
					  (add-hook 'after-init-hook 'global-company-mode)
 | 
				
			||||||
  (global-set-key (kbd "M-/") 'company-complete)
 | 
					  (global-set-key (kbd "M-/") 'company-complete))
 | 
				
			||||||
  (add-hook 'c++-mode-hook
 | 
					
 | 
				
			||||||
            (lambda ()
 | 
					(use-package company-c-headers
 | 
				
			||||||
              (setq-local company-clang-arguments '("-std=c++14")))))
 | 
					  :config
 | 
				
			||||||
 | 
					  (add-to-list 'company-backends 'company-c-headers))
 | 
				
			||||||
 | 
					(use-package company-jedi
 | 
				
			||||||
 | 
					  :config
 | 
				
			||||||
 | 
					  (add-to-list 'company-backends 'company-jedi))
 | 
				
			||||||
 | 
					(use-package company-web
 | 
				
			||||||
 | 
					  :config
 | 
				
			||||||
 | 
					  (add-to-list 'company-backends 'company-web-html))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					; C++
 | 
				
			||||||
 | 
					(use-package modern-cpp-font-lock
 | 
				
			||||||
 | 
					  :ensure t)
 | 
				
			||||||
 | 
					(add-hook 'c++-mode-hook #'modern-c++-font-lock-mode)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
;; Doc mode
 | 
					;; Doc mode
 | 
				
			||||||
(require 'doc-mode)
 | 
					(require 'doc-mode)
 | 
				
			||||||
@@ -142,7 +213,8 @@
 | 
				
			|||||||
(add-hook 'c++-mode-common-hook 'doc-mode)
 | 
					(add-hook 'c++-mode-common-hook 'doc-mode)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
;; Latex
 | 
					;; Latex
 | 
				
			||||||
(use-package tex-mik
 | 
					(use-package auctex
 | 
				
			||||||
 | 
					  :defer t
 | 
				
			||||||
    :config
 | 
					    :config
 | 
				
			||||||
    (setq TeX-auto-save t)
 | 
					    (setq TeX-auto-save t)
 | 
				
			||||||
    (setq TeX-parse-self t)
 | 
					    (setq TeX-parse-self t)
 | 
				
			||||||
@@ -201,6 +273,18 @@
 | 
				
			|||||||
    (require 'tex)
 | 
					    (require 'tex)
 | 
				
			||||||
    (TeX-global-PDF-mode t)
 | 
					    (TeX-global-PDF-mode t)
 | 
				
			||||||
)
 | 
					)
 | 
				
			||||||
 | 
					(use-package company-auctex
 | 
				
			||||||
 | 
					  :after (auctex company)
 | 
				
			||||||
 | 
					  :config (company-auctex-init))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					;; (add-to-list 'ispell-local-dictionary-alist '("francais-hunspell"
 | 
				
			||||||
 | 
					;;                                               "[[:alpha:]]"
 | 
				
			||||||
 | 
					;;                                               "[^[:alpha]]"
 | 
				
			||||||
 | 
					;;                                               "[']"
 | 
				
			||||||
 | 
					;;                                               t
 | 
				
			||||||
 | 
					;;                                               ("-d" "fr_FR")
 | 
				
			||||||
 | 
					;;                                               nil
 | 
				
			||||||
 | 
					;;                                               iso-8859-1))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
;; magit
 | 
					;; magit
 | 
				
			||||||
(use-package magit
 | 
					(use-package magit
 | 
				
			||||||
@@ -243,8 +327,6 @@
 | 
				
			|||||||
(setq c-default-style "k&r")
 | 
					(setq c-default-style "k&r")
 | 
				
			||||||
(setq c-basic-offset 4)
 | 
					(setq c-basic-offset 4)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
(use-package c++1x-minor-mode)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
(defun ac-cc-mode-setup ()
 | 
					(defun ac-cc-mode-setup ()
 | 
				
			||||||
  "Initialization hook for CC-mode runs before any other hooks."
 | 
					  "Initialization hook for CC-mode runs before any other hooks."
 | 
				
			||||||
  (hide-ifdef-mode)
 | 
					  (hide-ifdef-mode)
 | 
				
			||||||
@@ -314,11 +396,10 @@
 | 
				
			|||||||
(add-hook 'LaTeX-mode-hook 'key-latex-mode-setup)
 | 
					(add-hook 'LaTeX-mode-hook 'key-latex-mode-setup)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
;; python
 | 
					;; python
 | 
				
			||||||
 | 
					(use-package flycheck-mypy)
 | 
				
			||||||
(use-package elpy
 | 
					(use-package elpy
 | 
				
			||||||
  :ensure t
 | 
					 | 
				
			||||||
  :config
 | 
					  :config
 | 
				
			||||||
  (when (load "flycheck" t t)
 | 
					  (when (load "flycheck" t t)
 | 
				
			||||||
    (require 'flycheck-mypy)
 | 
					 | 
				
			||||||
    (flycheck-add-next-checker 'python-flake8 'python-mypy)
 | 
					    (flycheck-add-next-checker 'python-flake8 'python-mypy)
 | 
				
			||||||
    (setq elpy-modules (delq 'elpy-module-flymake elpy-modules))
 | 
					    (setq elpy-modules (delq 'elpy-module-flymake elpy-modules))
 | 
				
			||||||
    (add-hook 'elpy-mode-hook 'flycheck-mode))
 | 
					    (add-hook 'elpy-mode-hook 'flycheck-mode))
 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										3
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										3
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							@@ -4,10 +4,13 @@
 | 
				
			|||||||
.emacs.d/.python-environments
 | 
					.emacs.d/.python-environments
 | 
				
			||||||
.emacs.d/auto-save-list
 | 
					.emacs.d/auto-save-list
 | 
				
			||||||
.emacs.d/elpa
 | 
					.emacs.d/elpa
 | 
				
			||||||
 | 
					.emacs.d/.last-package-update-day
 | 
				
			||||||
 | 
					.emacs.d/projectile.cache
 | 
				
			||||||
.emacs.d/projectile-bookmarks.eld
 | 
					.emacs.d/projectile-bookmarks.eld
 | 
				
			||||||
.emacs.d/eshell/
 | 
					.emacs.d/eshell/
 | 
				
			||||||
.emacs.d/transient/
 | 
					.emacs.d/transient/
 | 
				
			||||||
.emacs.d/elpy/
 | 
					.emacs.d/elpy/
 | 
				
			||||||
 | 
					.emacs.d/recentf
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Mac file
 | 
					# Mac file
 | 
				
			||||||
**/.DS_Store
 | 
					**/.DS_Store
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user