aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAaron LI <aaronly.me@outlook.com>2016-10-06 15:16:25 +0800
committerAaron LI <aaronly.me@outlook.com>2016-10-06 15:16:25 +0800
commit66f546d66e67040cbeec82f60b31c0b43640cb06 (patch)
treede61dfd0f54f952857bbf65f7f5bd43e54b1b4cb
parentbf903db626e9a196126b5ea27c56e4d8b410d84b (diff)
downloaddotfiles-66f546d66e67040cbeec82f60b31c0b43640cb06.tar.bz2
spacemacs: upgrade to version 0.200
-rw-r--r--_spacemacs.d/init.el154
1 files changed, 108 insertions, 46 deletions
diff --git a/_spacemacs.d/init.el b/_spacemacs.d/init.el
index 9c717a0..e11ec1f 100644
--- a/_spacemacs.d/init.el
+++ b/_spacemacs.d/init.el
@@ -9,6 +9,8 @@
;; ~/.spacemacs
;; ~/.spacemacs.d/init.el
;;
+;; The template is located at `core/templates/.spaces.template`
+;;
;; Aaron LI
;; Created: 2016-04-30
;; Updated: 2016-10-06
@@ -37,6 +39,21 @@
;; This is a layer contained in the directory `+distribution'.
;; For now available distributions are `spacemacs-base' or `spacemacs'.
dotspacemacs-distribution 'spacemacs
+ ;; Lazy installation of layers (i.e. layers are installed only when a
+ ;; file with a supported type is opened).
+ ;; Possible values are `all', `unused' and `nil'.
+ ;; `unused' will lazy install only unused layers (i.e. layers not listed
+ ;; in variable `dotspacemacs-configuration-layers'),
+ ;; `all' will lazy install any layer that support lazy installation even
+ ;; the layers listed in `dotspacemacs-configuration-layers'.
+ ;; `nil' disable the lazy installation feature and you have to explicitly
+ ;; list a layer in the variable `dotspacemacs-configuration-layers' to
+ ;; install it.
+ ;; (default 'unused)
+ dotspacemacs-enable-lazy-installation 'unused
+ ;; If non-nil then Spacemacs will ask for confirmation before installing
+ ;; a layer lazily. (default t)
+ dotspacemacs-ask-for-lazy-installation t
;; List of additional paths where to look for configuration layers.
;; Paths must have a trailing slash (e.g., `~/.mycontribs/').
dotspacemacs-configuration-layer-path '("~/.spacemacs.d/layers/")
@@ -96,12 +113,21 @@
;; packages, then consider creating a layer. You can also put the
;; configuration in `dotspacemacs/user-config'.
dotspacemacs-additional-packages '()
- ;; List of packages/extensions that will not be installed or loaded.
+ ;; A list of packages that cannot be updated.
+ dotspacemacs-frozen-packages '()
+ ;; List of packages that will not be installed or loaded.
dotspacemacs-excluded-packages '()
- ;; If non-nil, spacemacs will delete any orphan packages, i.e. packages
- ;; that are declared in a layer which is not a member of the list
- ;; `dotspacemacs-configuration-layers'. (default t)
- dotspacemacs-delete-orphan-packages t))
+ ;; Defines the behaviour of Spacemacs when installing packages.
+ ;; Possible values are `used-only', `used-but-keep-unused' and `all'.
+ ;; `used-only' installs only explicitly used packages and uninstall
+ ;; any unused packages as well as their unused dependencies.
+ ;; `used-but-keep-unused' installs only the used packages but won't
+ ;; uninstall them if they become unused.
+ ;; `all' installs *all* packages supported by Spacemacs and never
+ ;; uninstall them. (default is `used-only')
+ dotspacemacs-install-packages 'used-only
+ ))
+
(defun dotspacemacs/init ()
"Initialization function.
@@ -109,10 +135,10 @@
before layers configuration.
You should not put any user code in there besides modifying the variable
values."
- ;; This setq-default sexp is an exhaustive list of all the supported
+ ;; This `setq-default' sexp is an exhaustive list of all the supported
;; spacemacs settings.
(setq-default
- ;; If non-nil, ELPA repositories are contacted via HTTPS whenever it's
+ ;; If non nil, ELPA repositories are contacted via HTTPS whenever it's
;; possible. Set it to nil if you have no way to use HTTPS in your
;; environment, otherwise it is strongly recommended to let it set to t.
;; This variable has no effect if Emacs is launched with the parameter
@@ -122,12 +148,20 @@
;; Maximum allowed time in seconds to contact an ELPA repository.
dotspacemacs-elpa-timeout 5
;; If non nil then spacemacs will check for updates at startup
- ;; when the current branch is not `develop'. (default t)
+ ;; when the current branch is not `develop'.
+ ;; Note that checking for new versions works via git commands, thus it
+ ;; calls GitHub services whenever you start Emacs. (default nil)
dotspacemacs-check-for-update nil
- ;; One of `vim', `emacs' or `hybrid'. Evil is always enabled but if
- ;; the variable is `emacs' then the `holy-mode' is enabled at startup.
- ;; `hybrid' uses emacs key bindings for vim's insert mode, but otherwise
- ;; leaves evil unchanged. (default 'vim)
+ ;; If non-nil, a form that evaluates to a package directory.
+ ;; For example, to use different package directories for different
+ ;; Emacs versions, set this to `emacs-version'.
+ dotspacemacs-elpa-subdirectory nil
+ ;; One of `vim', `emacs' or `hybrid'.
+ ;; `hybrid' is like `vim' except that `insert state' is replaced by the
+ ;; `hybrid state' with `emacs' key bindings. The value can also be a list
+ ;; with `:variables' keyword (similar to layers). Check the editing styles
+ ;; section of the documentation for details on available variables.
+ ;; (default 'vim)
dotspacemacs-editing-style 'vim
;; If non nil output loading progress in `*Messages*' buffer. (default nil)
dotspacemacs-verbose-loading nil
@@ -138,13 +172,16 @@
;; by your Emacs build.
;; If the value is nil then no banner is displayed. (default 'official)
dotspacemacs-startup-banner 'random
- ;; List of items to show in the startup buffer. If nil it is disabled.
- ;; Possible values are: `recents' `bookmarks' `projects'.
- ;; (default '(recents projects))
- dotspacemacs-startup-lists '(recents projects)
- ;; Number of recent files to show in the startup buffer. Ignored if
- ;; `dotspacemacs-startup-lists' doesn't include `recents'. (default 5)
- dotspacemacs-startup-recent-list-size 5
+ ;; List of items to show in startup buffer or an association list of
+ ;; the form `(list-type . list-size)`. If nil then it is disabled.
+ ;; Possible values for list-type are:
+ ;; `recents' `bookmarks' `projects' `agenda' `todos'."
+ ;; List sizes may be nil, in which case
+ ;; `spacemacs-buffer-startup-lists-length' takes effect.
+ dotspacemacs-startup-lists '((recents . 5)
+ (projects . 7))
+ ;; True if the home buffer should respond to resize events.
+ dotspacemacs-startup-buffer-responsive t
;; Default major mode of the scratch buffer (default `text-mode')
dotspacemacs-scratch-mode 'text-mode
;; List of themes, the first of the list is loaded when spacemacs starts.
@@ -159,8 +196,9 @@
zenburn)
;; If non nil the cursor color matches the state color in GUI Emacs.
dotspacemacs-colorize-cursor-according-to-state t
- ;; Default font. `powerline-scale' allows to quickly tweak the mode-line
- ;; size to make separators look not too crappy.
+ ;; Default font, or prioritized list of fonts.
+ ;; `powerline-scale' allows to quickly tweak the mode-line size to
+ ;; make separators look not too crappy.
dotspacemacs-default-font '("Source Code Pro"
:size 14
:weight normal
@@ -177,29 +215,39 @@
;; Major mode leader key accessible in `emacs state' and `insert state'.
;; (default "C-M-m)
dotspacemacs-major-mode-emacs-leader-key "C-M-m"
- ;; These variables control whether separate commands are bound in the GUI to
- ;; the key pairs C-i, TAB and C-m, RET.
- ;; Setting it to a non-nil value, allows for separate commands under <C-i>
- ;; and TAB or <C-m> and RET.
- ;; In the terminal, these pairs are generally indistinguishable, so this only
- ;; works in the GUI. (default nil)
+ ;; The key used for Emacs commands (M-x) (after pressing on the leader
+ ;; key). (default "SPC")
+ dotspacemacs-emacs-command-key "SPC"
+ ;; These variables control whether separate commands are bound in the
+ ;; GUI to the key pairs C-i, TAB and C-m, RET.
+ ;; Setting it to a non-nil value, allows for separate commands under
+ ;; <C-i> and TAB or <C-m> and RET.
+ ;; In the terminal, these pairs are generally indistinguishable, so
+ ;; this only works in the GUI. (default nil)
dotspacemacs-distinguish-gui-tab nil
- ;; (Not implemented) dotspacemacs-distinguish-gui-ret nil
- ;; The command key used for Evil commands (ex-commands) and
- ;; Emacs commands (M-x).
- ;; By default the command key is `:' so ex-commands are executed like
- ;; in Vim with `:' and Emacs commands are executed with `<leader> :'.
- dotspacemacs-command-key ":"
- ;; If non nil `Y' is remapped to `y$'. (default t)
+ ;; If non nil `Y' is remapped to `y$' in Evil states. (default t)
dotspacemacs-remap-Y-to-y$ t
+ ;; If non-nil, the shift mappings `<' and `>' retain visual state if
+ ;; used there. (default t)
+ dotspacemacs-retain-visual-state-on-shift t
+ ;; If non-nil, J and K move lines up and down when in visual mode.
+ ;; (default nil)
+ dotspacemacs-visual-line-move-text nil
+ ;; If non nil, inverse the meaning of `g' in `:substitute' Evil
+ ;; ex-command. (default nil)
+ dotspacemacs-ex-substitute-global nil
;; Name of the default layout (default "Default")
dotspacemacs-default-layout-name "Default"
;; If non nil the default layout name is displayed in the mode-line.
;; (default nil)
dotspacemacs-display-default-layout nil
- ;; If non nil then the last auto saved layouts are resume automatically upon
- ;; start. (default nil)
+ ;; If non nil then the last auto saved layouts are resume automatically
+ ;; upon start. (default nil)
dotspacemacs-auto-resume-layouts nil
+ ;; Size (in MB) above which spacemacs will prompt to open the large file
+ ;; literally to avoid performance issues. Opening a file literally means
+ ;; that no major mode or minor modes are active. (default is 1)
+ dotspacemacs-large-file-size 1
;; Location where to auto-save files. Possible values are `original' to
;; auto-save the file in-place, `cache' to auto-save the file to another
;; file stored in the cache directory and `nil' to disable auto-saving.
@@ -207,10 +255,6 @@
dotspacemacs-auto-save-file-location 'cache
;; Maximum number of rollback slots to keep in the cache. (default 5)
dotspacemacs-max-rollback-slots 5
- ;; If non nil then `ido' replaces `helm' for some commands. For now only
- ;; `find-files' (SPC f f), `find-spacemacs-file' (SPC f e s), and
- ;; `find-contrib-file' (SPC f e c) are replaced. (default nil)
- dotspacemacs-use-ido nil
;; If non nil, `helm' will try to minimize the space it uses. (default nil)
dotspacemacs-helm-resize nil
;; if non nil, the helm header is hidden when there is only one source.
@@ -219,16 +263,22 @@
;; define the position to display `helm', options are `bottom', `top',
;; `left', or `right'. (default 'bottom)
dotspacemacs-helm-position 'bottom
+ ;; Controls fuzzy matching in helm. If set to `always', force fuzzy
+ ;; matching in all non-asynchronous sources. If set to `source',
+ ;; preserve individual source settings. Else, disable fuzzy matching
+ ;; in all sources. (default 'always)
+ dotspacemacs-helm-use-fuzzy 'always
;; If non nil the paste micro-state is enabled. When enabled pressing `p`
;; several times cycle between the kill ring content. (default nil)
dotspacemacs-enable-paste-micro-state nil
;; Which-key delay in seconds. The which-key buffer is the popup listing
;; the commands bound to the current keystroke sequence. (default 0.4)
dotspacemacs-which-key-delay 0.4
- ;; Which-key frame position. Possible values are `right', `bottom' and
- ;; `right-then-bottom'. right-then-bottom tries to display the frame to
- ;; the right; if there is insufficient space it displays it at the
- ;; bottom. (default 'bottom)
+ ;; Which-key frame position.
+ ;; Possible values are `right', `bottom' and `right-then-bottom'.
+ ;; `right-then-bottom' tries to display the frame to the right;
+ ;; if there is insufficient space it displays it at the bottom.
+ ;; (default 'bottom)
dotspacemacs-which-key-position 'bottom
;; If non nil a progress bar is displayed when spacemacs is loading.
;; This may increase the boot time on some systems and emacs builds,
@@ -252,6 +302,11 @@
;; the transparency level of a frame when it's inactive or deselected.
;; Transparency can be toggled through `toggle-transparency'. (default 90)
dotspacemacs-inactive-transparency 90
+ ;; If non nil show the titles of transient states. (default t)
+ dotspacemacs-show-transient-state-title t
+ ;; If non nil show the color guide hint for transient state keys.
+ ;; (default t)
+ dotspacemacs-show-transient-state-color-guide t
;; If non nil unicode symbols are displayed in the mode line. (default t)
dotspacemacs-mode-line-unicode-symbols t
;; If non nil smooth scrolling (native-scrolling) is enabled. Smooth
@@ -261,10 +316,15 @@
;; If non nil line numbers are turned on in all `prog-mode' and
;; `text-mode' derivatives. If set to `relative', also turns on relative
;; line numbers. (default nil)
- dotspacemacs-line-numbers t
- ;; If non-nil smartparens-strict-mode will be enabled in programming modes.
+ dotspacemacs-line-numbers nil
+ ;; If non nil smartparens-strict-mode will be enabled in programming modes.
;; (default nil)
dotspacemacs-smartparens-strict-mode nil
+ ;; If non nil pressing the closing parenthesis `)' key in insert mode
+ ;; passes over any automatically added closing parenthesis, bracket,
+ ;; quote, etc… This can be temporary disabled by pressing `C-q'
+ ;; before `)'. (default nil)
+ dotspacemacs-smart-closing-parenthesis nil
;; Select a scope to highlight delimiters. Possible values are `any',
;; `current', `all' or `nil'. Default is `all' (highlight any scope and
;; emphasis the current one). (default 'all)
@@ -288,6 +348,7 @@
dotspacemacs-whitespace-cleanup 'trailing
))
+
(defun dotspacemacs/user-init ()
"Initialization function for user code.
It is called immediately after `dotspacemacs/init'.
@@ -295,6 +356,7 @@
org related code, which should be placed in `dotspacemacs/user-config'."
)
+
(defun dotspacemacs/user-config ()
"Configuration function for user code.
This function is called at the very end of Spacemacs initialization after