#+COMMENT -*- mode: org -*-
This file containes the change log for the next major version of Spacemacs.
Use the following template structure and fill it in with your changes. When a release will be drafted, the notes will be copied at the top of the CHANGELOG.org file.
* Release 0.400.x ** 0.400.0 *** Breaking Changes **** Major **** Key bindings **** Layers ***** Layer 1 ***** Layer 2 ***** Layer 3 *** Hot new features *** Dotfile changes *** Core changes *** Distribution changes *** Layers **** New layers **** Layer 1 **** Layer 2 **** Layer 3 *** Various improvements **** Code syle and organization **** Documentation and website **** Testing and CI
- Extensive use of lazy loading of packages and other tricks to reduce Spacemacs
startup time. In most cases you should see a noticable improvement in load time
and smoothness in startup. We also added the time spent to load your personal
dotspacemacs/user-config
so you can quickly spot if it is a bottleneck (thanks to Sylvain Benner, Ben Leggett, and bmag) - Added support for native line numbers in Emacs 26+ (thanks to bmag)
- Improved themes support. Support are now handled like regular packages. The
list of themes now supports
:location
keyword like in package lists. More information in theThemes
section of the documentation. - Added environment-variable caching. At startup, if the cache does not exist,
Spacemacs loads environment variables using
exec-path-from-shell
and writes the cache to be used on next startup. Please read carefully the new documentation sectionEnvironment variables and PATH
inDOCUMENTATION.org
(thanks to Sylvain Benner, Codruț Constantin Gușoi, and Paolo G. Giarrusso) - Improved support of custom settings file. All custom settings are now
encapsulated in a function called
dotspacemacs/emacs-custom-settings
in the dotfile if the user does not specify a custom location for the custom settings file by modifying the variablecustom-file
. This allows Spacemacs to correctly loads custom settings at the end of the loading process, fixing unwanted overriden custom settings by layers. See sectionCustom variables
inDOCUMENTATION.org
. - Introduction of
spacemacs-purpose
layer in charge of handling Emacs windows assignation for actions opening new buffers. This layer brings more consistency to windows creation by giving them a purpose (i.e.edit
,help
, etc…). See emacs-purpose repository for more info. (thanks to bmag) - New distribution
spacemacs-docker
used to build the official docker image for the Spacemacs container (thanks to Eugene Yaremenko) - Added support for
ripgrep
. To enable it addrg
todotspacemacs-search-tools
.ripgrep
key bindings are underSPC s r
prefix. (thanks to Aron Griffis) - Simplify declaration of company backends, see the section
Add auto-completion in a layer
of theREADME.org
file of theauto-completion
layer. - Added experimental support for the emacs portable dumper; see
EXPERIMENTAL.org
. This allows for instant Spacemacs startup time with pre-loaded heavy packages likeOrg
andHelm
(thanks to Sylvain Benner, Compro Prasad and Keith Simmons)
- Support for Emacs 24 has been dropped, the minimal Emacs version is now
25.1
.
- Change loading order of layers init functions. Previously the
pre-init
,init
andpost-init
function were called in a row for each package. Now allpre-init
functions are called for all packages, then allinit
functions of all packages are called, finally allpost-init
functions of all packages are called. It might require some updates of your private layers. - All custom settings are now encapsulated in a function called
dotspacemacs/emacs-custom-settings
which is managed by Spacemacs and written to your dotfile. This allows Spacemacs to control when those settings are applied. While it should not break your custom settings you should check that they are all applied correctly once you reboot Emacs. Also you may have to clean up your dotfile if some custom settings are still present in your dotfile outside of the functiondotspacemacs/emacs-custom-settings
. - Company backends declaration has been revamped to be less verbose and easier
to use. For more info see the section
Add auto-completion in a layer
of the README.org file of theauto-completion
layer, also you can read commit message of commit 74fdbb6. - The function
add-flycheck-hook
has been renamed toenable-flycheck
. - The property
:powerline-scale
of variabledotspacemacs-default-font
has been removed and replaced by the property:separator-scale
used in the new dotfile variabledotspacemacs-mode-line-theme
.
- Key bindings:
- Changed
SPC b B
toSPC b I
foribuffer
(thanks to Thomas de Beauchêne) - Changed
SPC B b
toSPC b B
for non restricted buffer list (thanks to Thomas de Beauchêne) SPC b m
now opens the*Messages*
buffer. The oldSPC b m
to kill other buffers has been moved toSPC b C-d
. Killing other buffers using a regular expression is now underSPC b C-D
.- Changed
SPC f T
toSPC 0
forneotree-show
/treemacs-select-window
(thanks to Dela Anthonio) - Changed
SPC j j
fromevil-avy-goto-char
toevil-avy-goto-char-timer
, and removed default binding forevil-avy-goto-char-2
(thanks to duianto and Sylvain Benner) - Scrolling key bindings are now under
SPC N
instead ofSPC n
to be able to define more key bindings to scroll. SPC q z
is nowSPC q f
to kill a frame.- Remove
SPC T N
and makeSPC T n
cycle and start the theme transient state (thanks to Sylvain Benner)
- Changed
- Other:
- Support for multiple cursors using
evil-mc
is now encapsulated in themultiple-cursors
layer (thanks to Codruț Constantin Gușoi)
- Support for multiple cursors using
- CMake support has been extracted from the
c-c++
layer into the newcmake
layer.
- ESS key bindings were re-organised in the following list
(thanks to Guido Kraemer, Yi Liu, and Jack Kamm):
SPC m ,
foress-eval-region-or-function-or-paragraph-and-step
SPC m d
foress-dev-map
SPC m h h
foress-display-help-on-object
SPC m h p
foress-R-dv-pprint
SPC m h t
foress-R-dv-ctable
SPC m r
foress-extra-map
SPC m s B
foress-eval-buffer-and-go
SPC m s D
foress-eval-function-or-paragraph-and-step
SPC m s F
foress-eval-function-and-go
SPC m s L
foress-eval-line-and-go
SPC m s R
foress-eval-region-and-go
SPC m s S
foress-switch-process
SPC m s b
foress-eval-buffer
SPC m s d
foress-eval-region-or-line-and-step
SPC m s f
foress-eval-function
SPC m s i
forspacemacs/ess-start-repl
SPC m s l
foress-eval-line
SPC m s r
foress-eval-region
SPC m s s
foress-switch-to-inferior-or-script-buffer
SPC m w
foress-r-package-dev-map
- Key bindings;
- Changed
SPC m p t
toSPC m t F
foralchemist-project-find-test
(thanks to Lyuben Petrov)
- Changed
- Improvements:
- Adapted configuration to new transient commands of Magit (thanks to bmag)
- Key bindings;
- Changed
SPC g f h
toSPC g f l
for ‘git log’ of current file (thanks to Ag Ibragimov)
- Changed
- Key bindings;
- Regenerate tags are now under
SPC m g C
instead ofSPC m g c
.
- Regenerate tags are now under
- Key bindings;
- Swapped key bindings for better usability (thanks to Tony Lotts):
SPC m s s
forhaskell-interactive-switch
SPC m s S
forspacemacs/haskell-interactive-bring
- Swapped key bindings for better usability (thanks to Tony Lotts):
- Key bindings;
- Change prefix from
SPC a i
toSPC a y
(thanks to Swaroop C H)
- Change prefix from
- CoffeeScript support has been extracted from the
javascript
layer into the newcoffeescript
layer. - Added missing prefix for
js2-mode
- Key bindings:
- Removed
SPC m i I
formarkdown-insert-reference-image
(folded intoSPC m i i
) - Removed
SPC m i L
formarkdown-insert-reference-link-dwim
(folded intoSPC m i l
)
- Removed
- The
nlinum
layer is deprecated on Emacs 26.1 and newer in favor of native line number support (thanks to bmag)
Org key bindings were all over the place and we needed to reorganize them in a sane way, here is the complete list of changed key bindings (thanks to Sylvain Benner and Paweł Siudak):
- New prefixes:
SPC C
clocksSPC d
datesSPC m T
togglesSPC m b
org-babel commandsSPC m i D
downloadSPC m s
trees/subtrees
- Changed key bindings:
SPC m A
org-attachSPC m C I
org-clock-in-lastSPC m C R
org-clock-reportSPC m C c
org-agenda-clock-cancelSPC m C c
org-clock-cancelSPC m C d
org-clock-displaySPC m C e
org-evaluate-time-rangeSPC m C g
org-clock-gotoSPC m C i
org-agenda-clock-inSPC m C i
org-clock-inSPC m C j
org-clock-jump-to-current-clockSPC m C o
org-agenda-clock-outSPC m C o
org-clock-outSPC m C p
org-pomodoroSPC m C r
org-resolve-clocksSPC m T V
space-doc-modeSPC m T i
org-toggle-inline-imagesSPC m T t
org-show-todo-treeSPC m T x
org-toggle-latex-fragmentSPC m d T
org-time-stamp-inactiveSPC m d d
org-agenda-deadlineSPC m d d
org-deadlineSPC m d s
org-agenda-scheduleSPC m d s
org-scheduleSPC m d t
org-time-stampSPC m e m
org-mime-org-buffer-htmlizeSPC m i D s
org-download-screenshotSPC m i D y
org-download-yankSPC m i H
org-insert-heading-after-currentSPC m i K
spacemacs/insert-keybinding-orgSPC m i d
org-insert-drawerSPC m i e
org-agenda-set-effortSPC m i e
org-set-effortSPC m i h
org-insert-headingSPC m i l
org-insert-linkSPC m i n
org-add-note (thanks to Tommi Komulainen)SPC m i p
org-agenda-set-propertySPC m i p
org-set-propertySPC m i s
org-insert-subheadingSPC m i t
org-agenda-set-tagsSPC m i t
org-set-tagsSPC m p
org-prioritySPC m s A
org-archive-subtreeSPC m s N
widenSPC m s S
org-sortSPC m s b
org-tree-to-indirect-bufferSPC m s h
org-promote-subtreeSPC m s j
org-move-subtree-downSPC m s k
org-move-subtree-upSPC m s l
org-demote-subtreeSPC m s n
org-narrow-to-subtreeSPC m s r
org-agenda-refileSPC m s r
org-refileSPC m s s
org-sparse-treeSPC m x o
org-open-at-point
- Removed
C-h
binding inorg-agenda-mode
(thanks to Ag Ibragimov) - Rebind
org-agenda-refile
tor
in transient state (thanks to Muneeb Shaikh) - Moved
org-trello
keys fromSPC m o
toSPC m m t
(thanks to Magnus Therning) - New keybindings for push and pull (thanks to Magnus Therning):
SPC m t d b
forspacemacs/org-trello-pull-buffer
SPC m t d c
forspacemacs/org-trello-pull-card
SPC m t u b
forspacemacs/org-trello-push-buffer
SPC m t u c
forspacemacs/org-trello-push-card
- Key bindings (thanks to Danny Freeman):
- Changed
SPC m s F
toSPC m e F
forlisp-eval-defun-and-go
- Changed
SPC m s R
toSPC m e R
forlisp-eval-region-and-go
- Changed
SPC m s e
toSPC m e e
forlisp-eval-last-sexp
- Changed
SPC m s f
toSPC m e f
forlisp-eval-defun
- Changed
SPC m s r
toSPC m e r
forlisp-eval-region
- Changed
- Hy support has been extracted from the
python
layer into the newhy
layer. - Made
nose
fail compilation when tests fail (thanks to wizmer)
- Key bindings:
- Changed
SPC m h d
toSPC m h h
forrobe-doc
(thanks to Paweł Siudak)
- Changed
- Key bindings:
- New
SPC m r f S
to find serializer (thanks to Boris Buliga) - Changed
projectile-rails
key binding prefix fromSPC m r
toSPC m f
to avoid conflicts with key bindings in theweb-mode
layer (thanks to Adam Sokolnicki)
- New
shaders
layer has been moved togpu
layer.
- Key bindings (thanks to Loris Lucido):
- Key binding
SPC e e
is now for triggering a syntax check, the old action (explain error around point) has been moved toSPC e x
. - Move major specific error key bindings to
SPC m E
prefix (thanks to Sylvain Benner) - Changed
SPC e e
toSPC e b
forflycheck-buffer
- Key binding
- Key bindings:
- Vagrant key bindings prefix is now
SPC a V
.
- Vagrant key bindings prefix is now
- notmuch (thanks to Francesc Elies Henar, Leonard Lausen, Willian Casarin, Kalle Lindqvist)
- unicode-fonts (thanks to Aaron Jensen)
- coffeescript (thanks to Sylvain Benner)
- coq (thanks to Xuan Bi, Jeremy Bi and Langston Barret)
- crystal (thanks to Sylvain Benner)
- dart (thanks to Bruno Tavares)
- dhall (thanks to Colin Woodbury)
- ietf (thanks to Christian Hopps and Robby O’Connor)
- factor (thanks to timor)
- forth (thanks to Tim Jaeger)
- gpu (thanks to Evan Klitzke)
- groovy (thanks to Sylvain Benner)
- hy (thanks to Sylvain Benner and yuhan0)
- jr (thanks to Philippe Baron)
- json (thanks to Sylvain Benner, Boris Buliga and Tommi Komulainen)
- jsonnet (thanks to liztio and Robby O’Connor)
- julia (thanks to Adam Beckmeyer and Guido Kraemer)
- kotlin (thanks to Shanavas M)
- pact (thanks to Colin Woodbury)
- perl5 (thanks to Troy Hinckley, Jinseop Kim and Michael Rohleder)
- perl6 (thanks to Bahtiar Gadimov and yuhan0)
- prolog (thanks to Newres Al Haider)
- protobuf (thanks to Amol Mandhane)
- restructuredtext (thanks to Wei-Wei Guo and Kalle Lindqvist)
- semantic-web (thanks to Andreas Textor)
- yang (thanks to Christian Hopps)
- multiple-cursors (thanks to Codruț Constantin Gușoi and Thomas de Beauchêne)
- confluence
- epub (thanks to Jeremy Dormitzer and André Peric Tavares)
- spacemacs-defaults
- spacemacs-modeline
- spacemacs-navigation
- spacemacs-project
- spacemacs-purpose (thanks to bmag)
- spacemacs-visual
- bm (thanks to Eugene Yaremenko and Binbin Ye)
- cmake (thanks to Alexander Dalshov, Sylvain Benner and Jonas Jelten)
- dap (thanks to Ivan Yonchovski)
- debug (thanks to Hodge Shen, Troy Hinckley, and Sylvain Benner)
- emberjs (thanks to Robert O’Connor)
- import-js (thanks to Thanh Vuong and Seong Yong-ju)
- lsp (thanks to Fangrui Song, 0bl.blwl, Cormac Cannon, Juuso Valkeejärvi, Guan Xipeng, Ivan Yonchovski, Justin Martin, dscole and Sylvain Benner)
- node (thanks to jupl)
- pass (thanks to Andrew Oppenlander, Kepi, Kalle Lindqvist, and Evan Klitzke)
- phoenix (thanks to Lyuben Petrov)
- prettier (thanks to Seong Yong-ju)
- sphinx (thanks to Wei-Wei Guo)
- tern (thanks to Sylvain Benner and Juuso Valkeejärvi)
- transmission (thanks to Eugene Yaremenko)
- web-beautify (thanks to Sylvain Benner and Juuso Valkeejärvi)
- xclipboard (thanks to Charles Weill, Sylvain Benner, and Alex Palaistras)
- copy-as-format (thanks to Ruslan Kamashev)
- japanese (thanks to Kenji Miyazaki)
- multiple-cursors (thanks to Codruț Constantin Gușoi)
- parinfer (thanks to Tianshu Shi)
- templates (thanks to YasuharuIida and Eivind Fonn)
- treemacs (thanks to Alexander Miller, Kalle Lindqvist, duianto, Thomas de Beauchêne, Boris Buliga and Sylvain Benner)
- evil-cleverparens (moved to spacemacs-evil)
- extra-langs (replaced by ad-hoc layers)
- New Variables:
- New dotvariable
dotspacemacs-auto-generate-layout-names
(thanks to bmag) - New dotvariables
dotspacemacs-emacs-pdumper-executable-file
,dotspacemacs-emacs-dumper-dump-file
anddotspacemacs-enable-emacs-pdumper
to configure dump (thanks to Sylvain Benner) - New variable
dotspacemacs-enable-server
(thanks to Tad Fisher) - New variable
dotspacemacs-frame-title-format
which is the efault format string for a frame title bar, see docstring of functionspacemacs/frame-title-prepare
for more info (thanks to Uri Sharf and Kepi) - New variable
dotspacemacs-gc-cons
(thanks to Sylvain Benner) - New variables
dotspacemacs-import-env-vars-from-shell
anddotspacemacs-import-env-vars-shell-file-name
to asynchronously import environment variables (thanks to Sylvain Benner) - New variable
dotspacemacs-initial-scratch-message
for the initial message in the scratch buffer (thanks to Carl Lange) - New variable
dotspacemacs-mode-line-themes
adds support for mode-line themes. Supported themes arespacemacs
,all-the-icons
,vim-powerline
,custom
, andvanilla
. The first three are spaceline themes,custom
is user defined, andvanilla
is the default Emacs mode-line. (thanks to Sylvain Benner and James Wang) - New variable
dotspacemacs-server-socket-dir
for setting the server socker location (thanks to Carl Lange) - New variable
dotspacemacs-switch-to-buffer-prefers-purpose
which controls whereswitch-to-buffer
displays the buffer. If nil,switch-to-buffer
displays the buffer in the current window even if another same-purpose window is available. If non nil,switch-to-buffer
displays the buffer in a same-purpose window even if the buffer can be displayed in the current window. (thanks to bmag) - New variable
dotspacemacs-use-spacelpa
(thanks to Sylvain Benner) - New variable
dotspacemacs-zone-out-when-idle
to zone when idle. Zoning will obfuscate the current buffer acting like a screen saver. (thanks to Eugene Yaremenko and Sylvain Benner)
- New dotvariable
Other:
- Added
vim-style-visual-feedback
andhybrid-style-visual-feedback
style variables to enableevil-goggles
pulse in the Vim and Hybrid editing styles, respectively; disabled by default (thanks to Sylvain Benner) - Renamed style variables for consistency; the old names are still recognized
but deprecated (thanks to Sylvain Benner):
dotspacemacs-remap-Y-to-y$
renamed tovim-style-remap-Y-to-y$
dotspacemacs-retain-visual-state-on-shift
tovim-style-retain-visual-state-on-shift
dotspacemacs-visual-line-move-text
tovim-style-visual-line-move-text
dotspacemacs-ex-substitute-global
tovim-style-ex-substitute-global
hybrid-mode-enable-evilified-state
tohybrid-style-enable-evilified-state
hybrid-mode-enable-hjkl-bindings
tohybrid-style-enable-hjkl-bindings
hybrid-mode-use-evil-search-module
tohybrid-style-use-evil-search-module
hybrid-mode-default-state
tohybrid-style-default-state
- Renamed
helm
variables and made them layer variables; the old dotfile variables are still recognized but deprecated (thanks to Sylvain Benner and Kalle Lindqvist):dotspacemacs-helm-resize
tohelm-enable-auto-resize
, in thespacemacs-completion
layerdotspacemacs-helm-no-header
tohelm-no-header
, in thehelm
layerdotspacemacs-helm-position
tohelm-position
, in thehelm
layerdotspacemacs-helm-use-fuzzy
tohelm-use-fuzzy
, in thespacemacs-completion
layer
- Removed obsolete
:powerline-scale
property fromdotspacemacs-default-font
variable (thanks to Muneeb Shaikh and Sylvain Benner)
- Improvements:
- Display time spent in
user-config
in home buffer (thanks to Sylvain Benner) - Added dotfile function
dotspacemacs/user-load
(thanks to Sylvain Benner) - Added dotfile function
dotspacemacs/user-env
(thanks to Sylvain Benner) - Added layer shadowing system, see commit dc58801 (thanks to Sylvain Benner)
- Added support for stable ELPA repository hosted on GitHub (thanks to Sylvain Benner)
- Added
--no-package-sync
startup flag to prevent package from being installed or uninstalled set the variable (thanks to Valts Liepiņš) - Added
:requires
keyword for package declarations and owned packages (thanks to Eivind Fonn) - Added new interactive function
spacemacs/diminish-undo
to undo all the dimished mode-line lighters and have all of them be displayed in the mode-line. (thanks to hodge) - Conventions: added support for major mode specific toggles on
SPC m T
prefix (thanks to Sylvain Benner) - Conventions: added
SPC m f
for web frameworks (thanks to Sylvain Benner) - Added univeral prefix argument support to open both the
*scratch*
buffer and the*Messages*
buffer in another window (thanks to Thomas de Beauchêne) - Added support for building multi-file local packages with
Quelpa
(thanks to Andriy Kmit’) - Improved handling of additional bindings for transient states (thanks to Andriy Kmit’)
- More robust
dotspacemacs/add-layer
implementation (thanks to Eivind Fonn) - Improved issue reporting (thanks to Eugene Yaremenko)
- Enabled backward theme cycling and added dedicated transient state accesible
with
SPC T n
andSPC T N
(thanks to Adrien Becchis and bmag) - Remove wizard question about completion engine. (thanks to Sylvain Benner)
- Added e key bindings in Quick Help home screen (thanks to Sylvain Benner)
- Increased
gc-cons-threshold
during startup to reduce startup time (thanks to Aaron Jensen) - Wrap init with
file-name-handler-alist nil
to speed up init (thanks to Aaron Jensen) - Changed startup to hide loading message unless
--debug-init
is specified (thanks to Sylvain Benner) - New command line parameter
--force-dump
to force dump emacs (thanks to Sylvain Benner) - Added prompt about unsaved changes when closing an issue report (thanks to timor)
- Added
:off-message
keyword to thespacemacs|add-toggle
macro to allow overriding the default toggled-off expression (thanks to bmag) - Added
spacemacs|add-transient-hook
macro to add hooks that vanish the first time they are executed (thanks to Sylvain Benner) - Added
doom-emacs
mode-line theme (thanks to Sylvain Benner) - Synchronize environment variables from the default shell (thanks to fiveNinePlusR)
- Optimized
spacemacs/title-prepare
(thanks to Andriy Kmit’) - Cached expensive computations in
spacemacs/title-prepare
(thanks to Dieter Komendera) - Added line text object using
evil-textobj-line
(thanks to Uroš Perišić)
- Display time spent in
- Fixed:
- Avoid non-idempotent use of push in init code (thanks to Miciah Masters)
- Moved Spacemacs startup progress bar to
core-progress-bar.el
, removed counter from progress bar, fixed updating, and fixed size when Emacs is started maximized (thanks to Sylvain Benner) - Fixed loading of themes having dependencies (thanks to Benno Fünfstück)
- Fixed error when
layers
directory does not exist in dotdirectory (thanks to Eivind Fonn) - Fixed insert point for lazy loaded layers (thanks to Codruț Constantin Gușoi)
- Fixed reference to cfgl-package-distant-p (thanks to Alex Coventry)
- Fixed computation of elpa directory (thanks to Sylvain Benner)
- Fixed loading order for package configuration it is now:
- pre-init functions for all packages
- init function of all packages
- post-init functions for all packages (thanks to Sylvain Benner)
- Fixed base16-theme mapping for all themes (thanks to Philippos Boon Alexaki)
- Fixed package initialization on Emacs 27 (thanks to Miciah Dashiel Butler Masters)
- Fixed bugs that could cause
layers.el
andpackages.el
files to be loaded multiple times (thanks to Sylvain Benner) - Fixed warning about quoted lambda in
core-configuration-layer.el
(thanks to Sylvain Benner) - New function
configuration-layer/load-file
to load files silently (thanks to Sylvain Benner) - Fix configuration-layer/insert-lazy-install-configuration, which has been broken since v0.200.0.
- Fixed duplicate “Open quick help…” in the minibuffer at startup (thanks to Sylvain Benner)
- Fixed overflow of line in page-break-lines-mode when using line number (thanks to Compro Prasad)
- Changed the layer loading process so that customizing a package variable
using
:variables
indotspacemacs-configuration-layers
overrides any default value that the layer’s package configuration sets (thanks to Sylvain Benner) - Fixed bug that could overwrites customize variables (thanks to bmag)
- Don’t suggest
SPC q r
ifrestart-emacs
package is missing after an update (thanks to Keshav Kini) - spacemacs-layouts: Add Projectile project buffers to new perspectives.
- Resolve symlinks in warning message about duplicate layers (thanks to Ben Gamari)
- Check toggle condition in status function (thanks to Eivind Fonn)
- Always reset applied themes when a theme is applied (thanks to Eivind Fonn)
- Assume “no” for lazy installation in the –batch mode (thanks to Eugene Yaremenko)
- Use
url-hexify-string
to encode issue report body (thanks to Boris Buliga) - Deleted the quote preceding the lambda in
spacemacs|add-toggle
to avoid warning (thanks to Miciah Dashiel Butler Masters) - Escaped left and right bracket character literals to avoid warning (thanks to Miciah Dashiel Butler Masters)
- Backported battery fix for macOS (thanks to Sylvain Benner)
- Disabled spaceline responsiveness for
all-the-icons
theme (thanks to Sylvain Benner) - Disabled auto-start of Emacs server by default (thanks to Sylvain Benner)
- Alternate buffers without taking into account their purpose (thanks to Thomas de Beauchêne)
- Made query-replace work when frame is split (thanks to Dieter Komendera)
- Don’t skip missing .elc files when recompiling Elpa (thanks to RockyRoad29)
- Updated
quelpa
to fix installing of some recipes on macOS (thanks to Dieter Komendera) - Added startup support for doom-sourcerer theme (thanks to Parker Johnson)
- Other:
- New function
configuration-layer/message
to display message in*Messages*
buffer (thanks to Sylvain Benner) - Enabled lexical binding in new template (thanks to André Peric Tavares)
- Reworked
spacemacs//reroot-link
to make links relative (thanks to Eugene Yaremenko) - Rename
configuration-layer/sync
toconfiguration-layer/load
(thanks to Sylvain Benner) - Replace the optional argument
no-install
by a global variable namedspacemacs-sync-packages
(thanks to Sylvain Benner) - Added optional parameter to
spacemacs/set-mode-line
to redisplay (thanks to Sylvain Benner) - Added optional
append
andlocal
parameters tospacemacs/add-to-hooks
(thanks to Sylvain Benner) - Added
spacemacs-buffer/error
likespacemacs-buffer/warning
(thanks to Sylvain Benner) - Move versions functionality to new file
core/core-versions.el
(thanks to Sylvain Benner) - Use
cl-loop
instead ofloop
(thanks to Sylvain Benner) - Renamed
spacemacs/mplist-get
function tospacemacs/mplist-get-values
, renamedspacemacs/plist-get
function tospacemacs/mplist-get-value
, and refactored the latter function (thanks to Benjamin Reynolds) - Added
pupo-split-active-window
variable to split the active window or the entire frame (thanks to tddsg) - New emacs banner: “100-banner.txt” (thanks to Robert Zaremba)
- New function
- Refactored
spacemacs-bootstrap
,spacemacs-ui
, andspacemacs-ui-visual
layers:- The
spacemacs-bootstrap
layer no longer configures built-in packages; instead, the newspacemacs-defaults
layer configures built-in packages. - The
spacemacs-base
distribution now uses only the newspacemacs-defaults
layer. As a result,spacemacs-base
no longer installs any packages, but instead only configures defaults for built-in packages. - The new
spacemacs-navigation
layer configures packages for navigation. - The new
spacemacs-modeline
layer configures packages for the mode line. - The new
spacemacs-project
layer configuresprojectile
. - Merge
spacemacs-ui
andspacemacs-ui-visual
into layerspacemacs-visual
- The
- New Packages:
- Added
evil-lion
package tospacemacs-evil
layer (thanks to et2010 and Eivind Fonn) - Added
editorconfig
package tospacemacs-editing
layer (thanks to Vladimir Kochnev and Eivind Fonn) - Added
password-generator
package tospacemacs-editing
layer (thanks to Sylvain Benner) - Added
symon
package tospacemacs-modeline
layer (thanks to Eugene Yaremenko) - Added
evil-goggles
to thespacemacs-evil
layer (thanks to Sylvain Benner) - Added
dotenv-mode
to thespacemacs-bootstrap
layer (thanks to Sylvain Benner) - Added the following local packages (thanks to Sylvain Benner):
info+
hide-comnt
help-fns+
font-lock+
- Remove package
adaptive-wrap
- Added
- Key bindings:
- New evil text objects
«
,「
,‘
and“
. - Improved buffer transient state with extra bindings and new commands:
- Added
<right>
for next-buffer - Added
<left>
for previous-buffer - Added
o
for other window - Added
C-d
for burry buffer - Added
b
for helm-buffer-list
(thanks to Adrien Becchis and Sylvain Benner)
- Added
- Added alignment support for
{
(thanks to Paulo Diniz) - Added functionality to move layouts in layout list using the layouts
transient state:
- Added
<
forspacemacs/move-current-persp-left
- Added
>
forspacemacs/move-current-persp-right
(thanks to Linus Marton)
- Added
- New
SPC b u
keybinding for reopening killed buffers (thanks to Alex Palaistras) - New
SPC b x
andSPC w x
to remove both buffer and window in one go (thanks to Codruț Constantin Gușoi) - New key binding
SPC b H
to open or select the*Help*
buffer (thanks to duianto) - New
SPC b N
prefix to create an empty buffer:SPC b N h
create new empty buffer in a new window on the leftSPC b N j
create new empty buffer in a new window at the bottomSPC b N k
create new empty buffer in a new window aboveSPC b N l
create new empty buffer in a new window belowSPC b N n
create new empty buffer in current windowSPC b N f
create new empty buffer in a new frame
(thanks to duianto and Jesse Byler)
- Added
c
to create a workspace in the workspaces transient state (thanks to duianto) - enabled Helm or Ivy (if one of these is enabled) for:
SPC a d
(dired
)SPC F f
(find-file-other-frame
)SPC F b
(switch-to-buffer-other-frame
)SPC F B
(display-buffer-other-frame
)SPC F O
(dired-other-frame
)
(thanks to Miciah Masters)
- New key binding
SPC f i
forinsert-file
. - New
SPC f e U
to update packages (thanks to Codruț Constantin Gușoi) - New frame manipulation key bindings:
- Added
SPC F f
forfind-file-other-frame
- Added
SPC F d
fordelete-frame
- Added
SPC F D
fordelete-other-frames
- Added
SPC F b
forswitch-to-buffer-other-frame
- Added
SPC F B
fordisplay-buffer-other-frame
- Added
SPC F O
fordired-other-frame
- Added
SPC F o
forother-frame
- Added
SPC F n
formake-frame
(thanks to Ben Lloyd, duianto and bmag)
- Added
- Added multiple key bindings to copy a file path:
SPC f y c
to show and copy current file absolute path with line and column number in the minibufferSPC f y d
to show and copy current directory absolute path in the minibufferSPC f y l
to show and copy current file absolute path with line number in the minibufferSPC f y y
to show and copy current file absolute path in the minibufferSPC f y C
to show and copy current file path relative to the project root with line and column numberSPC f y D
to show and copy current directory path relative to the project rootSPC f y L
to show and copy current file path relative to the project root with line numberSPC f y Y
to show and copy current file path relative to the project root
(thanks to Codruț Constantin Gușoi)
- New
SPC f e e
to open spacemacs.env file (thanks to Sylvain Benner) - New
SPC f e E
to reload environment variable from env file (thanks to Sylvain Benner) - New
SPC f e C-e
to re-initialize the env file from shell (thanks to Sylvain Benner) - New
SPC f A
to open a file and replace buffer with it (thanks to Masayuki Takemura) - Added
SPC f y n
andSPC f y N
to copy the name of a file (thanks to Sylvain Benner) - Changed
SPC h d d
toSPC h d a
forhelm-apropos
, it’s more mnemonic (thanks duianto and yuhan0) - Added
SPC h d a
forcounsel-apropos
(thanks duianto and yuhan0) - Added profiling key bindings:
SPC h P k
to stop the profilerSPC h P r
to display the profiler reportSPC h P s
to start the profilerSPC h P w
to write the profiler report to a file
(thanks to Codruț Constantin Gușoi)
- New =spacemacs-completion key bindings:
C-S-j
forhelm-follow-action-forward
C-S-k
forhelm-follow-action-backward
(thanks to Diego Berrocal)
- Overhauled the scroll transient state and moved all scrolling key bindings
from
SPC n
toSPC N
(thanks to Somelauw) - Alternative keybinding
M-0
to switch toneotree
/treemacs
window (thanks to Alexander Miller) - Fixed
hjkl
bindings inimage-mode
and add leader bindings:SPC m a a
callsimage-toggle-animation
SPC m a +
callsimage-increase-speed
SPC m a -
callsimage-decrease-speed
SPC m a r
callsimage-reset-speed
SPC m g n
callsimage-next-file
SPC m g N
callsimage-previous-file
SPC m t +
callsimage-increase-size
SPC m t -
callsimage-decrease-size
SPC m t f
callsimage-mode-fit-frame
SPC m t r
callsimage-transform-reset
SPC m t h
callsimage-transform-fit-to-height
SPC m t w
callsimage-transform-fit-to-width
SPC m t s
callsimage-transform-set-scale
SPC m t r
callsimage-transform-rotation
(thanks to Kalle Lindqvist)
- New
SPC p e
to editdir-locals.el
(thanks to Dela Anthonio) - Move
SPC q z
toSPC q f
to kill a frame (thanks to Steven Allen) - New
spacemacs-navigation
key bindings:SPC q t
for restarting with--timed-requires
SPC q T
for restarting with--adv-timers
(thanks to Rich Alesi)
- Move
SPC t C p
toSPC t h p
forhighlight-parentheses-mode
(thanks to Thomas de Beauchêne) - New
SPC t m r
to toggle responsiveness of the mode-line - New themes transient state key bindings
t
or<up>
to openhelm-themes
to select an installed theme (thanks to duianto) - Added
SPC t z
to toggle zero-based column indexing in the mode line - New key binding and function
SPC w d
for =spacemacs/maximize-vertically (thanks to Ag Ibragimov) - New
SPC w 1
to set the window layout to a single column (thanks to Alejandro Arrufat) - New
SPC w 4
to set the window layout to a 2x2 grid (thanks to Alejandro Arrufat, Codruț Constantin Gușoi, and bmag). - New text align key bindings:
SPC x a [
align region at [SPC x a ]
align region at ]SPC x a {
align region at {SPC x a }
align region at }
(thanks to Thomas de Beauchêne)
- New text align key binding
SPC x a %
to align region at%
(thanks to Gunnar Bastkowski) - New transient state for string inflection under
SPC x i
(thanks to Eivind Fonn) - New
SPC x d SPC
to delete all spaces except one (thanks to Fabian Wilk) - New string inflection key bindings:
SPC x i i
cycle symbol naming stylesSPC x i u
change symbol style tounder_score
SPC x i U
change symbol style toUP_CASE
SPC x i k
change symbol style tokebab-case
SPC x i c
change symbol style tolowerCamelCase
SPC x i C
change symbol style toUpperCamelCase
(thanks to Ric da Silva)
- New transpose sentences and transpose paragraphs keybindings
(thanks to Daniel Gomez):
SPC x t p
fortranspose-paragraphs
SPC x t s
fortranspose-sentances
- Added missing which-key prefix names
new empty buffer
andjustification
(thanks to duianto) - New
SPC x t e
to transpose sexps (thanks to Guido Kraemer) - Added evil key bindings for visualizer and window mode of
undo-tree
(thanks to Rich Alesi) - Improved
which-key
replacement regular expressions (thanks to duianto) - Added
SPC o
which-key prefix name:user bindings
(thanks to duianto)
- New evil text objects
- Improvements:
- Rewrote window layout functions for
SPC w 1
,SPC w 2
,SPC w 3
, andSPC w 4
(thanks to Codruț Constantin Gușoi):- Added
spacemacs-window-split-delete-function
variable, which can be used to customize how the window layout functions delete windows. - Added
spacemacs-window-split-ignore-prefixes
variable, which can be used to customize the defaultspacemacs-window-split-delete-function
function. By default, this variable specifies treemacs and neotree sidebar windows. - Added
spacemacs/window-split-default-delete
, which is the default function forspacemacs-window-split-delete-function
, and which deletes windows that do not match the prefixes inspacemacs-window-split-ignore-prefixes
. - Allow a prefix argument to
SPC w 1
,SPC w 2
,SPC w 3
, andSPC w 4
, which causes them to delete all windows, ignoring window parameters andspacemacs-window-split-ignore-prefixes
.
- Added
- Fill the current filename as a suggestion of
spacemacs/rename-current-buffer-file
(thanks to tddsg) - Added support for
helm-swoop-edit
inhelm
transient state (thanks to Troy Hinckley) - Added prefix argument to
rename-current-buffer-file
. If the prefix argument is non-nil then use the directory instead of filename as default value when prompting the user (thanks to Eivind Fonn) - Added prompt to save modified, user created buffers on quit (thanks to Valts Liepiņš)
- Made it easy to configure
spacemacs-evil-cursors
(thanks to bmag) - Made popwin handle
google-translate
buffers (thanks to Kalle Lindqvist) - Use
counsel-projectile-switch-project-action
instead ofprojectile-switch-project-by-name
, to match the additional actions available viacounsel-projectile-switch-project
(thanks to Tad Fisher) - Use new custom actions mechanism from upstream
counsel-projectile
(thanks to Muneeb Shaikh) - Added support for directories in
spacemacs/rename-file
(thanks to Boris Buliga) - Improved messages when deleting a file (thanks to duianto)
- Replaced
centered-buffer-mode
withwriteroom-mode
(thanks to Eugene Yaremenko) - Added
ivy
support to buffer transient state (thanks to yuhan0) - Enabled
evil-search
search module in evil state. - Improved function
spacemacs/sort-lines-by-column
to work on rectangular block selection and warn the user about its requirements (thanks to duianto) - Smarter default alignment with
spacemacs/align-repeat
(thanks to Eric Siegel and Eivind Fonn) - Set
case-fold-search
tonil
incompilation-finish-function
(thanks to Wieland Hoffmann) - Hide
evil-mc
single cursor mode-line lighter “emc” (thanks to duianto) - Rewrite function
spacemacs/sudo-edit
. Old version worked only for methodssh
and did not work at all if user was not specified (e.g. /ssh:hostname:/path). Since the symbol ‘@’ was required in a filename. (thanks to dvzubarev) - Implemented distraction free mode (thanks to Eugene Yaremenko)
- Added
helm
to spacemacs default distribution (thanks to Sylvain Benner) - Made it possible to define an evil state face without an evil cursor (thanks to Alexander Miller)
- Use
evil-smartparens-mode
whendotspacemacs-smartparens-strict-mode
is enabled (thanks to timor) - Set
which-key-idle-secondary-delay
to 0.01 to make which-key update more promptly after each key-press following the initial key-press in a sequence (thanks to oisincar) - Reset initial useful and useless buffers regexp lists to empty lists and left this to the user. This prevents surprising behavior for lots of users (thanks to Sylvain Benner)
- Colorized hybrid and inactive states for vim-powerline (thanks to Muneeb Shaikh)
- Switched to HTTPS for org packages repo (thanks to Sylvain Benner)
- Switched
center-cursor-mode
to melpa source (thanks to Dieter Komendera) - Added
Process List
topopwin:special-display-config
(thanks to simendsjo) - Added actions to open
funcs.el
andlayers.el
from layers help (thanks to Boris Buliga) - Cleanup
which-key
by removing obsolete entries and adding some missing ones (thans to duianto) - Added
go-run-args
to pass command line arguments to `go run` - Editing: Enable smartparens in eldoc-eval-expression (thanks to Aaron Jensen)
- Check for universal argument before paste (thanks to bet4it)
- New variable
spacemacs-yank-indent-modes
to enable auto indent in modes not derived fromprog-mode
(thanks to bet4it)
- Rewrote window layout functions for
- Fixed:
- Fixed
h
key binding in compilation and grep buffers (thanks to Sylvain Benner) - Disabled the paste transient state when using multiple cursors (thanks to Koray AL)
- Fixed
.
repeat operator with the unimpaired keybindings[ q
and] q
to jump to flycheck errors in the current buffer. (thanks to Robbert van der Helm) - Fixed colorization of compilation buffer (thanks to Abdó Roig-Maranges)
- Fixed placement of created new empty buffer (thanks to bmag)
- Fixed renaming of a buffer without a visited file (thanks to duianto)
- Fixed frame cycling in
evil-unimpaired
(thanks to Vladimir Kochnev) - Fixed frame killer logic with persistent server (thanks to Rich Alesi)
- Fixed terminal RET and TAB in layouts/workspaces transient state (thanks to Don March)
- Fixed overriding
sp-show-pair-delay
(thanks to Eivind Fonn) - Fixed margin scaling ignoring window (thanks to Eivind Fonn)
- Fixed avy dependency in
spacemacs/ace-buffer-links
(thanks to Jonas Strømsodd) - Fixed
evil-paste-pop
(thanks to Nicholas Ochiel) - Fixed search direction in
spacemacs/integrate-evil-search
(thanks to Thanh Vuong) - Fixed left/right bindings in
undo-tree
(thanks to Eivind Fonn) - Replaced obsolete
which-key
functions (thanks to duianto) - Fixed
default
theme loading (thanks to Eivind Fonn) - Fixed scrollbar still active when disabled (thanks to Valts Liepiņš)
- Fixed the
linum
text scaling advice (thanks to Codruț Constantin Gușoi) - Removed obsolete
purpose-conf
name argument (thanks to duianto) - Don’t show warning on layout key clashes (thanks to Boris Buliga)
- Fixed
SPC w =
for balancing windows (thanks to Sylvain Benner) - Fixed typos related to
persp-mode
(thanks to Ruslan Kamashev) - Fixed moving cursor in previous buffers when switching to home buffer (thanks to duianto)
- Fixed
pupo-mode
loading forspacemacs-purpose-popwin
(thanks to Muneeb Shaikh) - Fixed
undo-tree
buffer name inspacemacs-visual
(thanks to Winkey Wong) - Fixed renamed
helm
split window variable (thanks to duianto) - Fixed
neotree
andtreemacs
window number allocation (thanks to Sylvain Benner) - Fixed handling of Windows paths of package archives (thanks to Igor Avdeev)
- Fixed using
eyebrowse
withoutpersp-mode
(thanks to Steven Allen) - Fixed misaligned
evil-mc
cursors on macOS and Windows (thanks to Benjamin Reynolds) - Fixed regression to allow new project perspectives (thanks to Bruno Tavares)
- Compute
spacemacs-modeline
height only after display init (thanks to Benno Fünfstück) - Fixed vertical and horizontal in window manipulation transient state (thanks to Jesse Byler)
- Changed initialization of
recentf-exclude
to userecentf-expand-file-name
in order to respectrecentf-filename-handlers
(thanks to bet4it) - Removed buggy
find-file-hook--open-junk-file
(thanks to Sylvain Benner) - Fixed copy-paste error in
lazy-load
hook name (thanks to bmag) - Fixed errors when restoring a perspective (thanks to Codruț Constantin Gușoi)
- Fixed activation of line number in
text-mode
andprog-mode
while the user disabled it (thanks to bmag) - Fixed issue with
spacemacs/smart-closing-parenthesis
sometimes adding an extra closing parenthesis (thanks to Miciah Masters) - Fixed updating buffer names in window configurations (thanks to Miciah Dashiel Butler Masters)
- Made
spacemacs/counsel-search
with proper highlighting (thanks to Ting Zhou) - Removed compilation finish hook as it was surprising and annoying for lots of users (thanks to Miciah Masters)
- Fixed global toggles for
aggressive-indent
andsmartparens
(thanks to Matt Kramer) - Fixed loading of outdated compiled files (thanks to Boris Buliga)
- Fixed
helm
loading for layouts transient state (thanks to Thomas de Beauchêne) - Added support for
info-find-file
in emacs 27 by adding third argument (thanks to Richard Kim) - Fixed
:noh
ex-command to correctly clear search highlights initiated with both/
andC-s
(thanks to duianto) - Force
powerline-scale
to be 1 whenutf-8
separator is used (thanks to Sylvain Benner) - Fixed
find-ert-test-buffer
that moves point (thanks to Alexander-Miller) - Disabled popwin-mode at startup (thanks to bmag)
- Fixed spaceline colors on emacs-mac port (thanks to Paweł Siudak)
- Fixed a bug where setting
dotspacemacs-line-numbers
tot
,relative
, or a property list with:enabled-for-modes
omitted or set tonil
enabled line numbers in every buffer instead of only in buffers that derived fromprog-mode
andtext-mode
(thanks to bmag) - Fixed bug with
evil-pasted
text object (thanks to Troy Hinckley) - Fixed
golden-ratio
to correctly update after[ w
and] w
(thanks to duianto) - Fixed
projectile-switch-project-action
(thanks to John Soo) - Fixed
evil-escape
lighter being shown in the mode line (thanks to Sylvain Benner) - Fixed
TAB
to toggle occurrences in iedit state in Vim and Hybrid editing styles (thanks to Sylvain Benner) - Fixed the projectile global mode function call (thanks to Karol Wójcik)
- Fixed handling of keymap property when the value is a symbol instead of a keymap (thanks to Rudi Grinberg)
- Fixed value of
persp-add-buffer-on-after-change-major-mode
to add free buffers to current layout (thanks to Miciah Masters) - Keep previous position on
toggle-maximize-buffer
(thanks to Ag Ibragimov) - Deactivate
evil-escape
inholy-mode
(thanks to Maximilian Wolff) - Removed obsolete
purpose-conf
argument for good (thanks to Codruț Constantin Gușoi) - Stopped configuring
fci-rule-color
, which was overriding themes that configured it (thanks to Victor Cuadrado Juan) - Added ranger-mode to golden-ratio-exclude-modes (thanks to Langston Barrett)
- Fixed evil surround bindings (thanks to Hoyon Mak)
- Improved Window Manipulation Transient state (thanks to yuhan0)
- Exclude which-key from layer sync powerline restore (thanks to Doug Wilson)
- Fix doom-modeline in the messages buffer (thanks to duianto)
- Fixed
- Improvements:
- Added support for multiple vault password files, see the layer
README.org
(thanks to Sylvain Benner)
- Added support for multiple vault password files, see the layer
- Fixes:
- Fixed ansible-doc-mode error on
SPC h d k
(thanks to Codruț Constantin Gușoi) - Fixed
error void function ansible: auto-decrypt-encrypt
(thanks to Sylvain Benner)
- Fixed ansible-doc-mode error on
- Improvements:
- Added support for
company
package declaration (thanks to Kalle Lindqvist)
- Added support for
- New packages:
- Added
yasnippet-snippets
package (thanks to Jack Kamm) - Added
ivy-yasnippet
(thanks to Kalle Lindqvist)
- Added
- Improvements:
- Added
autocomplete-idle-delay
layer variable, which Spacemacs uses to setcompany-idle-delay
orac-delay
(thanks to Benjamin Hipple) - Prefer
.spacemacs.d/snippets
over.emacs.d/private/snippets
(thanks to Aaron Jensen) - Use
counsel-company
to show completion candidates (thanks to Kalle Lindqvist)
- Added
- Fixes:
- Check if
dotspacemacs-directory-snippets-dir
exists before adding it (thanks to Wojciech Wojtyniak) - Fixed check for
dotspacemacs-directory-snippets-dir
(thanks to Sylvain Benner) - Fixed
spacemacs/swiper-all-region-or-symbol
function (thanks to Ayush Goyal) - Fixed backends when
auto-completion-enable-snippets-in-popup
is nil (thanks to Sylvain Benner)
- Check if
- Key bindings:
- Removed
C-f
because it interfered with the default key binding forforward-char
(thanks to scturtle and duianto)
- Removed
- Breaking changes:
- Moved
cmake-ide
and cmake script support to separatecmake
layer (thanks to Alexander Dalshov)
- Moved
- Improvements:
- Added
lsp
support using eithercquery
orccls
backends (thanks to Cormac Cannon, Sergey Litovchuk and Fangrui Song) - Fix
lsp
support forccls
server (thanks to Alexander Dalshov) - Added automatic formatting on save using ClangFormat with the variables
c-c++-enable-clang-format-on-save
andc-c++-enable-clang-support
(thanks to Robbert van der Helm) - Added possible value
no-completion
toc-c++-enable-rtags-support
flag. This adds the option to opt-out ofcompany-rtags
while enabling Rtags. - Added option to use
google-c-style
with the variablec-c++-enable-google-style
, and install thegoogle-make-newline-indent
hook with the variablec-c++-enable-google-newline
(thanks to Evan Klitzke) - Refactor to reduce duplication (thanks to Dela Anthonio)
- Improved auto-completion for header includes (thanks to Fredrik Bergstrand)
- Added option to use
google-c-style
(thanks to Evan Klitzke and Richard Kim) - Added possible value
no-completion
toc-c++-enable-rtags-support
flag (thanks to Farva) - Control auto-newline using the
c-c++-enable-auto-newline
variable (thanks to Fangrui Song and Codruț Constantin Gușoi) - Added
org-babel
support (thanks to Michael Rohleder) - Added debugger integration via
dap
layer
- Added
- Key bindings:
SPC m = =
clang-format current region or buffer (thanks to Dela Anthonio)SPC m = f
clang-format current function (thanks to Dela Anthonio)- Declare
mg
prefix asgoto
(thanks to Dela Anthonio) - Support
rtags
, available underSPC m g
prefix (thanks to Alexander Dalshov and Sylvain Benner)
- Fixes:
- Fixed a typo by moving one closing parenthesis :-) (thanks to Richard Kim)
- Fixed clang format on save (thanks to Dela Anthonio and Silver Chan)
- Installation of
gtags
layer conditional onc-c++-enable-rtags-support
flag (thanks to Sylvain Benner) - Only activate
rtags
keybindings whenrtags-mode
is active (thanks to lixinchin) - Fixed
google-set-c-style
functions being added regardless of configuration (thanks to Martin Øinæs Myrseth) - Updated
SPC m g y
binding to reflect upstream renaming of commands (thanks to Miciah Masters) - Fixed issue with
c++-enable-clang-format-on-save
not taking effect when set (thanks to Silver Chan)
- New packages:
- Added
ob-cfengine3
(thanks to Nick Anderson)
- Added
- Improvements:
- Configure
org-babel
forcfengine
source blocks (thanks to Sylvain Benner)
- Configure
- Fixes:
- Fixed flycheck initialization for syntax checking (thanks to Nick Anderson)
- Fixed opening org file when cfengine and org layers enabled (thanks to Nick Anderson)
- New packages:
- Added package
chinese-conv
for conversion between simplified and traditional Chinese texts (Xiang Ji)
- Added package
- Key bindings:
- Added
markdown
key bindings to gmail message mode (thanks to Christoph Paulik)
- Added
- New packages:
- Added
sayid
debugger (thanks to Daniel Manila and Arne Brasseur)
- Added
- Improvements:
- Store cider REPL history in spacemacs cache (thanks to Ryan Fowler)
- Remove backtick from smartparens pairs for Clojure (thanks to Erwin Kroon and Eivind Fonn)
- Improved
jump-to-definition
for Clojure modes (thanks to Ag Ibragimov) - Enabled safe structural editing for
.cljs
,.cljx
, and.cljc
files (thanks to Dieter Komendera) - Enabled command history navigation in the cider REPL in an insert mode (thanks to Wojciech Wojtyniak)
- Made
clj-refactor
off by default (thanks to Arne Brasseur) - Enabled
clojure-mode
refactorings withoutclj-refactor
(thanks to yuhan0) - Allow to send input to the REPL via RET in normal mode (thanks to Dieter Komendera)
- Improve spacemacs-jump-handlers (thanks to Ag Ibragimov)
- Key bindings:
SPC m e ;
to eval sexp and show result as comment (thanks to John Stevenson)- Added
SPC m g n
to runcider-find-ns
- Added key bindings for profiling and spec browsing:
SPC m g s
to browse specSPC m g S
to browse all specsSPC m p +
to display or set current max-sample-countSPC m p c
to clear profileSPC m p n
to toggle namespace profilingSPC m p s
to get profile summary for variable under pointSPC m p S
to get summary of all currently collected profile dataSPC m p t
to toggle variable profilingSPC m p v
to display or set profiling status of variable
(thanks to Luo Tian)
SPC m e P
to pprint eval last sexp (thanks to Tim Jäger)SPC m h c
for clojure-cheatsheet to clojure documentation. (thanks to Michael van der Nest)- Move
cider-browse-ns-all
toSPC m h N
SPC m r c :
to toggle between a keyword and a string (thanks to John Stevenson)SPC m s X
to restart the REPL (thanks to James Conroy-Finn)SPC m e u
undefine symbol in the current namespace (thanks to John Stevenson)
- Fixes:
- Fixed
cider-inspector-prev-page
binding, also addp
as another key binding (thanks to Brian Fay) - Fixed Clojure layer cider-repl-mode keybindings (thanks to Corey Ling)
- Compatibility fix for CIDER 0.9.0 (thanks to nijohando)
- Fixed function usage in clojure layer according to cider changes (thanks to André Stylianos Ramos)
- Fixed regression for pinned
cider
(thanks to André Stylianos Ramos) - Fixed issue with
clojure-enable-fancify-symbols
causing “invalid face reference” error messages (thanks to Miciah Masters) - Update obsolete
cider-refresh
alias tocider-ns-refresh
(thanks to André Peric Tavares) - Remove
clojure-cheatsheet
as it is part of cider now (thanks to Eugene Yaremenko) - Update doc for Cider manual quick start -`cider-connect`. Leiningen
version 2.9 and Boot versions 2.8.2,
cider-nrepl
version 0.21.1 (thanks to John Stevenson) - Call interactive `cider-test-*` functions interactively (thanks to Timo Freiberg)
- Change run-all-tests alias to run-project-tests (thanks to Timo Freiberg)
- Fixed post-init of parinfer in the clojure layer (thanks to Martin Račák)
- Fixed
- Improvements:
- Added basic autocompletion (thanks to Codruț Constantin Gușoi)
- Key bindings:
- Added a couple of key bindings (thanks to Kalle Lindqvist):
- Added
SPC m '
forcoffee-repl
- Added
SPC m c c
forcoffee-compile-buffer
- Added
SPC m c r
forcoffee-compile-region
- Added
SPC m s b
forcoffee-send-buffer
- Added
SPC m s i
forcoffee-repl
- Added
SPC m s l
forcoffee-send-line
- Added
SPC m s r
forcoffee-send-region
- Added
SPC m T c
forcoffee-cos-mode
- Added
- Added a couple of key bindings (thanks to Kalle Lindqvist):
- Improvements:
- Add eval-thing-at-point functions to Common Lisp Layer (thanks to Lukas Woell)
- New packages:
- Added
slime-asdf
toslime-contribs
to enabled some slime commands like,load-system
(thanks to Daniel Schoepe)
- Added
- Key bindings:
SPC m e l
to evaluate current line (thanks to Boris Avdeev)
- Fixes:
- Fixed
SPC m e
key bindings to behave like in Emacs Lisp (thanks to Boris Avdeev) - Fixed initialization of
counsel-gtags
(thanks to Sylvain Benner)
- Fixed
- Key bindings:
- Fixed key binding
g C
(thanks to dubnde) - New
SPC m g =
to find assignments to a symbol (thanks to dubnde)
- Fixed key binding
- Improvements:
- Enabled
flycheck
by default (thanks to Saulius Menkevičius) - No need to unset
omnisharp-auto-complete-want-documentation
anymore (thanks to Saulius Menkevičius) - Add
SPC m t
which key prefix:csharp/tests
(thanks to duianto) - Hide mode-line indicator:
omnisharp
(thanks to duianto)
- Enabled
- Key bindings:
- New key binding
SPC m g e
foromnisharp-solution-errors
(thanks to Saulius Menkevičius) - New key bindings (thanks to Alistair Bush):
SPC m t b
foromnisharp-unit-test-buffer
SPC m u
foromnisharp-auto-complete-overrides
SPC m i
foromnisharp-fix-usings
- Add unit test bindings (thanks to Saulius Menkevičius):
SPC m t p
foromnisharp-unit-test-at-point
SPC m t t
foromnisharp-unit-test-last
- New key binding
- Fixes:
- Disabled functions not present in the latest
omnisharp
package (thanks to Saulius Menkevičius)
- Disabled functions not present in the latest
- Key bindings:
SPC m h
tocsv-header-line
(thanks to Francesc Elies Henar)
- Fixes:
- Fixed
d-mode
flycheck imports on dub projects (thanks to Dietrich Daroch)
- Fixed
- Improvements:
- Use default docsets path in
helm-dash
on macos (thanks to ColorFuzzy)
- Use default docsets path in
- Key bindings:
SPC m c
clear deft filter (thanks to Bahtiar Gadimov)SPC m N
create new file named (thanks to Bahtiar Gadimov)SPC m o
deft open file in other window (thanks to Bahtiar Gadimov)SPC m q
for quitting the deft window (thanks to tinysong)SPC m r
rename selected note (thanks to Bahtiar Gadimov)
- Key bindings:
- Added names to django mode prefixes (thanks to Boris Verhovsky)
- Kill buffer shall return to docker-containers (thanks to Francesc Elies)
- Key bindings:
- Moved key bindings prefix from
SPC D
toSPC a D
(thanks to Ag Ibragimov) - Added
SPC m c B
to build image without cache (thanks to Maximilian Wolff)
Henar)
- Added
SPC a D C
fordocker-compose
(thanks to Daniel Caixinha)
- Moved key bindings prefix from
- Fix: broken package declaration for dockerfile-mode (thanks to Maximilian Wolff)
- Fixed selection bindings in visual state (thanks to Jeremy Symon)
- Fixed not saving on quit (thanks to Andrew Stevanus)
- Added missing Alchemist commands and key bindings (thanks to Swaroop C H)
- Key bindings:
- Added
SPC m t b
to run tests for current file - Added
SPC m t N
to jump to previous test - Added
SPC m t s
to test stale - Added
SPC m t R
to toggle test report display - Added
SPC m g g
andSPC m .
to jump to definition - Added
SPC m g b
andSPC m ,
to jump back - Added
SPC m g n
to jump to next symbol - Added
SPC m g N
to jump to previous symbol - Added
SPC m g j
to list symbol definitions - Added
SPC m X i
to find info at point - Added
SPC m X r
for releases at point - Added
SPC m X R
for releases - Added
SPC m X I
for hex info - Added
SPC m X s
for hex search - Added
SPC m o l
to macroexpand once current line - Added
SPC m o L
to macroexpand once print current line - Added
SPC m o k
to macroexpand current line - Added
SPC m o K
to macroexpand once current line - Added
SPC m o i
to macroexpand once region - Added
SPC m o I
to macroexpand once print region - Added
SPC m o r
to macroexpand region - Added
SPC m o R
to macroexpand print region
- Added
- Key bindings:
- Added elixir format keybind (thanks to Perry Fraser)
SPC m =
to format current buffer
- Change binding of
alchemist-project-find-test
fromSPC m p t
toSPC m t F
(thanks to Lyuben Petrov) - Mark alchemist jump handler as async (thanks to Lukasz Czaplinski)
- Fixed flycheck initialization (thanks to Kevin W. van Rooijen)
- Added
elm-test-runner
(thanks to Juan Edi)
- Key bindings:
- Added
c
to continue in edebug mode (thanks to hodge)
- Added
- Identify Cask files as emacs lisp ones (thanks to Adrien Becchis)
- Added
overseer
ert test runner (thanks to Adrien Becchis)- Key bindings:
SPC m t a
foroverseer-test
SPC m t t
foroverseer-test-run-test
SPC m t b
foroverseer-test-this-buffer
SPC m t f
foroverseer-test-file
SPC m t g
foroverseer-test-tags
SPC m t p
foroverseer-test-prompt
SPC m t A
foroverseer-test-debug
SPC m t q
foroverseer-test-quiet
SPC m t v
foroverseer-test-verbose
SPC m t h
foroverseer-help
- Key bindings:
- Setup nameless package, replacing package prefix with
:
(thanks to Adrien Becchis) - Move
nameless-mode
toggle toSPC m T n
(thanks to Sylvain Benner) - Added dotspacemacs alias (
.S
) for nameless (thanks to Sylvain Benner) - Disabled nameless by default (thanks to Codruț Constantin Gușoi, Sylvain Benner)
- Activate nameless only in GUI (thanks to Sylvain Benner)
- Add
flycheck-package
for package metadata linting (thanks to Uroš Perišić)
- Added support for Emoji fonts on macOS and Linux (thanks to CodeFalling)
- Setup
emojify
cache directory (thanks to Boris Buliga) - Hide mode-line indicator:
emoji
(thanks to duianto)
- Key bindings:
SPC m b
to switch between ERC buffers (thanks to Evan Klitzke)
- Conditionally enable ERC notifications via
erc-enable-notifications
(thanks to Evan Klitzke)
- Key bindings:
- Change
SPC m s t
toSPC m s f
to respect convention (thanks to Yi Liu) - Change
SPC m s T
toSPC m s F
to respect convention (thanks to Yi Liu) - Added REPL bindings (thanks to Guido Kraemer)
SPC m ,
to send region, current function, or paragraph and stepSPC m s s
to switch between file and REPL bufferSPC m h
for predefined keymapess-doc-map
SPC m r
for predefined keymapess-extra-map
SPC m w
for predefined keymapess-r-package-dev-map
SPC m d
for predefined keymapess-dev-map
- Change
- Fixed issue with read-only REPL buffer (thanks to Jack Kamm)
- Added ess layer variable
ess-disable-underscore-assign
(thanks to Jack Kamm) - Remove
ess-R-object-popup
from ess layer (thanks to Naylyn Gaffney) - Refactor keybindings for
ess-mode
andess-julia-mode
(thanks to Guido Kraemer and bmag) - Added Julia repl to
spacemacs/ess-start-repl
(thanks to Guido Kraemer) - Reorganize key bindings (refer to
ESS
section in Breaking Changes above) - Added
xref
integraton (thanks to Guido Kraemer) - Update ess-disable-underscore-assign for ESS 18.10 (thanks to Leonard Lausen)
- Update layer with the latest upstream changes (thanks to Guido Kraemer)
- Must always explicitly enable
evil-snipe-mode
even whenevil-snipe-override-mode
is enabled (thanks to Sylvain Benner)
- Misc fixes for factor version 0.98 (thanks to timor)
- Remove key-bindings pointing to removed commands (thanks to Alexander Baier)
- Added
evil-ledger
package (thanks to Alexander Miller)- new key bindings:
g j
go to the next transactiong k
go to the previous transaction evil-ledger
adds thex
transaction text object
- new key bindings:
- Prevent auto-complete from adding a space (thanks to Lareb Syed)
- Added prefixes for key bindings (thanks to David Millar-Durrant)
- Added deferred theme changer activation function. (thanks to Thadeus Fleming)
- Fixed geolocation layer on non-macos systems (thanks to Boris Buliga)
- Show user error when location is not set in theme changer (thanks to Boris Buliga)
- Packages:
- Added new packages
forge
(thanks to Miciah Dashiel Butler Masters) - Added package
magithub
, it is enabled by default in offline mode. - Remove package
github-browse-file
which has been replaced bybrowse-at-remote
inversion-control
layer - Remove package
magit-gh-pulls
as it was deprecated in favor ofmagithub
andforge
(thanks to Robby O’Connor)
- Added new packages
- Key bindings:
- Added
g r
evilified binding to gist-list-mode (thanks to Jean-Sebastien A. Beaudry) - Forge-topic buffer (thanks to Miciah Masters and yuhan0):
SPC m c
create new postSPC m e
edit post
- Forge-post buffer (thanks to Miciah Masters and yuhan0):
SPC m c
orSPC m ,
submit postSPC m k
orSPC m k
cancel post
- Added
- Replace
evilified-state-evilify
byevilified-state-evilify-map
(thanks to Sylvain Benner) - Made magithub offline by default (thanks to Miciah Masters)
- Disabled status, issues, and PRs by default (thanks to Miciah Masters)
- Install magit-svn by default and activate with git-enable-magit-svn-plugin
- Key bindings:
SPC g c
to clone a repository (thanks to Steven Allen)SPC g f f
to view a file at a specific branch or commit (thanks to duianto)SPC g i
to initialize a repository (thanks to Steven Allen)SPC m g y
to find symbols (thanks to Daniel Ralston)SPC g f d
formagit-diff
(thanks to Ag Ibragimov and bmag)- Commit message buffer (thanks to yuhan0):
SPC m c
orSPC m ,
commit changes with the entered messageSPC m a
orSPC m k
discard message and abort the commitg j
orM-n
cycle through history to the previous commit messageg k
orM-p
save current commit message and cycle to the next message
- Log selection buffer (thanks to yuhan0):
SPC m c
orSPC m ,
select the commit at point and act on itSPC m a
orSPC m k
abort selecting and don’t act on any commit
- Added feature to toggle
evil-magit
based on editing style (thanks to Muneeb Shaikh) - Added
use-package
for deferred loading of evil-magit (thanks to Sylvain Benner) - Remove old evilification of magit buffers (thanks to Sylvain Benner)
- Move evil-magit
use-package
hook declaration to pre-init (thanks to Sylvain Benner) - Change
magit-svn-popup
keybinding to~
(thanks to hornuda) - Added gitignore-templates (thanks to Ruslan Kamashev)
- Added
helm-git-grep
(thanks to Evan Klitzke) - Enabled colors in
magit-log
(thanks to Thomas de Beauchêne) - Added magit buffers to useless buffers (thanks to Thomas de Beauchêne)
- Fixed magint blame function name (thanks to Bjarke Vad Andersen)
- Show magit-log-select and diff in two windows (thanks to duianto)
- Fix magit conflicting with golden-ratio (thanks Eric Zhang)
- Hide with-editor mode-line indicator:
WE
(thanks to duianto)
- Improved go test output buffer behavior (thanks to Denis Bernard)
- Configurable extra arguments to go run (thanks to Enze Chi)
- Configurable extra arguments to go test (thanks to Ian Clark)
- Added
godoctor
(thanks to TinySong and Eivind Fonn)- Key bindings:
- Added
SPC m r n
to rename - Added
SPC m r e
to extract - Added
SPC m r t
to toggle - Added
SPC m r d
for godoc
- Added
- Key bindings:
- Added
GOROOT
to list of variables copied from shell environment (thanks to Andy Lindeman) - Convert remote file name to local name, stripping trampy stuff (thanks to Josh Santos)
- Added
go-tag
(thanks to brantou) - Added
go-gen-test
(thanks to Cosmin Cojocar and Sylvain Benner):- Key bindings:
SPC m t g g
to generate tests for the function in the active regionSPC m t g f
to generate tests for all exported functionsSPC m t g F
to generate tests for all functions
- Key bindings:
- Configure
go-mode
to use thegopkgs
tool to find available Go packages faster (thanks to Cosmin Cojocar) - Added
go-fill-struct
and key bindingSPC m r s
to fill struct with default values (thanks to Cosmin Cojocar) - Added
go-impl
and key bindingSPC m r i
to generate method stubs for an interface (thanks to Cosmin Cojocar) - Fixed loading of the
GOPATH
,GOROOT
, andGO15VENDOREXPERIMENT
environment variables (thanks to Joshua Santos) - Added toggle for running
gofmt
before save (thanks to Jon Erik D Suero)- Key bindings:
SPC m =
to rungofmt
manually
- Key bindings:
- Support editorconfig setting of
tab-width
to nil (thanks to lawrsp) - Added lsp support (thanks to Lupco Kotev)
- Added golangci-lint support (thanks to Lupco Kotev)
- Added toggle control for verbose go test output (thanks to Enze Chi)
- Set lsp-prefer-flymake to :none when Go layer is using LSP (thanks to Tim Heckman)
- Use graphviz package from melpa (thanks to Matthew Boston)
- Update
indent-variable-alist
to support new groovy-mode (thanks to Sylvain Benner) - Move groovy configuration to its own layer and improve it (thanks to Sylvain Benner)
- Added Gradle support (thanks to Johnson Denen)
- Improved maven and gradle support (thanks to Sylvain Benner)
- Key bindings:
- Added
SPC m r i
to add import (thanks to Sylvain Benner)
- Added
- Key bindings:
- Move key binding
SPC m g c
toSPC m g C
(regenerate tags)
- Move key binding
- Don’t check if mode function is bound (thanks to Eivind Fonn)
- Implements diminish and toggle (thanks to Dominik Schrempf)
- Added
ivy
support to the gtags layers (thanks to Robbert van der Helm) - Made gtags toggle major mode specific (thanks to Sylvain Benner)
- Fixed issue
counsel-gtags
command doesn’t work in c-c++ layer (thanks to kekenow)
- Disabled electric indent for cabal-mode (thanks to Benno Fünfstück)
- Added dante support to haskell layer (thanks to Kyle McKean)
- Fix:
company-dante
->dante-company
(thanks to Leon Isenberg) - Rename
haskell-enable-hindent-style
tohaskell-enable-hindent
and make it a Boolean option in accordance with upstream changes (thanks to PierreR) - Added function for proper import reformatting
- Key bindings:
SPC r i
runs newspacemacs/haskell-format-imports
functionSPC m g b
returns from definition inintero-mode
(thanks to Magnus Therning)
- Fixed jump handlers conflict for haskell and intero (thanks to CthulhuDen)
- Fix haskell jump handler for dante (thanks to cjay)
- Enable LSP mode using HIE.
- Limited
ripgrep
results to 512 columns by default, and addedspacemacs-helm-rg-max-column-number
layer variable to configure the above limit (thanks to Aaron Jensen, Michael Hauser-Raspe, and Sylvain Benner) - Key bindings for directory search (thanks to Tim Jäger and Eivind Fonn):
- ~SPC s d for
spacemacs/helm-dir-smart-do-search
- ~SPC s D for
spacemacs/helm-dir-smart-do-search-region-or-symbol
- ~SPC s a d for
spacemacs/helm-dir-do-ag
- ~SPC s a D for
spacemacs/helm-dir-do-ag-region-or-symbol
- ~SPC s k d for
spacemacs/helm-dir-do-ack
- ~SPC s k D for
spacemacs/helm-dir-do-ack-region-or-symbol
- ~SPC s r d for
spacemacs/helm-dir-do-rg
- ~SPC s r D for
spacemacs/helm-dir-do-rg-region-or-symbol
- ~SPC s t d for
spacemacs/helm-dir-do-pt
- ~SPC s t D for
spacemacs/helm-dir-do-pt-region-or-symbol
- ~SPC s d for
- Don’t change
helm-bookmarks
keys too early when helm-mode is enabled (thanks to bmag) - Change the default actions for
helm-find-files
,helm-buffers-list
, and other file- or buffer-related Helm interfaces to handle multiple marked candidates by distributing buffers over existing windows until the action has either assigned all buffers or run out of windows (thanks to Nir Friedman) - Fixed signature of
spacemacs//display-helm-window
(thanks to Jack Kamm) - Fixed initialization by calling
helm-mode
when Helm is initialized= (thanks to bet4it). - Fixed actions in Helm transient state (thanks to Troy Hinckley)
- Fixed conflict with new Magit transient key bindings (thanks to Sylvain Benner)
- Added support for editing the
helm-find-files
buffer from the Helm transient state (thanks to Troy Hinckley) - Fixed smex package integration (thanks to Troy Hinckley)
- Fixed winum intergration (thanks to Sylvain Benner)
- Fixed “Invalid face reference” error in Helm transient state (thanks to duianto)
- Hide lighter (thanks to Sylvain Benner and duianto)
- Lazy load
helm
based on key bindings (thanks to Sylvain Benner) - Fixed error from
spacemacs/helm-files-smart-do-search
on non-file buffers (thanks to Miciah Masters) - Added guard to check if
winum
is loaded (thanks to Dan Girshovich) - Fixed regression: void function
helm-current-directory
onC-x C-f
(thanks to bmag) - Fixed opening files from buffers without winum (thanks to Codruț Constantin Gușoi)
- Removed
SPC s w w
key binding forhelm-wikipedia-suggest
, which was removed upstream. - Load helm before read-file-name and completing-read (thanks duianto and thanks Miciah for a more elegant solution)
- Added impatient-mode under
SPC m i
(thanks to geo7) - Added
counsel-css
as anivy
alternative tohelm-css-scss
(thanks to Robbert van der Helm) - Fixed autoloading bug involving
spacemacs/helm-find-files
(thanks to Jack Kamm) - Added impatient-mode under
SPC m i
(thanks to geo7) - XML files now open with web-mode by default (thanks to Jordan Gwyn)
- Added
helm-xref
(thanks to Fangrui Song and Sylvain Benner) - Removed
TAB
binding for emacs editing style inemmet-mode
(thanks to Kalle Lindqvist) - Revert setting company min. prefix length to 0 for company-web backend (thanks to Dela Anthonio)
- Added missing prefixes for
web-mode
andcss-mode
(thanks to Uroš Perišić)
- Added support for virtual envs (thanks to Danny Freeman)
- Update author email for Idris layer (thanks to Timothy Jones)
- Enabled
idris-simple-indent
(thanks to Xuan Bi)
- Added support for auto-completion with
company
(thanks to tutysara) - Added
ob-ipython
(thanks to Alejandro Catalina) - Key bindings:
SPC a i l
to login (thanks to Ben Mabey)SPC m s
to split cell at point (thanks to Jaakko Luttinen)<C-return>
(execute cell) and<S-return>
(execute cell and go to next) also in hybrid mode (thanks to Jaakko Luttinen)- Remove spurious key binding (thanks to Carlos Andrés Rocha)
- Added
recentf
alt actions to refresh and delete items (thanks to Rich Alesi) - Added
projectile
alternate actions to invalidate cache (thanks to Rich Alesi) - Key bindings:
- Added Helm key bindings counterparts:
SPC f e l
andSPC h i
(thanks to Andriy Kmit’) - Added
SPC h d F
to list faces (thanks to Muneeb Shaikh) - Bind
find-file-other-window
toj
(thanks to James Wang) - Added
counsel-mark-ring
torm
(thanks to bmag)
- Added Helm key bindings counterparts:
- Limit
ripgrep
results to 150 columns (thanks to Aaron Jensen) - Use new API to register additional transient state bindings (thanks to Andriy Kmit’)
- Initiate the transient state with
M-SPC
while in aivy
buffer (thanks to Rich Alesi) - Set
ivy-use-selectable-prompt
tot
(thanks to Boris Buliga) - Rename git dir variable to upstream changes (thanks to bmag)
- Added hook for
org-ctrl-c-ctrl-c
(thanks to Sylvain Benner) - Added
ivy-rich
display transformer forivy-switch-buffer
(thanks to Alan Ferguson) - Fixed bug in spacemacs-help when a layer has no packages (thanks to Nikita Leshenko)
- Rotate
ivy
re builders rather than toggle (thanks to Tomasz Kołodziejski) - Follow upstream ivy/counsel and remove use of variable
counsel--git-dir
(thanks to Chirantan Ekbote) - Fixed creation of layouts with
ivy
(thanks to Muneeb Shaikh) - Added
ivy-enable-advanced-buffer-information
variable to toggleivy-rich
being enabled (thanks to Alejandro Catalina) - Move
counsel-projectile
to spacemacs-layouts (thanks to Muneeb Shaikh) - Added
ivy-xref
(thanks to Fangrui Song and Sylvain Benner) - Use evil normal mode as default for
ivy-occur-grep-mode
(thanks to Ting Zhou) - Fixed error on
nil
input with counsel search (thanks to Miciah Masters) - Fixed call to
counsel-more-chars
incounsel-search
(thanks to bmag) - Added search highlighting with
ivy--regex-plus
(thanks to ivasonn) - Improved jumping in buffer (thanks to Kalle Lindqvist)
- Fixed
SPC m s
key bindings for wgrep (thanks to John Lee) - Update
ivy-rich
config for upstream changes (thanks to bmag) - Added
C-r
keybinding for counsel-minibuffer-history (thanks to James Wang) - Fixed counsel search errors due to function rename (thanks to Aaron Jensen)
- Display results count properly in prompt (thanks to yuhan0)
- Fix typos in spacemacs/search-dir* bindings (thanks to yuhan0)
- Fixed key bindings (thanks to bet4it):
r
inside imenu-list buffer to refreshSPC b i
callsimenu-list-smart-toggle
rather thanimenu-list-minor-mode
- Added missing optional argument for the
jabber-alert-echo
function to fixwrong-number-of-arguments
error when jabber receives a new notification (thanks to Aleksei Fedotov)
- Added support for multiple backends. Supported backends are:
meghanada
,eclim
andensime
. The default backend ismeghanada
. - Key bindings:
SPC m e e
is now to fix error around point. UseSPC e
prefix to navigate between errors.SPC m p r
to run project (thanks to Willian Ver Valem Paiva)SPC r n
foreclim-java-new
(thanks to Dela Anthonio)
- Replace usage of
ensime-print-type-at-point
byensime-type-at-point
(thanks to Joao Azevedo) - Added defalias for
ensime-type-at-point
for compatibility (thanks to Eivind Fonn) - Added ENSIME jump handlers (thanks to Joao Azevedo)
- Improved maven and gradle support (thanks to Sylvain Benner)
- Made java layer depend on groovy layer (thanks to Sylvain Benner)
- Fixed syntax typo in configuration (thanks to EMayej)
- Added
org-babel
support (thanks to Michael Rohleder) - Remove broken ENSIME key bindings (thanks to Bjarke Vad Andersen)
- Fixed yanking types (thanks to Bjarke Vad Andersen)
- Fixed gtags related initialization (thanks to Guido Kraemer)
- Added LSP Java backend (thanks to Ivan Yonchovski)
- Added
.dap-breakpoints
and.lsp-session-*
(java lsp tempfiles) to .gitignore (thanks to Uroš Perišić) - Fixed prefixes for
java-mode
andgradle-mode
- Improvements:
- Leverage js-doc Yasnippet integration if available (thanks to Andriy Kmit’)
- Added LSP support, which can be used by enabling the
lsp
layer and setting thejavascript
layer’sjavascript-backend
variable tolsp
(thanks to Ting Zhou and Sylvain Benner) - Added ES6 module extension to
init-js2-mode
(thanks to Nathan Lloyd) - Added
org-babel
support (thanks to Michael Rohleder) - Added debug support via
dap
layer (Firefox and Google Chrome) - Added format on save option. (thanks to Trapez Breen)
- Key bindings
- Improved coffeescript support (thanks to Kalle Lindqvist):
SPC m '
to create or go to REPLSPC m c c
to compile bufferSPC m c r
to compile regionSPC m s b
to send buffer to REPLSPC m s l
to send line to REPLSPC m s i
to create or go to REPLSPC m s r
to send current region to the REPL and stay in bufferSPC m T c
to toggle compile on save
- Move REPL live eval toggle to
SPC m T l
(thanks to Sylvain Benner) - Added
import-js
support with key bindings:SPC m i i
to mport the module for the variable under the cursorSPC m i f
to import any missing modules and remove any modules that ar not usedSPC m g i
to go to the module of the variable under cursor
(thanks to Seong Yong-ju)
- Move
SPC m i
forimpatient-mode
toSPC m I
asSPC m i
is now taken by theimport-js
key-bindings (thanks to Seong Yong-ju)
- Improved coffeescript support (thanks to Kalle Lindqvist):
- Fixes:
- Set default value of
tern-command
to “tern” (thanks to Sylvain Benner and Juuso Valkeejärvi) - Check if
tern
exists before using it (thanks to Codruț Constantin Gușoi) - Fix hook value to enable
evil-matchit
(thanks to Thanh Vuong)
- Set default value of
- Added support for Colemak layout (thanks to Daniel Mijares, Lyall Cooper and Eivind Fonn)
- Added new programmer dvorak layout that matches vim like key placement (thanks to Max Gonzih)
- Added support for the Workman keyboard layout (thanks to warreq)
- Added neo keyboard layout (thanks to benozol)
- Added colemak-jkhl layout (thanks to fmdkdd)
- Disambiguate the colemak-hnei and colemak-neio layouts (thanks to fmdkdd)
- Improved support for workman keyboard layout (thanks to Benjamin Reynolds)
- Added
after-config
hooks for lazy-loaded packages (thanks to CharlesHD) - Added undo-tree visualizer mapping (thanks to CharlesHD)
- New package
magic-latex-buffer
(thanks to benquebec) - New layer variable
latex-enable-magic
to enablemagic
symbols in latex buffers, see README.org for more info (thanks to benquebec) - Put magic-latex-buffer in TeX-update-style-hook instead of LaTeX-mode-hook (thanks to Matt Kramer)
- Enable auto indent when paste. Remove
latex-mode
fromspacemacs-yank-indent-modes
to disable it (thanks to bet4it)
- Added support for auto-completion with
company
(thanks to halfcrazy)
- Replace lsp-capabilities keybinding with lsp-describe-session (thanks to Bryan Tan)
- Added lsp-prefer-flymake variable (thanks to Juuso Valkeejärvi)
- Added
lsp-treemacs
SPC m t g e
to show error list
- Fixed missing shorcuts for
lsp-mode
SPC m F r
to remove workspace folderSPC m F a
to add workspace folderSPC m F r
to switch workspace folderSPC m b s
to shutdown current workspaceSPC m T l
to toggle lensesSPC m = r
to format region
- Added package
helm-lsp
SPC m g s
to find symbol in current projectSPC m g S
to find symbol in all projects
- Key bindings
SPC m d d e
to edit debug template
- New layer variable
markdown-mmm-auto-modes
which is a list of language names or lists of language and mode names that are supported in source blocks, you can add you own modes, see layer README.org for more info (thanks to Christian Brassat) - Added support for Scala source blocks (thanks to Christian Brassat)
- Fixed save of org table (thanks to Codruț Constantin Gușoi)
- Fixed missing key bindings for
gfm-mode
(thanks to Codruț Constantin Gușoi) - Open Madoko document using markdown mode (thanks to Han Wang)
- Key bindings (thanks to Swaroop C H):
SPC m t i
to toggle inline imagesSPC m t l
to toggle url hidingSPC m t t
to toggle checkboxSPC m t w
to toggle wiki links
- Update markdown insert link, function renamed (thanks to duianto)
- Made all keybindings available in gfm-mode (thanks to Codruț Constantin Gușoi)
- Remove org table lighter (thanks to Troy Hinckley)
- Fixed
M-h
,M-j
,M-k
,M-l
bindings (thanks to Kechao CAI) - New key bindings (thanks to Sylvain Benner):
M-up
formarkdown-move-up
M-down
formarkdown-move-down
M-left
formarkdown-move-left
M-right
formarkdown-move-right
- Update key bindings to reflect changes in markdown-mode 2.3
(thanks to Miciah Masters)
- Rename
markdown-exdent-region
tomarkdown-outdent-region
. - Command for
SPC m i I
folded intoSPC m i i
. SPC m i l
andSPC m i L
replaced by markdown-insert-linkSPC m i l
.- Added
SPC m t m
formarkdown-toggle-markup-hiding
- Rename
markdown-jump
tomarkdown-do
- Rename
- Hide MMM mode-line indicator (thanks to duianto)
- Added SPARQL-mode (thanks to Dietrich Daroch)
- Move
extra-langs
tomajor-modes
(thanks to Eivind Fonn) - Added android logcat (thanks to jiejingzhang)
- Added pkgbuild (thanks to Sven Fischer)
- Added ebuild-mode (thanks to Kai Wohlfahrt)
- Added the vala programming language (thanks to Steven Allen)
- Added hoon (thanks to Hunter Haugen)
- Added kivy (thanks to Nasser Alshammari)
- Added custom Spacemacs layout for
mu4e
buffers (thanks to Benjamin Reynolds) - Key bindings:
- Thanks to Peter Nagy and Eivind Fonn
- add
SPC m ,
andSPC m c
to send message and exit - add
SPC m a
andSPC m k
to kill message buffer - add
SPC m s
to save message as draft - add
SPC m f
to attach file
- add
- Thanks to Peter Nagy and Eivind Fonn
- Replace mu4e multiple accounts with contexts (thanks to Allen Li)
- Refactor to use
spacemacs/add-to-hooks
(thanks to Sylvain Benner) - Added helm-mu4e integration and key bindings
(thanks to Sébastien Bariteau and Sylvain Benner):
SPC a M
to start mu4eSPC m S
orSPC m /
to search emails (requires helm)SPC m C
to search contacts (requires helm)
- Better defaults, async and utility functions (thanks to Peter Hoeg)
- Added binding
C-x m
to compose new message
- Added binding
- Made maildirs extension optional (thanks to JorisE)
- Create email with attachments from dired (thanks to Oleg Pykhalov)
- Refactor major-mode ledaer key bindings (thanks to Miciah Masters)
- Enabled scrolling in
mu4e
(thanks to Simon Altschuler) - Kill mu4e layout on app exit (thanks to Ag Ibragimov)
- Disabled Spacemacs paste transient state when pasting to avoid pasting issue when there are more than one cursor (thanks to braham-snyder)
- Made neotree an optional instead of a default layer
- Move neotree to its own layer in new +filetree folder (thanks to Sylvain Benner)
- Added screenshot in neotree layer (thanks to duianto)
- Allow a prefix argument to
RET
/l
(spacemacs/neotree-expand-or-open
) to specify which window to use to open a file (thanks to Ljupcho Kotev) - Key bindings (thanks to bmag):
SPC f T
reinstated for showing file tree with Neotree or TreemacsSPC 0
andM-0
are consistent across Neotree and Treemacs
- Fixed
RET
binding functionality (thanks to Lupco Kotev) - Use “open” instead of “xdg-open” on macos (thanks to Alexander-Miller)
- Enabled Flycheck (thanks to William Casarin)
- Defer loading (thanks to Benno Fünfstück)
- Disabled Electric-Indent mode, which interfered with the nix-mode indent function (thanks to Profpatsch)
- Associate nix-mode with .nix files (thanks to jpathy)
- Added key binding
SPC m h h
to show symbol documentation (thanks to Valts Liepiņš) - Make
spacemacs/nim-compile-run
work with current buffer file instead of defaulting tomain.nim
(thanks to Uroš Perišić) - Replace
company-capf
withcompany-nimsuggest
incompany-backends-nim-mode
to improve responsiveness (thanks to Uroš Perišić) - Declare all prefix names (
'(compile goto help)
) fornim-mode
(thanks to Uroš Perišić)
- Use add-node-modules-path to automatically find local executables (thanks to jupl)
- Disabled add-node-modules-path by default (thanks to Eivind Fonn)
- Allow initialization without requiring
opam
(thanks to Bernhard Schommer) - Fixed misused functions,
merlin
is a package not a layer (thanks to jinyang and Rudi Grinberg) - Fixed issue with OPAM share directory on Windows (thanks to Levi Roth)
- Enabled flycheck-ocaml (thanks to Dave Aitken)
- Fixed backspace delete (thanks to Hasan Alirajpurwala)
- Load org-mode email integration (mu4e/notmuch) when org is loaded (thanks to Steven Allen)
- Packages:
- Added package
org-journal
(thanks to Nick Anderson) - Added package for
org-sticky-header-mode
(thanks to Langston Barret)
- Added package
- Key bindings:
SPC m T i
to toggle inline images- Move clock related key bindings to
SPC a o C
- Key bindings (thanks to darkfeline and Langston Barrett):
- add
SPC a o C I
to clock in last - add
SPC a o C c
to cancel the last clock - add
SPC a o C j
to jump to current clock - add
SPC a o r
to rifle through files with new packagehelm-org-rifle
- add
SPC m C I
to clock in last - add
SPC m C R
to insert a clock report - add
SPC m C d
to display clocks - add
SPC m C g
for org-clock-goto - add
SPC m C j
to jump to current clock - add
SPC m p
to change priority - add
SPC m r
for helm-org-rifle
- add
- Added
SPC m #
to update statistics cookies (thanks to Christian Höppner) - Key bindings (thanks to James Wang):
- add
SPC m T e
to toggle pretty entities - add
SPC m T l
to toggle link display
- add
- Added org-agenda commands in org agenda transient state to un-schedule and
un-deadline tasks (thanks to Jake Zerrer)
- add
d S
to unschedule org-agenda-schedule - add
d D
to remove org-agenda-deadline
- add
- Added
M-RET
fororg-meta-return
under major mode leader key (thanks to Sylvain Benner) - Added
SPC m T c
fororg-toggle-checkbox
(thanks to Paweł Siudak) - Added org-babel commands (thanks to timor):
SPC m b p
callsorg-babel-previous-src-block
SPC m b n
callsorg-babel-next-src-block
SPC m b e
callsorg-babel-execute-maybe
SPC m b o
callsorg-babel-open-src-block-result
SPC m b v
callsorg-babel-expand-src-block
SPC m b u
callsorg-babel-goto-src-block-head
SPC m b g
callsorg-babel-goto-named-src-block
SPC m b r
callsorg-babel-goto-named-result
SPC m b b
callsorg-babel-execute-buffer
SPC m b s
callsorg-babel-execute-subtree
SPC m b d
callsorg-babel-demarcate-block
SPC m b t
callsorg-babel-tangle
SPC m b f
callsorg-babel-tangle-file
SPC m b c
callsorg-babel-check-src-block
SPC m b j
callsorg-babel-insert-header-arg
SPC m b l
callsorg-babel-load-in-session
SPC m b i
callsorg-babel-lob-ingest
SPC m b I
callsorg-babel-view-src-block-info
SPC m b z
callsorg-babel-switch-to-session
SPC m b Z
callsorg-babel-switch-to-session-with-code
SPC m b a
callsorg-babel-sha1-hash
SPC m b x
callsorg-babel-do-key-sequence-in-edit-buffer
SPC m b .
enters transient state
- Added key bindings for
org-feed
(thanks to Luke Alexander Stein):SPC a o f i
andSPC m f i
to go to feed inboxSPC a o f u
andSPC m f u
to update all feeds
- Added key bindings for
org-clock
(thanks to Langston Barrett, William Casarin, Francesc Elies Henar, Daniel Molina):SPC a o C c
fororg-clock-cancel
SPC a o C g
fororg-clock-goto
SPC a o C i
fororg-clock-in
SPC a o C I
fororg-clock-in-last
SPC a o C j
fororg-clock-jump-to-current-clock
SPC a o C o
fororg-clock-out
SPC a o C r
fororg-resolve-clocks
- Updates org-layer key bindings for Org 9.2 release
(thanks to Sam Pillsworth):
SPC m i b
fororg-insert-structure-template
SPC m i t
fororg-set-tags-command
- Added key binding for org-insert-item (thanks to Emil Petersen)
SPC m i i
fororg-insert-item
- Key binding changes for archiving (thanks to Ag Ibragimov):
- Added
SPC m s a
to toggle archive tag for subtree - Added
SPC m s A
to archive subtree (previouslySPC m s a
)
- Added
- Made
org
layer depend onspacemacs-org
(thanks to Eivind Fonn) - Remove
mu4e
andnotmuch
fromorg
(thanks to Sylvain Benner) - Use evil-org from MELPA (thanks to Eivind Fonn)
- Added
org-brain
(thanks to Matthías Páll Gissurarson and Eivind Fonn) - Added detailed
org-brain
bindings (thanks to Langston Barret) - Added layer variable for todo bindings (thanks to Eivind Fonn)
- Made
org-projectile
integration compatible with its new version (thanks to Ivan Malison) - Remove nils from call to org-projectile-project-todo-entry (thanks to Ivan Malison)
- Fixed org-projectile capture-template keyword argument (thanks to Leonard Lausen)
- Adapt to changes in org-brain 0.4 (thanks to Boris Buliga)
- Load org-projectile lazily, after org-capture (thanks to Aaron Jensen)
- Use org-verbatim, not org-verbose (thanks to Swaroop C H)
- Fixed
org-projectile/goto-todos
(thanks to Aaron Jensen) - Fixed
org-clock-resolve-clock
keybinding (thanks to Francesc Elies Henar) - Enabled
org-src-tab-acts-natively
(thanks to Sylvain Benner) - Fixed
org-default-notes-file
precedence (thanks to Troy Hinckley and bmag) - Added
ox-hugo
(thanks to Kaushal Modi) - Hide lighter for
evil-org
(thanks to Sylvain Benner) - Use counsel-org-tag when
ivy
layer is used (thanks to darkfeline) - Delete the duplicate definition of the
spacemacsdorg-emphasize
macro (thanks to Miciah Dashiel Butler Masters) - Use
org-mime
provided by melpa (thanks to Amos Bird) - Restore
evil-org-additional-bindings
in insert state (thanks to Maximilian Wolff) - Fixed initialization order to prevent version conflicts (thanks to Sylvain Benner)
- Fixed adding
org-projectile
files toorg-agenda-files
(thanks to AmanYang) - Fixed error void:
evil-surround-pairs-alist
(thanks to Sylvain Benner) - Added warning against manually loading org (thanks to Maximilian Wolff)
- Added a toggle for bringing in org-trello (thanks to Magnus Therning)
- Added the org-mode keybindings to the org-journal major mode (thanks to Marty Buchaus)
- Replace ox-reveal with org-re-reveal (thanks to Magnus Therning)
- Added epub support (thanks to vishvanath45)
- Added support for CUSTOM_ID in latex exports (thanks to Compro-Prasad)
- Fixed OSX mapping issue (thanks to Joey Liu)
- Added layer variables to customize modifier behaviors on macOS:
osx-command-as
defaults to hyperosx-option-as
defaults to metaosx-control-as
defaults to controlosx-function-as
defaults to noneosx-right-command-as
defaults to leftosx-right-option-as
defaults to leftosx-right-control-as
defaults to left
(thanks to Christopher Eames, Aaron Culich, and fiveNinePlusR)
- Disabled
pbcopy
package because it introduced input latency for some actions when usingemacs -daemon
and a GUI client (thanks to Sylvain Benner) - Key bindings:
- Added key bindings to use
command-1..9
for selecting window (thanks to Liu Joey) - Added
M-s-h
to hide other windows (thanks to Bas Veeling)
- Added key bindings to use
- Replace pbcopy by osx-clipboard (thanks to Minh Nguyen-Hue)
- Fix key binding issue when Emacs is launched in daemon mode.
- Fixed
spacemacs/run-pandoc
not to resetpandoc--local-settings
(thanks to martian-f) - Added declaration for the
SPC P
prefix (thanks to Codruț Constantin Gușoi)
- Added company-php (thanks to jim and Eivind Fonn)
- Fixed php-company autocompletion (thanks to Dela Anthonio)
- Added the
.plum
extension to the platinum modes (thanks to Sylvain Benner) - Remove automatic indentation on paste (thanks to Sylvain Benner)
- Compatibility fix for upstream change (thanks to Francesc Elies)
- Key bindings:
- add
c
to clear the buffer (thanks to Francesc Elies) - bind
q
to quit-window in view mode (thanks to Saulius Menkevičius)
- add
- Enabled
purescript-decl-scan-mode
when loadingpurescript-mode
(thanks to Bjarke Vad Andersen) - Allow adding node_modules/.bin path to exec-path (thanks to Anupam Jain)
- Improve purescript keybinding discoverability & ergonomics. (thanks to Jason Walker)
- Various fixes in
pylookup.py
(thanks to ishestakov and Shitikanth Kashyap) - Hide
yapf-mode
modeline lighter (thanks to Robert ven der Helm) - Search for Pylint and Flake8 in the virtualenvs (thanks Alexey Kotlyarov)
- Highlight wdb breakpoints as well as pdb/ipdb/pudb (thanks to Alexey Kotlyarov)
- Made
python-execute-file
usepython-shell-interpreter
(thanks to Swaroop C H) - Trim output from pyenv command (thanks to Eivind Fonn)
- Use Python executable from active virtual env to compile files (thanks to Swaroop C H)
- Fixed arguments to
python-setup-hy
(thanks to Eivind Fonn) - Fixed ipython version check bug on windows (thanks to lostmarble)
- Fixed
pyenv-executable-find
in presence ofpyenv-which-ext
(thanks to Christoph Paulik) - Fixed broken repl invocation through
SPC a '
(thanks to Hans Jang) - Added
pippel
for python package management (thanks to et2010) - Added keybinding
SPC m P
for pip package management withpippel
(thanks to Sylvain Benner) - Added defvar
python-save-before-test
(thanks to Benoit Coste) - Added key binding
SPC m r f
to fix missing import statements (thanks to Volodymyr Vitvitskyi) - Use
python-mode
for SCons script files (thanks to shanemikel) - Added LSP support, which can be used by enabling the
lsp
layer and setting thepython
layer’spython-backend
variable tolsp
(thanks to Yuan Fu and Sylvain Benner) - Added
SPC m t l
key binding to re-run the last test command (thanks to Benoit Coste). - Added support for breakpoints for the
trepan3k
python debugger (thanks to dangirsh) - Added support for
pipenv
with proper keybindings (thanks to jackkamm) - Fixed bytecomp warning:
reference to free variable 'smartparens-strict-mode'
(thanks to Nikita Leshenko and Sylvain Benner) - Key bindings:
- Update invalid cython mode keybindings (thanks to Muneeb Shaikh)
- New
anaconda-view-mode
keybindings (thanks to Muneeb Shaikh)C-j
for navigating to the next errorC-k
for navigating to the previous errorRET
to go forward
- Fixed
pyenv
,pre-init
function andhy-mode
prefixes (thanks to Brandon T. Willard) - Conditionally remove binding to obsolete keymap (thanks to bmag)
- Improved setup of
lsp-python
andanaconda-mode
(thanks to Ting Zhou) - Fixed support of multiple pyenv versions via
spacemacs/pyenv-executable-find
(thanks to Guan Xipeng) - Fixed initialization of
inferior-python-mode
variables (thanks to Miciah Masters) - Fixed bug with out-of-bound index (thanks to EMayej)
- Fixed escaping of shell argument for
spacemacs/python-execute-file
(thanks to Riley Levy) - New variable
python-spacemacs-indent-guess
for guessing correct indentation settings (thanks to Benno Fünfstück) - Fixed pyenv for system Python (thanks to Alexander Eberspächer)
- Replace
anaconda-mode-go-back
withxref-pop-marker-stack
(thanks to JimmyG) - Highlight python3.7 builtin
breakpoint()
function (thanks to Boris Verhovsky) - Fixed conflict between pipenv directory .venv and pyvenv file .venv (thanks to rgb-24bit)
- Added diminish for importmagic (thanks to Loys Ollivier)
- Added debugger integration via
dap
layer - Added documentation on installing importmagic and epc (thanks to Trapez Breen)
- Made python-send-shell-* functions faster (thanks to Trapez Breen)
- Added support for ‘black’ formatter (thanks to Mike Macpherson)
- Restore smart closing paren behavior in racket-mode (thanks to Don March)
- Fixed conflict with
golden-ratio
(thanks to Thomas de Beauchêne) - Key bindings:
- Added
j D
to jump other window (thanks to Rich Alesi) - Added
-
to enter (thanks to Rich Alesi)
- Added
- New variable
rcirc-enable-late-fix
to enable or disable the includedrcirc-late-fix
package (disabled by default). - Fixed using multiple lines in
.authinfo
(thanks to Jelle Licht) - Fixed logging where the channel name has
/
in it (thanks to Abdo Roig-Maranges) - Delete rcirc-reconnect in favor of built-in cmd (thanks to Miciah Masters)
- Move config defaults to package :init so they can be overridden
(thanks to Miciah Masters)
- Fixed compiler warnings in
rcirc-late-fix
(thanks to Miciah Masters) - Added variable
rcirc-enable-late-fix
(thanks to Miciah Masters)
- Improvements:
- Made % work on jsx tags (thanks to Thanh Vuong)
- Use rjsx-mode for react framework (thanks to Ting Zhou)
- Prompt user to install the
react
layer if a.jsx
file is opened (thanks to Jon Hermansen) - Improved
magic-mode-alist
regular expression to detectreact
files (thanks to Jan Zdráhal) - Made auto-completion triggers more friendly (thanks to Cheng,Rong)
- Configure
emmet-mode
to expand classes usingclassName
instead ofclass
(thanks to Sylvain Benner) - Open
.jsx
files withrjsx-mode
(thanks to Thomas de Beauchêne)
- Key bindings:
- Added
import-js
support with key bindings:SPC m i i
to mport the module for the variable under the cursorSPC m i f
to import any missing modules and remove any modules that ar not usedSPC m g i
to go to the module of the variable under cursor
(thanks to Seong Yong-ju)
- Added
- Fixes:
- Use JSX header without breaking React (thanks to Jam Risser)
- Fixed React imports when using web beautify. (thanks to Ismael)
- Made layer depends on node and tern layers (thanks to Sylvain Benner)
- Added support for
org-babel
(thanks to Muneeb Shaikh) - Highlight debugger keywords (thanks to Alexander Berezovsky and Eivind Fonn)
- Adding ruby-refactor package (thanks to Daniel Luna)
- Key bindings:
- Added
SPC m r R m
for extract to method. - Added
SPC m r R v
to extract local variable. - Added
SPC m r R c
to extract constant. - Added
SPC m r R l
to extract tolet
.
- Added
- Key bindings:
- Added
SPC m x h
to toggle between old and new hash syntax in the active region (thanks to Paweł Siudak) - Added gtags to
enh-ruby-mode
as well asruby-mode
(thanks to David Balatero) - Added
SPC m s b
key binding to send buffer to the Ruby console (thanks to Alejandro Arrufat) - Added
SPC m s B
andSPC m s L
key bindings to send buffer or line, respectively, to the Ruby console and switch focus to the console (thanks to Paweł Siudak) - Key bindings:
- Added
SPC m s l
to send line to REPL (thanks to Paweł Siudak) - Added
SPC m T
toggle prefix (thanks to Codruț Constantin Gușoi)SPC m T '
to toggle string quotesSPC m T {
to toggle block style
- Added
- Added popwin config for bundler, projectile-rails, and rubocop
(thanks to Paweł Siudak)
- Added
SPC m r R m
for extract to method. - Added
SPC m r R v
to extract local variable. - Added
SPC m r R c
to extract constant. - Added
SPC m r R l
to extract tolet
. - Added
SPC m s l
to send line to REPL (thanks to Paweł Siudak)
- Added
- Added the
seeing-is-believing
package (thanks to Brandon Conway) - Added prefixes for ruby major mode keybindings (thanks to Seong Yong-ju)
- Changed leader keys to be configured for the
projectile-rails-mode
minor mode instead ofruby-mode
andenh-ruby-mode
so that the key bindings will work in view file windows (thanks to Adam Sokolnicki) - Added missing prefixes for
ruby-mode
andenh-ruby-mode
- Added key bindings: (thanks to Adam Sokolnicki)
SPC m f f b
to find jobSPC m f f w
to find webpack configSPC m f c d
to run rails destroy
- Added missing
counsel-gtags
andsmartparens
package declarations (thanks to Kalle Lindqvist) - Fixed loading of the
RUST_SRC_PATH
environment variable (thanks to Joshua Santos) - Enabled eldoc for rust/racer (thanks to yangbo)
- Key bindings:
- Added
SPC m c D
to open Cargo docs (thanks to Matthew J. Berger) - Added
SPC m c l
to run linter with cargo clippy (thanks to Michael Kohl) - Added
SPC m c t
to run the current test with Cargo, and fix documentation forSPC m c f
to format project files (thanks to Luke Alexander Stein) - Added
SPC m c v
to run “cargo check” command (thanks to Victor Polevoy)
- Added
- Added rust lsp completion with company and bindings (thanks to Justin)
- Added debugger integration via
dap
layer
- Move
ensime
to thejava
layer (Tor Hedin Bronner) - Key bindings:
- Evilify
ensime
search in insert/normal mode (thanks to Diego Alvarez)
- Evilify
- Remove duplicated code (thanks to Tetsuro Takemoto)
- Added ENSIME jump handlers (thanks to Joao Azevedo)
- Added missing
parinfer
package declaration (thanks to Kalle Lindqvist) - Update install docs for Chicken 5 changes (thanks to Grant Shangreaux)
- Made it possible to exclude stickyfunc (thanks to Sylvain Benner)
- Fixed xterm colors filtering bug in
eshell
when eshell buffers are updated and are not focused (thanks to Steven Allen) - Fixed
eshell
clear behavior (thanks to Aidan Nyquist):- Made eshell
clear RET
similar toC-l
- Prevent
C-l
clearing cycle - Prevent
clear RET
inserting a page of white-space - Prevent duplicate insert lines from
clear RET
- Made eshell
- Require company in
eshell-switch-company-frontend
(thanks to Benjamin Reynolds) - Fixed docs for “Fish shell and ansi-term” and explicitly enable `truncate-lines`. (thanks to Joe Hillenbrand)
- Fixed
C-j
andC-k
ineshell
while in insert state (thanks to Paweł Siudak) - Restore
auto-completion-idle-delay
value forcompany-idle-delay
(thanks to Miciah Dashiel Butler Masters) - Added
shell-default-width
layer variable (thanks to David Balatero) - Function
resize-shell-to-desired-width
check for shell buffer before changing size (thanks to thanhvg) - Added
shell-default-width
layer variable (thanks to David Balatero and Miciah Masters) - Override read-only when capturing clear in shell (thanks to Alexander Wingård)
- Wrap ‘shell’ command to start in current buffer (thanks to Valts Liepiņš)
- Fixed shell popup broken on macOS (thanks to Daniel Rivas Perez)
- Fixed broken leader key binding for inferior shell (thanks to Valts Liepiņš)
- Added
term-mode
bindings (Thanks to Emil Petersen):SPC m C
switch multi-term to char modeSPC m l
switch multi-term to line modeSPC m N
go to previous multi-term
- Added new company-shell environment variable backend (thanks to Alexander-Miller)
- Added bashate style checker (thanks to Victor Cuadrado Juan)
- Added insert commands from sh-script package to major mode menu (thanks to Maximilian Wolff)
- Added org-mode support (thanks to Josh Santos)
- New layer variable
slack-spacemacs-layout-name
to customize the name of the custom layer for Slack buffers (thanks to Benjamin Reynolds) - New layer variable
slack-spacemacs-layout-binding
to customize the key used to open the Slack customn layout (thanks to Benjamin Reynolds) - Key bindings:
SPC a C g
orSPC m g
to join a group (private channel) (thanks to Benjamin Reynolds)SPC a C r
orSPC m r
to join a channel, group or direct message (thanks to Benjamin Reynolds)SPC m )
to add reaction (thanks to Swaroop C H)SPC m (
to remove reaction (thanks to Swaroop C H)SPC m t
to open message thread (thanks to Swaroop C H)
- Fixed documentation issues with slack and emoji layers (thanks to Benjamin Reynolds)
- Fixed
helm
menu display (thanks to Leslie Shawn Russell)
- Fixed
SPC m :
for current major mode commands (thanks to tinysong)
- Install orgit only when org package is used (thanks to Boris Buliga)
- Defer git-gutter loading (thanks to Aaron Jensen)
- Remove redundant arg from git-gutter timer (thanks to bmag)
- Replaced helm-spotify package with helm-spotify-plus (thanks to Leonard Lausen)
- Added counsel-spotify for
ivy
users (thanks to Yuki Yoshioka, Deepu Mohan Puthrote)
- Support for keywords auto capitalization (thanks to Kepi)
- Change blacklist to only accept list (thanks to Eivind Fonn)
- Added dumb autocomplete (thanks to Codruț Constantin Gușoi)
- Added leader key prefixes (thanks to Jeremie Pelletier)
- Rebuild
spacemacs-sql-startable
after runningsql-add-product
(thanks to Andrew Christianson) - Fixed sql-indent and defer it (thanks to Sylvain Benner)
- Added alex-hhh’s sql-indent in place of mepla sql-indent (thanks to Andrew Christianson)
- Added layer variable
sql-auto-indent
to toggle the use ofsql-indent
package (thanks to David Chen) - Added a code formatter for sql-mode (thanks to Seong Yong-ju)
- Added connection between
org-mode
andSQL layer
(thanks to Magnus Therning)
- Added spell checking transient state (thanks to Francesc Elies Henar)
- Update to flyspell-correct v0.5 (thanks to Boris Buliga)
- Key bindings:
SPC e e
is now for triggering a syntax check, the old action (explain error around point) has been moved toSPC e x
.- Added
SPC e y
to copy error at cursor position into kill ring (thanks to Francsec Elies Henar)
- Rename function
add-flycheck-hook
toenable-flycheck
- Use correct error list faces when defining error levels with custom bitmaps (thanks to Alexander Miller)
- Update Swift REPL key bindings (thanks to Elliot Bulmer)
- Added support for syntax checking with
flycheck
(thanks to Steven Allen) - Added support for lazy installation (thanks to Wieland Hoffmann)
- Added opt-in layer variable
terraform-fmt-on-save
to format buffers on save withterraform fmt
(thanks to Harry Hull) - Added support for
terraform-company
(thanks to Sylvain Benner)
- Fixed issue with templates layer ignoring
templates-private-directory
(thanks to Seong Yong-ju)
- Added support for more doom themes (thanks to Dela Anthonio, Igor Kupczyński, and DonHugo69)
- Added support for gruvbox theme variants (thanks to Dean Todevski)
- Remove zonokai-theme theme as it is unavailable (thanks to nickclasener)
- Updates to the spacemacs theme (thanks to Nasser Alshammari)
- Fixed the
base16-solarflare
mapping (thanks to Sebastian Nagel) - Added support for kaolin themes (thanks to William Roe)
- Added support for eziam themes (thanks to Benno Fünfstück)
- Enabled italics in spacemacs theme (thanks to Sylvain Benner)
- Multiple improvements (thanks to SteveJobzniak):
- Added ability to set default rainbow-identifiers values
- Improved resetting of rainbow-identifiers transient-state
- Extended built-in theme list, and added better defaults
- Major fix to actually render per-theme settings on switch
- Faster method of redrawing buffer for transient state
- Tuned defaults to work w. majority of light & dark themes
- Better way of adding/refreshing themes
- Added
rebecca-theme
(thanks to Victor Borja) - Added
white-sand-theme
(thanks to Swaroop C H) - Added
exotica
theme (thanks to Bharat Joshi) - Remove themes that were deleted from Melpa (thanks to Henrique Jung)
- Added
eziam-theme
andkaolin-themes
(thanks to Sylvain Benner) - Added
doom-themes
(thanks to Codruț Constantin Gușoi)
- Prevent
tmux-command
at GUI mode (thanks to Isaac Zeng) - Fixed regression in tmux by setting keybindings using
use-package
(thanks to Aaron Jensen)
Treemacs
replacesNeoTree
as the default sidebar
- Call tsfmt with extension of current buffer for TSX formatting (thanks to Victor Andrée)
- Declare
tide-jump-to-definition
as async (thanks to Sylvain Benner) - Added tide keybindings to tsx web mode (thanks to George Miller)
- Rewrite hooks for web-mode (thanks to Sylvain Benner)
- Created a derived mode for TSX files (thanks to Aaron Jensen)
- Fixed eldoc (thanks to Aaron Jensen)
- Isolate eldoc configuration (thanks to Sylvain Benner)
- rename reworded to refactor in
which-key
popup (thanks to Simon Altschuler) - Key bindings:
SPC m E e
is fortide-fix
which was originally added asSPC m r f
(thanks to Simon Altschuler)SPC m E d
to addtslint-disable-next-line
at point (thanks to Daniel Perez Alvarez)SPC m g g
fortide-jump-to-definition
(thanks to Roy Choo)SPC m g t
remapped tospacemacs/typescript-jump-to-type-def
fromtypescript/jump-to-type-def
(thanks to Roy Choo)SPC m r i
to organize imports (thanks to Stéphane Bisinger)SPC m r f
to rename file (thanks to Stéphane Bisinger)
- Added LSP support, which can be used by enabling the
lsp
layer and setting thetypescript
layer’stypescript-backend
variable tolsp
(thanks to Ting Zhou and Sylvain Benner) - Changed
company-minimum-prefix-length
from 0 to 2 to avoid spurious autocompletion (thanks to Andrea Moretti) - Enabled snippets using yasnippet (thanks to Andrea Moretti)
- Enabled
smartparens-mode
(thanks to Andrea Moretti) - Added
prettier
to error msg ofspacemacs/typescript-format
(thanks to Matt Kramer) - Fixed jump handling with multiple backends (thanks to Aaron Jensen)
- Fixed
typescript/jump-to-type-def
for npm modules (thanks to Jam Risser) - Added the same setup to tsx files as to ts files (thanks to Trapez Breen)
- Key bindings:
- move key bindings prefix to
SPC a V
(thanks to Thomas de Beauchêne) - Move
vagrant-tramp-term
toSPC a V t
(thanks to rakyi)
- move key bindings prefix to
- Key bindings:
- Un-evilify
diff-mode
(thanks to Steven Allen) - Evilified the following modes (thanks to dvzubarev):
log-view-mode
vc-dir-mode
vc-svn-log-view-mode
vc-git-log-view-mode
vc-hg-log-view-mode
vc-annotate-mode
- Added a new version-control prefix under
SPC g v
with the following bindings: (thanks to dvzubarev)SPC g v =
to open a hunk under the point in the diff bufferSPC g v D
to compare the entire working tree with headSPC g v e
to show diff against current head using ediffSPC g v g
to visually annotate the current fileSPC g v d
to open the VC Directory bufferSPC g v +
to update the working copySPC g v i
to register (add) into a version control systemSPC g v u
to revert working copy to their repository contentsSPC g v l
to list the change logSPC g v L
to list the change log for the current VC controlled treeSPC g v v
to do the next logical VC operation (vc-next-action
)SPC g v I
to ignore file (vc-ignore
)SPC g v r
to resolve conflicts in file
- Define key bindings with leader key for vim editing style in
diff-mode
(thanks to miyabinomuratic) - Added smerge transient state diff key bindings (thanks to Wang):
SPC g r <
diff base/mineSPC g r =
diff mine/otherSPC g r >
diff base/other - Added smerge transient state key bindings (thanks to duianto):
SPC g r e >
ediffSPC g r K >
kill current
- Un-evilify
- New packages:
browse-at-remote
which replacesgithub-browse-file
(thanks Eugene Yaremenko)
- Avoid loading all the diff packages (thanks to Sylvain Benner)
- Fixed error on
diff-hl-margin-mode
function being nil during startup (thanks to Voleking)
- Added Requirements documentation (thanks to Chris Glass)
- Search for
compile_commands.json
in build sub-directory (thanks to Amos Bird and Eivind Fonn) - Python3 compatibility fix for
global_conf.py
(thanks to Abdo Roig-Maranges) - Added manual completion function (thanks to Nir Friedman)
- Remove warning for unset var; always fires (thanks to Nir Friedman)
- Added manual semantic completion function for company (thanks to Nir Friedman)
- Fixed searching for compilation DB in subdirectories (thanks to Alexander Dalshov)
- Lots of improvement with CI and documentation exporting (thanks to Eugene Yaremenko)
- Various code and style improvements (thanks to bmag, duianto, Eivind Fonn, Eugene Yaremenko, Fabien Dubosson, Kalle Lindqvist, Boris Buliga, timor, yuhan0, thanhvg, Sylvain Benner)
- Multiple unit test improvements (thanks to Sylvain Benner, et2010 and Codruț Constantin Gușoi)
- Various documentation improvements (thanks Aaron Jensen, Aaron Peckham, Aaron Renner, Adam Frey, Adam Kruszewski, Alexander Dalshov, Alexander Eberspächer, Alexander Iljin, Alexander Kjeldaas, Alexandros Kotzias, Andriy Senyshyn, Anton Latukha, Antonio Miranda, Anurag Sharma, Archenoth, Ather Sharif, Artur Juraszek, Benjamin Reynolds, Bernhard Schommer, Billy Wade, bmag, Boris Buliga, Boris Wong, Carl Lange, Chase Adams, Christian Bäuerlein, Cibin Mathew, CL123123, Codruț Constantin Gușoi, Compro-Prasad, Daniel Hodson, Daniel Le, Daniel Molina, Darkhan, David Florness, David Vo, davidpham87, Deepu Mohan Puthrote, Dela Anthonio, Diego Alvarez, Diego Berrocal, Dietrich Daroch, Dinesh Bhosale, Dominik Schrempf, Doug Beardsley, dubnde, duianto, eldios, EMayej, Eugene Yaremenko, Evan Klitzke, Evan Niessen-Derry, firemiles, Florian Bruhin, Fuqiao Xue, Garrett Johnson, Grant Shangreaux, Henrique Jung, Henry Hirsch, Henry Marshall, hornuda, Ivan Fedorov, Ivan Kryvoruchko, J. Patrick Lanigan, Jaremy Creechley, Jason Axelson, Jesse Cooke, Jethro Shuwen Sun, JI Xiang, Jim Deville, Jody Frankowski, Joe Hillenbrand, John Eismeier, John Wood, Jon Tippens, Jonas Strømsodd, Jonathan Arnett, Jonathan Gillett, Josh Greenwood, Joshua Santos, Justin Stone, Kainalu Hagiwara, Kalle Lindqvist, Kechao Cai, Keith Simmons, Keith Wygant, Kevin Ji, Kristoffer Haugsbakk, lawrsp, Leo Joseph Buchignani III, Luke Worth, Marco Ieni, Marco Zucconelli, Max Beutelspacher, Max Deineko, Max Nordlund, Maximilian Wolff, Miciah Dashiel Butler Masters, mjkramer, Mikhail Yakutovich, Muneeb Shaikh, Nasser Alshammari, Nasser Alshammari, Niko Felger, Nikolai Myllymäki, nikolaiam, Nicolas Forgerit, Olivier Verdier, Pancho Horrillo, Paul Milla, Paulo Schneider, Pawan Dubey, Paweł Siudak, Phil Pirozhkov, Philippe Bourdages, Piotr Grzesik, Rafi Khan, Rand01ph, rakyi, Raymond Wanyoike, Reverend Homer, Robby O’Connor, Rhommel Lamas, Sam Pablo Kuper, Saulius Menkevičius, sduthil, Sergio Ugalde, Shane Kilkelly, Sid Kapur, Somelauw, Soobin Rho, sorawee, SteveJobzniak, Sunghyun Hwang, Swaroop C H, Sylvain Benner, Szunti, Tim Stewart, timor, TinySong, Titov Andrey, Thomas de Beauchêne, Tomasz Cichocinski, tzhao11, Vincent Taing, Vlad Bokov, Vladimir Kochnev, Wieland Hoffmann, Xiang Ji, Yi Liu, zer09, Zhige Xin, Serghei Iakovlev)
Thanks to: Grant Shangreaux, Songpeng Zu, Igor Almeida, Miciah Dashiel Butler Masters, Abhishek(Compro) Prasad, Deepak Khidia, Ward Harris, Jiahao Jiang, Enze Chi