;;; packages.el --- customized layer packages file for Spacemacs. ;; ;; Copyright (c) 2012-2016 Sylvain Benner & Contributors ;; ;; Author: Rongsong Shen ;; URL: https://github.com/syl20bnr/spacemacs ;; ;; This file is not part of GNU Emacs. ;; ;;; License: GPLv3 ;;; Commentary: ;; See the Spacemacs documentation and FAQs for instructions on how to implement ;; a new layer: ;; ;; SPC h SPC layers RET ;; ;; ;; Briefly, each package to be installed or configured by this layer should be ;; added to `customized-packages'. Then, for each package PACKAGE: ;; ;; - If PACKAGE is not referenced by any other Spacemacs layer, define a ;; function `customized/init-PACKAGE' to load and initialize the package. ;; - Otherwise, PACKAGE is already referenced by another Spacemacs layer, so ;; define the functions `customized/pre-init-PACKAGE' and/or ;; `customized/post-init-PACKAGE' to customize the package as it is loaded. ;;; Code: (defconst customized-packages '( (my-c-styles :location local) google-c-style cc-mode) "The list of Lisp packages required by the customized layer. Each entry is either: 1. A symbol, which is interpreted as a package to be installed, or 2. A list of the form (PACKAGE KEYS...), where PACKAGE is the name of the package to be installed or loaded, and KEYS are any number of keyword-value-pairs. The following keys are accepted: - :excluded (t or nil): Prevent the package from being loaded if value is non-nil - :location: Specify a custom installation location. The following values are legal: - The symbol `elpa' (default) means PACKAGE will be installed using the Emacs package manager. - The symbol `local' directs Spacemacs to load the file at `./local/PACKAGE/PACKAGE.el' - A list beginning with the symbol `recipe' is a melpa recipe. See: https://github.com/milkypostman/melpa#recipe-format") (defun customized/init-my-c-styles () (use-package my-c-styles :defer t :commands (add-my-c-styles use-my-c-style) :config (progn (add-my-c-styles)))) (defun customized/post-init-cc-mode () (spacemacs/add-to-hooks #'(lambda () (when my-default-c-style (cond ((eq my-default-c-style "google") (google-set-c-style)) (t (use-my-c-style))))) '(c-mode-hook c++-mode-hook))) (defun customized/init-google-c-style () (use-package google-c-style :defer t :commands google-set-c-style)) ;;; packages.el ends here