212 KiB
Changelog
- Release 0.200.x
- 0.200.10 (2017/11/01)
- 0.200.9 (2017/04/06)
- 0.200.8 (2017/04/01)
- Convention changes
- Dotspacemacs changes
- Core changes
- Distribution layer changes
- Layer changes
- Ansible
- Auto-completion
- Better defaults
- Chinese
- Chrome
- Clojure
- Common Lisp
- CSharp
- Elixir
- Emacs Lisp
- Extra-langs
- Finance
- Games
- Go
- Haskell
- Html
- IBuffer
- IPthon-notebook
- Ivy
- Javascript
- LaTeX
- Markdown
- Org
- Prodigy
- Python
- Restclient
- Ruby-On-Rails
- Rust
- Scala
- Scheme
- Semantic
- Shaders
- Spell-checking
- Themes
- Typescript
- Version control
- Ymcd
- Improvements
- 0.200.7 (2017/01/02)
- 0.200.6 (2017/01/01)
- 0.200.5 (2016/11/03)
- 0.200.4 (2016/10/26)
- 0.200.3 (2016/10/18)
- 0.200.2 (2016/10/14)
- 0.200.1 (2016/10/09)
- 0.200.0 (2016/10/02)
- IMPORTANT: Breaking changes
- Hot new features
- New Layers
- Dotfile changes
- Distribution layer changes
- Layer changes
- Agda
- Ansible
- Assembler
- Auto-completion
- AutoHotKey
- Better defaults
- BibTeX
- C/C++
- Chinese
- Clojure
- Colors
- Common-Lisp
- CSharp
- Dash
- Deft
- Docker
- Elixir
- Elfeed
- Elm
- Emacs Lisp
- ERC
- ESS
- Extra languages
- Games
- Geolocation
- Git
- GitHub
- Go
- Graphviz
- Gtags
- Haskell
- Helm
- Html
- Idris
- IPython-notebook
- Jabber
- Java
- JavaScript
- LaTeX
- Markdown
- mu4e
- OCaml
- Org
- OSX
- NixOS
- Pdf-tools
- Puppet
- Purescript
- Python
- React
- Restclient
- Ruby
- Ruby on Rails
- Rust
- Scala
- Search-engine
- Shell
- Shell-scripts
- SML
- Spell-checking
- Spotify
- Syntax-checking
- Themes-megapack
- Tmux
- Typescript
- Version-control
- Vim-unimpaired
- Windows-scripts
- Yaml
- Core Changes
- Other fixes and improvements
- Core team members
- Release 0.105.x
- 0.105.22 (2016/08/19)
- 0.105.21 (2016/06/08)
- 0.105.20 (2016/05/10)
- 0.105.19 (2016/04/20)
- 0.105.18 (2016/04/10)
- 0.105.17 (2016/04/09)
- 0.105.16 (2016/04/01)
- 0.105.15 (2016/04/01)
- 0.105.14 (2016/03/09)
- 0.105.13 (2016/03/06)
- 0.105.12 (2016/03/02)
- 0.105.11 (2016/02/18)
- 0.105.10 (2016/02/18)
- 0.105.9 (2016/01/17)
- 0.105.8 (2016/01/12)
- 0.105.7 (2016/01/11)
- 0.105.6 (2016/01/09)
- 0.105.5 (2016/01/08)
- 0.105.4 (2016/01/07)
- 0.105.3 (2016/01/06)
- 0.105.2 (2016/01/05)
- 0.105.1 (2016/01/05)
- 0.105.0 (2016/01/04)
- IMPORTANT - Breaking changes
- Hot new features
- Other important notes
- New conventions
- New Layers
- Dotfile changes
- Distribution layer changes
- Layer changes
- Auto-completion
- Better defaults
- C/C++
- Chinese
- Clojure
- Dash
- Elixir
- Elm
- Emacs lisp
- Erc
- Ess
- Evil-snipe
- Eyebrowse
- Games
- Git
- Github
- Go
- Haskell
- Html
- Idris
- Javascript
- LaTeX
- Markdown
- Nim
- Ocaml
- Org
- Osx
- Puppet
- Purescript
- Python
- React
- Ruby
- Ruby on rails
- Rust
- Scala
- Scheme
- Shell
- Spell-checking
- Syntax-checking
- Themes-megapack
- Vagrant
- Version-control
- Vinegar
- Yaml
- Website
- Core changes
- Other fixes and improvements
- Core team members
- Release 0.104.x
- 0.104.8 (2015/12/16)
- 0.104.7 (2015/12/15)
- 0.104.6 (2015/11/27)
- 0.104.5 (2015/11/22)
- 0.104.4 (2015/11/04)
- 0.104.3 (2015/11/01)
- 0.104.2 (2015/09/29)
- 0.104.1 (2015/09/28)
- 0.104.0 (2015/09/28)
- IMPORTANT - Breaking changes
- Other important notes
- Hot new features
- New conventions
- New Layers
- Dotfile changes
- Distribution layer changes
- Layer changes
- Agda
- Auto-completion
- Better-defaults
- C/C++
- Chinese
- Clojure
- CSharp
- Dash
- Deft
- Elixir
- Emacs lisp
- ERC
- ESS
- Evil-commentary
- Extra-lang
- Eyebrowse
- Fsharp
- Git
- Github
- Gnus
- Go
- Gtags
- Haskell
- Html
- Ipython-notebook
- Java
- Javascript
- Markdown
- Org
- Osx
- Pandoc
- Php
- Puppet
- Python
- Racket
- Ranger
- Ruby
- Ruby-on-rails
- Rust
- Salt
- Scala
- Scheme
- Search-engine
- Shell
- Syntax-checking
- Vinegar
- Wakatime
- Core changes
- Other fixes and improvements
- Release 0.103.x
- Release 0.102.x
- Release 0.101.x
- Previous Releases
Release 0.200.x
0.200.10 (2017/11/01)
Fixes
- Fix error: (void-variable helm-bookmark-map) when selecting a candidate from a Helm buffer (thanks to bmag)
- Fix window number assignation for Neotree buffer window (thanks to duianto)
0.200.9 (2017/04/06)
Fixes
- Fix theme loading with terminal Emacs (thanks to wang0z)
0.200.8 (2017/04/01)
Convention changes
-
Update debug conventions
- Step in and Step out are now,
i
ando
respectively - Inspect a value is now
v
- Next step is now
s
- Step in and Step out are now,
Dotspacemacs changes
- Improve variable
dotspacemacs-line-numbers
. The variable can now take a property list with the following keywords supported::relative t
to turn on relative lines,:disabled-for-modes mode1 mode2 ...
to disable line numbers in specific major modes and:size-limit-kb n
to disable line numbers when the size of the buffer is greater than n (thanks to deb0ch)
Core changes
- Import
quela
,package-build
,ido-vertical-mode
andspacemacs-theme
incore/libs
- Speedup
SPC h SPC
loading. - Force installation of
org-contrib-plus
instead oforg
effectively avoiding to install Org twice. - Display some additional information message in mode-line at startup.
- Throw an error instead of a warning if emacs version is too old (thanks to deb0ch)
- Refactor
rotate-windows
(thanks to bmag) - Don't toggle maximized window at startup if already maximized (thanks to TheBB)
- Set default value of
dotspacemacs-enable-paste-transient-state
to nil to reflect its value in the doftile template (tanks to toupeira) - which-key: Update usage of replacement alists (thanks to justbur)
- which-key: Fix transient state descriptions (thanks to justbur)
- which-key: Implement combined select window keys (thanks to justbur)
- Maximize frame earlier in the startup process (thanks to deb0ch)
- Fix unbound holy-mode error (thanks to TheBB)
- Fix error on footer insertion when window is narrow (thanks to deb0ch)
- Fix encoding of
;
in issue report body (thanks to d12frosted) - Fix variable is void: system-info in spacemacs/report-issue
- Fix delayed warning display in emacs 25.5
- Fix computation of package installation lazyness
- Fix false warning about duplicate layers at startup. (thanks to puzl)
- Fix indentation rules for declare-prefix functions
- Add support for interpreter-mode-alist to layer lazy installation
- Add support for local elpa repositories
- Always return `t` from use-package pre/post hooks. (thanks to Stebalien)
- Jump-handers
:async
keyword can now take a predicate function - home buffer: update quickhelp.txt in [?] (thanks to kccai)
- Filter out private vars in dotspacemacs/get-variable-string-list
- Add support for go to definition in other window with
SPC m g G
- Scope minor-mode specific key bindings under major-mode leader
Distribution layer changes
- New key binding
SPC w +
to toggle between vertical and horizontal windows layout (thanks to nixmaniack, bmag) - New key binding
SPC w TAB
to go to last selected window (thanks to adelq) - New key binding
gf
in compilation mode to find file at point (thanks to FrancescElies) - New key binding
gD
to jump to definition in another window (thanks to quicknir) - New key binding
SPC x l S
to reverse sort lines (duianto) - New key bindings
SPC x l c
andSPC x l C
to sort lines by column (duianto) - New key binding
SPC f T
to jump to currently opened file inneotree
(thanks to arjun-urs) - New key binding
'
inneotree
to take a quick look at the currently selected file (thanks to sdwolf) - Overhaul the buffer transient state on
SPC b .
(thanks to quicknir) - Improve
spacemacs/count-word-analysis
by including information fromcount-words
function - Use
winum.el
instead ofwindow-numbering.el
for window numbers (thanks to deb0ch) - Add copy key to neotree under
C
(thanks to lanejo01) - Move generation of tags from
SPC p C-g
to easierSPC p G
(thanks to TheBB) - Add duplicate-line-or-region on
SPC x l d
(thanks to deb0ch) - Integrate
auto-highlight-symbol
withevil
as well asisearch
(thanks to TheBB) - Change default fringe color for centered-buffer-mode.
- Use
helm
orivy
as completion framework fordumb-jump
(thanks to deuill) - Hide PROPERTIES drawers in space-doc-mode (thanks to nikolaiam)
- Disable auto-revert of
buffer-menu-mode
(thanks to bgamari) - Fix spacemacs/rename-current-buffer-file on non-file buffers (thanks to lislon)
Layer changes
Ansible
- Add support for
ansible-vault
(auto-de/encryption of files) - Add support for
company
withcompany-ansible
package
Auto-completion
- Add new package
fuzzy
forauto-complete
.
Better defaults
- Add new package
unfill
(thanks to d12frosted)
Chinese
- Move
pyim
into the.cache
directory (thanks to DCPRevere)
Chrome
- Add package
flymd
. Flymd is a realtime markdown preview (hodge)
Clojure
- Update debugger key bindings to meet new conventions
- Add new key bindings to convert collections (thanks to benedekfazekas)
- Fix calls to
cider-test-xxxx
functions (thanks to mahinshaw)
Common Lisp
- Add neew key binding
SPC m h i
to inspect a definition - Set jump handler to
slime-edit-definition
(thanks to phoe)
CSharp
- Fix Omnisharp jump handler by marking it async (thanks to razzmatazz)
Elixir
- Add support for
credo
(denin) - Prevent from inserting too many "end"s in Elixir (thanks to michalmuskala)
Emacs Lisp
- Fix cursor position for
eval-last-sexp
. - Add
SPC m e c
to evaluate current sexp. Evaluation of currentsetq
ordefun
form is underSPC m e C
. - Add support for
debugger
andedebug
, see tutorial inREADME.org
file.
Extra-langs
- Add extension
.wl
forwolfram-mode
(kenkangxgwe)
Finance
- Add new key bindings for ledger account reconciliation (thanks to timjaeger)
Games
- Add
sudoku
game. (thanks to et2010)
Go
- Fix void reference to
go--position-bytes
(thanks to db47h)
Haskell
- Update debugger key bindings to meet new conventions
Html
- Defer
company-web
loading (ralesi)
IBuffer
- New key bindings
g r
to update buffer,g j
to move to next filter group andg k
to move to previous filter group (thanks to donm)
IPthon-notebook
- Fix
axes.color_cycle
warning in matplotlibrc (thanks to Retorz)
Ivy
- Rebind
SPC f b
tocounsel-bookmark
(thanks to gilbertw1) - Add confirmation between deleting a file with
d
(thanks to d12frosted) - Add C-c C-e to edit counsel-ag search results (thanks to aaronjensen)
- Correctly close
ivy
layout transient state when pressingb
(thanks to gilbertw1)
Javascript
- Fix jump handler using
tern
by marking it async (thanks to coreygrunewald)
LaTeX
- Add new key bindings for folding functions (thanks to nashamri)
Markdown
- Add new key binding
SPC m i t
to insert a Table of Contents - Fix activation of
mmm-mode
- Add support for ini files
- Hide
MMM
linter in mode-line
Org
- New key binding
,
fororg-edit-src-exit
(thanks to david-sawatzke) - New key binding
SPC m i a
fororg-attach
(thanks to smile12341234) - Move
SPC m e
toSPC m e e
fororg-export-dispatch
- Fix
o
on folded headings (thanks to dschoepe)
Prodigy
- Add new key binding
R
to refresh buffer (thanks to FrancescElies) - Add new key binding
gf
to go to file at point (thanks to FrancescElies)
Python
- New layer variable
python-auto-set-local-pyvenv-virtualenv
to autoload a virtual env with a.venv
file (thanks to korayal) - Simplify python test runner setup (thanks to TheBB)
- Fix debug string for python3 (thanks to yangguang760)
- Fix python path with virtualenv on Windows in Python nose package (thanks to brenttaylor)
- Fix python-enable-yapf-format-on-save (thanks to magia)
Restclient
- Add package
ob-restclient
to addorg-babel
support torestclient
- Add helm support to jump to variable or request with
SPC m j
(thanks to tko) - Add autocompletion for methods and headers (thanks to tko)
- Add key bindings for jump to next / previous query with
SPC m n
andSPC m p
(thanks to tko)
Ruby-On-Rails
- Use projectile-rails-global-mode if available (thanks to asok)
Rust
- Add binding for describing symbol at point under
SPC m h h
(thanks to NJBS) - Add key binding to run current Rust file under
SPC m q
(thanks to swaroopch) - Make Racer respect
help-window-select
(thanks to bmag)
Scala
- Update debugger key bindings to meet new conventions
- Update deprecated
ensime
variable nameuser-emacs-ensime-directory
(thanks to brakhane) - Remove sbt-hydra rename wrapper (thanks to jdnavarro)
Scheme
- Fix void-variable
company-backends-scheme-mode
(thanks to pnagy)
Semantic
- Make Semantic fast (thanks to tudho)
Shaders
- Add support for
company
withglsl-company
package (thanks to d12frosted)
Spell-checking
- Defer loading of
flyspell-correct-helm
andflyspell-correct
(thanks to ralesi and d12frosted)
Themes
- Add sourcerer theme to themes-megapack (thanks to gilbertw1)
- Added new base16 themes (thanks to bezhermoso and metamode)
- Add madhat2r theme to megapack (thanks to madhat2r)
Typescript
- Fix eldoc initialization in typescript layer. (thanks to Stebalien)
Version control
- New layer variable
version-control-diff-side
to set the fringe side where to display version control info (thanks to emmanueltouzery) - Add a transient state for
smerge-mode
onSPC g r
(thanks to perfectayush)
Ymcd
- Add ycmd-eldoc to ycmd layer (thanks to quicknir)
Improvements
- Improve home buffer responsiveness, add centering for release notes and lists (thanks to deb0ch)
- Add key bindings to move buffers by window number with
SPC b #
where#
is a number between 0 and 9 (thanks to quicknir) - Add toggle to display time in modeline on
SPC t m t
. Toggle of the modeline is now inSPC t m T
. (thanks to jupl) - Add toggle for syntax highlighting on
SPC t h s
(thanks to jupl) - Message instead of warn on failed auto-evilify (thanks to TheBB)
- Warn if both helm and ivy are enabled (thanks to TheBB)
- Add new documentation file
doc/BEGINNERS_TUTORIAL.org
(nikolaiam) - Various documentation improvements (thanks to antonshwab, benbotwin, bmag, cyberxndr, d12frosted, duianto, erictapen, FrancescElies, idoo, jr0cket, jgertm, jumarko, jwintz, LemmingAvalanche, lpenz, Melon-Bread, mineo, nightuser, nikolaiam, primeos, rodonn, roryokane, rski, skade, smile12341234, stratosgear, Trevoke, xiaohanyu, Wiliamvdv, zetok, zhexuany)
0.200.7 (2017/01/02)
Fixes
- More robust fix for error helm :config: 'fuzzy-match' not supported in async sources
0.200.6 (2017/01/01)
Fixes
- Fix error helm :config: 'fuzzy-match' not supported in async sources
0.200.5 (2016/11/03)
Fixes
- Removed themes missing from MELPA (
colorsarenice-theme
andstekene-theme
)
0.200.4 (2016/10/26)
Fixes
- Update go-guru package reflecting MELPA changes
0.200.3 (2016/10/18)
Fixes
- Fix broken macOS paths for homebrew service (thanks to mgiles)
Improvements
- Add
system-configuration-features
to system description (SPC h d s
) for Emacs 25 and later (thanks to JAremko) - Add support for
doom
themes (thanks to TheBB) - Revert back default value for
dotspacemacs-startup-lists
(was previously changed to be nil) - Warn if layers changed outside
dotspacemacs/layers
function (thanks to TheBB) - Show a list of Spacemacs warnings in home buffer (thanks to TheBB)
- Prevent
:toggle
expression from being evaluated for excluded packages (thanks to TheBB) - Various documentation improvements (thanks to arronmabrey, carbohydratesn, d12frosted, d1egoaz, deb0ch, duianto, eagleflo, JAremko, jredville, lunik1, mineo, nixmaniack, philtothetop, roryokane, swaroopch, TheBB, Tritlo, tudho, xificurC)
Layer changes
Spacemacs distribution
- Add
golden-ratio
toggle key in window transient-state only whengolden-ratio
package is used (thanks to bmag) - Enable line numbers for
conf-mode
(by derivingconf-mode
fromtext-mode
) (thanks to valentjedi) - New key binding
SPC c h
to hide/show comments in a file using the packagehide-comnt
- Add
q
key binding to quit theevil-number
transient-state (thanks to duianto) - Activating
linum-relative
now correctly activateslinum
(thanks to deb0ch)
C/C++
- Match entire path after -I when reading cc-file (function
spacemacs/company-load-clang-complete-file
) (thanks to jlewallen)
Common-lisp
- Enable fuzzy matching for auto-completion (thanks to tuhdo)
D
- Add support for auto-completion via
DCD
(thanks to tuhdo) -
Add new key bindings for code navigation:
SPC m g g
to go to definitionSPC m g b
to jump back (after go to definition with above command)SPC m g r
to find references to all symbol at point
(thanks to tuhdo)
IPython-notebook
- Fix deprecated
axes.color_cycle
inmatplotlibrc
(thanks to Retorz)
Ivy
- Fix spacemacs layout transient-state to correctly exit when selecting a layout (thanks to gilbertw1)
- Make
ivy
restrict buffers to current spacemacs layout (thanks to bmag)
Elixir
- Add support for
org-babel
(thanks to usharf) - Enable
flycheck
on idle since recent changes toflycheck-mix
make it safe (thanks to aaronjensen)
ERC
- Fix connecting to default servers with TLS more than once with ERC (thanks to Hoot215)
Git
- Use
fill-column-indicator
only when the package is effectively used (thanks to bmag) - Use
magit
2.8 built-in fullscreen display function (update your packages) (thanks to houli)
Go
- Replace deprecated
go-oracle
bygo-guru
(thanks to edrex) - Remove check for
GOPATH
when initializinggo-guru
(thanks to goofansu) - Fix usage of
go-rename
on symlinked projects (thanks to grncdr)
Helm
- Add key binding
M-RET
(meta-return) to open the filepackages.el
of a layer inhelm-spacemacs-help
underSPC h SPC
(thanks to CestDiego)
Html
- Fix hooks for CSS-mode since it now derives from
prog-mode
in Emacs 25 (thanks to TheBB)
Javascript
- Add missing command prefix names (thanks to shanavas786)
Ocaml
- Add
cmti
extension to list of ignored completion extensions (thanks to rgrinberg)
Org
- Fix location of
org-async-init.el
(thanks to fintelkai) - Add support for
:q
and:wq
ex commands for abort and finalize inorg-capture
andorg-src-edit
(thanks to mwillsey) - Add support for
Twitter Bootstrap
for export to html. To enable the support forbootstrap
set the new layer variableorg-enable-bootstrap-support
tot
(thanks to kalhauge)
Nim
- Add support
nimsuggest
for better completion using Nim's IDE tool (thanks to tuhdo) - Add support for
eldoc
vianimsuggest
(thanks to tuhdo) -
New key bindings for code navigation:
SPC m g g
to jump to definitionSPC m g b
to jump back
(thanks to tuhdo)
Plantuml
- Replace deprecated
puml-mode
byplantuml-mode
(thanks to skuro)
Python
- Fix start of REPL for Emacs 25.1 (thanks to bmag)
- Make
python-tab-width
configurable (thanks to TheBB) - Add support for
wdb
debugger when inserting breakpoints usingSPC m d b
(thanks to koterpillar) - Use
semantic
forimenu
only whensemantic-mode
is enabled (thanks to bmag) - Improve
spacemacs/python-execute-file
onSPC m c c
to pre-fill "python <filename>" as the compile command when using the universal prefix argumentSPC u SPC m c c
(thanks to bmag)
Ruby
- Add support for
minitest
test runner (thanks to pawandubey)
Ruby on rails
- Declare prefix command for
ruby-mode
andenh-ruby-mode
(thanks to selmanj)
Scala
- Remove
ensime
obsolete commandsensime-db-start
andensime-db-list-locals
(thanks to atreeyang)
Shell-scripts
- New key binding
SPC i !
to insert shebang line in script files using packageinsert-shebang
Syntax checking
- Add support for new
flycheck
featureflycheck-explain-error
onSPC e e
(thanks to fmdkdd)
Typescript
- Add support for auto-completion (thanks to TheBB)
Yaml
- Add support for syntax checking (thanks to rski)
Ycmd
- Improve search of nearest file in compilation database (thanks to deb0ch)
0.200.2 (2016/10/14)
Fixes
- Fix compatibility with the
xterm-color
package (thanks to bixuanzju)
0.200.1 (2016/10/09)
Fixes
- Restore missing support for custom Evil ex command key via the new
dotspacemacs-ex-command-key
variable (thanks to Dietr1ch) - core: Fix lazy installation of layers
- core: Fix Quelpa recipes construction (thanks to ynilu)
- core: Fix unwanted exclusion of packages when setting
dotspacemacs-install-packages
toall
- core: Fix
spacemacs/ert-run-tests-buffer
to run only the tests in current buffer (thanks to bmag)
Dotfile changes
- New variable
dotspacemacs-ex-command-key
to define the key to press to enter an Evil ex command, default is:
(thanks to Dietr1ch) - Change default value of
dotspacemacs-startup-lists
tonil
Layer changes
Agda
- Enable auto-completion (thanks to bixuanzju)
Clojure
- Add support for
org-babel
(thanks to drewokane)
Git
- Adjust linum gutter to accomodate text-size changes (thanks to nspaeth)
Html
- Replace
jade-mode
bypug-mode
(Jade is now Pug) (thanks to robbyoconnor)
Markdown
- Enable
orgtbl-mode
, this makes working with tables much nicer (thanks to robbyoconnor)
React
- Enable
emmet-mode
(thanks to kaipr)
Shell
- Fix shell regular expression to add shell buffers to useful buffers (thanks to TheBB)
Ycmd
- Improve performance on large projects by removing buffer parsing on newline insertion (thanks to deb0ch)
Improvements
- Add support for transparency in multiple frames (thanks to TGThorax)
- Add
J
andK
key bindings on the home buffer to navigate between widgets (thanks to tobimensch) - Various documentation improvements (thanks to andschwa, bmag, duianto, jazzpi, Tritlo, vigilancer)
0.200.0 (2016/10/02)
IMPORTANT: Breaking changes
- The support for Emacs 24.3 has been dropped, Spacemacs needs at least Emacs 24.4 to work correctly.
extensions
are deprecated as announced in previous release, if you still haveextensions
directories you must rename them tolocal
and move the contents of theextensions.el
files to thepackages.el
files adding the keyword:location local
to them in the package list. Refer to other layers for examples (for instance thepython
layer)<package>-excluded-packages
variables are now deprecated as announced in previous release, you must now use the keyword:excluded t
of the package list, see thevim-empty-lines
layer for example.- Key binding
SPC :
acting asM-x
as been replaced bySPC SPC
. If you want to revert to the oldSPC :
key binding set the new variabledotspacemacs-emacs-command-key
to ":". - Key binding
SPC f e h
is nowSPC h SPC
- Key bindings to delete things are now more consistent and use the
d
key. We movedSPC w c
andSPC w C
toSPC w d
andSPC w D
. - Refactor
SPC w
andSPC b
regarding deletion to clean redundant actions and bring more consistency between the two prefixes (seeDistribution layer changes
section in change log for more information) -
SPC j
prefix has been modified to includejump
commands:-
avy
commands are now behind the prefixSPC j
forjump
:SPC j j
to jump to a character in the buffer (works as an evil motion)SPC j l
to jump to a line with avy (works as an evil motion)SPC j w
to jump to a word in the current buffer (works as an evil motion)
-
the following key bindings have been moved:
SPC j j
to split a line has been moved toSPC j n
SPC j h
andSPC j l
have been moved toSPC j 0
andSPC j $
respectively.SPC J
to split a string or sexp has been moved toSPC j s
-
-
All helm related key bindings under
SPC h
that are not about help have been moved to different key bindings:SPC h b
for =helm-filtered-bookmarks~is nowSPC f b
SPC h l
forhelm-resume
is nowSPC r l
SPC h L
forhelm-locate-library
is nowSPC f e l
- Change default value of
dotspacemacs-remap-Y-to-y$
tonil
- Git key bindings under
SPC g
have been reorganised to free up some keys and capitalize onMagit
dispatch menu to keep things consistent (seegit
section in change log for more information) - Spacemacs layouts scope has been changed, now
SPC b b
lists the buffers of the current layout, useSPC B b
to list all the opened buffers. org-indent
is now turned off by default- Micro states are now called transient states, the macro
spacemacs|define-micro-state
is deprecated, it is replaced by the newhydra
powered macrospacemacs|define-transient-state
. - Spacemacs layouts and workspaces transient states now exit when a layout or
workspace is selected, use
C-0
...
C-9
to switch to a layout and keep the transient state open. - Remove support for the value
all
fordotspacemacs-configuration-layers
variable. To install all the packages supported by Spacemacs there is a new variabledotspacemacs-install-packages
. - Remove layer variable
colors-enable-rainbow-identifiers
incolors
layer, You have to replace it bycolors-colorize-identifiers 'all
. - The
bépo
layer has been replaced by the new layerkeyboard-layout
, see theREADME.org
of the layer for more info.
Hot new features
- Refactor of the layer system which should reduce startup time by 20~25%.
- New option to lazy install layers based on
auto-mode-alist
(similar toPrelude
lazy install of packages but for layers) via the variabledotspacemacs-enable-lazy-installation
. - Add support for Ivy via the new layer
ivy
, when used it replaceshelm
(thanks to justbur, d12frosted, goofansu, lszekeres, nixmaniack, ralesi, TheBB, zilongshanren) - Add support for different keyboard layouts via the new layer
keyboard-layout
, currently supported layouts arebépo
anddvorak
(thanks to StreakyCobra) - New transient states powered by
Hydra
, they replace the deprecated micro states (thanks to justbur) - New
jump to definition
abstraction to handle multiple jump backends like tags, dumb-jump etc… (thanks to TheBB) - Global access to all available REPLs with
SPC a '
and `SPC m '~ (thanks to AlejandroCatalina and TheBB) -
New debugging tools:
- press
SPC q d
to restart Emacs in debug mode with command line parameter--debug-init
- press
SPC q D
to restart Emacs without Spacemacs but with a list of selected packages to load.
(thanks to StreakyCobra)
- press
- New way to install all the supported packages by Spacemacs via the variable
dotspacemacs-install-packages
- Improved
emacs
andhybrid
editing styles to fix configuration inconsistencies -
the
spacemacs
layer has been split into multiple layers to allow better modularity (these layers are in+spacemacs
sub-directory):- spacemacs-completion
- spacemacs-editing
- spacemacs-editing-visual
- spacemacs-evil
- spacemacs-language
- spacemacs-layouts
- spacemacs-misc
- spacemacs-org
- spacemacs-ui
- spacemacs-ui-visual
(thanks to justbur)
New Layers
- asm in
+lang
(thanks to thudo) - bibtex in
+lang
(thanks to JP-Ellis) - csv in
+lang
(thanks to jb55) - cfengine in
+tools
(thanks to nickanderson) - helm in
completion
(moved from spacemacs-base) (thanks to justbur) - imenu-list in
+tools
(thanks to bmag) - ivy in
completion
(thanks to justbur) - keyboard-layout (replaces the bépo layer) (thanks to StreakyCobra)
- nlinum in
+misc
(thanks to CodeFalling) - pdf-tools in
+tools
(thanks to Andre0991) - plantuml in
+lang
(thanks to robbyoconnor) - rebox in
+tools
(thanks to choppsv1) - shaders in
+lang
(thanks to Ell) - slack in
+chat
(thanks to kostajh) - systemd in
+tools
(thanks to StreakyCobra)
Dotfile changes
Changes for variable values and keywords
- Add new keyword
:packages
for the list of layers in variabledotspacemacs-configuration-layer
,:packages
allow to select or exclude packages from a layer. - Add new keyword
:enabled-for
for the list of layers in variabledotspacemacs-configuration-layer
, this keyword controls the effect of a layer on the other layers. For instance one can enable theauto-completion
only for thepython
layer with the value(auto-completion :enabled-for python)
Note that this keyword is the opposite of the existing keyword:disabled-for
. (thanks to TheBB) -
The value of
dotspacemacs-editing-style
can now be a list containing the keyword:variables
(similar todotspacemacs-configuration-layers
) to define additional variables to modify the behavior of the editing style. This new keyword is useful forhybrid
style which supports these variables:hybrid-mode-enable-evilified-state
, if non nil then buffer are evilified,hybrid-mode-enable-hjkl-bindings
, if non nil navigation onhjkl
keys is enabled (for instance inhelm
buffers),hybrid-mode-default-state
, the default state when opening a new buffer, by default it isnormal
.
- The value of
dotspacemacs-default-font
can now be a list (thanks to TheBB) -
New supported values for
dotspacemacs-startup-lists
:- agenda
- todos
(thanks to tonyday567)
- Change default value of
dotspacemacs-remap-Y-to-y$
tonil
- Change default value of
dotspacemacs-startup-lists
tonil
- Change default value of
dotspacemacs-check-for-update
tonil
- Remove support for value
all
in variabledotspacemacs-configuration-layers
- Remove variable
dotspacemacs-startup-recent-list-size
which has been replaced by adding support for cons cells in variabledotspacemacs-startup-list
(thanks to ralesi)
New variables
-
New variable
dotspacemacs-enable-lazy-installation
to install a layer only when a file with a supported type is opened. Possible values areall
,unused
andnil
:unused
will lazy install only unused layersall
will lazy install any layer that support lazy installation even the used layersnil
disable the lazy installation feature Default value isunused
- New variable
dotspacemacs-frozen-packages
. It is a list of packages, these packages cannot be updated or rollbacked. -
New variable
dotspacemacs-install-packages
which replaces the variabledotspacemacs-delete-orphan-packages
. This new variable defines the behavior of Spacemacs for installed packages. Possible values areused-only
,used-but-keep-unused
andall
.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 value is
used-only
. - New variable
dotspacemacs-emacs-command-key
which replaces the variabledotspacemacs-command-key
. This variable represents the key to press after the leader key to executeM-x
. Default value isSPC
. - New variable
dotspacemacs-folding-method
to allow choosing between different code folding methods. Currently supported areevil
andorigami
. Default value isevil
. (thanks to ralesi) - New variable
dotspacemacs-ex-substitute-global
, if non-nil then the behavior of theg
flag in:substitute
ex-command is inverted. Default value is nil (thanks to fbergroth) - New variable
dotspacemacs-smart-closing-parenthesis
. 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 pressingC-q
before)
. Default is nil. (thanks to StreakyCobra) - New variable
dotspacemacs-retain-visual-mode-on-shift
, If non nil>
is remapped to>gv
and<
is remapped to<gv
in visual mode, default value is nil (thanks to Stebalien) - New variable
dotspacemacs-visual-line-move-text
, if non-nil,J
andK
move lines up and down when in visual mode. Default value is nil. (thanks to Stebalien) - New variable
dotspacemacs-helm-use-fuzzy
. It controls fuzzy matching in helm. If set toalways
, force fuzzy matching in all non-asynchronous sources. If set tosource
, preserve individual source settings. Else, disable fuzzy matching in all sources. Default value isalways
(thanks to quicknir) - New variable
dotspacemacs-elpa-subdirectory
. Can benil
or a form that evaluates to a package directory. For example, to use different package directories for different Emacs versions, set this toemacs-version
(thanks to bmag, TheBB and emacs18) - New variable
dotspacemacs-startup-buffer-responsive
to enable the recenter of the home buffer contents when the window is resized. (thanks to TheBB)
Distribution layer changes
- Add package
evil-ediff
(thanks to justbur) - Add package
evil-visual-mark-mode
(thanks to nixmaniack) - Add package
origmai
(used only if new variabledotspacemacs-folding-method
is set toorigami
) (thanks to ralesi) -
Add package
link-hint
:SPC x o
to use avy to select a link in the frame and open itSPC x O
to use avy to select multiple links in the frame and open them
(thanks to StreakyCobra)
-
Add package
uuidgen
:SPC i U 1
to insert UUIDv1 (use universal arg. to insert w/ CID format)SPC i U 4
to insert UUIDv4 (use universal arg. to insert w/ CID format)SPC i U U
to insert UUIDv4 (use universal arg. to insert w/ CID format)
- Add local package
centered-buffer-mode
onSPC w c
(thanks to JAremko) - Remove
evil-jumper
package, it is now integrated inevil
(thanks to justbur) - Remove
smooth-scrolling
package and replace it by an Emacs built-in alternative. - Move
unimpaired
layer tospacemacs
layer C-i
in GUI now executeevil-jump-forward
(thanks to justbur)- New variable
spacemacs-large-file-modes-list
to disable large file check for some major modes (thanks to myrjola) - New variable
spacemacs-spaceline-additional-segments
to set additional segments for the Spaceline mode-line. They are inserted betweenglobal
andbuffer-position
segments (thanks to riccardomurri) -
New key bindings to restart Emacs and restore Spacemacs layouts:
SPC q r
to restart Emacs and restore layoutsSPC q R
to restart Emacs without restoring layouts
(thanks to StreakyCobra)
- New key binding
SPC b N
and evil ex-command:enew
to open a new empty buffer (thanks to balajisivaraman) - New key binding
SPC f h
to open a binary file withhexl
(thanks to TheBB) - New key binding
SPC p F
to find file around point in the project context (thanks to thudo) - Change key binding
SPC p T
toprojectile-test-project
(thanks to joehillen) - New key binding
SPC p %
to replace in project using a regular expression (thanks to d12frosted) - New key binding
SPC p o
to open the TODOs buffer for the current project -
New Spacemacs layouts key bindings:
SPC b a
to add a buffer to the current layoutSPC b r
to remove a buffer from the current layoutSPC B b
to list all the buffers in all layouts
(thanks to CestDiego)
-
Refactor
SPC w
andSPC b
regarding deletion to clean redundant actions and bring more consistency between the two prefixes:SPC b k
has been removedSPC b m
(buffer move) has been removed because the functionality is available viaSPC w
withSPC w h/j/k/l
,SPC w H/J/K/L
andSPC w M
.SPC b K
(kill other buffers) is nowSPC b m
to map withSPC w m
(kill other window or maximize). Using the universal prefix argumentSPC u SPC b m
will also kill the windows.SPC b C-k
(kill buffer matching regexp) is now onSPC b C-d
SPC b D
now kills a buffer usingace-window
.SPC b d
andSPC b D
now accept an universal prefix argument to also delete the window. SoSPC u SPC b d
andSPC u SPC b D
delete the buffer and the window.
-
Command prefix
SPC j
is now also forjumping
, introduced key bindings are:SPC j 0
to go to the beginning of line (and set a mark at the previous location in the line)SPC j $
to go to the end of line (and set a mark at the previous location in the line)SPC j b
to undo a jump (go back to previous location)SPC j d
to jump to a listing of the current directorySPC j D
to jump to a listing of the current directory (other window)SPC j f
to jump to the definition of the function around pointSPC j i
to jump to a definition in buffer (imenu)SPC j j
to jump to a character in the buffer (works as an evil motion)SPC j J
to jump to a suite of two characters in the buffer (works as an evil motion)SPC j I
to jump to a definition in any buffer (imenu)SPC j k
to jump to next line and indent it using auto-indent rulesSPC j l
to jump to a line with avy (works as an evil motion)SPC j n
to split the current line at point, insert a new line and auto-indentSPC j s
to split a quoted string or s-expression in placeSPC j S
to split a quoted string or s-expression, insert a new line and auto-indentSPC j u
to jump to a URL in the current bufferSPC j v
to jump to the definition/declaration of the variable around pointSPC j w
to jump to a word in the current buffer (works as an evil motion)
(thanks to justbur)
-
New key bindings under
SPC h
:SPC h .
to search for dotfile variablesSPC h f
to search for FAQSPC h l
to search for layersSPC h p
to search for packagesSPC h r
to search for documentation filesSPC h t
to search for toggles
(thanks to justbur)
-
New text justification key bindings:
SPC x j c
to set the justification to centerSPC x j f
to set the justification to fullSPC x j l
to set the justification to leftSPC x j n
to set the justification to noneSPC x j r
to set the justification to right
(thanks to StreakyCobra)
- New key binding
SPC w f
to togglefollow
mode (thanks to JAremko) - New key binding
SPC w F
to create new frame (thanks to JP-Ellis) - New key binding
SPC w R
to rotate windows backward (thanks to Dominionized) - New key bindings
r
andR
inwindows
transient state to rotate windows forward and backward (thanks to TheBB) - New key binding
SPC x a \
to align backslashes (thanks to nocash) - New key binding
SPC h d d
forhelm-apropos
(thanks to StreakyCobra) - New key bindings
[ f
and] f
to go to the next or previous file in current directory (thanks to fbergroth) - New key binding
gr
inhelm-ag
buffers to update saved results (thanks to darkfeline) - New key binding
SPC f b
forbookmark-jump
(thanks to darkfeline) - New key binding
SPC t W
to toggle whitespace cleanup (thanks to TheBB) - Implement generalized next-error API (called
GNE
) and a new transient state to navigate through errors on key bindingSPC e .
(thanks to TheBB) - Add support for GNE to
ivy
andhelm
result buffers (thanks to TheBB) ESC
now quitshelp
buffers (thanks to olivierverdier)=
can now be used to increase transparency in the transparency transient state (thanks to sooheon)SPC b d
now always kill buffers (thanks to toupeira)SPC f o
can now open directories as well using the universal prefix argument (thanks to bixuanzju)- Refactor useful/useless buffer functions for better readability, better detection of buffers and more contained side effects (thanks to bmag)
- Generalize version control key bindings for
evil-unimpaired
(thanks to iurifq) - Support hybrid editing style in
iedit-insert
state (thanks to madand) - Evilify
tar-mode
(thanks to fbergroth) - Evilify
image-mode
- Evilify
indent-rigidly
(thanks to TheBB) - Evilify
archive-mode
(thanks to lislon) - Evilify
occur-mode
(thanks to nixmaniack) - Add
p
for previous match toauto-highlight-symbol
transient state (thanks to microamp) - Add numerical prefix argument support for
G
indoc-view
to go to a page (thanks to TheBB) - Add
smartparens
tocomint-mode
(thanks to CestDiego) - Add new transient state for
neotree
on?
(thanks to bmag) - Allow
align-repeat
to work with empty regexps (thanks to TheBB) - Enable volatile highlights for evil and
undo-tree
(thanks to ohspite) - Remove
ESC
re binding in visual state (thanks to sooheon) - Remove
leuven
theme - Fix bug where running
dotspacemacs/sync-configuration-layers
SPC-f-e-R
resets all the layouts (thanks to bmag) - Fix bug where hooks are run too late when setting
dotspacemacs-auto-resume-layouts
to t (thanks to cpaulik) - Fix duplication of custom layouts sharing the same key binding (thanks to d12frosted)
- Fix
SPC b b
potentially not restricted to layout-local buffers (thanks to aroig) - Fix display on Emacs fringe symbols (thanks to cpaulik)
- Fix
rainbow-delimiter-mode
in various modes (thanks to StreakyCobra) - Fix
neotree
window number assignment (thanks to bmag) - Fix
neotree
losing track of its window when changing workspaces or layouts (thanks to bmag) - Fix
SPC s e
for emacs style users, the binding now calliedit
instead ofevil-iedit-state
(thanks to AlejandroCatalina) - Fix
SPC s c
to work withevil-search-module
(thanks to StreakyCobra) - Fix
SPC i j
(insert new line below) andSPC i k
(insert new line above) (thanks to TheBB) - Fix move up and down selected text in Vim style.
- Fix
dotspacemacs-remap-Y-to-y$
which had no effect (thanks to TheBB) - Fix usage of deprecated function
avy--with-avy-keys
(thanks to NJBS) - Fix key bindings bug with
visual-line
toggle (thanks to TheBB) - Fix tramp history file path (thanks to kallelindqvist)
- Fix hs-minor-mode activation in prog modes.
- Fix startup crash if powerline is excluded (thanks to ksjogo)
- Fix jumping backwards after calling
spacemacs/evil-smart-goto-definition
(thanks to Stebalien) - Fix
Symbol's value as variable is void: osx-use-dictionary-app
when theosx
layer is not used (thanks to nixmaniack) - Fix
configuration-layer//resolve-package-archives
for local URLs (thanks to d12frosted) - Fix initial-buffer-choice in daemon mode (thanks to TheBB)
- Set
ffap-machine-p-known
toreject
to preventfind-file-at-point
from pinging what looks like domains (thanks to mineo) - Automatically unfold buffers with
ediff
(thanks to mazinbokhari) - Improve toggle
highlight-long-lines
to support prefix argument to set the column where to start the highlight (thanks to dcluna) - Colorize compilation buffers by processing ANSI color sequences (thanks to deb0ch)
- Disable tilde fringe in shell/comint modes (thanks to russell)
- Disable tilde fringe in
messages
andwhich-key
buffers (thanks to sooheon) - Disable smartparens highlighting (thanks to TheBB)
- Diminish
visual-mode
to " Ⓛ" or " L" to match key binding (thanks to xiaohanyu) - Diminish
evil-mc
when there is no cursor. - Move
org
base configuration from theorg
layer to thespacemacs
distribution (thanks to d12frosted) - Move
pcre2el
key bindings toSPC x r
prefix - Move
projectile-find-tag
fromSPC p y
toSPC p g
- Move
SPC p G
toSPC p C-g
to regenerate tags - Restrict
iedit
region toauto-highlight-symbol
range (thanks to bmag) - Various
google-translate
fixes (thanks to TheBB) - Prevent
auto-highlight-symbol
from setting up its own default map (thanks to bling) - Delay
vi-tilde-fringe
loading after display init, fixes missing tildes when using Emacs daemon (thanks to StreakyCobra) - Start to partition
spacemacs
layers into sub-layers (thanks to justbur) - Use two different sets of workspaces for each Spacemacs layout: one set for graphical frames, and one set for terminal frames (thanks to bmag)
Layer changes
Agda
- Make it possible to use the layer without
agda-mode
executable (thanks to FreeSalad)
Ansible
- Add package
jinja2-mode
- Add support for
host_vars
andgroup_vars
files (thanks to nixmaniack) - Change key binding
SPC m a ?
toSPC m h a
Assembler
- Properly deactivate electric mode locally instead of globally (thanks to TheBB)
Auto-completion
- New layer variable
auto-completion-complete-with-key-sequence-delay
to set the delay in second between the keys of sequence used to select the auto-completion candidate (thanks to MadAnd) - New value
manual
for layer variableauto-completion-enable-help-tooltip
. It enables the user to display help tooltip on-demand (thanks to bmag) -
Add package
org-download
to insert images from an URL:SPC m i s
to Take screenshotSPC m i y
to Yank image url
(thanks to krakapwa)
- Enable
C-p
(hippie-expand) only in vim style (thanks to nixmaniack) - Add support for emacs style for navigation in
company
- Fix
smartparens
integration withyasnipet
andhippie-expand
(thanks to TheBB) - Fix
company-quickhelp
in daemon mode (thanks to TheBB) - Fix
C-k
not working incompany-quickhelp-mode
(thanks to TheBB) - Fix auto-complete with key sequence in Hybrid mode (thanks to madand)
- Remap
evil-complete-previous
tohippie-expand
(thanks to justbur) - Reduce
yasnippet
loading warning (thanks to bixuanzju)
AutoHotKey
- Replace key binding
SPC m h
bySPC m h h
(thanks to ralesi) - New key binding
SPC m h H
to lookup documentation locally in.chm
(thanks to ralesi)
Better defaults
-
Add "smart move end of line" behaviour and add two layer variables allow for tweaking C-a and C-e behaviours:
better-defaults-move-to-beginning-of-code-first
better-defaults-move-to-end-of-code-first
(thanks to deb0ch)
- Add
fill-or-unfill
onM-q
(thanks to d12frosted)
BibTeX
-
Fix key bindings loading and add more navigation options:
gj
orC-j
fororg-ref-bibtex-next-entry
gk
orC-k
fororg-ref-bibtex-previous-entry
(thanks to cpaulik)
C/C++
- Activate
ycmd-mode
in C files (thanks to deb0ch)
Chinese
- Remove windows checking when using
fcitx
(thanks to zilongshanren)
Clojure
- Add package
clojure-snippets
(thanks to AlejandroCatalina) - New key binding
SPC m s o
for switching between REPL connections (thanks to mahinshaw) - New key binding
SPC m h a
forcider
apropos (thanks to birdspider) -
New key bindings for
cider
:SPC m g C
to browse classpathSPC m g n
to browse namespacesSPC m g N
to browse all namespacesSPC m T e
to toggle englighten modeSPC m T t
to toggle auto test mode
(thanks to kalouantonis)
- New key binding
SPC m T e
to togglecider-enlighten-mode
(thanks to mahinshaw) - New key binding
SPC m s C
to clear REPL (thanks to jgertm) - New key binding
SPC m h n
tocider
browse namespace (thanks to mahinshaw) - New key bindings
SPC m e m
forcider
macroexpand 1 andSPC m e M
forcider
macroexpand all (thanks to mahinshaw) - New key binding
SPC m "
forcider-jack-in-clojurescript
(thanks to mahinshaw) - Remove indentation rules (thanks to ernestas)
- Start
cider-debug
in normal state for hybrid style (thanks to sooheon) - Fix cider tests functions (thanks to sooheon)
- Enable
smartparens
in cider (thanks to TheBB)
Colors
- New package
color-identifiers-mode
(thanks to ralesi) -
New layer variable
colors-colorize-identifiers
supporting the following values:variables
(key bindingSPC t C v
) colorizes only variables viacolor-identifiers
modeall
(key bindingSPC t C a
) colorizes all identifiersnil
for no additional colorisation at all
(thanks to ralesi and curtmack)
- Fix override of theme values for
rainbow-identifiers
(thanks to ksjogo)
Common-Lisp
- Add package
common-lisp-snippets
(thanks to thudo) - Add support for
auto-highlight-symbol
(thanks to AlejandroCatalina) - New key binding
SPC m s I
to choose lisp implementation withhelm
(thanks to kr5x) - Fix
slime-eval-last-sexp
is not defined (thanks to 111lll1l1l)
CSharp
-
New key bindings
SPC m g c
to go to member in current fileSPC m g I
to find implementations using idoSPC m g U
to find usages of symbol under cursor using idoSPC m r M
to rename symbol under cursor interactively
(thanks to retran)
- Enable
evil-matchit
for C-like tags such as preprocessor definitions (thanks to andschwa)
Dash
- Rename layer variable
dash-helm-dash-docset-path
tohelm-dash-docset-newpath
with default value~/.docsets
(thanks to nhenezi)
Deft
- Fix create new file with filter text (thanks to andschwa)
Docker
- Add package
docker-tramp
which provides TRAMP access to running docker containers (thanks to cpaulik) - Add package
docker
which provides basic management of docker images and containers (thanks to cpaulik)
Elixir
- Add package
flycheck-mix
(thanks to tomekowal) - Remove
ruby-end-mode
and usesmartparens
instead (thanks to mmainz)
Elfeed
- New key binding
o
to open links withace-jump
(thanks to nixmaniack)
Elm
- New key binding
SPC m r i
forelm-sort-imports
(thanks to tko) - New key binding
SPC m = b
to format buffer (thanks to AetherLorde) - New key binding
SPC m h h
to open doc around point (thanks to obmarg) - Remove
n
andp
key bindings from package list mode since they are not useful and shadowsn
to repeat last search (thanks to tko) - Fix auto-complete (thanks to benansell)
Emacs Lisp
- New key binding
SPC m g G
to go to definition in other window - Fix key binding
SPC m =
(thanks to NJBS)
ERC
- New layer variable
erc-server-list
(thanks to jhenahan) - Enable lazy loading.
ESS
- Add support for
org-babel
(thanks to cpaulik)
Extra languages
- Add package
thrift
(thanks to secwang) - Add package
faust-mode
(thanks to magnetophon) - Make
matlab-mode
runprog-mode-hook
(thanks to TheBB)
Games
- Add package
typit
.
Geolocation
- Rewrite of the layer, see its
README.org
for more info (thanks to usharf and declanqian)
Git
-
Revamp key bindings to leverage
Magit
dispatch popup and free up some keys to be used for other commands:-
removed the following key bindings:
SPC g >
magit-submodule-popupSPC g A
magit-cherry-pick-popupSPC g c
magit-commit-popupSPC g C
magit-checkoutSPC g d
magit-diff-popupSPC g D
spacemacs/magit-diff-headSPC g e
magit-ediff-compareSPC g E
magit-ediff-show-working-treeSPC g f
magit-fetch-popupSPC g F
magit-pull-popupSPC g i
magit-initSPC g l
magit-log-popupSPC g L
magit-log-buffer-fileSPC g r
magit-rebase-popupSPC g P
magit-push-popupSPC g U
magit-unstage-fileSPC g x
magit-reset-popup
- the above key bindings have been replaced by only one key binding
SPC g m
displaying theMagit
dispatch popup
-
-
git-link
key bindings have been moved fromSPC g h
toSPC g l
since it provides support for other Git hosting services (not only GitHub)SPC g l c
on a commit hash, browse to the current file at this commitSPC g l C
on a commit hash, create link to the file at this commit and copy itSPC g l l
on a region, browse to file at current lines positionSPC g l L
on a region, create a link to the file highlighting the selected lines
- New key binding
SPC g f h
to get the commit history of the current file
GitHub
- Add support for
git-link
ingit-timemachine
, this allow to copy the SHA-1 or selected lines links for the current commit (thanks to dcluna) -
Move clone commands under
SPC g h c
:SPC g h c /
search for a repository to clone itSPC g h c c
clone and optionally fork repositorySPC g h c r
add a remote that is an existing fork of selected remoteSPC g h c f
fork remote in current user namespaceSPC g h c u
add upstream as remote
Go
- New layer variable
go-tab-width
(thanks to microamp) - New key binding
SPC m g c
to open a clone of the current buffer with a coverage info (thanks to JAremko) - Add support for
gometalinter
via new layer variablego-use-gometalinter
(thanks to JAremko) - Improve indentation (thanks to bogdanteleaga)
- Show function signatures (thanks to carlosgaldino)
Graphviz
- Add support for
org-babel
(thanks to choppsv1)
Gtags
- Refactoring of the layer to support more languages (thanks to choppsv1 and TheBB)
- New layer variable
gtags-enable-by-default
to control whethergtags-mode
should be enabled by default or not (thanks to TheBB) - New key binding
SPC m g D
to navigate to definition in another window (thanks to NJBS) - Remove
helm-gtags
lighter from mode line (thanks to NJBS)
Haskell
- New layer variable
haskell-completion-backend
to select the desired completion backend (thanks to d12frosted) - Add package
intero
(based on cydparser layer) (thanks to d12frosted) - Add package
helm-hoogle
underSPC m h f
(thanks to jb55) - Add package
hlint-refactor
(thanks to cydparser) - Add package
company-ghci
(thanks to dysinger) - Add all
haskell-mode
key bindings toliterate-haskell-mode
(thanks to jb55) - Add support for
intero-apply-suggestions
(thanks to Tehnix) - Swap key bindings
SPC m F
andSPC m f
(thanks to ljli) - Evilify
haskell-debug-mode
(thanks to d12frosted) - Fix
SPC m h i
andSPC m h t
key bindinds (thanks to d12frosted) - Disable
haskell-tags-on-save
by default (thanks to bgamari) - Remove
structured-haskell-mode
because of poor integration (thanks to d12frosted) - Remove
ghci-ng
support (thanks to d12frosted)
Helm
- Rename action
Add layer
toInstall layer
inhelm-spacemacs-help
(thanks to CestDiego) - Fix
helm-source-header
face not updating when changing themes (thanks to ghoot) - Enable fuzzy matching in all Helm sources (thanks to bling)
Html
- Add prefix command names (thanks to shanavas786)
- Use built-in
web-mode
pairing (disablesmartparens
) (thanks to TheBB) - Enable
emmet-mode
in sass and scss modes (thanks to utkarshkukreti) - Make
pug
files usejade-mode
since Jade is now called Pug (thanks to robbyoconnor) - Fix
emmet
expansion ifyasnippet
isn't turned on (thanks to TheBB)
Idris
- New key binding
SPC m l
for extracting lemma (thanks to bixuanzju) - New key binding
SPC m c
foridris-case-dwim
(thanks to bixuanzju) - New key binding
SPC m s q
to quit the Idris process (thanks to bixuanzju) - Register Idris REPL for
SPC a '
(thanks to bixuanzju) - Add basic auto-completion (thanks to bixuanzju)
- Add support for
golden-ration
for idris-holes and idris-info (thanks to houli) - Add prefix command names (thanks to bixuanzju)
- Enhance
auto-completion
support for Idris layer, nowauto-completion
will ask Idris process for completions (thanks to bixuanzju) - Enable
auto-completion
in REPL (thanks to bixuanzju) - Disable
golden-ratio
in holes buffer (thanks to houli)
IPython-notebook
- Move transient state key binding to
SPC m .
- Evilify notebooklist buffer
- Fix loading of keymap (thanks to TheBB)
Jabber
- Add support for evilified key bindings (thanks to mssun)
- Don't overwrite mini-buffer when active (thanks to toshism)
Java
-
Add support for
eclimd
with new key bindings:SPC m d s
to start daemonSPC m d k
to stop daemon
(thanks to elken)
JavaScript
- Add REPL via
skewer-mode
andlivid-mode
(thanks to dcluna) - Fix offset detection in js2-mode (thans to TheBB)
- Diminish
tern
andskewer
modes (thanks to cpaulik)
LaTeX
- Add prefix command names (thanks to NJBS)
-
New key bindings for fill and uncomment:
SPC m %
to comment or uncomment a paragraphSPC m ;
to comment or uncomment a regionSPC m f e
to fill LaTeX environmentSPC m f p
to fill LaTeX paragraphSPC m f r
to fill LaTeX regionSPC m f s
to fill LaTeX section
(thanks to kccai)
- New key binding
SPC m a
forTeX-command-run-all
(thanks to kccai)
Markdown
- New layer variable
markdown-live-preview-engine
, Possibe values areeww
(built-in browser) orvmd
(installed withnpm
) - Add package
vmd-mode
(thanks to bixuanzju) - New key binding
SPC m c P
to live preview in Emacs's built-in browser (thanks to lunaryorn)
mu4e
- Add package
mu4e-maildirs-extension
(thanks to choppsv1) - Add package
mu4-alert
(thanks to zakkak) -
New key bindings:
J
to go to next unread thread marking other mail read on the wayC-j
to go to next headerC-k
to go to previoys header
(thanks to myrjola)
- Enable
org-mu4e
(thanks to choppsv1) - Use
helm--completing-read-default
(thanks to jeizsm) - Improve set account by "to" field (thanks to sorpaas)
OCaml
- New key binding ~SPC m = ~ to indent buffer with
ocp-indent
(thanks to NJBS) - New key binding
SPC m g o
to list occurrences for identifier under point (thanks to NJBS) - Add support for
ocamllex
,ocamlyacc
files (thanks to YasuharuIida) - Remove key binding
merlin-refresh
, this function is obsolete since merlin 2.0 (thanks to bixuanzju) - Remove unused
flycheck
config, merlin is capable of doing it (thanks to bixuanzju) - Fix override of
exec-path
byutop
configuration (thanks to bixuanzju)
Org
- Add package
org-reveal
(thanks to knl) - Add local package
space-doc-mode
to improve org files readability (thanks to JAremko) - Add support for
org-babel
- Replace
org-repo-todo
byorg-projectile
(thanks to TheBB) - New layer variable
org-projectile-file
to set the filename where you want to store project-specific TODOs. -
New key bindings for
org-agenda
:RET
fororg-agenda-goto
M-RET
fororg-agenda-show-and-scroll-up
SPC m a
fororg-agenda
SPC m d
fororg-agenda-deadline
SPC m s
fororg-agenda-schedule
SPC m f
fororg-agenda-set-effort
SPC m P
fororg-agenda-set-property
SPC m :
fororg-agenda-set-tags
SPC m I
fororg-agenda-clock-in
SPC m O
fororg-agenda-clock-out
SPC m q
fororg-agenda-clock-cancel
SPC m q
fororg-agenda-refile
-
New key bindings for
org-calendar
:M-l
One day forwardM-h
One day backwardM-j
One week forwardM-k
One week backwardM-L
One month forwardM-H
One month backwardM-J
One year forwardM-K
One year backward
- New key binding
SPC m h s
fororg-insert-subheading
(thanks to jgertm) org-indent
is now turned off by default because of the numerous glitches (thanks to TheBB)- Add code blocks support for
evil-surround
using:
and#
(thanks to TheBB) - Set
org-imenu-depth
to 8 (thanks to justbur) - set
org-image-actual-width
to nil which allows to resize images in an org buffer. - Follow the confirm and abort conventions (thanks to myrjola)
OSX
- Add package
osx-dictionary
(thanks to nixmaniack) - New layer variable
osx-use-dictionary-app
to use OS X dictionary app instead of wordnet. Default value ist
. (thanks to nixmaniack) - Support pasting text with
s-v
in terminals (thanks to lyallcooper)
NixOS
- Add
nix-mode
to variablespacemacs-indent-sensitive-modes
to disable automatic indentation on pasting text (thanks to Profpatsch)
Pdf-tools
- New key bindings
0
and$
to full left and right scroll (thanks to Andre0991) - New key binding
zr
to reset zoom factor (thanks to Andre0991)
Puppet
- Use
ruby-mode
for Puppetfile support (thanks to nwolfe)
Purescript
- Add package
flycheck-purescript
(thanks to diogob) - New key binding
SPC m g g
(thanks to kRITZCREEK) -
Incorporate new functionality from
psc-ide
:- New layer variable
purescript-add-import-on-completion
to add imports on completion. Default value ist
. - New layer variable
purescript-enable-rebuild-on-save
to get a popup buffer showing you your current warnings/errors one at a time. This is primarily meant as an alternative to using flycheck. Default value isnil
. -
New
psc-ide
key bindings:SPC m m b
to rebuilds the current file and displays any warnings or errorsSPC m m i a
to add an import for the identifier at the current cursor positionSPC m m i s
to inserts a suggestion for the warning/error at the current cursor positionSPC m m t
to add a new clause for the function signature at pointSPC m m c s
to casesplits on the identifier at the current cursor positionSPC m m q
to quit the current psc-ide-serverSPC m m L
to load a specific module
(thanks to kRITZCREEK)
- New layer variable
- Fix org layout if there is no agenda files and display an error message (thanks to TheBB)
Python
- Add package
live-py-mode
(thanks to cpaulik) - Add package
py-isort
to sort the imports (thanks to swaroopch) - Add support for
org-babel
- Replace package
py-yapf
withyapfify
.Yapfify
uses project settings applicable to the file that yapf is called on. Also it shows an error ifyapf
fails (thanks to JorisE) - New layer variable
python-sort-imports-on-save
, if non-nil, automatically sort imports on save. Default value isnil
(thanks to swaroopch) - New key binding
SPC m r I
to sort imports withisort
python package (thanks to TheBB) -
New key bindings to manage virtual environments:
SPC m V a
to activate a virtual environment in any directorySPC m V d
to deactivate the active virtual environmentSPC m V w
to work on virtual environment inWORKON_HOME
(thanks to cpaulik)
- New key binding
SPC m g b
foranaconda-mode-go-back
(thanks to jluttine) - Add support for a lisp REPL in
hy
buffers (thanks to dannyfreeman) - Add support for
pyenv
inhy
buffers (thanks to dannyfreeman) - Add support for
smartparens
inhy
buffers (thanks to dannyfreeman) - Fix
pylookup
key bindingSPC m h H
(thanks to darkfeline) - Fix IPython 5 integration and make it work with
pyenv
(thanks to cpaulik) - Make
pylookup
use stdcompleting-read
function (thanks to darkfeline) - Make
pylookup.py
compatible with Python 2 and 3 (thanks to hemcsec) - Enable lazy loading of
py-yapf
. - Only disable
semantic-idle-summary
ifanaconda-mode
is used (thanks to cpaulik) - Set
comment-inline-offset
to 2 forpython-mode
Since python's PEP8 recommends two spaces for inline spaces (thanks to xiaohanyu) - Set breakpoints correctly when
pyenv
is used (thanks to cpaulik)
React
- Add support for
smartparens
(thanks to axyz) - Add "^import React" to
magic-mode-alist
(thanks to axyz) - Add
javascript-standard
as aflycheck
checker (thanks to shahinism) - Use node_modules version of eslint or global if not available (thanks axyz)
Restclient
- Add package
ob-http
. - New key binding
SPC m y
to copy the query around point as acurl
command (thanks to d1egoaz)
Ruby
-
Add package
rake
with key bindings:SPC m k k
to runs rakeSPC m k r
to re-runs the last rake taskSPC m k R
to regenerates the rake cacheSPC m k f
to finds definition of a rake task
(thanks to asok)
- New
rspec
key bindingSPC m t ~
forrspec-toggle-spec-and-target-find-example
(thanks to asok) - New
rspec
key bindingSPC m t TAB
forrspec-toggle-spec-and-target
(thanks to asok) - New
rspec
key bindingSPC m t d
to run rspec in a specified directory (thanks to dcluna) - New key binding
SPC b o
to run bundle open (thanks to asok) - Add
popwin
configuration to*rake-compilation*
(thanks to nixmaniack) - Add support for
Appraisals
files (thanks to jcf) - Fix
chruby
configuration to find out the ruby version to use (thanks to asok) - Enter automatically
inf-ruby-mode
when anrspec
compilation hits a breakpoint (thanks to dcluna)
Ruby on Rails
- Add
which-key
prefixes (thanks to ralesi)
Rust
- Remove layer variable
rust-enable-racer
, nowracer
is always used (thanks to fbergroth) - Remove package
company-racer
sinceracer
works with defaultcompany
backends (thanks to fbergroth) - Remove obsolete package
rustfmt
which has been integrated intorust-mode
(thanks to fbergroth) - Remove
racer
lighter in the mode line (thanks to NJBS) - New layer variable
rust-enable-rustfmt-on-save
(thanks to isphinx) - New package
rustfmt
with new key bindingSPC m =
to format the buffer (thanks to isphinx) - New key binding
SPC m c f
to format all project files withrustfmt
(thanks to dmit) - Add support for
Cargo.lock
and.cargo/config
files fortoml-mode
(thanks to Stebalien)
Scala
- Add support for
org-babel
(thanks to tonylotts) - New layer variable
scala-use-unicode-arrows
to replace ASCII arrows with unicode ones (thanks to moonranger) - Enable lazy loading of
sbt-mode
. - Disable Ensime autostart (thanks to d1egoaz)
- Use scala-mode instead of scala-mode-2 which is deprecated (thanks to j-martin)
- Fix dot completion bug (thanks to gilbertw1)
Search-engine
- Denote all search functions as autoloadable (thanks to TheBB)
Shell
- New
eshell-z
package (thanks to CestDiego) - New layer variable
shell-default-full-span
, if non-nil, the shell buffers span full width of a window (thanks to dubnde) - New key binding
SPC p '
forprojectile-shell-pop
(thanks to StreakyCobra) C-d
is now bound toeshell-delchar-or-maybe-eof
which checks if there is a char after the point. If so, it performs the normal delete-char, otherwise if quit eshell (thanks to microamp)- Add support for the universal prefix argument to open a shell/term buffer in
the current window instead of a new window (i.e.
SPC u SPC '
) - Add support for
org-babel
- Fix first
eshell
with no color (thanks to TheBB) - Fix
projectile-multi-term-in-root
(SPC p $ t
) (thanks to TheBB) - Enable auto-jump to end of buffer in hybrid style (thanks to TheBB)
- Disable
global-hl-line-mode
inshell-like
buffers (thanks to TheBB)
Shell-scripts
- Add package
company-shell
(thanks to joehillen) - Enable
flycheck
insh-mode
(thanks to fbergroth) - New key binding
SPC m \
forsh-backslash-region
to add a backslash at end of lines (thanks to fbergroth)
SML
- Improve indentation by binding
RET
toreindent-then-newline-and-indent
(thanks to cpaulik)
Spell-checking
- Use package
flyspell-correct
instead ofhelm-flyspell
(thanks to d12frosted) - Add package
flyspell-popup
(thanks to usharf)
Spotify
- Enable lazy loading
Syntax-checking
- New key binding
SPC e L
to open the errors buffer and switch to it. - Improve
flycheck
loading process (thanks to TheBB) - Enable lazy loading of
flycheck
. - Don't switch to
error-list
window if already on it (thanks to bmag) - Fix bug where errors are not filtered correctly when setting
flycheck-navigation-minimum-level
(thanks to maxigit)
Themes-megapack
- Add theme
Darkokai
(thanks to ekmecic)
Tmux
- Fix
golden-ratio
(thanks to TheBB)
Typescript
- Rewrite of the layer, see its
README.org
for more info (thanks to JAremko) - New key binding
SPC m s p
to send region or buffer to the web playground (thanks to JAremko) - Add typescript format and make tide formatter the default (thanks to JAremko)
- Add support for
evil-shift-width
(thanks to TheBB) - Allow
tsfmt
to use the local project's configuration (thanks to overminder) - Swap
C-j
andC-k
in tide reference mode (thanks to zilongshanren)
Version-control
- Fix git gutter toggle (thanks to ralesi)
- Fix errors with graphical elements in daemon mode (thanks to TheBB)
Vim-unimpaired
- Keep the point at the same location when calling
evil-unimpaired/insert-space-above
andevil-unimpaired/insert-space-below
(thanks to jschaf) - New key bindings
] q
and[ q
forspacemacs/next-error
andspacemacs/previous-error
(thanks to bling)
Windows-scripts
- Add support for
.cmd
and.psm1
files (thanks to ralesi)
Yaml
- Fix auto-completion (thanks to perfectayush)
Core Changes
- Refactor layer system to allow a 20~25% performance boost on startup.
- Move bootstrap packages from
core-spacemacs.el
to a new layer calledspacemacs-bootstrap
. -
Checking for new version on startup behavior has been tweaked to lower the frequency on the checks and reduce the number of operations made:
- reduce number of required git commands per check from 3 to 1
- remove recurrent version check every 6 hours, i.e. the check happens only at startup
- rate limit the checks to once per day
- change default value of variable
dotspacemacs-check-for-update
tonil
- make function
spacemacs/check-for-new-version
interactive so checking for a new version can be done on demand.
- New macro
spacemacs|define-jump-handlers
to define jump backends for a given mode (thanks to TheBB) - Implement an API for
local-vars-hook
which allows to read some directory local variables before executing an hooked function (thanks to d12frosted) - Make function
spacemacs/get-last-version
interactive - New file in layers called
layers.el
, this file is responsible to declare layer dependencies. - New variable
spacemacs-start-directory
. With this new variable, user can easily load spacemacs anywhere (thanks to exaos) - New variable
spacemacs-default-company-backends
which allow the user to fine tune the default company backends inherited by all the modes (thanks to izahn) -
New command line parameters
--no-layer
and--distribution
--no-layer
deactivates all the layers except the distribution layer--distribution
allows to change temporarily the distribution
- New funtion
spacemacs/report-issue
to create GitHub issues from within Emacs based on a template (thanks to dwang20151005) - New functions
configuration-layer/remove-layer
andconfiguration-layer/remove-layers
. - New function
spacemacs/describe-package
giving useful information on a package in the Spacemacs layers context (key bindingSPC h d P
) - New keyword
:toggle
for package lists<layer>-packages
. Its value can be a symbol or a list. A package is considered to be used if the toggle evaluates to non nil. By default:toggle
ist
. - New keyword
:min-version
for package lists<layer>-packages
. Providing a min-version allows to fetch the elpa version of a built-in package. - New value
bootstrap
for package:step
keyword, it is used for bootstrap packages. - New value
site
for package:location
keyword, a site package is a package installed on the host by a third party (ie.mu4e
which is installed bymu
) - New documentation formatting tool
doc-fmt
(thanks to JAremko) -
New keywords for
spacemacs|add-toggle
macro::prefix
a symbol that is bound to the raw prefix argument (as in(interactive "P")
forms).:on-message
an expression overriding the default "on" toggle message (useful to document a toggle's argument):mode
a minor mode, when provided,:on
,:off
and:status
are automatically defined to support the minor mode.
(thanks to dcluna and TheBB)
- Print toggles messages only when the toggle functions are used interactively (thanks to bmag)
- Add
Quelpa
support for local packages which means that local packages can be installed like any other ELPA package (thanks to d12frosted) - Add footer in home buffer
- Add support for functions for
:status
inspacemacs|add-toggle
(thanks to TheBB) - Add support for themes
omtose-darker
andomtose-softer
(thanks to Cifer-Y) - Update base16 themes to match new list (thanks to belak)
- Add emojis to issue template (thanks to CestDiego)
- Remove variable
user-dropbox-directory
- Center spacemacs banner in window at startup (thanks to ralesi and deb0ch)
- Center ascii banners in window at startup (thanks to deb0ch)
- Display warning buffer at the bottom of the screen when installing packages.
-
Display more information about the number of loaded packages in the home buffer:
e
elpar
recipel
localb
built-in
- Display a numerical progression in mode-line representing the number of packages to configure.
- Display a warning message when a non-excluded package has no pre-init, init or post-init function in a layer.
- Merge version strings into one string displayed in the left-hand side:
spacemacs-version@emacs-version (distribution)
- Improve
spacemacs|diminish
function (thanks to TheBB) - Use
$SPACEMACDIR/init.el
instead of~/.spacemacs
when both exist (thanks to bmag) - Fix font definition for first frame in daemon mode (thanks to StreakyCobra)
- Fix message format in
init.el
(thanks to YasuharuIida) - Fix random banner display when closing and reopening the home buffer (thanks to TheBB)
- Fix home buffer random banner choice (thanks to deb0ch)
- Fix
.gitignore
file to enable submodule update (thanks to jgmize) - Optimize function
spacemacs//get-package-directory
(thanks to ivanbrennan) - Improving performance by avoiding to visit dump files in function
spacemacs/dump-vars-to-file
(thanks to bmag)
Other fixes and improvements
- Fix all documentation links on GitHub (thanks to JAremko)
- Improve Spacemacs themes readability of highlight-persist and smartparens overlays when there is an active region (thanks to nashamri)
- Typos and documentation improvements (thanks to adrsta, Andre099, 1andreas-h, axyz, balajisivaraman, benansell, bmag, brettcannon, cpaulik, ChuntaoLu, d12frosted, d1egoaz, darkfeline, dathinaios, deb0ch, Dominionized, duianto, eapolinario, eareese, jfchevrette, gilch, hasufell, hghwng, ivanbrennan, jgertm, jkrmr, johankj, Johnstone-Tech, jonboiser, jpfairbanks, jschnurr, kalouantonis, Karunamon, krobelus, li-xinyang, loxaxs, lzhoucs, madand, Marlin-Na, mathcass, maxigit, microamp, nashamri, NJBS, ohspite, pablooliveira, padi, paulyoung, rbanffy, robbyoconnor, robert-m-johnson, roryokane, royxue, sbdchd, sebastianpoeplau, shanavas786, sooheon, splaspood, StreakyCobra, svanburen, taheris, tchajed, TheBB, tj64, tko, tonylotts, trenpixster, voidlily, WillianPaiva, WuTheFWasThat, xiaohanyu, xfq, zifeo, zjyjer)
- Other contributions (thanks to hujianxin, nixmaniack)
Core team members
Current
- Sylvain Benner (syl20bnr)
- Boris (thanks to d12frosted)
- Eivind Fonn (thanks to TheBB)
Old
- Fabien Dubosson (StreakyCobra)
- Justin Burkett (thanks to justbur)
Release 0.105.x
0.105.22 (2016/08/19)
Fixes
- Rename the
emacs-eclim
package toeclim
(thanks to CestDiego)
0.105.21 (2016/06/08)
Fixes
- Fix hybrid state when escaping to normal state
- Fix installation instructions on OS X (thanks to d12frosted)
- Fix broken
vinegar
key bindings - Fix
tmux
layer (thanks to aaronjensen) -
Fix
scala
layer- Use
scala-mode
instead ofscala-mode2
(thanks to j-martin) - Fix
sbt
command to generateensime
configuration (thanks to d1egoaz)
- Use
0.105.20 (2016/05/10)
Fixes
- Update Spaceline configuration for new version
0.105.19 (2016/04/20)
Fixes
- Fix
dired-x
autoload (thanks to darkfeline) - Fix
SPC f y
indired
buffers (thanks to dcluna) - Fix
C-i
key binding forevil-jump-forward
. - Fix
SPC q r
to restart Emacs and restore Spacemacs layouts. - Fix go to next/previous error when a compilation buffer is opened (thanks to dennishamester)
- Fix error when opening
spacemacs-helm
with unknown org documentation files (thanks to kuangdash) - Fix wrong states when exiting
evil-lisp-state
andevil-iedit-state
while using theemacs
editing style. - Fix ASCII banners first line being overwritten by the version numbers
- Use MELPA version of
persp-mode
, the package may need to be deleted manually from theelpa
directory and a restart of Emacs may be required. - Discover layers before running dotfile tests when reloading the configuration, prevents false negatives (thanks to TheBB)
- Remove duplicated configuration for
eldoc
(thanks to zilongshanren)
Layer changes
Clojure
- Fix usage of deprecated
cider-turn-on-eldoc-mode
, usingeldoc-mode
instead (thanks to tekacs and sooheon)
Elm
- Fix text copy/paste
- Fix auto-completion
Javascript
- Improve detection of
tern
binary, iftern
is not found a message is displayed in the*Messages*
buffer (thanks to nixmaniack)
Go
- Fix execution of tests with function names containing underscores (thanks to jaffee)
Python
- Use MELPA version of
py-yapf
package (thanks to cpaulik) - Fix
makefile
ofpylookup
(thanks to hemcsec) - Disable
semantic-idle-summary
which obfuscatesanaconda
information in the minibuffer (thanks to cpaulik)
Scala
- Fix
ensime-typecheck-current-file
, rename it toensime-typecheck-current-buffer
- Fix
scala-enable-eldoc-mode
, rename it toscala-enable-eldoc
(thanks to channingwalton)
Shell
- Fix error when attempting to delete the last shell window (thanks to joelmccracken)
Tmux
- Fix loading of package (thanks to aaronjensen)
Vinegar
- Correct
dired
configuration (thanks to StreakyCobra)
Improvements
- Various documentation improvements (thanks to d12frosted, gilch, ksrb, nixmaniack, StreakyCobra, TheBB, The-Compiler, xiaohanyu)
0.105.18 (2016/04/10)
- Revert hotfix for
Yasnippet
, the bug has been fixed upstream and is now available in MELPA (thanks to TheBB) - Remove obsolete package
evil-jumper
which is now part ofevil
(thanks to justbur)
0.105.17 (2016/04/09)
- Hotfix for Yasnippet, using stable version until resolution of https://github.com/capitaomorte/yasnippet/issues/673
0.105.16 (2016/04/01)
- Add FAQ entry about HTTPS issues (thanks to TheBB)
- Add startup list to Zemacs home buffer.
0.105.15 (2016/04/01)
Improvements
- Emacs to THE MAX! Release of Zemacs!
Layer changes
Javascript
- New layer variable
javascript-disable-tern-port-files
, when non nil tern port files are not created. Default value is nil. (thanks to mijoharas)
Swift
- Fix all
swift
major-mode key bindings (thanks to xinranmsn)
0.105.14 (2016/03/09)
Fixes
- Fix bad window index for
neotree
buffer (thanks to bmag) - Fix error when using
SPC p l
right after Emacs started (thanks to bixuanzju)
Layer changes
Go
- Fix bug when there is no test suite when running tests (thanks to bogdanteleaga)
React
- Fix broken
helm-imenu
(thanks to huaoguo)
Improvements
- Various documentation improvements (thanks to triklsbg)
0.105.13 (2016/03/06)
Fixes
- Fix smooth-scroll toggling at startup (thanks to TheBB)
- Fix auto-completion toggle
SPC t a
(thanks to TheBB)
Layer changes
Clojure
- Fix function name
cider-pop-back
(thanks to mlachmih)
Scala
-
Fix various function names:
ensime-refactor-diff-organize-imports
ensime-refactor-diff-extract-method
ensime-refactor-diff-rename
ensime-refactor-diff-extract-local
(thanks to TheBB)
Improvements
- Reformat
README.md
title section. - Add a GitHub pull request template (thanks to robbyoconnor)
0.105.12 (2016/03/02)
Fixes
- Fix activation of package dependencies
- Fix
smooth-scrolling
error due to recent changes in package repository
Layer changes
Distribution
- New key binding
SPC t v
to toggle smooth scrolling.
C-C++
- Add notes on related layers (thanks to magthe)
- Remove srefactor from static package list (thanks to magthe)
- Set paths for C headers from clang (thanks to magthe)
Evil-snipe
- Disable
evil-snipe
inranger
(thanks to TheBB)
Haskell
- Fix bad indentation when pasting text (thanks to robbyoconnor)
Markdown
- Add support for
rust
code blocks (thanks to panicbit)
Org
- Fix custom Spacemacs layout when
org-agenda-files
isn't a list. The org-agenda-files variable can be the name of a directory or a file. (thanks to jmiven)
Osx
- Fix
osx-use-options-as-meta
for Emacs 25 (thanks to d12frosted)
React
- make
evil-matchit
jump between html/jsx tags (thanks to tko)
Racket
- Add command prefix names for
racket-mode
key bindings (thanks to rodrigosetti)
Scala
- Rename
ensime-refactor-inline-local
toensime-refactor-diff-inline-local
(thanks to chessman)
Shell
- Fix reverse key bindings for comint-previous/next (thanks to olejorgenb))
- Scope the aliases under
eshell
so they are not defined globally (thanks to bling)
Themes megapack
- Add
railscasts-theme
(thanks to olsonjeffery)
Improvements
- Improve
toggle-maximize-centered-buffer
(thanks to justbur) - Add
display-graphic-p
toSPC h d s
(thanks to TheBB) - Various documentation improvements (thanks to d12frosted, davbo, marcopaga, microamp, nixmaniack, NJBS, SShrike, TheBB, Tinche, triklsbg, xfq)
0.105.11 (2016/02/18)
Improve loading robustness:
- When an ELPA repository is down Spacemacs will now be able to finish loading
- Spacemacs will use the default theme (i.e. no theme) if there is any error during the download of the starting theme.
0.105.10 (2016/02/18)
Fixes
- Fix re-toggle of fullscreen when pressing
SPC f e R
(thanks to MadAnd) - Fix display of recent bookmarks without filename (thanks to lislon)
- Fix
toggle-maximize-buffer
(thanks to justbur) - Remove files from rollback slot list (thanks to microamp)
- Don't catch errors while loading if
--debug-init
is provided. - Don't change scratch major mode if buffer exists (thanks to TheBB)
- Restore windows layout when quitting
ediff
(thanks to fbergroth) - Ensure that
pcache-directory
ends in a slash (thanks to rpglover64) - Ensure new Spacemacs layouts only shows home buffer (thanks to bmag)
Improvements
- Add a bug report template for GitHub issues on
SPC h I
(thanks to StreakyCobra) - Add files used by
eww
to.gitignore
(thanks to ahyatt) - Various enhancements for themes handling (thanks to TheBB)
- Allow
default
theme (no theme) to be defined indotspacemacs-themes
(thanks to izahn) - Add support for missing
base16
themes (thanks to curtmack) - Update recent files list when a file is renamed (thanks to lislon)
- Improve frame-fullscreen and maximize-frame toggles (thanks to MadAnd)
- Diminish relative line numbers lighter in mode-line (thanks to peterhoeg)
- Various documentation improvements (thanks to balajisivaraman, crododile, darkfeline, ernestas, franciscoj, j4, kRITZCREEK, nixmaniack, numkem, robbyoconnor, TheBB, tonylotts)
Layer changes
Auto-completion
- Better choice of
company
front-ends (thanks to fbergroth)
C-C++
- Get
clang
args even ifflycheck
isn't installed (thanks to TheBB)
Clojure
- Fix renamed
cider-test-run-tests
function (thanks to AlejandroCatalina) - Substitute
align-cljlet
withclojure-align
.align-cljlet
was deprecated in favour of the vertical alignment in the clojure-mode package (thanks to vise890)
Elm
- Fix
flycheck
not working on sub-directories (thanks to AlejandroCatalina)
ERC
- Fix initialisation of
erc-terminal-notifier
(thanks to Andre0991)
Gnus
- Remove
gnus-fetch-old-headers
customization which was causing slowdown while consulting some newsgroups (thanks to StreakyCobra)
Haskell
- Fix broken
hoogle-lookup-from-local
(thanks to jb55)
Html
- Remove
.jsx
fromweb-mode
auto mode alist (thanks to lunaryorn)
Org
- Remove
H
andL
key bindings fromevil-org
(thanks to choppsv1)
Python
- Add missing
py-yapf
configuration (thanks to TheBB) - Enable
anaconda-eldoc-mode
(thanks to TheBB) - Only load
pyenv
if it is installed (thanks to cpaulik)
Racket
- Disable
company-quickhelp-mode
only when it is already enabled (thanks to syohex)
React
- Disable auto-quote of attributes (thanks to TheBB)
- Fix react magic mode, it will now recognize
/** @jsx React.DOM */
in the first line of a file (thanks to EMayej)
Ruby
- Use
popwin
forrspec
compilations (thanks to joshcass) - Do not force
rspec-mode
on ruby files (thanks to morhekil)
Rust
- Fix indentation setting for
evil-shift-width
(thanks to Stebalien)
Shell
- Set the correct shell-pop size variable (thanks to TheBB)
Themes-megapack
- Add
dracula
theme (thanks to MarkRedeman) - Add
omtose-phellack
theme (thanks to duien) - Add
majapahit
theme (thanks to kostajh)
Tmux
- Fix key bindings
C-h
,C-j
,C-k
andC-l
(thanks to justbur)
Vagrant
- New key binding
SPC V R
to reload to restart VMs (thanks to kostajh)
Version control
- Fix bugs due to wrong mode for
diff-hl
margin (thanks to abaw) - Fix
git-gutter
linum setup (thanks to person808)
Wakatime
- Fix wakatime-dashboard url (thanks to hallfox)
0.105.9 (2016/01/17)
Improvements
- Fix error on Microsoft Windows 10 OS regarding missing
printf
command (don't callexec-path-from-shell
function on Microsoft Windows) (thanks to syohex) - New key bindings
C-e
andC-y
in evilified buffers to scroll lines (thanks to CestDiego) - Remove key binding hack for
evil-jumper
since the issue has been fixed upstream (thanks to justbur) - Remove unused
init-dired+
function (thanks to AlejandroCatalina) - Various documentation improvements (thanks to balajisivaraman, jcppython, jmiven, jorisE)
New conventions
use-package
code guidelines- Key bindings documentation only need to mention
SPC
prefix
Layer changes
Markdown
- Add syntax highlighting for
R
code blocks (thanks to rustyplanet)
Org
- Fix early creation of empty
org
directory (thanks to tboby) - Add default key binding
C-c c
fororg-capture
(thanks to AlejandroCatalina)
Spacemacs
- Add
bracketed-paste
package to improve pasted text in terminals (thanks to AlejandroCatalina)
0.105.8 (2016/01/12)
Fixes
- Fix the red mode-line when error occurs during loading
- Fix and improve layer templates and layer creation (thanks to chrisbarrett)
- Fix and simplify copyrights in file headers
- Fix
.gitignore
pattern forprivate
directory (thanks to jballanc)
Improvements
- New key binding
SPC h d l
to describe the last key pressed, useful when reporting a bug (thanks to StreakyCobra) - Sort alphabetically the list of package to be update on the home buffer
- Improve
describe-system-info
function with completion engine info (ivy completion engine will be available in 0.106) (thanks to StreakyCobra) - Add link to
BountySource
page toREADME.md
(thanks to houli) - Move
request
storage folder to.cache
directory
Layer changes
Markdown
- Add support for javascript code blocks syntax highlighting (thanks to AlejandroCatalina)
0.105.7 (2016/01/11)
Fixes
- Fix missing
q
key binding in the home buffer introduced in0.105.5
(thanks to justbur)
ERC and RCIRC layers
- Properly add all opened buffers to custom layouts (thanks to AlejandroCatalina)
Go layer
- Prevent from clobbering environment variables if already set (thanks to whilp)
Haskell
- Remove reference to undefined function
haskell-cabal-hook
(thanks to chrisbarrett)
Python layer
- Fix errors when reading
.python-version
files (thanks to fbergroth)
Dotfile changes
- New variable
dotspacemacs-scratch-mode
to configure the default major-mode for the scratch buffer, default value istext-mode
(thanks to TheBB)
Improvements
- Display a list of packages to update when pressing the
[Update packages]
in the home buffer - Add highlight of TODOs in text mode files (thanks to StreakyCobra)
- Various documentation improvements (thanks to StreakyCobra, TheBB)
0.105.6 (2016/01/09)
Fixes
- Fix shadowed
TAB
(C-i
) key in terminal (thanks to StreakyCobra)
0.105.5 (2016/01/08)
Fixes
Core
- Fix unavailable major mode leader keys in
evilified
buffers (thanks to justbur) - Fix
b
key binding on home buffer (thanks to justbur)
Layer changes
Spacemacs
- Bind
evil-jumper/forward
to<C-i>
to make it work whendotspacemacs-distinguish-gui-tab
is non nil (thanks to TheBB)
Auto-completion
- Add
~/.spacemacs.d/snippets
directory to the snippet sources of yasnippet. - Don't enter
evil-insert-state
afteraya-expand
whenholy-mode
if active (thanks to abaw)
0.105.4 (2016/01/07)
Fixes
Core
- Fix home buffer obfuscating opened file when Emacs starts (thanks to justbur)
Ruby layer
- Fix
rbenv
loading (thanks to TheBB)
Spacemacs layouts
- Fix jumping to last layout when the last layout is the default layout (thanks to TheBB)
Yasnippet
- Fix and improve
yasnippet
loading (thanks to TheBB)
0.105.3 (2016/01/06)
Fixes
Emacs lisp layer
- Fix wrong hook for adding evil text objects (thanks to justbur)
Ledger
- Fix missing major mode key bindings (thanks to travisbhartwell)
Ocaml
- Fix smartparens configuration (thanks to edwintorok)
Layer changes
Spacemacs
- Improve robustness of
spacemacs/toggle-transparency
function (thanks to justbur)
Other improvements
- Fix layer install section in all layers READMEs to be more explicit and remove a source of confusion for new comers (thanks to mattbaker)
- Typos and documentation improvements (thanks to d12frosted)
0.105.2 (2016/01/05)
- Fix empty mode-line when a new Spacemacs version is available (thanks to TheBB)
0.105.1 (2016/01/05)
Fixes
-
Fix and improve support for GUI clients using a server started with
emacs --daemon
:- Fix font
- Fix graphical Spaceline separator
- Fix theme colors (most of them)
- Fix Spacemacs logo in home buffer
- Add support for graphical Nyan Cat
Spacemacs layer
- Fix broken
evil-escape-mode
when togglingholy-mode
(emacs style)
Bépo layer
- Fix support for Magit (thanks to StreakyCobra)
Magit layer
- Fix
TAB
key bindings to expand/collapse sections (thanks to justbur)
Scala layer
- Fix a typo in function name
scala-auto-insert-asterisk-in-comments
(thanks to lunaryorn)
Layer changes
Spacemacs
- New key binding
SPC h n
to browse the Emacs news (thanks to lunaryorn)
Themes megapack
- Add
monokai
theme (thanks to jonboiser)
Other improvements
- Typos and documentation improvements (thanks to mjs2600, person808, robbyoconnor, StreakyCobra, TheBB and xfq)
0.105.0 (2016/01/04)
IMPORTANT - Breaking changes
SPC l
foravy-goto-line
is now underSPC y
.SPC l
is for spacemacs layouts.SPC a p
is now forlist-processes
andSPC a P
forproced
,paradox
is now onSPC a k
.SPC s l
is now used to bring back last search buffer andSPC s j
is for jumping into a file usingimenu
.- In home buffer, jumping to bookmark list is now on
b
. - Projectile: caching is now disabled by default, while it should not
break anything if you have some functions relying on caching being
enabled be sure to activate it explicitly in your dotfile with
(setq projectile-enable-caching t)
. - Git: new key bindings scheme using
evil-magit
package. If you want to continue to use the old evilified bindings addevil-magit
package to thedotspacemacs-excluded-packages
variable of your dotfile. - Ruby: the default major mode is now the Emacs built-in
ruby-mode
. If you want to continue to useenh-ruby-mode
set the layer variableruby-enable-enh-ruby-mode
tot
.
Hot new features
- Spacemacs layouts under
SPC l
witheyebrowse
integration (thanks to CestDiego, bmag and TheBB) - Revamped Magit key bindings thanks to
evil-magit
which provides a faithful port of Magit UX using Vim key bindings (thanks to justbur) - Brand new website on
spacemacs.org
withreadthedocs
documentation pages (thanks to bobbyangelov, nashamri and TheBB) -
New command line parameters for
emacs
:--timed-requires
,--profile
and--adv-timers [n]
to profile and benchmark Emacs initialization (thanks to justbur)--insecure
to disable https when fetching ELPA packages.--debug-init
(built-in Emacs parameter) now enable Spacemacs verbose messages when Emacs is loading.
Other important notes
- All
extensions
directories have been renamed tolocal
.extensions
directories will be deprecated in 0.106.0. - The
evil-leader
functionsevil-leader/set-key
andevil-leader/set-key-for-mode
are now obsolete and will be deprecated in a future version.
New conventions
-
Commit and abort commands conventions:
SPC m ,
andSPC m c
to Valid/ConfirmSPC m a
andSPC m k
to Abort/Discard
(thanks to StreakyCobra)
- Update evilified state rebinding conventions:
SPC
to'
,/
to\
and:
to|
New Layers
- bepo in
keyboard-layouts
(thanks to StreakyCobra) - command-log in
tools
(thanks to bmag) - elfeed in
tools
(thanks to d12frosted) - evil-cleverparans (thanks to justbur)
- geolocation (thanks to Gogs)
- mu4e in
email
(thanks to darkfeline) - octave in
lang
(thanks to izahn) - selectric in
fun
(thanks to algernon) - spacemacs-layouts (thanks to CestDiego)
- speed-reading (thanks to AdrieanKhisbe)
- swift in
lang
(thanks - theming (thanks to TheBB)
- typography (thanks to lunaryorn)
- vimscript in
lang
(thanks to ralesi)
Dotfile changes
- New variable
dotspacemacs-elpa-https
if non nil use HTTPS otherwise use HTTP. Default is t. - New variable
dotspacemacs-elpa-timeout
, default is 5 seconds - New variable
dotspacemacs-check-for-update
to toggle check for Spacemacs updates at startup, default ist
(thanks to tenthousandfailures) - New variable
dotspacemacs-default-layout-name
to set the name of the default Spacemacs layout. - New variable
dotspacemacs-display-default-layout
to toggle display of the name of the default layout in the mode-line, default isnil
. - New variable
dotspacemacs-auto-resume-layouts
to resume automatically the last layout when Emacs starts. - New variable
dotspacemacs-max-rollback-slots
to set the maximum number of rollback slots to keep in the cache. - New variable
dotspacemacs-line-numbers
to enable line numbers globally, possible values arerelative
,t
ornil
. Default isnil
(thanks to StreakyCobra) - New variable
dotspacemacs-distinguish-gui-tab
, if non nil thenTAB
andC-i
are distinct using GUI Emacs, default isnil
(thanks to justbur) - New variable
dotspacemacs-startup-recent-list-size
to configure the number of recent files to display in the home buffer (thanks to bmag) - New variable
dotspacemacs-whitespace-cleanup
to enable automatic cleanup of whitespace on save. Possible values areall
,trailing
,changed
ornil
. Default ischanged
(thanks to nixmaniack) - Remove
dotspacemacs-verbose-loading
, it is now enabled automatically with the command line parameter--debug-init
Distribution layer changes
- New key binding
SPC *
to search for current selection or symbol under point in the current project.SPC /
is similar but does not auto-fill the search pattern. This new behavior mimics*
and/
keys of Vim (thanks to StreakyCobra) - New key binding
SPC h d F
to describe a face, by default the face under point is selected (thanks to TheBB) - New key binding
SPC h k
to display the top level of key bindings (thanks to justbur) - New key binding
SPC h d K
to describe a keymap (thanks to justbur) - New key binding
SPC h SPC
forhelm-spacemacs
(SPC f e h
is still available) (thanks to StreakyCobra) - New key binding
SPC f E
to edit a file withsudo
(thanks to cpaulik) - New key binding
SPC q r
to restart Emacs (thanks to nixmaniack) - New key binding
SPC c q
to close compilation window (thanks to joehillen) - New key binding
SPC c k
to kill current compilation (thanks to jb55) - New key binding
SPC x o
to open URLs withavy
(thanks to StreakyCobra) - New key binding
backtab
to go up a directory inhelm
(thanks to justbur) - New key binding
SPC b s
to switch to*sratch*
buffer (thanks to StreakyCobra) -
New key bindings in
help-mode
buffers to navigate links:g b
or[
to go back (same as clicking on[back]
button)g f
or]
to go forward (same as clicking on[forward]
button)g h
to go to help for symbol under point
(thanks to AdrieanKhisbe)
- New key bindings under
SPC i l
to insert lorem ipsum text to a buffer (thanks to lunaryorn) -
New key bindings for local and directory variables:
SPC f v d
to add a directory variable,SPC f v f
to add a local variable to the current file,- and
SPC f v p
to add a local variable to the first line of the current file
(thanks to lunaryorn)
- New key bindings
C-q
in helm buffers to jump to a candidate usingavy
(thanks to ralesi) - Bind
g
andG
in helm micro-state (thanks to dsdshcym) TAB
now correctly jump between links in help buffers with motion state (thanks to justbur)SPC t n
now toggle line numbers locally instead of globally (thanks to StreakyCobra)SPC a p
is now forlist-processes
(thanks to calebmeyer)SPC f J
now open junk file usinghelm
(thanks to nixmaniack)- Move toggle for
vi-tilde-fringe
toSPC T ~
- Move
paradox
toSPC a k
(thanks to calebmeyer) - Move
proced
toSPC a P
(thanks to calebmeyer) - Add
space-line
package which replaces thepowerline
package (thanks to TheBB) - Add
help-fns+
package (thanks to justbur) - Add
helm-flx
package (thanks to TheBB) - Add
hl-todo
package (thanks to StreakyCobra) - Add
lorem-ipsum
package (thanks to StreakyCobra) - Add automatic setup of
evil-shift-width
based on the current mode settings (thanks to TheBB) - Add Evil text objects
slash
(/),underscore
(_),hyphen
(-),tilde
(~) andequal
(=) (thanks to TheBB) - Add custom helm mode-line (thanks to TheBB)
- Add custom info+ mode-line (thanks to TheBB)
- Add
bug-reference-prog-mode
toprog-mode-hook
(thanks to lunaryorn) - Add the ability to search with
ag
,pt
etc… when pressingC-s
inhelm-projectile-switch-project
(SPC p p
) (thanks to TheBB) - Add case insensitive alphabetical sort of
which-key
buffers - Add
gg
andG
support inneotree
buffers (thanks to synic) - Set
compilation-scroll-output
tofirst-error
(thanks to joehillen) - Fix
helm
micro-state bug with numerical prefix arguments (thanks to TheBB) - Fix
helm
freezes when using mouse to click and drag in the results list (thanks to TheBB) - Fix
helm-do-grep-preselect-candidate
void variable error (thanks to TheBB) - Fix
linum-relative-mode
toggle being called twice the first time it is used (thanks to justbur) - Fix
SPC j k
unwanted auto-comment (thanks to driftcrow) - Fix
spacemacs/write-file
being repeatable with.
(thanks to StreakyCobra) - Fix
debug-on-error
toggle (thanks to lunaryorn) - Fix
recentf-exclude
to be customizable (thanks to duerrp) - Fix
spacemacs/kill-other-buffers
(thanks to TheBB) - Fix reversed mode-line toggle (thanks to TheBB)
- Fix
ahs-edit-mode
function which requires an argument (thanks to hanmoi-choi) - Fix
spacemacs/sudo-edit
to make it work on remote ssh buffers with multi-hops (thanks to dcluna) - Fix transparency toggle (thanks to justbur)
- Fix toggle for
truncate-lines
(thanks to driftcrow) - Fix visible cursor in
helm
buffers - Enable built-in Emacs lock files by setting
create-lockfiles
tot
(thanks to xfq) - Greatly simplify
holy-mode
by disablingevil-mode
(thanks to justbur) - Standardise zoom key bindings:
+
and=
zoom in,-
zoom out and0
reset the zoom level (thanks to StreakyCobra) - Evilify package menu (thanks to nixmaniack)
- Evilify Neotree buffer (thanks to bmag)
- Set
dired-dwim-target
tot
to makedired
to guess a default target directory (thanks to StreakyCobra) - Set
helm-org-format-outline-path
tot
by default (thanks to TheBB) - Increase number of stored recent files to 1000 (thanks to duerrp)
- Allow evil operators to show commands in
which-key
(thanks to justbur) - Allow
last-search-buffer
to resume last search even if no saved search (thanks to nixmaniack) - Improve
count-words-analysis
output (thanks to StreakyCobra) - Switch between columns layout now correctly toggle golden-ratio (thanks to geksilla)
- Do not kill the Emacs server when killing frame (thanks to drewkett)
- Do not change
custom-file
value if already set (thanks to lunaryorn) - Use
evil-indent-plus
package to replaceevil-indent-textobject
(thanks to TheBB) - Use built-in evil variable
evil-want-Y-yank-to-eol
to set Y behavior (thanks to person808) - Use built-in
evil-set-initial-state
function to set the default evil states (thanks to justbur) - Use
tab-width
instead of obsoletedefault-tab-width
(thanks to lunaryorn) - Remove obsolete
evil-jumper-file
(thanks to TheBB) - Remove key binding for deprecated
rxt-fontify-regexp-at-point
(thanks to mineo) - Remove custom
write-file
function and use built-insave-buffer
function instead (thanks to cpaulik) - Disable projectile caching by default (thanks to cpaulik)
- Disable version control integration of
Neotree
by settingneo-vc-integration
tonil
(thanks to synic) - Make google translate language code case-insensitive (thanks to lislon)
Helm-spacemacs
- Add
add to dotfile
action on a layer (thanks to CestDiego) - Add action to open
.org
files for editing (thanks to TheBB) - Add FAQ source (thanks to StreakyCobra)
- Beautify sources (thanks to TheBB)
Evilified map
- Fix shadowed keys in minibuffer
- Fix bug where key bindings could be unexpectedly redefined (thanks to darkfeline)
Layer changes
Auto-completion
- Add
helm-company
package available onC-/
while company popup is active (thanks to TheBB) - Fix
yas-snippet-dirs
setup (thanks to TheBB) - Fix
yasnippet
expand to select first snippet automatically (thanks to TheBB) - Make
auto-yasnippet
points to private directory by default (thanks to taiansu)
Better defaults
- Fix
spacemacs/backward-kill-word-or-region
with rectangular selection (thanks to bmag)
C/C++
- Fix flycheck clang args loading (thanks to zhengyangfeng00)
Chinese
- Add
fcitx
support (thanks to zilongshanren) - Add pinyin support for
avy-goto-char
(thanks to CodeFalling)
Clojure
- New key binding
SPC m s I
forcider-jack-in-clojurescript
(thanks to benalbrecht) - New refactoring key bindings:
SPC mred
forcljr-extract-def
,SPC mrfu
forcljr-find-usages
andSPC mrsc
forcljr-show-changelog
(thanks to mbertheau) - Use
cljr--all-helpers
for automatic setup of refactoring key bindings (thanks to grammati)
Dash
- Enable
zeal
onMicrosoft Windows
(thanks to dotneter-)
Elixir
- New key binding
SPC m s c
to compile the current buffer in the IEx process (thanks to timbuchwaldt) - New key binding
SPC m s m
to reload the module in the current buffer in your IEx process (thanks to timbuchwaldt) - New key binding
SPC m t r
to rerun the last test (thanks to djm) - Bind
q
to =quit-window=in various elixir modes (thanks to utkarshkukreti) - Enable
company-mode
inalchemist-iex-mode
(thanks to utkarshkukreti) - Fix
ruby-end
hook removal (thanks to TheBB)
Elm
- Fix incorrect command for
elm-repl-load
(thanks to holguinj) - Fix key bindings for REPL commands updated upstream (thanks to tcallan)
Emacs lisp
- Add
auto-compile
package (thanks to justbur) - New key bindings for compilation:
SPC m c c
to byte compile the current file,SPC m c l
to popup compile-log buffer (thanks to justbur) - Add
q
to exitmacrostep
(thanks to ralesi)
Erc
- Fix notification icon (thanks to aminb)
- Fix erroneous micro-state key binding (thanks to StreakyCobra)
Ess
- Simplify the configuration of ESS minor modes (thanks to izahn)
SPC m s i
now automatically start the correct REPL for the current buffer (thanks to izahn)- Fix company activation (thanks to michelk)
Evil-snipe
- Update
evil-snipe
mode names (thanks to person808)
Eyebrowse
- Add
h
andl
bindings to eyebrowse micro-state (thanks to TheBB) - Fix workspace numbers, the first workspace now starts at 1 instead of 0 (thanks to d12frosted)
- Fix call to
eyebrowse-rename
(thanks to TheBB)
Games
- Add
Pacmacs
game (thanks to CestDiego)
Git
- New key binding scheme using
evil-magit
package (thanks to justbur) - New key binding
SPC g i
formagit-init
(thanks to CestDiego) - New key binding
SPC g c
formagit-checkout
(thanks to PierreR) - New key bindings
SPC m ,
andSPC m c
to Valid/Confirmwith-editor
buffers (thanks to justbur) - New key bindings
SPC m a
andSPC m k
to Abort/Discardwith-editor
buffers (thanks to justbur) - Add
gr
andgR
bindings to refresh in evilified Magit buffers - Add support for links to Magit buffer in
org
buffers (thanks to mskorzhinskiy) - Enable gravatars
- Redefine key bindings to user Magit popups whenever it is possible (thanks to ralesi)
- Store
magit
gravatars in cache directory (thanks to CestDiego) git-timemachine
andgit-blame
micro-states are now idempotent when invoked. So these micro-states can be invoked again without side effects.- Move
magit-gh-pulls
bindings from#g
to#
magit-git-flow
prefix binding is now%
instead of#f
(thanks to nixmaniack)- Fix
git-magit-status-fullscreen
(thanks to bmag) - Fix various bugs with evilification of maps
- Deactivate
evil-snipe
mode which messes withmagit
buffer (thanks to cpaulik)
Github
- New key binding
SPC g c
to clone and optionally fork repository (thanks to cpaulik)
Go
- New key binding
SPC m x x
to rungo run
for the current main package (thanks to sectorzero) -
New key bindings for testing:
SPC m t P
to rungo test
for the current package and all packages under it |SPC m t t
to rungo test
for the function you're currently in andSPC m t s
to rungo test
for the suite you're currently in
(thanks to bogdanteleaga)
- Import
GO15VENDOREXPERIMENT
from environment variables (thanks to sectorzero)
Haskell
- New key binding
SPC m h H
to do a local (not using internet) Hoogle lookup (thanks to jb55) - New key binding
SPC m g i
to jump to imports (thanks to bennofs) -
New key bindings for
ghc-mod
:SPC m m t
to insert templateSPC m m u
to insert template with holesSPC m m a
to select one of possible casesSPC m m f
to replace a holeSPC m m e
to expand template haskellSPC m m n
to go to next type holeSPC m m p
to go to previous type holeSPC m m >
to make indent deeperSPC m m <
to make indent shallower
(thanks to Tritlo)
- Add REPL key bindings to
cabal-mode
(thanks to d12frosted) - Add text alignment rules (thanks to PierreR)
- Fix
SPC m s S
key binding for switching back from REPL (thanks to d12frosted) - Fix typo in variable
haskell-interactive-popup-errors
(thanks to usharf) - Fix
SPC m h t
andSPC m h i
bindings (thanks to d12frosted) - Fix
SPC m s s
according to conventions, i.e. does not switch to REPL buffer (thanks to d12frosted) - Fix missing key bindings when
ghc-mod
is disabled (thanks to d12frosted) - Fix
ghci-ng
for stack projects (thanks to bjarkevad) - Force
haskell-mode
loading in cabal files (thanks to d12frosted) - Remove indentation guides to comply with latest haskell-mode (thanks to PierreR)
- Remove
haskell-indentation-mode
hook (thanks to d12frosted)
Html
- Add
company-css
backend inweb-mode
(thanks to TheBB) - Enable Emmet tab expansion in hybrid mode (thanks to geo7)
- Expand to className when using Emmet, for
instance div.react-class
expands to< div className = "react-class"></div>
(thanks to CestDegio) - Mark
css-indent-offset
as safe local variable (thanks to lunaryorn) - Fix
smartparens
loading (thanks to TheBB) - Fix erroneous micro-state key binding (thanks to StreakyCobra)
Idris
- Use popwin and motion state for special buffers (thanks to holguinj)
Javascript
- Add evil-matchit support for js files (thanks to robbyoconnor)
LaTeX
- New layer variable
latex-enable-folding
to enable text folding, default value isnil
(thanks to justbur) - New key bindings
SPC m ,
andSPC m k
forC-c C-c
andC-c C-k
respectively (thanks to justbur) -
New key bindings:
SPC m .
to mark LaTeX environmentSPC m *
to mark LaTeX sectionSPC m k
to kill TeX jobSPC m l
to recenter output bufferSPC m m
to insert LaTeX macroSPC m s
to insert LaTeX sectionSPC m v
to view output
(thanks to justbur)
-
New folding key bindings (available if
latex-enable-folding
is non nil):SPC m z b
to fold TeX bufferSPC m z e
to fold TeX environmentSPC m z m
to fold TeX macroSPC m z =
to fold TeX mathSPC m z r
to fold TeX region
(thanks to justbur)
-
New
TeX-font
key bindings:SPC m x c
to make font monospaced (for code)SPC m x e
to make font emphasisedSPC m x i
to make font italicSPC m x o
to make font obliqueSPC m x r
to remove font propertiesSPC m x f a
to use calligraphic fontSPC m x f c
to use small-caps fontSPC m x f f
to use sans serif fontSPC m x f n
to use normal fontSPC m x f r
to use serif fontSPC m x f u
to use upright font
(thanks to TheBB)
- New key binding
SPC m -
to open output buffer (thanks to benquebec) - Configure
latexmk
as the default build command (thanks to izahn) - Disable
typo
(thanks to TheBB) - Fix enabling of minor modes
TeX-source-correlate-mode
andTeX-PDF-mode
(thanks to justbur)
Markdown
- New key binding
SPC m x C
to insert github flavored code block (thanks to lunaryorn) - Include missing
gh-md
package (thanks to tko)
Nim
- Use MELPA version of
flycheck-nim
package (thanks to Gonzih) - Remove package
company-nim
which is now part ofnim-mode
(thanks to robbyoconnor)
Ocaml
- Fix error when initializing
opam
(thanks to TheBB) - Make OCaml generated files invisible to completion (thanks to StreakyCobra)
Org
-
New key bindings:
SPC m <dotspacemacs-major-mode-leader-key>
fororg-ctrl-c-ctrl-c
SPC m *
fororg-ctrl-c-star
SPC m RET
fororg-ctrl-c-ret
SPC m -
fororg-ctrl-c-minus
SPC m ^
fororg-sort
SPC m /
fororg-sparse-tree
(thanks to TheBB)
- New key binding
SPC m P
fororg-set-property
(thanks to swaroopch) - New key binding
SPC m !
fororg-time-stamp-inactive
(thanks to channingwalton) - New key binding
SPC m D
to insert drawer (thanks to cpaulik) - Add drawer
evil-surround
pair (thanks to TheBB) - Use
SPC a o
as prefix for org related applications likeorg-agenda
ororg-capture
. Thea
is forapplication
, ando
fororg
(thanks to StreakyCobra) - Use
RET
in normal state for follow links (thanks to justbur) - Enable
flyspell
by default (thanks to robbyoconnor) - Move
evil-org
to a local package (thanks to TheBB) - Move
.org-id-locations
to cache directory (thanks to fandag)
Osx
- Fix search for
GNU ls
(thanks to lunaryorn) - Use
osx-trash
package to handle deleted items (thanks to lunaryorn) - Make
mdfind
the default backend forhelm-locate
(thanks to Andre0991) - Set font
Apple Color Emoji
for emojis (thanks to myrjola)
Puppet
- Remove deprecated
puppetfile-mode
package (thanks to joehillen)
Purescript
- Add
psc-ide
support (thanks to kRITZCREEK)
Python
- New layer variable
python-auto-set-local-pyenv-version
to automatically setpyenv
version from a.python-version
file. Possible values areon-visit
,on-project-switch
ornil
, default ison-visit
(thanks to fbergroth) - Various fixes to
pylookup
to make it work again (thanks to TheBB) - Allow user to customize fill column with the variable
python-fill-column
(thanks to swaroopch) - Fix
pylookup
makefile for python version 2.7.10 (thanks to hyh)
React
- Fix
flycheck
setup, do not disablejshint
globally, but only forreact
mode (thanks to lunaryorn) - Enable
js-mode
snippet (thanks to rhalukongor) - Open
index.android.js
andindex.ios.js
with react mode (thanks to erwan)
Ruby
- Enable built-in
ruby-mode
by default instead ofenh-ruby-mode
(thanks to lunaryorn) - New layer variable
ruby-enable-enh-ruby-mode
to enableenh-ruby-mode
by default instead ofruby-mode
. - New layer variable
ruby-test-runner
to choose betweenruby-test
orrspec
- Add support for
rspec
(thanks to alexgirdler and dcluna) - Add support for
chruby
(thanks to bjeanes and Immortalin) - Add
rubocop
package (thanks to dcluna) -
New
rubocop
key bindings:SPC m r r f
to run RuboCop on the currently visited fileSPC m r a D
to autocorrect current directorySPC m r r F
to run auto-correct on the currently visited fileSPC m r a P
to autocorrect current projectSPC m r r d
to prompt from a directory on which to run RuboCopSPC m r r D
to prompt for a directory on which to run auto-correctSPC m r r p
to run RuboCop on the entire projectSPC m r r P
to run auto-correct on the project
Ruby on rails
- Move
SPC m r r :
toSPC m r :
Rust
- New key binding
SPC m c C
to remove build artefacts with Cargo (thanks to SShrike) - New key binding
SPC m g g
to jump to definition (thanks to isphinx) - Use
exec-path-from-shell-copy-env
to setRUST_SRC_PATH
for Racer (thanks to mahinshaw)
Scala
- New layer variable
scala-enable-eldoc
to explicitly turn onel-doc
, default value isnil
(thanks to d1egoaz) - New layer variable
scala-auto-insert-asterisk-in-comments
to automatically insert asterisk in multi-line comments (thanks to lunaryorn) - New key binding
SPC m b b
forsbt-command
(thanks to lunaryorn) - Enable Ensime's
expand-region
integration (thanks to lunaryorn) - Only disable
flycheck
Scala syntax checker in Ensime (thanks to lunaryorn) - Fix test key bindings (thanks lunaryorn)
- Fix automatic trigger of completion when hitting
.
(thanks to d1egoaz))
Scheme
- New key binding
SPC m s s
for scheme implementation selection (thanks to troydm) -
New key bindings to evaluate code:
SPC m e b
to evaluate the whole bufferSPC m e e
to evaluate last sexpSPC m e f
to evaluate current functionSPC m e l
to evaluate lineSPC m e r
to evaluate region
(thanks to CestDiego)
Shell
- Add
xterm-color
package (thanks to CestDiego) - New key bindings
C-j
andC-k
to browse history in normal state (thanks to mijoharas and TheBB) - New key binding
C-l
ineshell
to clear buffer (thanks to CestDiego) - New key binding
C-c C-z
to stop jobs (thanks to darkfeline) - Add support to open
zsh
common files withsh-mode
(.zsh
,zlogin
,zlogout
,zpreztorc
,zprofile
,zshenv
,zshrc
) (thanks to jcf) - Use login shell as term shell (thanks to lunaryorn)
- Automatically scroll the buffer on new output by setting variable
comint-move-point-for-output
tot
. - Deactivate scroll margin for shell buffers (thanks to darkfeline)
- Protect prompt in
comint-mode
(thanks to CestDiego) - Set
eshell-hist-ignoredups
tot
(thanks to CestDiego) - Typing
clear
in aneshell
buffer will clear the buffer (thanks to CestDiego) - Fix SIGQUIT bug (thanks to darkfeline)
Spell-checking
- New layer variable
spell-checking-enable-by-default
to enable/disableflyspell
by default globally (thanks to TheBB) - Move
auto-dictionary
from spacemacs layer tospell-checking
and activate it (thanks to StreakyCobra) - Disable line numbers in shell buffers (thanks to CestDiego)
- Fix
flyspell-prog-mode
activation (thanks to lunaryorn)
Syntax-checking
- New layer variable
syntax-checking-enable-by-default
to enable/disableflycheck
by default globally (thanks to TheBB) - Evilify
flycheck
error list (thanks to TheBB and bmag) - Enable new global minor mode
flycheck-pos-tip-mode
(thanks to StreakyCobra) - New key bindings
SPC e s
andSPC e S
to selectflycheck
checker executable (thanks to nashamri) - Fix escaping in buffer name regexp (thanks to lunaryorn)
- Remove flycheck fringe's bullet underlines (thanks to StreakyCobra)
Themes-megapack
- Add
jbeans
theme (thanks to synic) - Add
farmhouse
theme (thanks to CodeFalling) - Add
badwolf
theme (thanks to fabianhjr)
Vagrant
- Fix obsolete
vagrant-tramp-enable
variable (thanks to joehillen)
Version-control
- New key bindings
SPC T d
andSPC T C-d
to toggle diff margin in the fringe (thanks to ralesi) - New micro-state on
SPC g .
to stage, unstage, commit, show diff, show hunks, etc… (thanks to ralesi) - Add support for multiple gutter backends:
diff-hl
,git-gutter
andgit-gutter+
(thanks to ralesi)
Vinegar
- Fix evilified dired (thanks to TheBB)
Yaml
- Enable company
Website
- Initial version (thanks to bobbyangelov, nashamri and TheBB)
Core changes
- New command line parameters
--timed-requires
and--profile
to debug and benchmark Emacs initialization (thanks to justbur) - New command line parameter
--insecure
to disable https - Add path variable
spacemacs-assets-directory
(thanks to aminb) - Add a check to make sure that the Spacemacs git repository is not dirty before switching the Spacemacs versions (thanks to justbur)
- Add an error message when the minimal Emacs version is not met (thanks Immortalin)
- Add
spacemacs/recompile-elpa
interactive function (thanks to justbur) - Add
user-emacs-directory
inasync-start
(thanks to brabalan) - Set
ad-redefinition-action
toaccept
- Enable distinction between
C-i
andTAB
(thanks to justbur) - Move
evilified-state
library to local package ofspacemacs
layer - Replace
evil-leader
package bybind-map
package (thanks to justbur) - Remove special handling of
spacemacs-theme
andsolarized-theme
(thanks to TheBB) - Remove bootstrap packages
dash
andf
- Improved travis Build relying on container and EVM (thanks AdrieanKhisbe)
- Improve installation speed of themes and bootstrap packages
- Keep focus while navigating
*help*
buffers (thanks to sooheon) - Catch errors in executed dotfile functions and signal them to the user (thanks to justbur)
- Show errors in
*Messages*
buffer when loading .spacemacs instead of ignoring them (thanks to dcluna) - Fix overwrite of clipboard at startup (thanks to StreakyCobra)
- Fix error when setting
dotspacemacs-major-mode-leader-key
to nil (thanks to justbur) - Fix some loading warnings (thanks to syohex)
- Fix theme cycling after
SPC T h
is used (thanks to nixmaniack) - Fix various usage of obsolete functions (thanks to justbur)
- Fix various free variable references (thanks to justbur)
- Hide mode-line at startup
- Generate necessary HTML for the Spacemacs docs (used for the website) (thanks to travisbhartwell)
Home buffer
b
now jumps to the bookmark list (thanks to kccai)- Set Spacemacs home buffer as initial buffer for Emacs clients (thanks to TheBB)
- Inject Emacs version along with Spacemacs version in home buffer (thanks to ralesi)
- Add a
Spacemacs Update
button to the spacemacs buffer, and relabel the package update button to readUpdate Packages
(thanks to justbur) - Show quick help menu when no
.spacemacs
file is found (thanks to person808) - Do not start spacemacs buffer in motion state when editing style is
emacs
(thanks to justbur) - Factor out
spacemacs-buffer
creation (thanks to justbur) - Move
spacemacs-mode
tocore-spacemacs-buffer.el
(thanks to justbur) - Simplify
spacemacs-buffer/goto-link-line
(thanks to justbur)
Configuration layer
- Limit the number of rollback slots (thanks to elemakil)
- Add a timeout when fetching ELPA archives
- Allow explicit path for package location (thanks to TheBB)
- Fix
configuration-layer/package-usedp
for excluded packages - Fix automatic deletion of bootstrap packages (thanks to TheBB)
- Fix creation of
README.org
file inconfiguration-layer/create-layer
(thanks to StreakyCobra) - Add package keyword
:protected
- Set configuration layer error flag when calling user dotfile functions
Micro-state
:exit
keyword now accepts a list- Execute
:on-enter
before:doc
in micro-state
Other fixes and improvements
README.md
introduction rewrite (thanks to purcell)- New badge
Built with Spacemacs
(thanks to nashamri) - Merge files
HOWTOs.org
inFAQ.org
(thanks to StreakyCobra) - Merge the
CONTRIBUTING.md
anddoc/CONTRIBUTE.org
files into a newCONTRIBUTING.org
file (thanks to StreakyCobra) - Delete unneeded
.gitmodules
file (thanks to robbyoconnor) - Add
cl-
prefix tocl-lib
functions (thanks to coldnew, robbyoconnor) - Replace
eval-after-load
withwith-eval-after-load
(thanks to person808) - New Spacemacs screenshot in
README.md
(thanks to nashamri) - New text banners of the Spacemacs logo (thanks to sshbio)
- Add prefix command names (thanks to grammati, jenanwise, davoclavo, tekerson, d12frosted, CestDiego, lunaryorn, nixmaniack, AlexCharlton)
- Typos and documentation improvements (thanks to AdrieanKhisbe, bardec, bebound, benquebec, bmag, bogdanteleaga, CarlQLange, CestDiego, CodeFalling, com4, cpaulik, d12frosted, d1egoaz, dotneter-, dptd, dsdshcym, dvcrn, eagleflo, ernestas, FlashYoshi, Immortalin, jrk, justbur, masukomi, MaxWofford, mbertheau, mineo, mijoharas, mkollaro, nashamri, pbzdyl, person808, robbyoconnor, scloudyy, shishkin, swaroopch, TheBB, Treri, vijaykiran, xfq, xtian, ZachLiss)
Core team members
- Sylvain Benner (syl20bnr)
- Eivind Fonn (thanks to TheBB)
- Fabien Dubosson (StreakyCobra)
- Justin Burkett (thanks to justbur)
Release 0.104.x
0.104.8 (2015/12/16)
Hotfix
- Revert removal of fancy battery mode-line indicator.
0.104.7 (2015/12/15)
Distribution layer changes
Spacemacs
- Remove fancy battery custom mode-line (moved to spaceline) (thanks to TheBB)
Layers changes
Eyebrowse
- Eyebrowse doesn't have a lighter anymore (thanks to myrjola)
Haskell
- Replace obsolete function
haskell-process-load-or-reload
(thanks to joehillen) - Fix renamed command
hindent-reformat-decl
(thanks to lunaryorn)
Syntax-checking
- Add support for
flycheck-pos-tip-mode
(thanks to StreakyCobra, TheBB and lunaryorn)
0.104.6 (2015/11/27)
Hotfix
- Fix void variable error
smartparens-strict-mode
(thanks to TheBB)
0.104.5 (2015/11/22)
Distribution layer changes
Spacemacs
- Use version 7.1 of
evil-lisp-state
, the version 8 is supported in version 105 of Spacemacs only.
0.104.4 (2015/11/04)
Layer changes
Scala
- Fix Ensime test commands to reflect the changes in the recent versions of the package (thanks to lunaryorn)
Vagrant
- Replace obsolete function
vagrant-tramp-enable
by the functionvagrant-tramp-add-method
(thanks to joehillen)
Core
- Prevent bootstrap packages from being automatically uninstalled (thanks to TheBB)
0.104.3 (2015/11/01)
Layer changes
Evil-snipe
- Update
evil-snipe
minor mode name to match latest release of the package (thanks to person808)
Haskell
- Remove indentation guides to comply with latest
haskell-mode
(thanks to PierreR)
0.104.2 (2015/09/29)
Hotfixes
- Fix error
void-variable warning-minimum-level
on Emacs 24.3 (thanks to syohex)
Layer changes
Markdown
- Fix
SPC m c r
binding (thanks to tko)
Core
- Silence
ad-handle-definition
about advised functions getting redefined - Improve evilification rules, now
:
is rebound to|
,/
is rebound to\
andSPC
is rebound to'
Other fixes and improvements
- Add FAQ entry on the difference between available distributions (thanks to robbyoconnor)
- Delete obsolete
.gitmodules
file (thanks to robbyoconnor) - Improve convention documentation for evilified buffers
- Typos and documentation improvements (thanks to CarlQLange)
0.104.1 (2015/09/28)
Dotfile changes
- New variable
dotspacemacs-remap-Y-to-y$
, when non nilY
is remapped toy$
. Default value ist
.
Distribution layer changes
Spacemacs
- Add
SPC t h a
to toggle automatic highlighting of symbol under point.
Layer changes
React
- Force -jsx= content type (thanks to dvcrn)
Other fixes and improvements
- Typos and documentation improvements (thanks to k4rtik, robbyoconnor, tko, xfq)
0.104.0 (2015/09/28)
IMPORTANT - Breaking changes
org-plus-contrib
is now installed from org ELPA repository, you may encounter strange behaviours from Org. In this case delete theorg
directory in theelpa
directory and restart Emacs.-
Helm
key bindings have been slightly adjusted:- in
helm-find-files
(SPC f f
): nowC-h
move up a directory andC-l
enter the selected directory.describe-key
command is available onC-S-h
- in other
helm
buffersC-h
is used to go to the next source andC-l
is the same asRET
.describe-key
command is also available onC-S-h
.
- in
Y
has been remapped toy$
- The
bookmark
saved file has been moved to the.cache
directory, if you have a bookmark file~/.emacs.d/bookmarks
then you'll have to move it to~/.emacs.d/.cache/bookmarks
Ruby on Rails
framework has now its own layer calledruby-on-rails
, be sure to add this layer to your dotfile if you use RoR.Django
framework has now its own layer calleddjango
, be sure to add this layer to your dotfile if you use it.guide-key
has been replaced bywhich-key
, you may encounter issues if you have someguide-key
custom configuration, remove anyguide-key
configuration and check the options offered bywhich-key
.
Other important notes
- All layers have been moved to
layers
directory - Category folder prefix has been changed to
+
(was!
) spacemacs
layer has been moved to thelayers
directory in the category+distribution
- All
extensions
directories have been renamed tolocal
.extensions
directories will be deprecated in 0.105.0. tromey
ELPA repository has been removed (thanks to robbyoconnor)
Hot new features
- Enhanced layer package lists which merge old extension lists and package
lists. Keywords can be associated with packages. The supported keywords
are
:location
,:step
and:excluded
.extensions.el
files and<layer>-excluded-packages
variables are now optional and will be deprecated in the next version 0.105.0. - New
distribution
concept: you can now choose between two distributions:spacemacs
orspacemacs-base
.spacemacs-base
contains only a minimal set of packages whereasspacemacs
is the full Spacemacs experience. Set the distribution withdotspacemacs-distribution
variable. - Add support for
Quelpa
which allows to useMelpa
recipes to install packages directly from source (i.e. one can now install a package directly from a Github repository). - New editing style:
hybrid
. This style is similar to Vim style except that all Emacs key bindings are available in hybrid (insert) state instead of Vim key bindings. Also in this state, the buffers are evilified like in Vim style. - The default theme of Spacemacs is now
spacemacs-dark
. The Spacemacs themes (spacemacs-dark
andspacemacs-light
) become the official themes of Spacemacs (thanks to nashamri) - Recovery mode when there is an error in the user dotfile. Now even when your dotfile cannot be loaded, Spacemacs will be operational with a minimal set of packages available (thanks to cmccloud)
- Add support for dotdirectory
~/.spacemacs.d
which behaves like the Emacs dotdirectory (i.e.~/.spacemacs.d/init.el
is evaluated instead of~/.spacemacs
if the former exists and the latter does not) (thanks to justbur) - Guide-key is replaced by
which-key
which provides an enhanced and better live key bindings browsing experience. (thanks to justbur) - New API to manage the
powerline
mode-line. It is now possible to easily define segments and arrange them (thanks to TheBB) - New web gallery to browse themes in
themes-megapack
, URL: theme gallery (thanks to robmerrell) - New test framework supporting layer specific tests (thanks to TheBB)
- New interactive function
dotspacemacs/test-dotfile
testing the integrity of the.spacemacs
file. This function will detect any unknown layers and bad dotspacemacs variable values (thanks to justbur)
New conventions
- Add spacing conventions for org files (thanks to person808)
- Move
SPC m T x
conventions for executing tests in debug toSPC m t X
- Add conventions for toggles which are under
SPC t
,SPC T
andSPC C-t
. For major mode specific toggles onlySPC m T
is available. - Add
SPC m g b
to go back to previous location after aSPC m g g
. - Reserve
SPC m o
for users (thanks to TheBB)
New Layers
- asciidoc (thanks to hijarian)
- chinese (thanks to andyque)
- cscope (thanks to bmag)
- common-lisp (old slime layer renamed) (thanks to kingcons)
- django (split from python layer)
- elm (thanks to usharf)
- idris (thanks to zmthy)
- jabber (thanks to toshism)
- java (thanks to kleewho)
- nim (thanks to Gonzih)
- nixos (thanks to CestDiego)
- ranger (thanks to ralesi)
- sml (thanks to Devagamster)
- spell-checking (split from syntax-checking) (thanks to justbur)
- terraform (thanks to BrianHicks)
- react (thanks to axyz)
- ruby-on-rails (split from ruby layer)
- scheme (thanks to kingcons)
- vinegar (thanks to ralesi)
- unimpaired (thanks to ralesi)
- wakatime (thanks to CestDiego)
- yaml (split from ruby)
Dotfile changes
- New variable
dospacemacs-distribution
allowing to choose the default packages installed by Spacemacs. - New function
dotspacemacs/user-init
. Nowdotspacemacs/init
function is reserved for dotspacemacs variable exclusively. - New value
any
fordotspacemacs-highlight-delimiters
, when set toany
, all the delimiters are highlighted viarainbow-mode
. - New variable
dotspacemacs-helm-resize
. If non nil thenhelm
windows will be automatically resized depending on the number of candidates (thanks to ralesi) - New variable
dotspacemacs-helm-no-header
. If non nil then the helm header is hidden when there is only one source in the helm buffer (thanks to ralesi) - New variable
dotspacemacs-helm-position
which can bebottom
,top
,left
orright
(thanks to ralesi) - Add new
:disabled-for
keyword fordotspacemacs-configuration-layer
which allow to deactivate a layer for a set of layers. For instance(auto-completion :disabled-for org git)
will disable auto completion for both org and git layers. - Rename function
dotspacemacs/config
todotspacemacs/user-config
. The old functiondotspacemacs/config
will be deprecated in 0.105.0.
Distribution layer changes
Spacemacs-base
- New navigation key bindings for
helm-find-files
(SPC f f
), nowC-h
move up a directory andC-l
enter the selected directory.describe-key
command is available onC-S-h
. - In
helm
buffersC-h
is used to go to the next source andC-l
is the same asRET
.describe-key
command is available onC-S-h
. - Add
copy file
key binding onSPC f c
(thanks to cpaulik) - Add transparency micro-state (thanks to person808)
- Add
SPC i u
key binding to insert unicode symbols with helm (thanks to robbyoconnor) - Add
SPC x l s
andSPC x l u
to sort and uniquify lines in a buffer (thanks to oppenlander) - In buffer not visiting a file
SPC f s
now asks for a filename (thanks to cpaulik) - Add
SPC f l
to visit a file literally which means that the file will be opened infundamental mode
(thanks to sooheon) - Add support for automatic recompilation of
.el
files on save (thanks to ralesi) - Add
SPC f C d
andSPC f C u
to quickly convert Unix encoding to DOS encoding and vice versa (thanks to ralesi) - New key bindings to toggle editing styles:
SPC t E e
to toggleemacs
style andSPC t E h
to togglehybrid
style - Add support for arrow keys in windows micro-state (thanks to mbertheau)
- Fix paste micro-state undo
- Fix
SPC i K
(insert empty line above point) which now works as expected when used from the first line of a buffer (thanks to travisbhartwell) - Fix windows micro-state by using the minibuffer (thanks to person808)
- Fix broken alignment functions on
SPC x a
(thanks to justbur) - Don't jump if only one match in
helm-imenu
(thanks to tuhdo) - Remove
wS
from prefix list inconfig.el
(thanks to justbur) - Properly close frame when running a client from terminal (thanks to drewkett)
- Add chocolate color for the
replace
state (thanks to TheBB) - Make
Y
equivalent toy$
(thanks to person808) - Sync
visual-line-mode
andevil-visual-xxx
functions. NowSPC t L
correctly enablesvisual-mode-line
and change Evil to visual navigation accordingly. UseSPC t l
to disable truncated lines while keeping default Evil behavior. - Reduce autosave interval for evil-jumper (thanks to ralesi)
- Improve evil configuration for cursors and colors (thanks to justbur)
- Fix called function name for
SPC h b
binding. Helm removedhelm-pp-bookmarks
in the latest update and replaced it withhelm-filtered-bookmarks
(thanks to sgepigon) - Add
SPC f L
forhelm-locate
(thanks to ralesi) - Add text object
g
for entire buffer (thanks to ralesi) - helm-spacemacs: load layers only once.
- helm-spacemacs: show description of toggle functions (thanks to person808)
Spacemacs
- New API for the powerline (thanks to TheBB)
- Add package
define-word
onSPC x w d
(thanks to swaroopch) - Set
projectile-indexing-method
toalien
. This settings will use available tooling to speed up the build of the cache, should greatly improve the performance on Windows (provided you have the required tools) - Fix
projectile-generic-command
on Windows usingfind
(thanks to TheBB) - Fix
neotree
bug with window number 0 (thanks to jaypei) - Fix search direction consistency for
auto-highlight-symbol
micro-state (thanks to herbertjones) - Add VCS integration to
neotree
- Focus current file when opening Neotree in project's root with
SPC p t
(thanks to StreakyCobra) - Set
sp-show-pair-delay
to 0.2 instead of 0. Should fix some slowness in - Set
highlight-parentheses
delay to 0.2 - Enable
highlight-parentheses
whendotspacemacs-highlight-delimiters
is set toall
(thanks to tuhdo) - Hide lighter for
highlight-parentheses
- Better diminished lighters for
highlight-indentation-mode
(thanks to robbyoconnor) - Prevent iedit from adding global key binding (thanks to justbur)
- Temporarily exclude the package
hl-anything
waiting for an overlay bug to be fixed - Correctly enable
powerline
only if it is used (thanks to sooheon) - Make
golden-ratio
work after avy-word-jump (thanks to synic) - Exclude
helm
windows fromgolden-ratio
(thanks to ralesi) - Don't automatically select compilation buffer (thanks to jasminpatry)
- Define explicit functions to inverse comments for
evil-nerd-commenter
(thanks to endrebak) - Use TheBB fork of
evil-indent-textobject
which has working text objects based on the indentations (thanks to TheBB) - Exclude package
evil-terminal-cursor-changer
since it is buggy in some terminals (thanks to TheBB)
Layer changes
Agda
- Move
SPC m o
toSPC m h
sinceSPC m o
is now reserved for users (thanks to TheBB)
Auto-completion
- Add new layer variable
auto-completion-private-snippets-directory
which allows to specify a custom private snippet directory (thanks to justbur) - Improve yasnippet loading robustness (thanks to myrjola)
- Fix showing snippets in company popup (thanks to person808)
Better-defaults
- Add
backward-kill-word-or-region
onC-w
(thanks to justbur)
C/C++
- Fix key bindings for cscope (thanks to bmag)
- Add
disaster
package to disassemble c/c++ code on key bindingSPC m D
(thanks to jb55) - Fix error with
company-mode/more-than-prefix-guesser
(thanks to TheBB)
Chinese
- Remove "symbol" from list of changed charsets, this prevents minor mode lighters from being displayed in the Chinese font (thanks to louy2)
Clojure
- Add cider error buffer to popwin (thanks to cmccloud)
- Add cider-doc buffer to popwin (thanks to cmccloud)
- Add key bindings for
ein:traceback-mode
(thanks to toshism) - Add
SPC m s x
key binding forcider-refresh
(thanks to sooheon) - Stop using deprecated
cider-jump-to-var
and usecider-find-var
instead (thanks to lukbock) - Add
SPC m T i
to toggle indentation style inclojure-mode
(thanks to lukbock) - Add
SPC m T p
key binding to toggle pretty printing in the REPL (thanks to luxbock) - Add new key bindings to evilified buffer
cider-inspector-mode
(thanks to luxbock) - Add
C-j
andC-k
for browsing history in the REPL (thanks to luxbock) - Add more
clj-refactor
key bindings (thanks to luxbock) - Add more key bindings to
cider-stacktrace-mode
(thanks to luxbock) - Add interactive function
spacemacs/cider-toggle-repl-font-locking
to toggle font-locking in the REPL (thanks to luxbock) - Activate clojure-mode for *.boot files (thanks to usharf)
- Enable
fancify-symbols
forclojurescript-mode
,clojurec-mode
andclojurex-mode
(thanks to Xcix) - Setup indentation rules for common clojure vars (thanks to jcf)
- Evilify
cider-test-report-mode
buffers (thanks to luxbock) - Enable
clj-refactor
key bindings in the REPL (thanks to luxbock) - Enable clojure key bindings in the REPL (thanks to luxbock)
-
Fix bug in
spacemacs//cider-eval-in-repl-no-focus
:- Move to point-max before inserting text
- Only indent the newly inserted form instead of the whole buffer.
(thanks to luxbock)
- Fix key bindings conflict in
cider-debug-mode
(thanks to luxbock) - Rename old function
clfr-rename-file-or-dir
to new functioncljr-rename-file
(thanks to luxbock) - Remove
SPC m d b
cider-debug-defun-at-point
in REPL (It doesn't do anything other than messing up the buffer) (thanks to luxbock) - Gives faster access to display the last error buffer with
SPC m d e
(thanks to luxbock)
CSharp
- Set
omnisharp-auto-complete-want-documentation
tonil
to work-around a bug in standard Omnisharp server built in Release configuration. - Add prefix command documentation (thanks to d12frosted)
Dash
- Add support for
zeal
on Linux and Windows (thanks to CestDiego)
Deft
- Replace deprecated
deft-extension
by newdeft-extensions
(thanks to mclearc)
Elixir
- Remove flycheck due to a security issue in the Elixir compiler (thanks to gilbertkennen)
- Add support for popwin for
mix
buffers (thanks to rhalukongor) - Re-enable
magit-gitflow
since it is now compatible with Magit 2.1 (thanks to gilbertkennen)
Emacs lisp
- Make
flycheck
aware ofloadpath
(thanks to CestDiego) - Define
emacs-lisp-mode
key bindings forlisp-interaction-mode
(thanks to justbur) - Fix
SPC m e c
to evaluate current form (thanks to justbur) - Add
SPC m e s
to evaluate symbol under point (thanks to justbur)
ERC
- Add
ERC-SASL
for SASL authentication (thanks to CestDiego) - Fix check for
dbus
availability on OS X (thanks to cmccloud)
ESS
- Change default value of
ess-enable-smart-equals
to nil (thanks to izahn) - Fix
company
back-end declaration (thanks to jcpetkovich)
Evil-commentary
- Add
SPC ;
for comment operator
Extra-lang
- Add
Stan
modeling language (thanks to alexanderrich)
Eyebrowse
- Add
s
forswitch-to-window-config
(thanks to rphillips) - Add
gt
andgT
key bindings to switch between workspaces (thanks to joehillen)
Fsharp
- Allow fsharp-mode to determine build path (thanks to bsermons)
Git
- Make sure that git-commit is initialized so that Emacs can be used as $GITEDITOR (thanks to thrnio)
- Remove some deprecated code (thanks to tko)
- Add documentation about
magit-push-always-verify
variable (thanks to sooheon) - Add
escape
key binding togitmessenger
(thanks to mijoharas) - Add
#f
key binding inmagit-status
formagit-gitflow-popup
(thanks to gilbertkennen) - Use
MELPA
version ofmagit-gh-pulls
and fix its configuration (thanks to cmccloud) - Evilify
magit-hunk-section-map
(thanks to ralesi) - Evilify
magit-stash-mode
(thanks to nixmaniack)
Github
- Properly evilify
gist-lists
buffer (thanks to cmccloud)
Gnus
- Move
SPC m o
toSPC m M
sinceSPC m o
is now reserved for users (thanks to TheBB) - Movw
SPC m H
toSPC m m
(thanks to robbyoconnor)
Go
- Use exec-path-from-shell-copy-env to set
GOPATH
(thanks to jenanwise) - Fix multiple paths support in
GOPATH
on Windows (thanks to galaxian) - Move all oracle key bindings under
SPC m o
toSPC m r
sinceSPC m o
is now reserved for users (thanks to TheBB) - Adapt key bindings to conventions,
SPC m b
is nowSPC m e
andSPC m d
is nowSPC m h
(thanks to bogdanteleaga) - Move
SPC m r
toSPC m r n
which conflicted with oracle key bindings (thanks to bogdanteleaga)
Gtags
- Fix eldoc configuration (thanks to thudo)
Haskell
- Make
ghc-mod
optional (thanks to michelk) - Disable line highlighting when shm is enabled (thanks to d12frosted)
Html
- Add for CSS files
SPC m z c
andSPC m z o
to contract and expand CSS blocks (thanks to ralesi) - Add
SPC m g h
(helm-css-scss) tocss-mode
(thanks to TheBB) - Add support for
jade
files (thanks to robbyoconnor) - Add flycheck for
slim
andhaml
modes (thanks to robbyoconnor) - Add rainbow delimiters for
haml
,jade
andslim
modes (thanks to robbyoconnor) - Add
.eex
extension toweb-mode
(thanks to gilbertkennen) - Add
.ejs
files toweb-mode
(thanks to robbyoconnor) - Add
.twig
files toweb-mode
(thanks to axyz) - Add
.asp
files toweb-mode
(thanks to TheBB) - Add
gj
andgk
key bindings to go to siblings elements in web micro-state (thanks to TheBB) - Enable
smartparens
in CSS like modes (thanks to TheBB) - Fix extra space in declared pair <%= %> (thanks to dsdshcym)
- Fix
r
key bindings in web micro-state (thanks to CestDiego) - Fix smartparens configuration (thanks to TheBB)
Ipython-notebook
- Move
SPC m o
andSPC m O
toSPC m i
andSPC m I
sinceSPC m o
is now reserved for users (thanks to TheBB)
Java
- Diminish
eclim
minor mode lighter (thanks to Devagamster)
Javascript
- Add
json-snatcher
onSPC m h p
(thanks to CestDiego)
Markdown
- Fix backticks and single quotes insertion (thanks to x-ji)
- Fix
smartparens
configuration (thanks to fintelkai) - Move
SPC m o
toSPC m f
sinceSPC m o
is now reserved for users (thanks to TheBB)
Org
- Install
org-plus-contrib
from org ELPA repository - Add table related key bindings on
SPC m t
(thanks to JP-Ellis) - Add defer loading for
toc-org
. - Add
gnuplot
package to plot data from tables (thanks to JP-Ellis) - Add
org-mime
(moved fromgnus
layers) - Add new key bindings to move whole subtrees up/down/right/left with
SPC m S
prefix (thanks to katshinka) - Add new key bindings to move between complex TODO sets with
SPC m C-S
prefix (thanks to katshinka) - Add more cycling options for time-stamps, headlines, items, properties with
SPC m L
,SPC m K
, etc… (thanks to katshinka) - Add key bindings
SPC m .
to insert time-stamps (thanks to katshinka) - Set
toc-org-max-depth
to 10. - Move
SPC m o
toSPC m l
sinceSPC m o
is now reserved for users (thanks to TheBB) - Ensure that
org-directory
exists on load (thanks to ralesi) - Fix
SPC m l
by callingorg-open-at-point
instead ofevil-org-open-links
(thanks to TheBB) - Fix org-repo-todo loading (thanks to TheBB)
Osx
- Re-factor and expand support for trash can (thanks to usharf)
- Add support for
launchctld
(thanks to usharf) - Add new key binding to toggle fullscreen which should fix the usage of left command key for this command (thanks to sooheon)
- Change obsolete
new-frame
function tomake-frame
(thanks to fintelkai)
Pandoc
- Add
ox-pandoc
package (thanks to jcf)
Php
php-extras
is not correctly installed- Enable flycheck (thanks to rakyi)
Puppet
- Enable
flycheck
support (thanks to tko)
Python
- Apply new conventions for test key bindings
- Fix
anaconda-mode
key bindings for latest version ofanaconda-mode
package (thanks cpaulik) - Fix
py-yapf
foryapf
>= 0.3.0 (yapf
now returns 2 if source code was changed) (thanks to a-sk) - Use
quit-window
to close documentation popup (thanks to cpaulik) - Enable
evil-matchit
(thanks to robbyoconnor) - Move anaconda server cache files to
.cache
directory (thanks to person808)
Racket
- Enable insert state after
SPC m s B
accordingly to the conventions (thanks to jmiven)
Ranger
- Fix
ranger-up-directory
key binding on-
(thanks to ralesi)
Ruby
- Use
enh-ruby-mode
on interpreter-detected ruby files. This makes ruby files that start with shebang ruby directives useenh-ruby-mode
(thanks to jenanwise) - Add some
ruby-tools
key bindings (thanks to chrismcg) - Enable
evil-matchit
(thanks to robbyoconnor)
Ruby-on-rails
- Activate
projectile-rails
mode for any type of files in a rails project (thanks to liuxiang)
Rust
- Add
racer
package (thanks to cdlm)
Salt
- Add
salt-mode
package (thanks to beardedprojamz)
Scala
- Add binding for
ensime-pop-find-definition-stack
onSPC m g p
(thanks to alexanderkjeldaas) - Remove key binding
SPC m ?
(thanks to Profpatsch)
Scheme
- Add support for Geiser (thanks to kingcons)
Search-engine
- Add Bing (thanks to Devagamster)
- Add Spacemacs Pull Requests
Shell
- Add
eldoc
support in eshell (thanks to ppold) - Add a better prompt via
eshell-prompt-extras
for eshell (thanks to ppold) - Add visual commands to eshell (thanks to ppold)
- Add support for
smart eshell
in eshell via the layer variableshell-enable-smart-eshell
(thanks to ppold) - Add auto-completion support for eshell (thanks to trishume)
- Automatically jump to prompt in insert state in eshell buffers (thanks to trishume)
- Add support for leader in
multi-term
(thanks to martinmr) - Deactivate eshell automatic auto-completion popup for remote path since it can be slow, the popup must be called manually in remote paths (thanks to myrjola)
- Fix
magit-status
alias foreshell
(thanks to myrjola) - Protect the
eshell
prompt from deletion with evil commands. A new layer variableshell-protect-eshell-prompt
allows to opt-out this behavior (thanks to myrjola).
Syntax-checking
- Add
SPC e l
to toggle error list buffer (thanks to bmag) - Add
SPC e v
to verify the flycheck setup (thanks to bmag) - Add
SPC e h
to describe the flycheck checkers (thanks to bmag)
Vinegar
- Show symlink paths (thanks to ralesi)
Wakatime
- Add
SPC a W
to open the Wakatime dashboard in the browser (thanks to CestDiego)
Core changes
- Add
with-eval-after-load
backport (thanks to justbur) - Add new key bindings to evilified buffers:
g
,GG
,C-b
,C-f
,C-d
andC-u
(thanks to sooheon) - Add
C-z
inevilified-state
to switch toemacs-state
for the next command (thanks to justbur) - Add
:eval-after-load
keyword tospacemacs|evilify-map
macro - Remove
y
from evilified state keymap, use a visual selection instead. - Fix visual state key bindings in evilified buffers
- Prevent auto-evilification of buffers from overwriting
C-g
- Rewrite on
evilify-map
macro which is now simpler and more robust - Add on and off functions to toggles (thanks to TheBB)
- Add new function
spacemacs/describe-system-info
which put useful information in the clipboard, ready to be pasted in an IRC channel for instance (thanks to swaroopch) - Add new functions
configuration-layer/declare-layer
andconfiguration-layer/declare-layers
which can be used inconfig.el
files of a layer to add required layers. - Add macro
dotspacemacs|symbol-value
with new special variable valuedisplay-graphic-p
. This variable will evaluate(display-graphic-p)
when called withdotspacemacs|symbol-value
. Use this special value to be able to have unicode symbol in GUI client but not in terminal clients. - Add missing
spacemacs/
function prefix (thanks to person808) - Add choice of distribution on install (thanks to justbur)
- Add distribution name in home buffer
- Add distribution to
spacemacs/describe-system
(thanks to TheBB) - Rewrite evil-leader keys handling to make
M-m
work correctly (thanks to justbur) - Replace
after-init-hook
with better hookemacs-startup-hook
(thanks to vkz) - Fix some crashes when a package cannot be updated and warn about such packages when updating (thanks to bmag)
- Fix
SPC u
not repeating universal-argument (thanks to luxbock) - Fix Spacemacs Home Buffer to jump to bookmarks (thanks to travisbhartwell)
- Fix
ace-link
in spacemacs buffer (thanks to avoine) - Fix an issue with Emacs 25 in
init.el
(not yet officially supported) (thanks to justbur) - Fix
return
binding in terminal in home buffer(thanks to d12frosted) - Fix custom banner path (thanks to d12frosted)
- Fix inconsistent detection of orphaned packages to delete
- Set
gc-cons-threshold
to 100MB and define it ininit.el
- Use
package-alist
to resolve orphans - Better indentation for
spacemacs|add-toggle
macro (thanks to TheBB) - Remove some dead code for
use-package
(thanks to TheBB) - Remove
tooltip-use-echo-area
usage which is obsolete since Emacs 24.1 (thanks to xfq) - Remove duplicate call to
dotspacemacs/init
(thanks to sooheon) - Display home buffer links even when no banner are displayed (thanks to sooheon)
- Better centering of text in the home buffer
Other fixes and improvements
- Add contribution guidelines
CONTRIBUTE.md
(thanks to robbyoconnor) - New documentation on layers (thanks to TheBB)
- Suppress byte compiler warnings on startup (thanks to justbur)
- Reactivate prefix command names since they are working correctly with
which-key
(were also working withguide-key
) (thanks to martinmr) - Delete deprecated
!user
contrib directory. - Removed lasts git submodules, Spacemacs is now submodule free!
- Typos and documentation improvements (thanks to agzam, alexanderkjeldaas, andyque, benwooth, BrianHicks, catern, cgrinds, d12frosted, Devagamster, gleber, Immortalin, jgertm, JinweiClarkChao, jmiven, JorisE, JoshTGreenwood, justbur, luxbock, mbertheau, mortonfox, nwolfe, oneeman, person808, rakyi, sotte, robbyoconnor, robmerrell, screamish, sooheon, srid, swaroopch, syohex, travisbhartwell, x-ji, xfq, zmthy)
Release 0.103.x
0.103.6 (2015/08/30)
Core
- Fix error with
SPC h b
(bookmarks) (thanks to sgepigon)
0.103.5 (2015/08/09)
Layer changes
Osx
- Fix initialization of
reveal-in-osx-finder
(thanks to fintelkai)
Core
- Temporarily switch to HTTP instead of HTTPS to communicate with elpa.gnu.org (thanks to robbyoconnor)
0.103.4 (2015/08/07)
Layer changes
Clojure
- Fix key bindings for new Clojure major modes:
clojurec-mode
,clojurescript-mode
andclojurex-mode
(thanks to benalbrecht)
0.103.3 (2015/08/04)
Layer changes
Osx
- Rename
reveal-in-finder
to its new namereveal-in-osx-finder
(thanks to syohex)
0.103.2 (2015/07/04)
Layer changes
Git
- Fix
magit-repository-directories
variable name (thanks to travisbhartwell) - Fix
magit-blame
key binding (thanks to jenanwise) - Use
magit-log-all
instead ofmagit-log
onSPC g l
(thanks to tuhdo)
Other fixes and improvements
- Typos and documentation improvements (thanks to cscorley, dstcruz, h3dkandi, kccai, MadAnd, person808, Profpatsch, stnly, stormpat, xfq, zachlatta)
0.103.1 (2015/07/02)
Layer changes
Git
- Fix
F
in Vim style inMagit
status buffer, nowF
is correctly bound topull
popup menu - Fix intermittent erroneous
k
key binding inMagit
status buffer.
Core
- Fix mandatory dependency on
evil-escape
- Fix evilification of
evil-escape
starter key
0.103.0 (2015/07/01)
IMPORTANT: Breaking changes
- Spacemacs is now compatible only with
Magit 2.1
and later, be sure to update your packages. auctex
layer has been renamedlatex
, be sure to update your dotfile if you use this layer.erlang/elixir
layer has been split into two layerserlang
andelixir
, be sure to update your dotfile if you use these layers.git
layer has been split into two layers:git
andgithub
so the layer variablegit-enabled-github-support
is deprecated, you have to add the layergithub
in your dotfile.git-gutter
has been replaced bydiff-hl
. This package is in the new layerversion-control
, be sure to add this new layer to your dotfile.- Projectile key bindings changes:
SPC p e
is nowSPC p r
(recent files)SPC p R
is nowSPC p G
(regenerate tags)SPC p r
is nowSPC p R
(replace)
Hot new features
- Add support for Magit 2.1!
- Helm now uses its header to display the input pattern.
- Use Flycheck default configuration to check the current buffer in "real time" (yes this is a hot new features :-))
- New interactive function
spacemacs/switch-to-version
, it will ask for a version number and warn if the current branch is notmaster
. Users ondevelop
branch cannot use this function (it has no effect). - Clicking on the up arrow in the mode-line will now update Spacemacs. A prompt asks for confirmation before updating.
- New "tool assisted" search and replace interface supporting
ag
,pt
, andack
with a new key binding scheme. Check the documentation forsearching with an external tool
.
New Layers
- elixir (split from
erlang-elixir
) - erlang (split from
erlang-elixir
) - github (split from
git
) - ipython-notebook (ein) (thanks to CestDiego)
- latex (renamed from
auctex
) - version-control
Dotfile changes
- New variable
dotspacemacs-auto-save-file-location
which enable or disable auto-saving of modified files. Possible values areoriginal
to auto-save the file in-place,cache
to auto-save the file to another file stored in the cache directory andnil
to disable auto-saving. Default value iscache
.
Layer changes
Spacemacs
- Add text alignment key bindings on
SPC x a
prefix (thanks to justbur and TheBB) - Remove the kill ring from
savehist-additional-variables
to avoid an issue with abnormal high size ofsavehist
file (thanks to tuhdo) - Add documentation files to
helm-spacemacs
(thanks to person808) - Add support for
.org
files inhelm-spacemacs
(thanks to tuhdo) - Add explicit titles for documentation files in
helm-spacemacs
(thanks to tuhdo) - Remove the dependency on
f
library inhelm-spacemacs
(thanks to person808) - Revert
C-o
inholy-mode
since it shadows too many packages key bindings (thanks to tuhdo) - Evilify
helm-ag
andhelm-grep
buffers (obtained by pressingf3
in the helm buffer while searching) (thanks to cpaulik) - Search with
ag
,pt
andack
are done with the same interface based onhelm-ag
- Add search integration in
expand-region
andauto-highlight-symbol
(thanks to justbur) - Update search with
grep
to match the new search interface (thanks to justbur) - Quote input when default text is used in search (thanks to justbur)
smart-search-project
onSPC /
now fallback to searching files in current directory when there is no project (thanks to justbur)- Replace
dired-goto-file
withhelm-find-files
in Dired (thanks to tuhdo) - Add support for .org files to
SPC s l
key binding, it allows to quickly jump to file headers using Helm (thanks to tuhdo) - Re-enable
auto-save
mode (thanks to tuhdo) - Set
:defer 1
inhelm
initialization (which means that helm will be auto-loaded automatically after 1 second of idle time) - Fix
helm-resume
opening window in half of split screen (thanks to sooheon) - Use
helm
header to display the input pattern (thanks to tuhdo) - Fix
open-in-external-app
when the buffer is not visiting a file (thanks to travisbhartwell) - Prevent paste micro-state to be triggered by
C-r
ininsert state
- Projectile key bindings changes:
SPC p e
is nowSPC p r
(recent files)SPC p R
is nowSPC p G
(regenerate tags)SPC p r
is nowSPC p R
(replace) - Remove
comint-delchar-or-maybe-eof
onC-d
, it fixesC-d
scroll down behavior innormal state
, user has to press the stock bindingC-c C-d
to send anEOF
(thanks to kini)
Auto-completion
- Yasnippet: Default
helm-yas-display-key-on-candidate
tot
(thanks to BrianHicks) - Yasnippet: Disable
smartparens
while expanding to fix a bug withhippie-expand
(thanks to tuhdo) - New layer variable
auto-completion-enable-snippets-in-popup
to add snippets directly to auto-completion popup (thanks to person808)
Autohotkey
- Fix
.ahk
file extension declaration (thanks to ralesi)
C/C++
- Add package
gdb-mi
(gdb-many-windows) which enables an IDE like debugger frontend for Emacs (thanks to tuhdo)
Clojure
- Add
SPC e w
to eval last sexp and replace it with the result (thanks to DayoOliyide) - Evilify Cider inspector (thanks to ppold)
Elixir
- List all Elixir key bindings in README
- Update configuration to support new
alchemist
1.0 feature (thanks to tonini) - Enable auto-completion support
Emacs Lisp
- Add new Spacemacs snippets
micro-state
andnew-package
(thanks to CestDiego) - Add (f)ielm-indent-line for
ielm
mode (thanks to BlinkD)
Emoji
- Remove the extension and use the MELPA package
ERC
- Use
erc-yank
onp
in normal state ifgist
package is available (thanks to CestDiego)
Evil-snipe
- Update configuration to support last upstream changes (thanks to hlissner and MadAnd)
Extra-langs
- Enable
QML
mode for.qml
files (thanks to bennofs)
Eyebrowse
- Add support for workspace labels (thanks to rphillips)
Finance
- Evilify
ledger-report-mode
(thanks to darkfeline)
Git
- Replace
git-gutter
bydiff-hl
(thanks to tuhdo) - Remove
gc
prefix command as unused from guide-key (thanks to tko) - Add
magit-diff
key binding onSPC g d
(thanks to kevinushey) - Evilify
magit-diff
buffer - Implement fullscreen for
Magit
without advices (thanks to tarsius) - Fix whitespace toggles for
Magit
(thanks to tarsius) - Remove deprecated
magit-last-seen-setup-instructions
(thanks to tarsius) - Move whitespace toggle in
Magit
toC-S-w
- Add
SPC g L
to display the log for the current file (thanks to tko)
Go
- Add
SPC m g a
to switch between tests and implementation (thanks to jenanwise)
Gtags
- Enable
helm-gtags
forcompilation-mode
andshell-mode
(thanks to tuhdo)
Haskell
- Add
company-cabal
support for auto-completion in.cabal
files (thanks to bjarkevad) - Fix error with
electric-indent-local-mode
in some versions of Emacs (thanks to jeremyjh)
iPython-notebook (ein)
- Add key bindings on major-specific leader (thanks to cpaulik)
- Add
C-RET
andS-RET
key bindings to behave like theein
web interface (thanks to cpaulik) - Bind
SPC f s
to save the notebook (thanks to cpaulik)
LaTeX
- Add support for
RefTeX
(thanks to JP-Ellis) - Add support for
LatexMk
, to enable it set the layer variablelatex-build-command
to"LatexMk"
(thanks to JP-Ellis) - Use
auto-fill-mode
, with an environment-aware auto-fill function, you can enableauto-fill
support by setting the layer variablelatex-enable-auto-fill
tot
. You can also inhibit it in some environments with the variablelatex-nofill-env
(thanks to JP-Ellis) - Remove
build-view
in favour of justbuild
as it seemed to be broken and introduceSPC m v
to view (thanks to JP-Ellis) - General settings should now be easier to override in
dotspacemacs/config
- Fix errors due to layer renaming (thanks to JP-Ellis and autosquid)
Markdown
- Add font-locking for code blocks (thanks to kennethlove)
- Add support for a bunch of languages for code blocks (thanks to dexafree)
Ocaml
- Don't auto-close backticks (thanks to edwintorok)
Org
- Fontify code blocks (thanks to tuhdo)
- Add
toc-org
package (thanks to CestDiego) - Tweak org-pomodoro mode-line integration (Add missing leading space)
- Move
org-clock-save.el
to cache folder (thanks to BlinkD) - Add key binding
SPC m :
fororg-set-tags
(thanks to cpaulik)
Osx
- New variable
osx-use-option-as-meta
allowing to enable or disable the mapping ofoption
key tometa
key. This is especially useful for some European keyboard layouts like Finish or Swedish (thanks to tko) - Add
⌘ +
and⌘ -
key bindings to scale text (thanks to JoshTGreenwood and zimbatm) - Only update
dired-use-ls-dired
ifgls
was found on path (thanks to usharf) - Add reveal in finder on
C-⌘ f
(thanks to usharf) - Add key bindings
⌘ a
(select all)⌘ W
(close frame) and⌘ n
(new frame) (thanks to mveytsman) - Fix
⌘ v
paste behavior (thanks sooheon)
Powershell
- Add
SPC a s p
to start apowershell
buffer (thanks to ralesi) - Add
SPC m r r
forpowershell-regexp-to-regex
(thanks to ralesi) - Add
$(
text object (thanks to ralesi)
Puppet
- Add Puppetfile support (thanks to nwolfe)
Python
- New supported test runner:
pytest
(thanks to cpaulik) - New layer variable
python-test-runner
to choose betweennose
andpytest
- Set
indent-tabs-mode
tot
in REPLs, should fix indent errors (thanks to tuhdo) - Fix a loading bug due to a typo in
latex
layer (thanks to cpaulik)
Racket
- Fix not working
electric-pair-skip
(thanks x-ji)
Ruby
- Fix some annoyance with deep indentations (thanks to trishume)
Rust
- Add support for
flycheck
(thanks to swaroopch) - Add support for auto-completion via
racer
(thanks to JP-Ellis) - Use
compile
instead of the shell forcargo
. This allow Emacs to parse the output, including all the errors (thanks to JP-Ellis)
Scala
- Set classpath directory of
ensime
to.cache/ensime
(thanks to cyrillk)
Slime
- Add a bunch of key bindings (thanks to spigo900)
Syntax-checking
- Now use the
flycheck
default configuration to trigger checks. Checks are now performed live (thanks to tuhdo and thrnio)
Theme
- Add spacemacs-theme! (WIP) (thanks to nashamri)
- Add tao theme (thanks to elais)
Core
- New interactive function
spacemacs/switch-to-version
- Clicking on the up arrow will now update Spacemacs
- Add a link to Vimmers guide in quick help of startup buffer (thanks to person808)
- Enable
use-package-verbose
whendotspacemacs-verbose-loading
is set tot
- Better name for placeholders in layer templates (thanks to kini)
- Beautify change log (thanks to tuhdo)
- Layers are now auto-discovered recursively which allow arbitrary
directory hierarchy. Directory names starting with
!
are categories. (thanks to TheBB) - Fix regression when
dotspacemacs-startup-banner
is set tonil
(thanks to ptb) - Fix home buffer keys in terminal (thanks to tuhdo)
- Fix bookmark list in home buffer (thanks to fandag)
- Add support for
material-light
theme (thanks to cpaulik) - Use SSL to contact elpa repositories when possible (thanks to zimbatm)
- Emacs 25 required the line
(package-initialize)
in theinit.el
file (thanks to justbur) - Add the possibility to call
configuration-layer/update-packages
in batch mode (thanks to travisbhartwell)
Other fixes and improvements
- Conversion of all layer README.md files to .org (thanks to CestDiego and cpaulik)
- Conversion of documentation files to .org (thanks to person808)
- Add a guide for Vimmers in
doc
directory (thanks to person808) - Typos and documentation improvements (thanks to cloudbring, duerrp, dxnn, dvberkel, fotoetienne, JoshTGreenwood, kccai, OliverM, MadAnd, person808, robbyoconnor, royseto, swaroopch, travisbhartwell, tuhdo, xfq)
Release 0.102.x
0.102.2 (2015/06/03)
Layer changes
Org
- Fix bug with
ox-gfm
by moving it to extensions
Core
- Fix detection of new versions by correctly fetch latest changes
0.102.1 (2015/06/01)
Layer changes
Org
- Fix lazy-loading of
ox-gfm
package.
Core
- Catch layer variables syntax errors
0.102.0 (2015/05/31)
IMPORTANT: Breaking changes
- All Emacs Lisp related configuration has been moved to its own layer
called
emacs-lisp
, be sure to add this layer to your dotfile. - All shell related configuration has been move to its own layer called
shell
, be sure to add this layer to your dotfile if you use a shell inside Emacs. - Key binding to reload the dotfile is now
SPC f e R
instead ofC-c C-c
orSPC m c c
. Note thatSPC f e R
can be triggered anywhere (it is not restricted to the dotfile anymore). - Key binding to switch buffer is now
SPC b b
instead ofSPC b s
. SPC f f
now useshelm-find-files
instead ofido
, use the new dotfile variabledotspacemacs-use-ido
to get the old behavior back.- Helm
TAB
andC-z
key bindings have been swapped. - By default single space sentence delimiter is defined.
- Layer variable values set with
:variables
keyword need to be quoted like in a regularsetq
expression.
New Layers
- Agda (thanks to ocharles)
- Chrome (thanks to beardedprojamz)
- D (thanks to trishume)
- Deft (thanks to trishume)
- Emacs-lisp
- Emoji
- Eyebrowse
- Games (thanks to nashamri)
- Gnus (thanks to cpaulik)
- Gtags (thanks to tuhdo)
- iBuffer (thanks to alex-glv)
- Pandoc (thanks to cpaulik)
- Prodigy (thanks to CestDiego)
- Purescript (thanks to kofno)
- Rust (thanks to mkaito)
- Salt (thanks to beardedprojamz)
- Search Engine (thanks to CestDiego)
- Semantic (thanks to tuhdo)
- Shell
- Spotify (thanks to BrianHicks)
- Sql (thanks to BrianHicks)
- TypeScript
- Vim-powerline
Dotfile changes
- New variable
dotspacemacs-search-tools
which is a list of search tool executable names. Spacemacs uses the first installed tool of the list with search related key bindings (SPC /
,SPC s ...
). Supported tools areag
,pt
,ack
andgrep
. - New variable
dotspacemacs-highlight-delimiters
which selects a scope to highlight delimiters. Possible value isall
,current
ornil
. Default isall
. (thanks to tuhdo) - New variable
dotspacemacs-additional-packages
. Adding packages to this list will install them without needing them to be wrapped in a layer. Ideal for quickly add a package. The package configuration can be put indotspacemas/config
. - New variable
dotspacemacs-use-ido
. If non nil thenido
replaceshelm
for some commands. For now onlyfind-files
(SPC f f) is replaced. - New key binding
SPC f e D
to open anediff
buffer between the user dotfile and the current template. - Disable paste micro-state by default, i.e. set the variable
dotspacemacs-enable-paste-micro-state
tonil
in the dotfile template.
New conventions
- Add conventions for markup languages like
markdown
ororg
(thanks to cpaulik)
Layer changes
Spacemacs
- Auto-indent when pasting use the universal argument to not auto-indent (thanks to tuhdo)
- Fix
global-mode-string
for mode-line (thanks to 3marcusw) - Display
guide-key
buffer at the bottom instead of the right so we get more space. Also fix some issues with other popup interaction. - Use single space sentence delimiter (thanks to roryk)
- Restore maximized frame state with
zoom-frm
(thanks to ralesi) - Improve
golden-ratio
excluded buffers coverage (thanks to tuhdo) - Add missing
evil-window-*
commands togolden-ratio
managed commands (thanks to riclima) - Add CamelCase motion toggle to
subword-mode
(thanks to mkcode) - Add
open-junk-file
package which allows to quickly create a junk file in.cache
directory. Bound toSPC f J
(thanks to tuhdo) - Add
SPC T s
to toggle semantic-stickyfunc (thanks to cpaulik) - Add
SPC b Y
andSPC b P
to copy/paste whole buffer (thanks to swaroopch) - Add
SPC h d b
todescribe-bindings
(thanks to mkcode) - Add toggle to hide/show the mode line on
SPC t m t
(thanks to jupl) - Add
move-text
micro-state - Add
highlight-parentheses
package which can activated by settingdotspacemacs-highlight-delimiters
tocurrent
(thanks to tuhdo) - Add
clean-aindent-mode
package to cleanly delete virtual indentation (thanks to tuhdo) - Move
yasnippet
andhippie-exp
toauto-completion
layer. - Move
multi-term
and shell packages to newshell
layer - Move
flyspell
andhelm-flyspell
tosyntax-checking
layer - Move
SPC b r
toSPC f R
(rename file) -
Move some toggles key bindings which are now:
SPC t s
for syntax checkingSPC t S
for spelling checkingSPC t f
for fill columnSPC t F
for auto-fillSPC t c
for camelcase
- Move
sp-local-pair
to:config
ofsmartparens
so user can override them (thanks to person808) - Remove
SPC b 0
andSPC b $
redundant key bindings (thanks to tuhdo) - Remove all themes from the layer (since now themes are not automatically uninstalled).
- Don't use the minibuffer for
scroll
micro-state - Don't close compilation buffer after success (thanks to TheBB)
- Make
trailing-whitespace
face more subtle (thanks to tuhdo) - Beautify whitespace highlighting (thanks to tuhdo)
- Make inactive window face of mode-line compatible with more themes (thanks to tuhdo)
- Fix the
recentf-exclude
variable, now cache folder is correctly excluded (thanks to rcherrueau) - Fix global toggle for whitespace.
- Fix for new line insertions with
SPC i
(thanks to nashamri) - Fix
spray
cursor issue when quitting. - Tweak
fci-mode
face color, should be better in most themes (thanks to tuhdo) - Improve
smooth-scroll
configuration (thanks to sooheon) - Refactor
spacemacs/init-evil-lisp-state
to useuse-package
(thanks to mveytsman)
Helm
- Switch commands for
Tab
andC-z
in Helm (thanks to darkfeline) - Remove Helm header line to make it clearer (thanks to tuhdo)
- Manually manage
popwin
to improve popup window interactions (thanks to tuhdo) - Enable fuzzy matching in Helm (thanks to ralesi)
- Turn on colors in
helm-swoop
(thanks to danielwuz) - Render README.md file of layers with
Open README
action ofhelm-spacemacs
, use the universal argumentC-u
to open the file without rendering it (thanks to tuhdo) - Add dotfile variables helm source to
helm-spacemacs
- Add support for extensions in
helm-spacemacs
- Use
helm-pp-bookmarks
instead ofhelm-bookmarks
(thanks to darkfeline) - Move
C-SPC
onM-SPC
andS-M-SPC
forhelm
andido
micro-states. - Make
helm-find-files
backspace
key behave likeido
(thanks to tuhdo) - Fix aggressive manipulation of
face-remapping-alist
inhelm
andido
- Automatically create directories if needed when renaming a file (thanks to env0der)
- Replace
helm-projectile-vc
(which does not exist) byprojectile-vc
(thanks to swaroopch) - Fix
toggle-maximize-buffer
(thanks to tuhdo)
Evil
- Use non-visual lines for j/k navigation (thanks to mlsteele)
- Enable
evil-execute-in-normal-state
inholy-mode
- Better default face for
evil-search-highlight-persist-highlight-face
(thanks to tuhdo) - Add visual state mapping for
<
and>
to<gv
and>gv
respectively (allow to indent a region several times). - Add
spacemacs/smart-goto-definition
which attempts to callSPC m g g
and falls back toevil-goto-definition
if that fails (thanks to luxbock) - Replace
C-o
withM-o
indired
buffer sinceC-o
is replaced withevil-execute-in-normal-state
(thanks to tuhdo) - Make
evil-smart-*
functions respect the leader key (thanks to person808) - Advice
evil-jump-to-var
withevil-set-jump
(thanks to luxbock) - Temporary hack to speed up
ace-jump-line
(SPC l
) as an evil motion.
Auctex
- Add
RefTeX
package (thanks to rpglover64) - Add
flycheck
support build-view
always recompile TeX (thanks to kvelicka)
Auto-completion
-
New variables:
auto-completion-return-key-behavior
set the action to perform when theRET
key is pressed, the possible values arecomplete
andnil
.auto-completion-tab-key-behavior
set the action to perform when theTAB
key is pressed, the possible values arecomplete
,cycle
andnil
auto-completion-complete-with-key-sequence
is a string of two characters denoting a key sequence that will perform acomplete
action if the sequence has been entered quickly enough. If its value isnil
then the feature is disabled.- Default values are
RET
->complete
,TAB
->cycle
and sequence isnil
- Rename
auto-completion-enable-company-help-tooltip
toauto-completion-enable-help-tooltip
- Add support for
company-statistics
, to activate it set the layer variableauto-completion-enable-sort-by-usage
tot
(thanks to person808) - Add
auto-yasnippet
package onSPC i S
(thanks to tuhdo) - Disable
company-tooltip-flip
(thanks to tuhdo) - Allow a snippet to wrap around a selected region when expanded,
press
C-x C-x
to go to the original mark and runyas-expand
to wrap the selected region in expanded snippet. (thanks to tuhdo) - Allow
hippie-expand
to expand snippets (thanks to tuhdo) - Remove
company-yasnippet
backends useSPC i s
andC-p
- Fix
company
andfci-mode
incompatibility (thanks to tuhdo) - Fix wrong creation location for new snippets with
yas-new-snippet
(thanks to CestDiego) SPC t a
now correctly togglecompany
by default.- Remove unneeded
yasnippet-snippets
submodule (thanks mkcode) - Better lazy-loading of
yasnippet
(thanks to tuhdo)
Autohotkey
- Use MELPA package (thanks to ralesi)
C/C++
- New layer variable
c-c++-enable-clang-support
- New layer variable
c-c++-default-mode-for-headers
(thanks to ceales) - Remove unnecessary
auto-mode-alist
(thanks ceales) - Add
clang-format
support (thanks to gnzlbg)
Chrome
- Add better integration with edit-server package (thanks to CestDiego)
- Added Gmail messages support with
ham
mode (thanks to CestDiego)
Clojure
- Add binding to connect to REPL in Cider on
SPC m s c
(thanks to jcsims) - Add
SPC m t a
to reload test namespace before running all tests (thanks to voxdolo) - Add
SPC m t r
to reload test namespace and re-run failed tests (thanks to voxdolo) - Add
SPC m t t
to reload test namespace and run focused test (thanks to voxdolo)
Colors
- Add
rainbow identifiers
color profiles forgotham
andmaterial
themes. - Add colorization of keywords and function names for
rainbow identifiers
. - New variable
colors-theme-identifiers-sat&light
to set default lightness and saturation for a given theme.
Emacs-lisp
- Move
SPC m f
bindings for code formatting toSPC m =
- Add
macrostep
package with a micro-state onSPC m d m
(thanks to person808)
Erc
- Add ERC channels to mode-line (thanks to swaroopch)
- Add
SPC a i i
key binding to switch to active ERC channels (thanks to swaroopch) - Highlight nicks using
erc-hl-nicks
(thanks to CestDiego) - Image inline support using
erc-image
(thanks to CestDiego) - Logging to ~/.emacs.d/.cache/erc-logs (thanks to CestDiego)
ViewLogMode
for viewing logs (thanks to CestDiego)- YouTube videos Thumbnails inline using
erc-yt
(thanks to CestDiego) - Social Graph for ERC messages using
erc-social-graph
(thanks to CestDiego)
ESS
- Fix lazy-loading of packages (thanks to jcpetkovich)
- Update to take care of the merge of
company-ess
iness
(thanks to jcpetkovich)
Extra-langs
- Add
matlab
package (thanks to TheBB)
Git
- Make
git-gutter
key bindings work with or without the fringe (thanks to person808) - Fix
git-gutter
andlinum-mode
integration (thanks to person808) - Fix
s
key binding to stage item in visual state. - Replace
with-eval-after-load
byeval-after-load
(compatible with 24.3) (thanks to person808) - Disable
evil-snipe
inmagit-status-mode
(thanks to person808) - Enable
fci-mode
(fill column) ingit-commit-mode
(thanks to tuhdo) - Add
helm-gitignore
package onSPC g I
(thanks to jupl)
Gtags
- Add
helm-gtags-dwim-other-window
onSPC m g G
(thanks to mijoharas)
Haskell
- ensure
haskell-indentation
is loaded before calling members (thanks to chrisbarrett) - fix misspelled references to keymaps (thanks to chrisbarrett)
- fix function names
identation
instead ofindentation
(thanks to chrisbarrett) - Fix
haskell-indentation
eval-after-load
(thanks to chrisbarrett) - Fix
ghci-ng
key bindings being overridden (thanks to bjarkevad) - Use new package
haskell-snippets
- Use
ghci-ng
for functionhaskell-process-do-type-on-prev-line
(thanks to bjarkevad)
Html
- Improve
web
micro-state key bindings (thanks to CestDiego) emmet
key bindings fixes (thanks to louy2 and mkcode)- Use only
smartparens
inweb-mode
(thanks to louy2 and mkcode) - Add
eco
toweb-mode
auto-mode-alist
(thanks to louy2 and mkcode) - Fix buggy
T
key withemmet
- Add
company-web
package (thanks to CestDiego) - Add a bunch of new pairs to
sp-local-pair
(thanks to CestDiego) - Turn on
rainbow-delimiters
forLESS
andSCSS
(thanks to jupl)
Javascript
- Add
js-doc
package (thanks to geksilla) - Add
web-beautify
package onSPC m =
(thanks to elliotec) - Apply key bindings conventions to some
tern
key bindings.
Lua
- Add support for auto-completion (thanks to mijoharas)
Markdown
- Add a bunch of new key bindings to improve consistency of key bindings for markup languages, see commit (thanks to cpaulik)
- Add markdown render buffer command on
SPC m c r
(thanks to CarlQLange) - Add
SPC m i k
to insert<kbd>...</kbd>
pairs (thanks to CestDiego)
Ocaml
- Add REPL using
utop
(thanks to edwintorok) - Auto-indentation using
ocp-indent
(thanks to edwintorok) - Add support for
company
auto-completion (thanks to edwintorok) - Add support for
flycheck
syntax checking (thanks to edwintorok) - New
merlin
key bindings (thanks to edwintorok)
Org
- Add a bunch of new key bindings to improve consistency of key bindings for markup languages, see commit (thanks to cpaulik)
- Use
org-startup-indented
instead of a hook so users can easily removeorg-indent-mode
(thanks to darkfeline) - Add support for
org-pomodoro-clock
to mode-line (thanks to swaroopch) - Add
org-present
package (thanks to swaroopch) - Add
SPC m j
forhelm-org-in-buffer-headings
(thanks to swaroopch) - Add
SPC m n
fororg-narrow-to-subtree
(thanks to mattly) - Add
SPC m N
forwiden
(thanks to mattly) - Add
SPC m i k
to insert<kbd>...</kbd>
pairs (thanks to CestDiego) - Add
htmlize
package to enable syntax highlight in export HTML (thanks to tetsusoh) - Fix error with
org-async
(thanks to justbur)
Osx
- Make
Command-s
work with other modes (thanks to linktohack) - Make
dired
usecoreutils gls
if installed (thanks to usharf)
Perforce
- Add a bunch of key bindings see commit (thanks to snandan)
Puppet
- Add
auto-completion
support (thanks to PierreR)
Python
- Add YAPF extension for buffer formatting (thanks to kennethlove)
nose.el
is now compatible withvirtualenv
(thanks to danielwuz)- Add a function to remove unused imports
python-remove-unused-imports
onSPC m c i
(thanks to danielwuz) - Add
pip-requirement
package (thanks to CestDiego) - Enable
company
in Python REPL for code completion (thanks to tuhdo) - Fix wrong extra parenthesis when inserting a breakpoint (thanks to CestDiego)
- Don't enable Vim key bindings in REPL if
holy-mode
is active (thanks to tuhdo) - Fix Python and Semantic integration when no
python
executable can be found on the system (thanks to tuhdo)
Rcirc
- Add
rcirc-track-minor-mode
to thercirc-mode-hooks
(thanks to luxbock)
Ruby
- Fix
ruby-test-mode
initialization - Fix auto-completion (thanks to trishume)
- Fix Rails mappings showing up in non rails projects (thanks to horrorvacui)
- Add
:A
ex-command which switches between implementation and test (thanks to naliwajek) - Remove overloading of function
erm-darken-color
Rust
- Add key bindings for cargo build, run, test (thanks to swaroopch)
Scala
- Add
SPC m d A
to attach to remote debugger (thanks to siegelzero)
Semantic
- Create directory for
semanticdb
if it doesn't exist (thanks to CestDiego)
Shell
- Use
shell-pop
to toggle shell/eshell and terminals (thanks to tuhdo) - Add binding for EOF (^D) in
term
(thanks to darkfeline) - Bind
term-send-tab
only in insert state (thanks to darkfeline) up
anddown
in shell to cycle through previous commands (thanks to ralesi)- Fix for
paste
command inmulti-term
. - Add
SPC p $ t
to runmulti-term
at project root
Slime
- Disable
smartparens
in SLIME REPL (thanks to tuhdo)
Smex
- Fix
smex
prompt whitespace (thanks to TheBB)
Syntax-checking
- New variable
syntax-checking-flycheck-pos-tip
to enable or disable documentation popup (thanks to beardedprojamz)
Themes
- Add
apropospriate-theme
to megapack - Add
jazz-theme
to megapack (thanks to matDobek) - Fix theme-to-package rules for
base16
(thanks to mkaito)
Tmux
- Add support for motion state (thanks to rphillips)
Vim-empty-lines
- Update with last patches (thanks to person808)
- Exclude terminal modes (thanks to tonylotts)
Ycmd
- Move C/C++ related configuration to
c-c++
layer.
Core
- Add support for
use-package
injected hooks (not yet documented) - It is now possible to create a layer directly in a known configuration layer path. A helm buffer will ask for a known path or a new path (thanks to justbur)
- The
:variables
keyword now behaves like regularsetq
. - Add org elpa repository
- Use
archive
instead ofpackage-alist
to detect orphans (fix false orphan positives when the dependencies of a package change) - Improve support for images in Spacemacs banner, it is now possible to use any image format supported by Emacs (thanks to jupl)
- Prefix all category folders in
contrib
with!
(thanks to trishume) - Smarter buffer switching which tries to avoid special buffers, you can
customize
spacemacs-useless-buffers-regexp
to define other buffers to avoid (thanks to person808) - Warn about duplicated layers
- Improvements to home buffer: Quick Help, Content toggles, link faces, better key bindings (thanks to tuhdo)
dotspacemacs/location
now respectdotspacemacs-filepath
value (thanks to coldnew)- Avoid conflict with hydra's
lv.el
(thanks to edwintorok) - Update layer templates to use
setq
instead ofdefvar
(thanks to person808)
Other fixes
- Replace
defvar
withsetq
for variable definition<layer>-packages
,<layer>-pre-extensions
and<layer>-pre-extensions
. - Themes in
dotspacemacs-themes
are not considered orphans anymore - Fix "Unable to check for new version." if
.emacs.d
is a symlink (thanks to louy2) - Fix non unicode number spacing in mode-line
- Typos (thanks to Andrea, atamis, CarlQLange, charl, ctjhoa, Devagamster, dguilak, edwintorok, fhzerorubigd, jackwilsonv, jupl, kini, latkins, MadAnd, mlsteel, mosic, person808, skwuent, srid, swaroopch and zimbatm)
Release 0.101.x
Hot new features
Choose your own editing style
Thanks to the new holy-mode
Spacemacs can now be used by Vim users
or Emacs users by setting the dotspacemacs-editing-style
variable to
'vim
or 'emacs
in the dotfile. In Emacs
style the leader is
available on M-m
. It is possible to dynamically switch between the
two style with SPC P tab
.
Mandatory init function and new Pre and Post init functions
A package is now considered to be used only if there is a corresponding
<layer>/init-<package>
function explicitly defined.
There is now two new functions to initialize a given package:
<layer>/pre-init-<package>
which is called before the init function<layer>/post-init-<package>
which is called after the init function Even if apre
orpost
function exist for a given package, aninit
function is still required to consider the package to be used.
Auto-completion
Spacemacs now officially support auto-completion. The old layer
company-mode
has been removed and auto-complete
has been removed
from the spacemacs layer.
They are now part of a new layer called auto-completion
.
You'll have to this add layer to your dotfile to enable auto-completion.
Syntax checking
Flycheck has been removed from the Spacemacs layer and moved to a new
layer called syntax-checking
.
You'll have to add this layer to your dotfile to enable the fly syntax
checking.
Org
Org packages have been removed from Spacemacs layer and moved to a new
org
layer.
You'll have to add this layer to your dotfile to enable the Org
configuration of Spacemacs.
New shortcuts in startup buffer
Recent files, project and bookmarks can be displayed on the startup
buffer. Check for the new dotfile variable dotspacemacs-startup-lists
.
(thanks to CarlQLange)
New lighter in the mode line
Lighter letters have been updated, now the letter corresponds to the
key binding to toggle the associated mode. For instance auto-completion
is on ⓐ and thus can be toggled with SPC t a
.
Better package update
The package update should now prevent even more errors when upgrading a batch of packages.
Initial Release (2015/04/13)
New layers
- evil-commentary: Alternative to
evil-nerd-commenter
(thanks to person808) - better-defaults: layer providing better defaults for Emacs commands, rather empty for now. (thanks to tuhdo)
- ERC: an IRC client (thanks to swaroopch)
- Racket: a lisp dialect (thanks to trishume)
- xkcd: browse for XKCD in Emacs (thanks to CestDiego)
- shell-scripts: layer containing shell specific modes like
fish-mode
- editorconfig: add support for EditorConfig (thanks to jupl)
New dotfile variables:
dotspacemacs-editing-style
can be eithervim
oremacs
.dotspacemacs-verbose-loading
if non nil the loading prints logs in the*Messages*
buffer. Default value isnil
.dotspacemacs-startup-lists
is a list of symbols to display recent items in the startup buffer, possible values are:recents
,bookmarks
andprojects
(thanks to CarlQLange)
Auto-complete
- Move to
auto-completion
layer
C/C++
- Add key bindings
SPC m g a
andSPC m g A
for open alternate file (thanks to mijoharas)
Clojure
- Add
SPC m e f
eval function at point - Add
cider-eval-sexp-fu
- Fix for
cider-send-function-to-repl
(thanks to nashamri) - Replace
auto-complete
bycompany
for auto-completion - Move
SPC d
commands onSPC h
to meet Spacemacs conventions (thanks to cpaulik) - Open
cider-doc
without asking for symbol, close it withq
(thanks to cpaulik)
Company
- Move to
auto-completion
layer - Refactoring of
company
configuration, it is now lazy-loaded and thecompany-backends
list is now a buffer local variable.company
is not enabled globally anymore. - Set
company-delay
to 0.2 instead of 0 - Ignore
company-quickhelp
for Emacs version < 24.4 - Add support for
company
in various languages (thanks to trishume)
Emacs Lisp
- Add
eval-sexp-fu
(thanks to tuhdo) - Enable eldoc in eval-expression and IELM (thanks to tuhdo)
- New key bindings
SPC m e b
,SPC m e c
andSPC m e r
to evaluate the buffer, the current form starting byset
ordef
and the region respectively (thanks to ralesi)
Ess
- Fix loading of
ess-R-object-popup
andess-R-data-view
(thanks to jcpetkovich)
Extra-Lang layer
- Add
Nim
language (thanks to trishume)
Flycheck
- Move to
syntax-checking
layer - Add
flycheck-pos-tip
(thanks to tuhdo) - Enable flycheck for
lua
files (thanks rphillips)
Git
- Add
gitconfig-mode
andgit-commit-mode
(thanks to ralesi) - Add
gitattributes-mode
andgitignore-mode
(thanks to r4ts0n) - Add key bindings in rebase mode
- Add
git-link
package (thanks to CestDiego) - Enable Magit authentication on Windows (thanks to tuhdo)
- Loads
magit-gh-pulls
only after requesting it (thanks to cpaulik)
Go
- Add
run-package-tests
command onSPC m t p
(thanks to robmerrell) - Fix path to
go-oracle
(thanks to Pursuit92)
Haskell
- Move
SPC m t
andSPC m i
underSPC m h
- Remove
hi2
(it is now integrated inhaskell-mode
) - Disable
eletric-indent-mode
- Fix
flycheck-haskell
autoload (thanks to jcpetkovich) - Fix
flycheck
loading - Move
SPC m t
toSPC m h t
according to Spacemacs conventions (thanks to jeremyjh) - Add C–
cmm-mode
(thanks to bgamari)
Helm
- Add
helm-colors
key binding onSPC C l
(thanks to tuhdo) - Make
helm-ff-doted-directory
consistent (thanks to tuhdo) - Disable popwin-mode when a Helm session is active (thanks to tuhdo)
- Fix lazy-loading of helm for describe commands
- Add support for
pt
the platinum searcher (thanks to ralesi) - Add support for
helm-ag-edit
- Add function
spacemacs/helm-projectile-search-dwim
which select the first available external search tool (pt, ag, ack or grep) (thanks to ralesi) - Enable
helm-descbinds
globally (thanks to tuhdo) - Add key bindings for useful Helm commands:
helm-info-at-point
,helm-man-woman
,helm-locate-library
andhelm-minibuffer-history
(thanks to tuhdo) - Add key bindings for searching the web using
helm-suggest
(thanks to cpaulik)
Holy-mode
- New package providing Emacs edition style to Spacemacs
IRC
- rcirc: Create rcirc logging directory during init (thanks to jcpetkovich)
- New ERC layer (thanks to swaroopch)
- Add ERC key bindings (thans to cpaulik)
- Move startup key bindings to prefix
SPC a i
Markdown
- Associate
.mkd
withmarkdown-mode
(thanks to bgamari)
Org
- Move to
org
layer - Bind evil-leader in org-agenda-map (thanks to luxbock)
- Add
org-pomodoro
onSPC m p
(thanks to swaroopch) - Add key bindings for
org-clock-cancel
onSPC m q
, andorg-set-effort
onSPC m f
(thanks to swaroopch) - Fix diminish of
org-indent
Perspective
- Rebind
spacemacs/persp-switch-project
toSPC p p
(thanks to CestDiego)
Projectile
- Move projectile switch project from
SPC p S
toSPC p p
Python
- Add helm-pydoc on
SPC m h d
(thanks to danielwuz) - Fix
pylookup
configuration
Racket
- Add key bindings for REPL interaction
Ruby
- Lazy-load
projectile-rails
- Remove mode-line lighter for
robe
Scala
- Do not enable ensime in non-file buffers (thanks to chrisbarrett)
SLIME
- Use slime for indentation (thanks to tuhdo)
- Add extension for SBCL (thanks to tuhdo)
- Allow to create a common lisp scratch buffer with slime-scratch (thanks to tuhdo)
- Enable fuzzy completion with score (thanks to tuhdo)
- Don't enable SLIME in Emacs Lisp (thanks to tuhdo)
Smartparens
- Enable smartparens in eval-expression (thanks to tuhdo)
Themes
- Fix
themes-megapack
layer where themes could not be browsed in Helm. - Add
material
theme (thanks to cpaulik) - Add
darktooth
theme (thanks to person808) - Add
gotham
theme (thanks to person808)
ycmd
- Set global config only if not already set (thanks naseer)
Web
- Add
sass-mode
(thanks to ryanartecona) - Ensure that less gets loaded (thanks to mijoharas)
Various Improvements and Changes
- New
evil
state calledevilified
which is used in evilified buffers. - Remove the following packages from Spacemacs layer:
dired+
,fancy-narrow
,string-edit
,visual-regexp-steroids
andwdired
- Rename
*-declarep
functions to*-usedp
functions - Display block selection info in the mode line (thanks to emmanueltouzery)
- Bind
K
in normal state toSPC m h h
if it exists (thanks to person808) - Add key binding for balancing windows on
SPC w =
(thanks to kini) - Add key binding to indent region on
SPC j =
(thanks to tuhdo) - Add key binding
SPC w SPC
forace-window
(thanks to ralesi) - Add key binding
SPC b h
to open the startup buffer (thanks to ralesi) - Add key binding
SPC t ~
to toggle Vim tildes - Add adaptive wrap which appropriately indents wrapped lines (thanks to person808)
-
Add mouse support to line number column (thanks to ralesi)
- single click selects line
- double click selects text block
- drag across lines selects all lines dragged across
- Add
highlight-numbers
(thanks to tuhdo) - Add
highlight-indentation
onSPC t h i
andSPC t h c
(thanks to cpaulik) - Add ace-link package to spacemacs layer (thanks to danielwuz)
- Add
indent-guide
onSPC t i
(thanks to ralesi) - Add link to cpaulik tutorial to use the Spacemacs icons in Ubuntu Unity
- Add C-w and brackets [] to guide-key-sequence (thanks to ralesi)
- Add
info+
to improve Info reading experience (thanks to tuhdo) - Add default layers to dotfile template:
auto-completion
,better-defaults
,git
,markdown
,org
andsyntax-checking
(thanks to CarlQLange) - Move some toggles on
SPC T
: fringe, menu bar, tool bar, frame maximize, frame fullscreen, frame transparency - Restore rectangle-mark-mode key binding (thanks to tuhdo)
- Make <escape> quit the isearch-mode like vim (thanks to dsdshcym)
- Enable goto-address-prog-mode which makes URL in code comments clickable (thanks to tuhdo)
- Disable aggressive indent for ediff buffers (thanks chrisbarrett)
- Prevent cursor from moving into minibuffer prompt (thanks to tuhdo)
- Remove tildes in Spacemacs buffer and read-only buffers like Info and help (thanks to tuhdo)
- Ask user editing style when creating .spacemacs file (thanks to tuhdo)
- Fix for persistent-server if server never got started (thanks to ralesi)
- Fix nyan cat starting rainbow on a light background
- Fix some double loading of some packages
- Fix double loading of
extensions.el
files - Fix question for preferred coding systems on Microsoft Windows
- Properly enable saveplace (thanks to tuhdo)
- Don't bind
C-d
inido-completion-map
toido-delete-file-at-head
(thanks to segv) - Don't refer to ~/.emacs.d/ directly at various places (thanks to jcpetkovich)
- Don't want paste-micro-state to pop up when pasting in ex command prompt (thanks to ralesi)
- Don't cycle when press TAB in eshell (thanks to tuhdo)
- Don't insert extra quote in dotspacemacs-mode (thanks to tuhdo)
- Adapt some micro-states to the micro-state macro (thanks to ralesi)
- Improve smooth scrolling configuration (reduce some point jump) (thanks to tuhdo)
- Improve
doge
banner grammar (thanks to mathpunk) - New
HOTOWs.md
file in/doc
- Add
Buy A Drink
badge to README.md - Typo and documentation updates (thanks to danielwuz, swaroopch, CestDiego, IvanMalison, agevelt, nwolfe)
Hot Fixes
Startup Buffer
- Don't display the release notes in the startup buffer when Emacs is restarted after a fresh install
- Startup buffer: fix widget activation in
holy-mode
(thanks to tuhdo) - Startup buffer: Don't fontify the startup buffer when
rainbow-identifiers
Auto-completion
- Fix error when toggling auto-completion in some buffers
Haskell
- Add new
haskell-snippets
package (fixes error with requiredhaskell-yas
) - Fix missing quote in
haskell-indentation
Org
- Org layer: exclude ox-gfm since it seems problematic for some users. package is used
Ruby
- Fix auto-completion activation.
Themes
- Fix conflict between official Spacemacs solarized theme and
color-theme-solarized
declared inthemes-megapack
layer. - Add rules for all base16 themes (thanks to mkaito)
Various Fixes
- revert back
ag
as the default search tool instead ofpt
,pt
can conflict withpt
command line tool from TCL parser tools.
Previous Releases
- See Github release page