Commit graph

24 commits

Author SHA1 Message Date
syl20bnr
6220ace290 core: rework environment variables and PATH management
See updated DOCUMENTATION.org and FAQ.org for more info.

* add core-env.el
* add library load-env-vars.el
* add bootstrap package dotenv-mode.el
* remove spacemacs-environment from bootstrap layer
* remove dotspacemacs variable dotspacemacs-import-env-vars-from-shell
* remove dotspacemacs variable dotspacemacs-improt-env-vars-shell-file-name
* add new key binding SPC f e e to open spacemacs.env file
* add new key binding SPC f e E to reload environment variable from env file
* add new key binding SPC f e C-e to re-initialize the env file from shell.
2018-06-25 02:55:28 -04:00
syl20bnr
e1c8f1e3d6 Use add-to-list instead of push
Avoid pushing several time the same element on top of evil-surround-pairs-alist
2018-06-16 03:54:38 -04:00
syl20bnr
1abce5ec10 Correctly import PATH environment variable with setenv
Previously we were only updating exec-path.
2018-06-15 10:29:48 -04:00
syl20bnr
d28990537f Add new variable dotspacemacs-import-env-vars-shell-file-name
Used to fetch the environment variables. This allows to keep shell-file-name
untouched.
2018-06-15 02:40:44 -04:00
syl20bnr
9ee832955a core: async import of env.vars and add new dotfile variable
* new variable dotspacemacs-import-env-vars-from-shell
 * asynchronous import of environments variables
 * move loadenv function to funcs.el
 * update documentation
2018-06-15 01:38:07 -04:00
fiveNinePlusR
75f1d915a8 [CORE] synchronize the environment variables from the default shell 2018-06-14 20:12:26 -04:00
syl20bnr
55d18a1a3a Move SPC s c to bootsrap layer 2018-06-14 00:21:56 -04:00
Codruț Constantin Gușoi
8754b24509 Fixes errors when env file does not exist at startup 2018-06-12 23:05:14 +03:00
syl20bnr
c12b72090c Cache PATH and env vars. fetched with exec-path-from-shell
See updated documentation in this commit.
2018-06-11 03:54:51 -04:00
Josh Santos
7944ed2634 Fix environment variable setting for go and rust layers 2018-06-09 01:22:56 -04:00
syl20bnr
b282e553ba Use dotspacemacs backward compatibility macro instead of aliases 2018-06-08 02:24:38 -04:00
syl20bnr
326965d4ce Happy New Year 2018! 2018-01-04 02:00:25 -05:00
Alexander Miller
6c77ed57a5 core: make it possible to define an evil state face without an evil cursor.
treemacs: do not define an evil cursor for treemacs.
2017-12-01 19:27:48 +02:00
bmag
450da6f204 spacemacs-evil-cursors: make them easy to configure
Motivation: so layers with their own evil states (e.g. treemacs) can also
contain their own cursor configuration

Example usage: `(spacemacs/add-evil-cursor "treemacs" "RoyalBlue1" '(hbar . 0))`
2017-10-15 17:15:23 +03:00
Paul
d3cef31ed6 Fix docstring for spacemacs/evil-smart-doc-lookup 2017-07-06 12:29:22 +02:00
bmag
f5a736cdc1 Set evil-search-module correctly
- Just setting evil-search-module is not enough. If Evil is loaded already, we
  must call evil-select-search-module as well to actually change the
  key-bindings to use the correct search module.
- If the user didn't set hybrid-mode-use-evil-search-module so it's not bound,
  we treat it as if it was set to nil, to match the documentation and the
  default value of hybrid-mode-use-evil-search-module.
2017-03-13 21:06:07 +02:00
syl20bnr
eef1a87e98 Fix evil-search module activation
The search module must be set before requering evil otherwise the variable is
set but it has not effect and `isearch` module is the active module.
2017-02-07 16:53:33 -05:00
syl20bnr
c7e47de938 evil: enable evil-search search module in evil state.
Add new hybrid variable hybrid-mode-use-evil-search-module to switch evil
search module to its own which is closer to Vim. Default is nil.

Fixes #5101
2017-02-03 19:36:19 -05:00
syl20bnr
fb27ede558 Bump year in copyright headers
Happy New Year 2017!
2017-01-05 23:08:17 -05:00
Eivind Fonn
53d2ae4f15 Remove evil-smart-goto-definition 2016-09-14 11:38:14 +02:00
Eivind Fonn
928983da47 Refactor jump to definition
This commit defines:

- spacemacs-default-jump-handlers: a list of functions that can jump to
  definition in ALL modes.

- spacemacs-jump-handlers-MODE: a list of functions that can jump to
  definition in MODE.

- spacemacs-jump-handlers: a buffer-local list of functions that can
  jump to definition. This is made up of the values of the two previous
  variables whenever a given major mode is activated.

- spacemacs/jump-to-definition: a function that tries each function in
  spacemacs-jump-handlers in order, and stops when one of them takes us
  somewhere new.

- spacemacs|define-jump-handlers: a macro that
  * defines spacemacs-jump-handlers-MODE, possibly filled with initial
    functions
  * defines a function that is added to the hook of the given MODE
  * binds “SPC m g g” of that MODE to spacemacs/jump-to-definition

This is an attempt to harmonize all the different approaches to jumping.
Specifically,

- Existing intelligent jump packages that work for only a single mode
  should go to the beginning of spacemacs-jump-handlers-MODE. E.g.
  anaconda for python, ensime for scala, etc.

- Packages like gtags that work for several modes (but potentially not
  all) and which is dumber than the intelligent jumpers should go the
  the END of spacemacs-jump-handlers-MODE.

- Packages like dumb-jump that work for all modes should go to
  spacemacs-default-jump-handlers.

In all cases the order of the jump handlers in each list should be from
most to least intelligent.

Fixes #6619
2016-08-22 15:08:25 +02:00
Steven Allen
22daaea708 Fix jumping backwards after calling spacemacs/evil-smart-goto-definition
Ensure that the "previous position" mark is set correctly. Credit goes to
@eltechnic0 to figuring this out.

Fixes #4942
2016-08-17 20:39:33 +02:00
bmag
9c16c40724 New macro: define regexp-bound text object 2016-07-05 00:23:16 -04:00
syl20bnr
f23ecf0b12 Rename +distribution to +distributions 2016-06-08 22:17:04 -04:00
Renamed from layers/+distribution/spacemacs-bootstrap/funcs.el (Browse further)