#+TITLE: YCMD layer * Table of Contents :TOC_4_gh:noexport: - [[#description][Description]] - [[#install][Install]] - [[#layer][Layer]] - [[#ycmd][YCMD]] - [[#other-requirements][Other Requirements]] - [[#configuration][Configuration]] - [[#key-bindings][Key Bindings]] * Description This layer adds [[https://github.com/abingham/emacs-ycmd][emacs-ycmd]] support. * Install ** Layer To use this configuration layer, add it to your =~/.spacemacs=. You will need to add =ycmd= to the existing =dotspacemacs-configuration-layers= list in this file. ** YCMD In order to use this layer you must have a local [[https://github.com/Valloric/ycmd#building][ycmd]] installation and must set the =ycmd-server-command= variable to reflect the path to that installation. See the [[https://github.com/abingham/emacs-ycmd][emacs-ycmd]] readme for more instructions on this. ** Other Requirements This package requires the =auto-completion= layer in order to get actual completion. The =syntax-checking= layer is required for flycheck support. * Configuration By default this layer only activates ycmd for =c++-mode=. If you want ycmd support in other modes you might just want to add it for specific languages like: #+BEGIN_SRC emacs-lisp (add-hook 'c++-mode-hook 'ycmd-mode) #+END_SRC * Key Bindings Adds ~SPC m g g~ go to definition binding to =c++-mode= as well as ~SPC m g G~ for the more imprecise but faster version.