diff --git a/.emacs b/.emacs
index 055041614ba1ba3bbda47d895b89a11773797c54..bf3dc43bdce1a49c0cb66dec0e98322fa806edb5 100644
--- a/.emacs
+++ b/.emacs
@@ -56,6 +56,7 @@
       (append
        '(
 	 "/home/phil/.lisp/"
+	 "/home/phil/.lisp/emacs-solargraph/"
 	 )
        load-path))
 
@@ -444,7 +445,9 @@
 ;;   :config
 ;;   (add-hook 'ruby-mode-hook 'ruby-refactor-mode-launch))
 
-
+;; Request : utilisé par solagraph (LSP/Ruby)
+(use-package request
+  :ensure t)
 
 ;; Tout ce qui est relatif à company (completion at any point)
 (use-package company
@@ -497,6 +500,31 @@
 ;; (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)
+
 ;; Pour grammalecte
 (use-package flycheck-grammalecte
   :ensure t
@@ -966,6 +994,10 @@
   :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")