Releases: syl20bnr/spacemacs
Releases · syl20bnr/spacemacs
Version 0.200.3
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
company-mode/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
(thansk 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 " 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)
Version 0.200.2
Version 0.200.1
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)
Version 0.200.0
- 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
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 redundent 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-filetered-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
- 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)
- 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
+config-files
(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:disalbed-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 addtional variables to modify the behavior of the editing syle. This new keyword is useful for...
Version 0.105.22
Version 0.105.21
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)
Version 0.105.20
Version 0.105.19
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 to
ensime-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)
Version 0.105.18
- 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)
Version 0.105.17
- Hotfix for Yasnippet, using stable version until resolution of joaotavora/yasnippet#673