This repository has been archived on 2024-10-22. You can view files and clone it, but cannot push or open issues or pull requests.
spacemacs/contrib/lang/csharp/packages.el
syl20bnr 0c6682cbd1 Refactor one more time the auto-completin macros
It is important to define the buffer local backend variables
in a config.el otherwise it is not available in the layer
configuration if the auto-completion layer is removed.
There were also some issues by hiding the explicit
configuration of company inside a macro, for instance
helm-spacemacs is unable to display the company package
configured in a given layer if the auto-completion layer
is removed.
2015-04-09 00:03:51 -04:00

70 lines
2.9 KiB
EmacsLisp

;;; packages.el --- csharp Layer packages File for Spacemacs
;;
;; Copyright (c) 2012-2014 Sylvain Benner
;; Copyright (c) 2014-2015 Sylvain Benner & Contributors
;;
;; Author: Sylvain Benner <sylvain.benner@gmail.com>
;; URL: https://github.com/syl20bnr/spacemacs
;;
;; This file is not part of GNU Emacs.
;;
;;; License: GPLv3
(defvar csharp-packages
'(
company
omnisharp
))
(defvar csharp-excluded-packages '()
"List of packages to exclude.")
(defun csharp/init-omnisharp ()
;; Load omnisharp-mode with csharp-mode, this should start the omnisharp server automatically
(add-hook 'csharp-mode-hook 'omnisharp-mode)
(use-package omnisharp
:defer t
:init (push '(company-omnisharp :with company-yasnippet)
company-backends-csharp-mode)
:config (evil-leader/set-key-for-mode 'csharp-mode
;; Compile
"mcc" 'omnisharp-build-in-emacs ;; Only one compile command so use top-level
;; Solution/project manipulation
"mfa" 'omnisharp-add-to-solution-current-file
"mfA" 'omnisharp-add-to-solution-dired-selected-files
"mfr" 'omnisharp-remove-from-project-current-file
"mfR" 'omnisharp-remove-from-project-dired-selected-files
"mpl" 'omnisharp-add-reference
;; Navigation
"mgg" 'omnisharp-go-to-definition
"mgG" 'omnisharp-go-to-definition-other-window
"mgu" 'omnisharp-helm-find-usages
"mgs" 'omnisharp-helm-find-symbols
"mgi" 'omnisharp-find-implementations
"mgr" 'omnisharp-navigate-to-region
"mgm" 'omnisharp-navigate-to-solution-member
"mgM" 'omnisharp-navigate-to-solution-member-other-window
"mgf" 'omnisharp-navigate-to-solution-file
"mgF" 'omnisharp-navigate-to-solution-file-then-file-member
;; Help, documentation, info
"mht" 'omnisharp-current-type-information
"mhT" 'omnisharp-current-type-information-to-kill-ring
;; Refactoring
"mrm" 'omnisharp-rename
"mrr" 'omnisharp-run-code-action-refactoring
;; Server manipulation, inspired spacemacs REPL bindings since C# does not provice a REPL
"mss" 'omnisharp-start-omnisharp-server
"msS" 'omnisharp-stop-server
"msr" 'omnisharp-reload-solution
;; Tests
"mta" 'omnisharp-unit-test-all
"mtb" 'omnisharp-unit-test-fixture
"mtt" 'omnisharp-unit-test-single
;; Code manipulation
"mu" 'omnisharp-auto-complete-overrides
"mi" 'omnisharp-fix-usings
"m=" 'omnisharp-code-format)))
(when (configuration-layer/layer-usedp 'auto-completion)
(defun csharp/post-init-company ()
(spacemacs|add-company-hook csharp-mode)))