Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
E
emacs
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Package registry
Model registry
Operate
Environments
Terraform modules
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
DOSCH Philippe
emacs
Commits
0118b288
Commit
0118b288
authored
2 years ago
by
Philippe Dosch
Browse files
Options
Downloads
Patches
Plain Diff
Refactoring après ubuntu 23.04
parent
97cd6e1a
Branches
Branches containing commit
No related tags found
No related merge requests found
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
.emacs
+50
-276
50 additions, 276 deletions
.emacs
with
50 additions
and
276 deletions
.emacs
+
50
−
276
View file @
0118b288
...
...
@@ -12,25 +12,6 @@
;; Chargement principal
(require 'package)
(custom-set-variables '(gnutls-algorithm-priority "NORMAL:-VERS-TLS1.3"))
;; Ajout de Melpa
(add-to-list 'package-archives
'(
("gnu" . "https://elpa.gnu.org/packages/")
("melpa" . "https://melpa.org/packages/")
("nongnu" . "https://elpa.nongnu.org/nongnu/")
(";TODO: romey" . "http://tromey.com/elpa/")
)
)
;; Dépôt alternatif (utile ?)
;; (add-to-list 'package-archives
;; '("gnu" . "http://elpa.gnu.org/packages/"))
;; Initialisation : utile si le reste du fichier
;; se sert de déclarations contenues dans les packages
;; (une fois que toutes les sources sont déclarées)
(package-initialize)
;; Si l'initialisation des packages a lieu au début de ce
...
...
@@ -55,9 +36,7 @@
(append
'(
"/home/phil/.lisp/"
"/home/phil/.lisp/emacs-solargraph/"
"/home/phil/.lisp/Emacs-langtool/"
"/home/phil/.lisp/emacs-everywhere//"
)
load-path))
...
...
@@ -173,16 +152,6 @@
(package-refresh-contents)
(package-install 'use-package))
;; use-package : possibilité d'essayer des packages sans
;; les installer (pratique...)
(use-package try
:ensure t)
;; quelpa : pour aller récupérer les packages dispos
;; ailleurs que sur les archives officielles
(use-package quelpa
:ensure t)
;; On ajoute une clé (un raccourci clavier) pour l'environnement perso
;; \ex{} en LaTeX
(use-package latex
...
...
@@ -191,13 +160,6 @@
(add-to-list 'LaTeX-font-list
'(?\C-x "\\ex{" "}")))
;; Pour coupler use-package et quelpa
(quelpa
'(quelpa-use-package
:fetcher github
:repo "quelpa/quelpa-use-package"))
(require 'quelpa-use-package)
;; use-package : which-key, mode mineur qui affiche
;; au bout d'1s d'inactivité dans le mini-buffer la
;; liste des keys qui complètent le début de la clé
...
...
@@ -210,24 +172,6 @@
;; Une complétion un peu plus évoluée que celle par défaut...
(global-set-key "\M-/" 'hippie-expand)
;; auto-yasnippet : création interactive de snippets
(use-package auto-yasnippet
:ensure t
:bind (("C-<f11> (" . aya-create)
("C-<f11> )" . aya-expand)
("C-<f11> s" . aya-persist-snippet)))
;; ...et sa configuration
(setq hippie-expand-try-functions-list
'(try-expand-all-abbrevs
try-expand-dabbrev
try-expand-list
try-expand-line
try-expand-dabbrev-all-buffers
try-expand-dabbrev-from-kill
try-complete-file-name-partially
try-complete-file-name))
;; La compilation accessible facilement (C-RET)
(global-set-key [(control return)] 'compile)
...
...
@@ -380,12 +324,6 @@
;; mon dépôt git)
(use-package gin-mode)
;; Pour faire ressortir l'indentation
(use-package highlight-indent-guides
:ensure t
:config
(setq highlight-indent-guides-method 'character))
;; Les numéros de ligne qui apparaissent sur chaque ligne
(use-package nlinum
:ensure t
...
...
@@ -413,52 +351,6 @@
:bind (("C-£" . iedit-mode)
))
;; Ruby electric, pour la complétion automatique de certaines
;; structures syntaxiques (sur les blocs en particulier)
(use-package ruby-electric
:ensure t
:init
(eval-after-load "ruby-mode"
'(add-hook 'ruby-mode-hook 'ruby-electric-mode)))
;; ;; Inf-ruby : plus de fonctionnalités pour Ruby
;; ;; Tips: lancer une session Ruby au départ avec C-c C-s
;; (use-package inf-ruby
;; :ensure t
;; :config
;; (autoload 'inf-ruby-minor-mode "inf-ruby" "Run an inferior Ruby process" t)
;; (add-hook 'ruby-mode-hook 'inf-ruby-minor-mode))
;; Robe : toujours pour Ruby
(use-package robe
:ensure t
:config
(add-hook 'ruby-mode-hook 'robe-mode))
;; ;; Du refactoring pour Ruby
;; ;; Extract to Method (C-c C-r e)
;; ;; Extract Local Variable (C-c C-r v)
;; ;; Extract Constant (C-c C-r c)
;; ;; Add Parameter (C-c C-r p)
;; ;; Extract to Let (C-c C-r l)
;; ;; Convert Post Conditional (C-c C-r o)
;; (use-package ruby-refactor
;; :ensure t
;; :config
;; (add-hook 'ruby-mode-hook 'ruby-refactor-mode-launch))
;; Du refactoring pour JS
(use-package js2-refactor
:ensure t
:config
(add-hook 'js2-mode-hook #'js2-refactor-mode)
(js2r-add-keybindings-with-prefix "C-c C-p"))
;; Request : utilisé par solagraph (LSP/Ruby)
(use-package request
:ensure t)
;; Tout ce qui est relatif à company (completion at any point)
(use-package company
:ensure t
...
...
@@ -467,83 +359,27 @@
(setq company-minimum-prefix-length 1)
(add-hook 'prog-mode-hook 'company-mode))
;; (use-package company-irony
;; :ensure t
;; :config
;; (add-to-list 'company-backends 'company-irony))
;; (use-package irony
;; :ensure t
;; :config
;; (add-hook 'irony-mode-hook 'irony-cdb-autosetup-compile-options))
;; (defun my-irony-mode-on ()
;; "Avoid enabling irony-mode in modes that inherits `c-mode', e.g: php-mode."
;; (when (member major-mode irony-supported-major-modes)
;; (irony-mode 1)))
;; (add-hook 'c++-mode-hook 'my-irony-mode-on)
;; (add-hook 'c-mode-hook 'my-irony-mode-on)
;; (use-package irony-eldoc
;; :ensure t
;; :config
;; (add-hook 'irony-mode-hook #'irony-eldoc))
(use-package company-jedi
:ensure t
:config
(add-hook 'python-mode-hook 'jedi:setup))
(defun my/python-mode-hook ()
"Add personal hook for python."
(add-to-list 'company-backends 'company-jedi))
(add-hook 'python-mode-hook 'my/python-mode-hook)
(use-package company-auctex
:ensure t
:config
(company-auctex-init))
;; ;; Pour reboucler Robe avec company
;; (eval-after-load 'company
;; '(push 'company-robe company-backends))
;; Pour lsp (Language Server Protocol)
;; permettant de transformer emacs en IDE sur certains aspects
;; (use-package lsp-mode
;; :ensure t
;; :hook ((c-mode java-mode) . lsp)
;; :commands lsp)
;; optionally
(use-package lsp-ui
:ensure t
:commands lsp-ui-mode)
(use-package company-lsp
:ensure t
:commands company-lsp)
(use-package helm-lsp
:ensure t
:commands helm-lsp-workspace-symbol)
(use-package lsp-treemacs
:ensure t
:commands lsp-treemacs-errors-list)
;; (use-package rg
;; :ensure t
;; :bind(("C-c s" . rg-menu)))
;; Pour languagetool
;; (sudo snap install languagetool)
(setq langtool-language-tool-jar "/snap/languagetool/34/usr/bin/languagetool-commandline.jar")
;; (setq langtool-language-tool-jar "/snap/languagetool/34/usr/bin/languagetool-commandline.jar")
;; (require 'langtool)
;; Pour Langtools
(setq langtool-java-bin "/home/phil/tmp/java/jre1.8.0_361/bin/java")
(setq langtool-language-tool-jar "/home/phil/tmp/LanguageTool-6.0/languagetool-commandline.jar")
;; (setq langtool-language-tool-server-jar "/home/phil/tmp/LanguageTool-6.0/languagetool-server.jar")
;; (setq langtool-http-server-host "localhost"
;; langtool-http-server-port 8082)
(require 'langtool)
(global-set-key (kbd "C-&") 'langtool-check-buffer)
(global-set-key (kbd "C-é") 'langtool-correct-buffer)
;; Pour grammalecte
...
...
@@ -599,10 +435,6 @@
:config
(add-hook 'js-mode-hook 'js2-minor-mode))
;; Pour PHP
(use-package php-extras
:ensure t)
;; Des chercher/remplacer plus sympas
(use-package anzu
:ensure t
...
...
@@ -611,22 +443,14 @@
(global-set-key [remap query-replace] 'anzu-query-replace)
(global-set-key [remap query-replace-regexp] 'anzu-query-replace-regexp))
;; Pour retrouver facilement des symboles identiques
;; M-n et M-p pour se déplacer sur les symboles similaires,
;; M-' pour effectuer un chercher/remplacer global et rapide
(use-package smartscan
:ensure t
:config
(global-smartscan-mode))
;; Hydra
;; Pour étendre les possibilités de 'keys' (raccourcis) sous
;; emacs. Une 'clé' de départ permet ensuite d'atteindre tout
;; un tas d'autres clés avec une expression simplifiée
(use-package hydra
:ensure hydra
:init)
;;
(use-package hydra
;;
:ensure hydra
;;
:init)
;; Magit
;; Pour avoir une séquence plus sympa de sortie des server-edit
...
...
@@ -655,66 +479,41 @@
(diff-hl-flydiff-mode 1)
(add-hook 'magit-post-refresh-hook 'diff-hl-magit-post-refresh))
;; Pour feature-mode (édition de fichier cucumber)
(use-package feature-mode
:ensure t
:config
(add-to-list 'auto-mode-alist '("\.feature$" . feature-mode)))
;; org-reveal
(use-package ox-reveal
:ensure t
:config
(setq org-reveal-root "file:///home/phil/divers/presentation/reveal.js"))
;; Pour function-arg (complétion et vérifciation en C/C++)
(use-package function-args
:ensure t
:config
(fa-config-default))
;; Test pour l'édition sous Chrome
(use-package edit-server
:ensure t
:config
(edit-server-start))
;; emmet, les complétions pour le Web (HTML/CSS)
;; (C-j pour l'expand)
(use-package emmet-mode
:ensure t
:config
(add-hook 'web-mode-hook 'emmet-mode))
;; (use-package ox-reveal
;; :ensure t
;; :config
;; (setq org-reveal-root "file:///home/phil/divers/presentation/reveal.js"))
;; Openwith : utilsation de programmes externe lors de
;; l'ouverture pour certains types de fichiers
(use-package openwith
:ensure t
:config
(when (require 'openwith nil 'noerror)
(setq openwith-associations
(list
(list (openwith-make-extension-regexp
'("mpg" "mpeg" "mp3" "mp4"
"avi" "wmv" "wav" "mov" "flv"
"ogm" "ogg" "mkv"))
"vlc"
'(file))
(list (openwith-make-extension-regexp
'("xbm" "pbm" "pgm" "ppm" "pnm"
"png" "gif" "bmp" "tif" "jpeg" "jpg"))
"gwenview"
'(file))
(list (openwith-make-extension-regexp
'("doc" "xls" "ppt" "odt" "ods" "odg" "odp" "docx" "xlsx"))
"libreoffice"
'(file))
(list (openwith-make-extension-regexp
'("pdf" "ps" "ps.gz" "dvi"))
"okular"
'(file))
))
(openwith-mode 1)))
;;
(use-package openwith
;;
:ensure t
;;
:config
;;
(when (require 'openwith nil 'noerror)
;;
(setq openwith-associations
;;
(list
;;
(list (openwith-make-extension-regexp
;;
'("mpg" "mpeg" "mp3" "mp4"
;;
"avi" "wmv" "wav" "mov" "flv"
;;
"ogm" "ogg" "mkv"))
;;
"vlc"
;;
'(file))
;;
(list (openwith-make-extension-regexp
;;
'("xbm" "pbm" "pgm" "ppm" "pnm"
;;
"png" "gif" "bmp" "tif" "jpeg" "jpg"))
;;
"gwenview"
;;
'(file))
;;
(list (openwith-make-extension-regexp
;;
'("doc" "xls" "ppt" "odt" "ods" "odg" "odp" "docx" "xlsx"))
;;
"libreoffice"
;;
'(file))
;;
(list (openwith-make-extension-regexp
;;
'("pdf" "ps" "ps.gz" "dvi"))
;;
"okular"
;;
'(file))
;;
))
;;
(openwith-mode 1)))
;; ===============================
;; Configurations variables/styles
...
...
@@ -727,17 +526,16 @@
;; Your init file should contain only one such instance.
;; If there is more than one, they won't work right.
'(custom-safe-themes
(quote
("c3d4af771cbe0501d5a865656802788a9a0ff9cf10a7df704ec8b8ef69017c68" "3c83b3676d796422704082049fc38b6966bcad960f896669dfc21a7a37a748fa" "c74e83f8aa4c78a121b52146eadb792c9facc5b1f02c917e3dbb454fca931223" "a27c00821ccfd5a78b01e4f35dc056706dd9ede09a8b90c6955ae6a390eb1c1e" "b9e9ba5aeedcc5ba8be99f1cc9301f6679912910ff92fdf7980929c2fc83ab4d" default)))
'("c3d4af771cbe0501d5a865656802788a9a0ff9cf10a7df704ec8b8ef69017c68" "3c83b3676d796422704082049fc38b6966bcad960f896669dfc21a7a37a748fa" "c74e83f8aa4c78a121b52146eadb792c9facc5b1f02c917e3dbb454fca931223" "a27c00821ccfd5a78b01e4f35dc056706dd9ede09a8b90c6955ae6a390eb1c1e" "b9e9ba5aeedcc5ba8be99f1cc9301f6679912910ff92fdf7980929c2fc83ab4d" default))
'(display-time-mode t)
'(ecb-options-version "2.50")
'(imenu-use-popup-menu t)
'(package-selected-packages
(quote
(org rust-mode js2-refactor org-bullets lsp-treemacs helm-lsp company-lsp lsp-ui lsp-mode gnu-elpa-keyring-update markdown-mode flycheck-clang-analyzer flycheck-grammalecte which-key web-mode undo-tree try smex smartscan smart-mode-line-powerline-theme ruby-refactor ruby-electric robe rainbow-delimiters quelpa-use-package projectile plantuml-mode php-extras pdf-tools ox-reveal nlinum neotree multiple-cursors monokai-theme magit js2-mode irony-eldoc imenu-anywhere iedit ido-vertical-mode highlight-indent-guides helm-swoop helm-orgcard helm-flycheck helm-directory helm-css-scss helm-c-yasnippet helm-anything git-timemachine function-args flx-ido feature-mode expand-region edit-server ecb dumb-jump dired+ dic-lookup-w3m counsel company-web company-tern company-php company-jedi company-irony company-inf-ruby company-c-headers company-auctex clang-format avy auto-yasnippet anzu ac-helm diff-hl request)))
'(use-package org rust-mode js2-refactor org-bullets lsp-treemacs helm-lsp company-lsp lsp-ui lsp-mode gnu-elpa-keyring-update markdown-mode flycheck-clang-analyzer flycheck-grammalecte which-key web-mode undo-tree try smex smartscan smart-mode-line-powerline-theme ruby-refactor ruby-electric robe rainbow-delimiters quelpa-use-package projectile plantuml-mode php-extras pdf-tools ox-reveal nlinum neotree multiple-cursors monokai-theme magit js2-mode irony-eldoc imenu-anywhere iedit ido-vertical-mode highlight-indent-guides helm-swoop helm-orgcard helm-flycheck helm-directory helm-css-scss helm-c-yasnippet helm-anything git-timemachine function-args flx-ido feature-mode expand-region edit-server ecb dumb-jump dired+ dic-lookup-w3m counsel company-web company-tern company-php company-jedi company-irony company-inf-ruby company-c-headers company-auctex clang-format avy auto-yasnippet anzu ac-helm diff-hl request))
'(show-paren-mode t)
'(tool-bar-mode nil)
'(tramp-default-method "scpc"))
'(tramp-default-method "scpc")
'(warning-suppress-types '((comp) (comp))))
;; Configuration du style d'affichage
(custom-set-faces
...
...
@@ -1162,17 +960,6 @@
;; Accès direct au répertoire courant avec C-x C-j
(require 'dired-x)
;; Dired+ : pour étendre les fonctionnalités proposées
;; en mode dired
;; (require 'dired+)
(use-package dired+
:ensure t
:quelpa (dired+ :fetcher github :repo "emacsmirror/dired-plus"))
;; ;; Support de Ruby avec lsp
;; (require 'solargraph)
;; (define-key ruby-mode-map (kbd "M-i") 'solargraph:complete)
;; Pour les snippets : yas-global-mode
(add-to-list 'load-path
"~/.emacs.d/plugins/yasnippet")
...
...
@@ -1194,19 +981,6 @@
(setq dabbrev-friend-buffer-function 'sanityinc/dabbrev-friend-buffer)
;; Key-chord (désactivé car entraîne de lourds problèmes de
;; de performances lors de simples éditions sous emacs)
;; (require 'key-chord)
;; (key-chord-mode 1)
;; (key-chord-define-global "qs" 'delete-window)
;; (key-chord-define-global "wx" 'delete-other-windows)
;; (key-chord-define-global "*d" 'flyspell-mode)
;; (key-chord-define-global "*t" 'text-mode)
;; (key-chord-define-global "*a" (lambda () (interactive) (ispell-change-dictionary "american")))
;; (key-chord-define-global "*f" (lambda () (interactive) (ispell-change-dictionary "francais")))
;; Des insertions d'espace sans bouger le curseur
(defun insert-postfix-whitespace ()
"Just insert SPC symbol next to point."
...
...
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment