Commit graph

172 commits

Author SHA1 Message Date
syl20bnr
cbb61070fd Replace some emacs-user-directory vars and update documentation 2016-06-23 00:25:04 -04:00
Eivind Fonn
92b48eadea 💣 Drop support for Emacs 24.3
Spacemacs now needs at least 24.4 to launch.
2016-06-20 22:05:56 -04:00
syl20bnr
117dcba0ed Revert "Drop support for Emacs 24.3"
This reverts commit 31bab70397 making
a new commit to put TheBB as the author.
2016-06-20 22:05:12 -04:00
syl20bnr
31bab70397 💣 Drop support for Emacs 24.3
Spacemacs now needs at least 24.4 to launch.
2016-06-20 21:55:36 -04:00
syl20bnr
50d5cdd054 Fix error with which-key--buffer on startup
Use the hook instead.
Fixes #6358
2016-06-18 00:19:59 -04:00
syl20bnr
e1826c9382 Disable vi tilde fringe in which-key buffer 2016-06-13 00:39:08 -04:00
syl20bnr
ad72dab624 Move pcre2el key bindings to SPC x r prefix
Also document it.
Move everything to spacemacs-base since the new prefix is not as invasive
2016-06-13 00:01:25 -04:00
ralesi
9047b7b5ce Move pcre2el to spacemacs-base.
Fixes #5953
2016-06-12 23:06:22 -04:00
syl20bnr
dc94784e70 Remove leuven theme from spacemas-ui-visual and simplify default value
for dotspacemacs-themes, set only the spacemacs themes.
2016-06-12 21:15:10 -04:00
syl20bnr
dc822d5b9e space-doc: disable line numbers and resized images
Resize images to 600 pixel width (exclude README.org for now)
Disable line numbers.
2016-06-10 15:50:45 -04:00
syl20bnr
9d7259d83a vhl: fix error message "vhl no load function for extension..." 2016-06-10 00:49:13 -04:00
syl20bnr
c288a391bf vhl: move all extension functions into respective eval-after-load 2016-06-09 23:21:51 -04:00
Don March
520910f41a Enable volatile highlights for evil and undo-tree 2016-06-09 23:13:09 -04:00
syl20bnr
2b44ce33a2 ahs: improve transient state hint 2016-06-09 22:52:50 -04:00
syl20bnr
f5799ab1ec ahs: move b, f and / key bindings to helm and ivy
Correctly augment the docstring based on the presence of b,f and /
bindings using dynamic hint.
b,f and / are not available if none of helm or ivy layers are used.
2016-06-09 22:50:24 -04:00
syl20bnr
ed2d8227b0 Minor refactor of spaceline config 2016-06-09 20:45:11 -04:00
Johannes Goslar
bdb49476a8 fix startup crash if powerline is excluded
This prohibits a crash when powerline is excluded in dotspacemacs-additional-packages
2016-06-09 10:30:44 +02:00
syl20bnr
d07b0aa16f spacemacs-ui-visual: move functions to funcs.el
And sort them
2016-06-08 10:41:14 -04:00
syl20bnr
89d5aad0a5 Various tweaks to golden-ratio configuration
- Prefer add-to-list function to alter golden-ratio variables so the lists
are less likely to grows as users reload their spacemacs config.
- Move some config to layers when appropriate
- Sort alphabetically the values
- Remove some duplicates in exclude-modes
2016-06-08 10:17:08 -04:00
syl20bnr
7d0ef58150 Add quit-window to golden-ratio-extra-commands 2016-06-08 09:52:01 -04:00
Eivind Fonn
403e8441fb don’t double-check ws-butler-mode 2016-06-06 14:12:11 +02:00
bmag
e552921273 ahs-to-iedit: restrict iedit region to ahs range 2016-06-05 00:28:44 -04:00
syl20bnr
51b413dde0 Diminish evil-mc prefix in mode-line 2016-06-02 22:47:37 -04:00
syl20bnr
c0f19caa5a New local package spacemacs-whitespace-cleanup
Under toggle SPC t W with lighter W
2016-06-02 22:39:41 -04:00
Eivind Fonn
5a4e8a3f01 core: add toggle for whitespace cleanup 2016-06-02 21:02:30 -04:00
syl20bnr
29bae4026a Improve lighter consistency of toggles
Make global and local whitespace mode lighters identical
Add a lighter for fill column indicator
2016-06-02 20:57:15 -04:00
syl20bnr
8f45a94095 ivy: perspective -> persp-mode and layout
Fix wrong package name.
Replace `perspective` words by `layout`
2016-05-31 23:39:47 -04:00
syl20bnr
430a3e4797 fold method: split config and add dot variable to template
Move the evil part to evil config and used :toggle keyword
Also add the variable to the dotfile template
2016-05-31 22:59:39 -04:00
Muneeb Shaikh
371dd85ff2 core: add another code folding method using origami to spacemacs-editing
* layers/+spacemacs/spacemacs-editing/packages.el (spacemacs-editing/init-origami):
  add origami package and initialize it
* core/core-dotspacemacs.el (dotspacemacs-override-evil-folding): new
  variable to allow choosing between different code folding methods.
  Currently supported `evil' and `origami'
2016-05-31 22:46:04 -04:00
Eivind Fonn
62fc64f745 core: special toggle API for minor modes 2016-05-31 22:33:44 -04:00
JAremko
74e0644759 add more checkers 2016-05-29 23:03:23 -04:00
syl20bnr
303e76b769 remove remaining packages-funcs.el and packages-config.el 2016-05-27 00:32:05 -04:00
Eivind Fonn
ac104d2739 Move helm setq out of with-eval-after-load 2016-05-23 12:59:11 +02:00
syl20bnr
fd756a124e New layer nlinum + revert default support for linum
To use nlinum + nlinum-relative add the nlinum layer

Note: there are still work to do on nlinum-relative, at some point we
may replace linum by nlinum completely.
2016-05-20 23:57:32 -04:00
syl20bnr
e06929ddaf Replace smooth-scrolling package by a native alternative
My tests show that scroll-conservatively does the job, need your
feedback on this.

See https://github.com/syl20bnr/spacemacs/issues/6097
2016-05-20 23:36:13 -04:00
syl20bnr
46b880668c Fix neotree key bindings 2016-05-20 17:00:27 -04:00
syl20bnr
0b84b1be66 Fix errors with last revert and move neotree funcs 2016-05-19 20:22:07 -04:00
syl20bnr
ee1d7d4bfa Revert "New layer spacemacs-projects containing projectile and neotree"
This reverts commit 3f22eeaa03.

Projectile is used in various places and can be considered a base
package.
2016-05-19 20:22:07 -04:00
syl20bnr
156cead380 Revert "Experimenting with 0.2 delay to redraw relative line number"
This reverts commit 8fd78b06f3.
2016-05-19 14:33:36 -04:00
syl20bnr
8fd78b06f3 Experimenting with 0.2 delay to redraw relative line number
0.2 is the same delay for additional UI improvements like matching
parens and highlighting.
2016-05-19 13:46:06 -04:00
syl20bnr
27a665e616 Move nlinum-relative to spacemacs-evil layer
Make more sense in this layer since it is used mainly by Vim style users
2016-05-17 00:05:14 -04:00
codefalling
fa4eeb49f0 Replace linum by nlinum and nlinum-relative 2016-05-17 00:02:41 -04:00
syl20bnr
a086a5ba17 Fix hs-minor-mode activation in prog modes 2016-05-16 21:02:33 -04:00
syl20bnr
1f993bddf6 Rename spacemacs-helm and spacemacs-ivy layers to helm and ivy
For ivy users: be sure to update your dotfile by replacing spacemacs-ivy
by ivy
2016-05-15 22:24:27 -04:00
syl20bnr
1aa0e4bfa3 Rename default-org to default-org-config 2016-05-15 22:03:46 -04:00
syl20bnr
70aa0105a4 Move default config for ivy to spacemacs-completion
Use a custom package name. Also dispatch functions to funcs.el files.
Disable ivy-hydra for now.

With this default configuration users using helm instead of ivy still
get a good ivy base configuration (UI and Key bindings).
2016-05-15 22:03:25 -04:00
syl20bnr
cbda059ea0 Move default config for helm to spacemacs-completion
Use a custom package name. Also dispatch functions to funcs.el files.
With this default configuration users using ivy instead of helm still
get a good helm base configuration (UI and Key bindings).
2016-05-15 22:02:18 -04:00
syl20bnr
bb3e8eca42 Move ido config to new layer spacemacs-completion 2016-05-15 21:55:57 -04:00
syl20bnr
8fb5d86be0 Fix dumb error with spacemacs-projects-packages variable 2016-05-15 19:39:49 -04:00
syl20bnr
1f2d817708 New spacemacs-misc layer, move request to it 2016-05-14 12:28:57 -04:00
syl20bnr
3f22eeaa03 New layer spacemacs-projects containing projectile and neotree 2016-05-14 11:57:32 -04:00
syl20bnr
cf202d60f3 Move undo-tree and ws-butler to spacemacs-editing 2016-05-14 11:57:28 -04:00
syl20bnr
f959bc4b19 Move popup, popwin, fill-ci, hl-todo to spacemacs-ui-visual 2016-05-14 11:57:27 -04:00
syl20bnr
3f2bdcc03b Move restart-emacs to spacemacs-ui 2016-05-14 11:57:27 -04:00
syl20bnr
7d25e9dab4 Move some evil related packages to spacemacs-evil 2016-05-14 11:57:27 -04:00
bmag
50bd692e98 Layouts: gui/terminal frames should have different workspaces
Use two different sets of workspaces for each perspective - one
set for graphical frames, and one set for terminal frames.
This is required because workspaces from graphical frames are not
compatible for use in terminal frames.
2016-05-11 20:46:53 -04:00
syl20bnr
738f425276 Add spaceline-compile to spacemacs-post-user-config-hook
Also improve support for GUI client using a server launcher with
emacs --daemon.
2016-05-11 20:07:26 -04:00
Eivind Fonn
a652a66e45 spaceline: don’t use :when in new-version segment
This will be necessary with the new version of Spaceline, but it works
fine with the old version too.
2016-05-09 23:24:44 +02:00
Daniel Luna
76610294a7 long-lines' toggle now accepts prefix arguments.
This commit introduces two new options to add-toggle:

:prefix, a symbol that is bound to the raw prefix argument (as
in `(interactive "P") forms).

:on-message, an expression overriding the default 'on' toggle
message (useful to document a toggle's argument).

These new options are applied to long-lines' toggle, so we can choose
how many lines to toggle it on via a raw prefix argument.
2016-05-06 13:53:41 +02:00
Eivind Fonn
2136a8e74f bracketed-paste: Use :toggle instead of :if
Also fix the actual expression :-)
2016-05-06 13:53:30 +02:00
Aaron Jensen
9d186c5f4c spacemacs-editing: disable bracketed paste for 25+
Bracketed paste is built into emacs 25+
2016-05-06 13:47:17 +02:00
Eivind Fonn
325067bc10 unimpaired: Move hunk commands to version-control 2016-05-06 13:27:44 +02:00
Iuri Fernandes
cc6d315ea6 Adapt hunk commands to other diff tools 2016-05-06 13:26:12 +02:00
Christoph Paulik
67aeb73655 Defer loading of persp mode until after user-config
fix #3881
2016-05-05 13:01:47 +02:00
bmag
2a669648aa layouts: don't double activate persp-mode
If persp-mode is already activated, don't re-activate it. Should fix bug
where running dotspacemacs/sync-configuration-layers (SPC-f-e-R) resets
all the layouts.
2016-05-01 11:14:32 -04:00
bmag
cf3068e4ef layouts: persp-activated-hook -> persp-activated-functions
persp-mode has renamed persp-activated-hook to
persp-activated-functions, so we gotta update the hook.
2016-04-29 23:01:48 -04:00
JAremko
42db6c7a41 Move space-doc to the Spacemacs core bundle 2016-04-29 20:01:56 -04:00
syl20bnr
e18b1cbe0e Move vi-tilde-fringe hook to shell layer
Also replace lambdas by named functions
2016-04-29 17:48:00 -04:00
Russell Sim
c115a66210 Disable tilde fringe in shell/comint modes 2016-04-28 16:01:01 +02:00
sooheon
a0d244d47f Remove duplicate definition of symbol-highlight 2016-04-28 15:38:02 +02:00
Eivind Fonn
052896e782 Fix ace-delete-window bindings 2016-04-12 23:02:03 -04:00
Muneeb Shaikh
d19c6eb566 spacemacs-evil: add evil-visual-mark-mode
This adds toggle for evil-visual-mark-mode on SPC t `

Fix #5619
2016-04-12 22:47:26 -04:00
syl20bnr
5d84473fca layouts: update arity for persp-before-switch-functions
The hooked functions must take 2 parameters, I just ignored the
second one as well. Not sure of the implication but it seems to work.
2016-04-12 22:09:19 -04:00
syl20bnr
859f28473b layouts: use MELPA version of persp-mode 2016-04-12 22:05:24 -04:00
bmag
526a0334d7 Synchronize Neotree window when changing context
Fix Neotree losing track of its window when changing workspaces or
layouts.
2016-04-08 23:12:26 -04:00
Fabien Dubosson
ac5cfcf2a1 Improve SPC s c to support evil-search-module
Fix #1326
Fix #5101
2016-04-08 23:11:12 -04:00
syl20bnr
ff7b839df0
org: various tweaks to spacemacs-org and org layers
- move evil-org to org layer
- move org-plus-contrib to spacemacs-org layer
- remove toc-org from the list of package for org layer
- give ownership of the org package to org layer
- invent a package named default-org in spacemacs-org layer in order
  to let the ownership of org package to org layer
- remove unnecessary :mode keyword in use-package from for org
2016-04-07 22:11:22 -04:00
d12frosted
8b0c69c8cd
move org essentials to spacemacs distro 2016-04-07 22:11:22 -04:00
syl20bnr
97f4473849 Remove erroneous :defer for spaceline package.
Thanks TheBB :-)
2016-04-07 14:57:48 -04:00
syl20bnr
63dc8f7ea0 shell: add support for SPC u SPC ' to open shell in current buffer
Works as well for all `SPC a s ...` key bindings.
2016-04-07 14:52:41 -04:00
Fabien Dubosson
1a45754cad Visualy align some keybindings 2016-04-05 12:53:44 +02:00
Fabien Dubosson
57e91fe035 Correct more <SPC> to SPC 2016-04-05 12:52:54 +02:00
syl20bnr
c4e6dd752b spaceline: remove :defer 0.1 for now 2016-04-03 22:25:39 -04:00
syl20bnr
cc5afabcae Experimental: defer by 0.1s spaceline
spaceline can sometime take 1s to load when Emacs starts, using
:defer 0.1 seems to smooth the startup a little bit.
2016-04-03 00:38:13 -04:00
syl20bnr
6770969b6f core: add variables for core-spacemacs-buffer
- spacemacs-buffer-version-info
- spacemacs-buffer-logo-title
2016-04-01 00:26:19 -04:00
syl20bnr
c4d9ca8fba spacemacs layouts and workspaces tweaks
- add `l` to workspace transient state to go back to layout transient
  state
- remove erroneous `l` and `h` keys on layouts transient state
- unique documentation toggle for layouts and workspaces
- reformat and sort transient states documentation
2016-03-30 14:29:55 -04:00
syl20bnr
dd14afaf26 workspaces: new workspace clones the current one
Fixes #5566
2016-03-25 10:37:03 -04:00
syl20bnr
63df395975 Fix eyebrowse error when syncing layers
Fixes #5573
2016-03-25 01:12:30 -04:00
syl20bnr
a33b0d02c7 Revert unwanted change in previous commit 2016-03-25 01:11:32 -04:00
syl20bnr
16afe67907 core: enhance lazy installation of layer
Now Spacemacs will ask for layer installation when opening a file with
a known file type.
The auto-mode-alist entries are added by the file auto-layer.el in
the layers directory.

Easy insert of forms for lazy initialization can be done with the
interactive function configuration-layer//insert-lazy-install-form.

Change default value of dotspacemacs-enable-lazy-installation to t.
2016-03-25 01:03:37 -04:00
syl20bnr
82efa16dab Fix long-lines toggle and rename it
Fix global version of the toggle
Rename it to highlight-long-lines
2016-03-22 09:38:37 -04:00
syl20bnr
828ae8113d Replace enforce-column layer by a toggle on SPC t 8 2016-03-21 21:18:36 -04:00
syl20bnr
f48b251968 Delete SPC j b and move SPC j u to SPC j b
By convention, jump back should be on `b`, not `u`
Since `SPC j u` is free, move as well `SPC j U` to `SPC j u`.

`SPC j b` for bookmark jump is already available under `SPC f b`
2016-03-21 20:02:56 -04:00
syl20bnr
944960daf8 Move eyebrowse to spacemacs-layouts layer and add documentation
Add toggle capability with ? for workspaces transient state
Remove the variable eyebrowse-display-help
2016-03-20 21:48:06 -04:00
syl20bnr
c2296f71f8 Put back holy and hybrid in spacemacs base layer
They are not optional
Also fixes some bugs like toggling hybrid mode from holy mode and
toggling off the hybrid mode.
2016-03-16 21:59:44 -04:00
syl20bnr
cfdfcfab40 Revert hybrid mode to use an evil hybrid state
To follow with the refactor of the holy-mode which uses the
emacs state of evil mode, the hybrid mode now uses the evil hybrid
state.

We have now a clean symmetry between all the editing styles where each
of them has an associated state:
- vim = insert state
- emacs = emacs state
- hybrid = hybrid state

This gives consistent properties to all editing styles and most
importantly allows to have true isolation of key binding maps. It has
the huge benefit to be easier to explain since now everything can
leverage the evil API regarding key bindings.

Note: Regular Emacs key binding functions can still be used for emacs
and hybrid states so there is no regression with the previous
implementation, we just gain better isolation at the cost of a few
duplicated lines of code which will be easy to update as needed if
evil upstream code changes (this code has been commented with a link
to the upstream code).
2016-03-16 21:30:03 -04:00
syl20bnr
82fdd9a511 Use evil in holy-mode
Motivation

While disabling Evil in holy-mode makes its implementation shorter and
sounds elegant on the paper, in practice it puts a big burden on the
configuration parts which need to know if Evil is enable or not. This is
a bad separation of concerns and the bunch of fixes that we were forced
to do in the past weeks shows this issue. Those fixes were about
removing the knowledge of the activation of Evil by implementing new
dispatching functions to be used by layers, this is cumbersome and makes
Spacemacs layer configuration more subtle which is not good. There was
additional bad consequences of the removal of Evil state like the
impossibility to use Evil lisp state or iedit states, or we would have
been forced to implement a temporary activation of Evil which is
awkward.

Instead I reintroduce Evil as the central piece of Spacemacs design thus
Evil is now re-enabled in holy-mode. It provides the abstraction we need
to isolate editing styles and be able to grow the Spacemacs
configuration coverage sanely. Layers don't need to check whether the
holy mode is active or not and they don't need to know if Evil is
available (it is always available). We also don't need to write
additional dispatching functions, this is the job of Evil, and I think
it provides everything for this. Ideally configuration layer should be
implemented with only Evil in mind and the holy-mode (and hybrid-mode)
should magically make it work for Emacs style users, for instance we can
freely use `evil-insert-state` anywhere in the code without any guard.

Evil is now even more part of Spacemacs, we can really say that
Spacemacs is Emacs+Evil which is now an indivisible pair. Spacemacs
needed this stable API to continue on the right track.

While these changes should be rather transparent to the user, I'm sorry
for this experimental period, I failed to see all the implications of
such a change, I was just excited about the possibility to make Evil
optional. The reality is that Spacemacs has to embrace it and keep its
strong position on being Emacs+Evil at the core.

Implementation

- insert, motion and normal states are forced to emacs state using an
advice on `evil-insert-state`, `evil-motion-state` and
`evil-normal-state` respectively. These functions can be used freely in
the layer configuration.
- A new general hook `spacemacs-editing-style-hook` allow to hook any
code that need to be configured based on the editing style. Functions
hooked to this hook takes the current style as parameter, this
basically generalize the hook used to setup hjkl navigation bindings.
- ESC has been removed from the emacs state map.
- Revert unneeded changes
  - Revert "evil: enter insert-state only from normal-state"
    commit bdd702dfbe.
  - Revert "avoid being evil in deft with emacs editing style"
    commit f3a16f49ed.

Additional changes

All editing style packages have been moved to a layer called
`spacemacs-editing-styles`

Notes

I did not have time to attack hybrid mode, I should be able to do it
later.
2016-03-13 21:16:55 -04:00
syl20bnr
4d6053695f Reapply lost commit 55ef063
Add smartparens to comint-mode
2016-03-09 19:59:17 -05:00
syl20bnr
6efd7c1362 Reapply lost commit 4b00495
Allow <count>G in doc-view to go to page
2016-03-09 19:57:12 -05:00
bmag
3a3d8f34ca Use window-numbering-assign-func for neotree number
Using window-numbering-assign is simpler and more reliable than using
window-numbering-before-hook and neo-after-create-hook.

Duplicates older commit 2ff22934e7 which
somehow didn't survive the splitting of spacemacs layer into smaller
spacemacs-* layers.
2016-03-08 16:41:56 +02:00