committed by
Bozhidar Batsov
3 changed files with 83 additions and 8 deletions
@ -0,0 +1,63 @@ |
|||
;;; prelude-lsp.el --- lsp-mode setup |
|||
;; |
|||
;; Copyright © 2011-2018 Bozhidar Batsov |
|||
;; |
|||
;; Author: Bozhidar Batsov, Ben Alex |
|||
;; URL: https://github.com/bbatsov/prelude |
|||
;; Version: 1.0.0 |
|||
;; Keywords: convenience |
|||
|
|||
;; This file is not part of GNU Emacs. |
|||
|
|||
;;; Commentary: |
|||
|
|||
;; lsp-mode config. |
|||
|
|||
;;; License: |
|||
|
|||
;; This program is free software; you can redistribute it and/or |
|||
;; modify it under the terms of the GNU General Public License |
|||
;; as published by the Free Software Foundation; either version 3 |
|||
;; of the License, or (at your option) any later version. |
|||
;; |
|||
;; This program is distributed in the hope that it will be useful, |
|||
;; but WITHOUT ANY WARRANTY; without even the implied warranty of |
|||
;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
;; GNU General Public License for more details. |
|||
;; |
|||
;; You should have received a copy of the GNU General Public License |
|||
;; along with GNU Emacs; see the file COPYING. If not, write to the |
|||
;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, |
|||
;; Boston, MA 02110-1301, USA. |
|||
|
|||
;;; Code: |
|||
|
|||
(prelude-require-packages '(company-lsp |
|||
lsp-mode |
|||
lsp-ui)) |
|||
|
|||
(require 'lsp-ui) |
|||
(require 'company-lsp) |
|||
(require 'lsp-imenu) |
|||
|
|||
(push 'company-lsp company-backends) |
|||
(add-hook 'lsp-mode-hook 'lsp-ui-mode) |
|||
(add-hook 'lsp-after-open-hook 'lsp-enable-imenu) |
|||
|
|||
(define-key lsp-ui-mode-map [remap xref-find-definitions] #'lsp-ui-peek-find-definitions) |
|||
(define-key lsp-ui-mode-map [remap xref-find-references] #'lsp-ui-peek-find-references) |
|||
(define-key lsp-ui-mode-map (kbd "C-c C-l .") 'lsp-ui-peek-find-definitions) |
|||
(define-key lsp-ui-mode-map (kbd "C-c C-l ?") 'lsp-ui-peek-find-references) |
|||
(define-key lsp-ui-mode-map (kbd "C-c C-l r") 'lsp-rename) |
|||
(define-key lsp-ui-mode-map (kbd "C-c C-l x") 'lsp-restart-workspace) |
|||
(define-key lsp-ui-mode-map (kbd "C-c C-l w") 'lsp-ui-peek-find-workspace-symbol) |
|||
(define-key lsp-ui-mode-map (kbd "C-c C-l i") 'lsp-ui-peek-find-implementation) |
|||
(define-key lsp-ui-mode-map (kbd "C-c C-l d") 'lsp-describe-thing-at-point) |
|||
|
|||
(setq lsp-ui-sideline-enable t) |
|||
(setq lsp-ui-doc-enable t) |
|||
(setq lsp-ui-peek-enable t) |
|||
(setq lsp-ui-peek-always-show t) |
|||
|
|||
(provide 'prelude-lsp) |
|||
;;; prelude-lsp.el ends here |
|||
Write
Preview
Loading…
Cancel
Save
Reference in new issue