Commit graph

1538 commits

Author SHA1 Message Date
syl20bnr 7c9f612c4f core: try to fetch all env vars by calling the shell multiple times
Since bash will source different files depending on its mode, for instance
login vs. non-login shells, we fetch the env vars from both a login shell and
an interactive non-login shell. We try to cleanup the resulting file by removing
duplicates, sorting env vars etc...
2018-07-05 01:43:14 -04:00
Paolo G. Giarrusso f4506aa445 Extract env. vars from *login* shell
Bash needs the `-l` flag, as pointed out in 6220ace290 (r29480946) and https://github.com/syl20bnr/spacemacs/issues/10906#issuecomment-402184237.
2018-07-05 00:04:52 -04:00
syl20bnr a861177c4a core: fix potential undefined function error with transient hooks
Fixes #10930
2018-07-04 15:38:15 -04:00
syl20bnr ba2f692366 core: add GPG_AGENT_INFO and SSH_AGENT_PID to ignored env vars 2018-07-04 03:44:15 -04:00
syl20bnr d5f5b5ab7e core: fix parsing of env vars with empty value 2018-07-04 03:42:28 -04:00
syl20bnr 21551b6995 core: fix parsing of env vars
Was working on Windows but not macOS.. weird
2018-07-04 03:08:52 -04:00
syl20bnr ee5166949d core-env: add support for Windows
Fix fetching of env. vars on Microsoft Windows (tested with Windows 10 only)
2018-07-04 02:34:54 -04:00
syl20bnr d0401f8640 core: allow spaces in env vars values as well as empty values 2018-07-04 02:34:10 -04:00
et2010 e33638d920 Fix typo 2018-07-03 10:31:05 -04:00
syl20bnr a013d86874 core: update environment variables management
* add new dotfile function `dotspacemacs/user-env`
* add ignored env. vars with variable spacemacs-ignored-environment-variables
* ignore env vars: SSH_AUTH_SOCK and DBUS_SESSION_BUS_ADDRESS
* update documentation in DOCUMENTATION.org
* update .spacemacs.template with new function
* rename environment file from spacemacs.env to .spacemacs.env
* move location of .spacemacs.env file to home or dotdirectory
* add a header to the generated .spacemacs.env file to explain what it is
* make SPC f e e fallbacks to the function dotspacemacs/user-env if the user
  manages the env var by themselves
* make SPC f e E call the new function dotspacemacs/user-env
* sort environment variables in .spacemacs.env file
2018-07-03 01:25:28 -04:00
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 f1f8db002a core: display time spent in user-config in home buffer 2018-06-16 15:21:58 -04:00
syl20bnr d3c594512d core: don't call user-load unless we are dumping 2018-06-16 14:46:17 -04:00
syl20bnr b8e0fdd4a5 core: fix pdumper enabled on SPC f e R no matter what 2018-06-16 11:05:05 -04:00
syl20bnr 034cb2bd66 Always import environment variables on linux
Seems that some people does not get their PATH right on Linux. Add back the
import for all Linux distro.
2018-06-16 03:38:16 -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
syl20bnr d19a20beb4 Load window-purpose when window configuration changes 2018-06-14 02:07:02 -04:00
syl20bnr de858b2953 Fix startup buffers without spaceline mode line 2018-06-14 01:10:44 -04:00
syl20bnr 18d397a98a Add dotspacemacs-server-socket-dir to dotfile template 2018-06-14 00:43:49 -04:00
Carl Lange d92da11bcd Allow setting of server-socket-dir in .spacemacs 2018-06-14 00:42:13 -04:00
Benjamin Reynolds 594fdc8f05 Rename spacemacs/mplist-get functions to be more descriptive
* spacemacs/mplist-get -> spacemacs/mplist-get-values
* spacemacs/plist-get -> spacemacs/mplist-get-value
* refactor spacemacs/mplist-get-value to be defined in terms of mplist-get-values

Ref #10803 See [comment]

[comment]: https://github.com/syl20bnr/spacemacs/pull/10803#issuecomment-395292606
2018-06-14 00:15:49 -04:00
syl20bnr 0ce597e205 core: improve docstring for dotspacemacs-mode-line-unicode-symbols 2018-06-11 12:45:28 -04:00
syl20bnr 6a51d557da Also defer helm loading on idle 2018-06-11 01:34:08 -04:00
syl20bnr bd316f4c30 core: add new macro spacemacs|add-transient-hook
Transient hooks vanishes when they are evaluated.
2018-06-11 01:30:18 -04:00
syl20bnr 86b4e6f76b core: move point before [ S P A C E M A C S ] at startup
Avoid having multiple "Open quick help..." in the minibuffer at startup.
2018-06-10 03:05:35 -04:00
syl20bnr ac247396f3 core: avoid unecessary output in message buffer at startup
Unless in debug mode.
2018-06-10 02:49:51 -04:00
syl20bnr c2211b32e3 core: new function configuration-layer/load-file 2018-06-10 02:46:16 -04:00
syl20bnr 39bf9e516c core: fix warning about quoted lambda in core-configuration-layer.el 2018-06-10 02:45:34 -04:00
syl20bnr a0a3ff0c20 core: refactor the progress bar
Spacemacs is slow to startup so better give it a not buggy progress bar :-)

* Move progress bar code to core-progress-bar.el file
* Remove the counters at the end of the progress bar
* Fix update of the progress bar value
* Fix progress bar size when staring Emacs maximized
2018-06-10 02:32:29 -04:00
James Wang f393ca2ef7 Fix editing style test 2018-06-09 00:05:28 -04:00
syl20bnr 3a2740f7e6 Remove dotspacemacs-helm-xxxx variables from templates
Seems we forgot to remove it when they have been moved to the helm layer.
2018-06-08 02:24:38 -04:00
syl20bnr b282e553ba Use dotspacemacs backward compatibility macro instead of aliases 2018-06-08 02:24:38 -04:00
syl20bnr 9539e4206d Rename Vim style related variable to vim-style-xxxxx
Update the documentation
Define alias for backward compatibility
2018-06-08 02:24:38 -04:00
Benjamin Reynolds 6c7e9f9a73 Fix typo in spacemacs/plist-get docstring (#10803) 2018-06-07 00:55:37 -04:00
Miciah Masters e0b751bee3 Avoid non-idempotent use of push in init code
Replace push with add-to-list in layer init functions and related code.

Modify spacemacs|add-toggle to check for and update an existing toggle in
spacemacs-toggles and only create a new toggle if none already existed.

Replace a conditional push onto erc-packages with use of :toggle.

When initializing which-key, set which-key-replacement-alist to its default
or customized setting before adding all the Spacemacs replacements.  We
want to keep the stock replacements but avoid adding duplicates of the
Spacemacs replacements.

Replace the emacs-lisp-mode-hook lambda with a named function to avoid
adding duplicate hooks (which can add duplicate definitions of the
evil-surround pair).
2018-06-05 22:17:13 -04:00
Nasser Alshammari 8da66b5e37 Latest updates of spacemacs-theme (#10810) 2018-06-05 16:47:24 -04:00
syl20bnr 2df4db5c60 core: new function spacemacs/plist-get
Made to play well with modified plist. Replace spacemacs/mplist-get by
spacemacs/plist-get in spacemacs|add-company-backends
2018-06-04 01:19:44 -04:00
syl20bnr 7e8989de35 Add emacs-27.0.50 as default value in dotfile template 2018-05-31 23:20:27 -04:00
Compro Prasad 13633b081b Fixes #10723 - Properly check for executable rather than file (#10735)
Given the executable name is "emacs", now this executable will be auto located
as per the PATH environment variable.
2018-05-31 23:17:46 -04:00
bmag 72bd99b10a define-toggle: add option for custom off-message 2018-05-28 19:00:37 +03:00
syl20bnr 92fac263a8 core: re-evaluate layer variables after package configuration
It allows to put package variable with a default value set by spacemacs in
the layer variables. For instance to set treemacs position to the right, you can
now do it like this:

(treemacs :variables treemacs-position 'right)
2018-05-28 11:23:57 -04:00
Miciah Dashiel Butler Masters 78297be625 Fix various typos
* Fix various isolated typos

"apppend" -> "append"

"availabe" -> "available"

"Descripti using ternon" -> "Description"

"you have not them" -> "you don't have them"

"new on" -> "new one"

"plained" -> "curved"

"repel" -> "REPL"

"vairable" -> "variable"

* Fix a few errors in the CoffeeScript layer readme

Add a missing "the".

Correct a reference to the layer as "javascript" to "coffeescript".

Fix the syntax on the link to CoffeeLint.

* Fix typos: "dofile" -> "dotfile"

* Fix typos: "formated" and "formating"

"formated" -> "formatted"

"formating" -> "formatting"

* hy: Fix docstrings in funcs.el

Fix copy-and-pasted docstring text for
spacemacs/hy-shell-eval-current-form-and-go and
spacemacs/hy-shell-eval-region-and-go.

* Fix typos: "indendation" -> "indentation"

* Fix typos: "the the", "a a"

Fix duplicated (or misplaced) articles.

* Fix typos: "wether" -> "whether"

* Fix typos: "intialize" -> "initialize"
2018-05-23 22:12:30 -04:00
timor 3e4b35a46d core: Ask if unsaved changes in issue reports are about to be discarded
This prevents against working on an issue report and then accidentally killing
its buffer and losing everything just right before you are done....
2018-05-23 23:44:19 +03:00
JAremko ce5842fa63 Remove old tools. 2018-05-20 18:09:22 +03:00
syl20bnr d65bcb592d core: disable auto-start of Emacs server by default 2018-05-20 04:43:26 -04:00
syl20bnr caf5822f40 dump: add variable dotspacemacs-enable-emacs-pdumper
Controls wether the portable dumper is activated or not
2018-05-20 04:43:18 -04:00
syl20bnr 4407bfa8b3 dump: better cancelling of running dumping process 2018-05-20 03:58:48 -04:00
syl20bnr 7ff9b6ac17 dump: force redump with SPC f e R 2018-05-20 03:58:48 -04:00
syl20bnr 583630df1b dump: save dump files in .cache/dumps directory 2018-05-20 03:58:48 -04:00
syl20bnr 3fa3311985 dump: add function spacemacs/emacs-with-pdumper-set-p 2018-05-20 03:58:48 -04:00
syl20bnr ea1b4815b8 dump: improve messages feedback when dumping 2018-05-20 03:58:48 -04:00
syl20bnr 4f75fe5e3b dump: add command line parameter --force-dump
If provided on the command line then force a redump of Emacs not matter what.
2018-05-20 03:58:48 -04:00
syl20bnr af4b4df031 dump: fix warning about layer list changed outside of dotfile func. 2018-05-20 03:58:48 -04:00
syl20bnr 5dec672861 dump: new function configuration-layer/message 2018-05-20 03:58:48 -04:00
syl20bnr fe0e743ab5 dump: dump Emacs only if the layer list has changed 2018-05-20 03:58:48 -04:00
syl20bnr 067abee605 dump: new function spacemacs-run-from-dump-p 2018-05-20 03:58:48 -04:00
syl20bnr 82e02c9ba2 Fix typo in default value for dotspacemacs-emacs-dumper-dump-file 2018-05-20 03:58:48 -04:00
syl20bnr 088f0f9dc2 dump: revert minimum version to 25.1 2018-05-20 03:58:48 -04:00
syl20bnr 89035d837b dump: add dotspacemacs variables to control the dump
* new dotvariable dotspacemacs-emacs-pdumper-executable-file
* new dotvariable dotspacemacs-emacs-dumper-dump-file
* dump emacs if dotspacemacs-emacs-pdumper-executable-file is non nil
2018-05-20 03:58:48 -04:00
syl20bnr d7a5137c56 Rename function to dump variables
Remove potential ambiguity with an actual whole spacemacs dump
2018-05-20 03:58:48 -04:00
syl20bnr 14b71afb42 dump: auto-dump emacs on load if layer list has changed
* rename core-dump.el to core-dumper.el
* add function spacemacs/dump-emacs
* explicitly load core-dumper.el file in init.el
* asynchronously dump emacs if layer list has changed, see special buffer
  *spacemacs-dumper* for the output.
2018-05-20 03:58:48 -04:00
syl20bnr 2580e43c66 Add support for dumping Spacemacs
Create dump with:

   ./emacs --batch -l ~/.emacs.d/dump-init.el \
           -eval '(dump-emacs-portable "spacemacs.pdmp")'

Load dump with:

   ./emacs --dump-file=spacemacs.pdmp

User can require/load additional libraries in new dotfile function:

   dotspacemacs/user-load
2018-05-20 03:57:54 -04:00
syl20bnr 862e81e49a core: hide loading message at startup unless --debug-init 2018-05-20 02:44:34 -04:00
syl20bnr e9b8ed34c5 core: fix bug where layers.el files could be loaded multiple times 2018-05-20 02:33:28 -04:00
syl20bnr b58a1d7b73 core: fix bug where packages.el files were loaded multiple times 2018-05-20 02:32:57 -04:00
Igor Kupczyński d726ee750a Add new doom-themes
- doom-city-lights
- doom-dracula
- doom-nord
- doom-nord-light
2018-05-15 01:37:55 +03:00
syl20bnr d8479b8f72 core: add optional append local paremeters to spacemacs/add-to-hooks 2018-05-12 00:18:51 -04:00
Benno Fünfstück d0833bc8a2 core-themes-support.el: add eziam theme names 2018-05-09 23:40:17 +03:00
William Roe 4acf1cd6d6 Add kaolin themes to spacemacs-theme-name-to-package
This helps with using kaolin themes, so that spacemacs doesn't try to install
the specific theme name from ELPA.
2018-05-09 23:02:05 +03:00
syl20bnr 2be6e4e338 core: update Quelpa to last version
Fixes #10653
2018-05-07 01:05:41 -04:00
Tad Fisher 662b73282c Make the Emacs server optional
Add `dotspacemacs-enable-server`, which if non-nil prevents Spacemacs from
calling `(server-start)` at init.
2018-02-24 19:49:39 -05:00
nashamri abda28419a Latest updates for spacemacs-theme 2018-02-24 19:49:38 -05:00
Szunti d5f7d8b5ca Lastest is a typo 2018-02-17 16:09:06 -05:00
JAremko 115deaa1a9 fix doc string 2018-02-17 17:32:12 +02:00
JAremko 191476fe04 work on the new export 2018-02-17 17:31:52 +02:00
syl20bnr 64cf9f56f6 core: remove unused defvar dotspacemacs-default-package-repository
NOT USED FOR NOW... well not used forever :-)
2018-01-29 13:53:05 -05:00
syl20bnr 72c89df995 core: add dotspacemacs-gc-cons variable 2018-01-28 23:22:38 -05:00
Bet4 1499c4fae6 core: Revert "Inhibit recentf when inserting startupify lists"
This reverts commit 0d5fb6da28.
2018-01-28 23:05:41 -05:00
JAremko a2ae2fd539 Shorten tags in the new exporter 2018-01-27 16:56:54 +02:00
syl20bnr 59d8be19d8 core: fix not found packages with dotspacemacs-install-packages all
Temporary fix, need to find the root cause.
2018-01-25 00:11:15 -05:00
Aaron Jensen c86940c4f0 core: Use https for org package repo 2018-01-22 23:34:54 -05:00
syl20bnr 617d63095a core: install bootstrap and pre packages first
Fix issues with built-in org being lodaed before org-plus-contrib.
2018-01-22 11:33:13 -05:00
syl20bnr 1580dfd094 core: fix path to rollback slots 2018-01-22 11:23:59 -05:00
syl20bnr 723604d904 core: initialize Org earlier to prevent version conflicts
Should resolved all our issues with the wrong version of Org being loaded
before Org-plus-contrib! 🎉
2018-01-21 12:15:51 -05:00
Carl Lange 6da15a0c6e add .spacemacs config for the initial scratch message 2018-01-19 23:04:10 -05:00
Philippos Boon Alexaki 20270dd848 Fix base16-theme mapping for all themes in core-themes-support.el 2018-01-19 22:58:00 -05:00
deb0ch 1b61b11074 .spacemas.template: add newline after each configuration variable
This allows to navigate between params using the '{' and '}' paragraph movements
and makes it clearer wether description is for the variable below or above.
2018-01-17 23:14:35 -05:00
deb0ch 781e86d0f7 document how to use a local version of a package 2018-01-17 23:07:52 -05:00
syl20bnr ac215effc2 Fix dotfile tests for dotspacemacs-mode-line-theme variable 2018-01-17 11:28:52 -05:00
Muneeb Shaikh 81e54f5039 core: remove obsolete :powerline-scale variable from template 2018-01-17 14:41:04 +05:30
syl20bnr 0f646b884d Add properties for mode-line theme, remove powerline-scale
Since we have now a variable for the mode-line theme, it makes sense to move
the scaling of the mode-line to this variable. Thus the property
=:powerline-scale= of variable dotspacemacs-default-font has been removed and
it is replace by the property =:separator-scale= used in the variable
=dotspacemacs-mode-line-theme=.

This commit also adds a the property =:sperator= for the variable
=dotspacemacs-mode-line-theme= which allows to set the separator type.

Example of the final result:

   dotspacemacs-mode-line-theme '(all-the-icons
                                  :separator cup
                                  :separator-scale 1.5)

Documentation has been updated to reflect the changes.
2018-01-16 22:59:29 -05:00
syl20bnr 6f7b57650b core: backport battery fix for macOS 2018-01-12 22:37:04 -05:00
syl20bnr a131c89909 core: add support for mode-line themes
New layer variable `dotspacemacs-mode-line-themes`:

Set the theme for the Spaceline. Supported themes are `spacemacs',
`all-the-icons', `custom', `vim-powerline' and `vanilla'. The first three
are spaceline themes. `vanilla' is default Emacs mode-line. `custom' is a
user defined themes, refer to the DOCUMENTATION.org for more info on how
to create your own spaceline theme."

See DOCUMENTATION.org changes for more info.

This commit adds support for `spaceline-all-the-icons` package.
2018-01-11 23:53:44 -05:00
syl20bnr 4ecd015fe8 core: process all post-init function after all the init functions
With this commit, the new loading order for package configuration is:
- pre-init functions for all packages
- init function of all packages
- post-init functions for all packages
2018-01-11 23:52:18 -05:00
syl20bnr 80a10f79db core: fix alphabetical order of package configuration loading
It was reversed in commit e9fb5285f4
2018-01-11 10:43:44 -05:00
syl20bnr e9fb5285f4 core: execute all pre-init function before init and post-init
Fixes loading order issues when declaring use-package hooks.

Fixes #9979
2018-01-10 23:33:15 -05:00
syl20bnr 6438d986ab core: update quelpa library 2018-01-10 10:38:33 -05:00
Igor Avdeev 709782bdc1 Fix handling of windows paths of package archives
- the configuration-layer//resolve-package-archives function was adding
  extra `http://` for windows paths
2018-01-10 00:13:01 -05:00
Miciah Masters ea6c2657b8 core: Fix unescaped character literals
Escape left and right bracket character literals to avoid the following
warning:

    Loading ‘core-dotspacemacs’: unescaped character literals `?[', `?]' detected!
2018-01-08 01:49:28 -05:00
Miciah Masters 2245b73db7 core: Fix lambda quoted with '
Delete the quote preceding the lambda in spacemacs|add-toggle to avoid
the following warning:

    .emacs.d/core/core-toggle.el: (lambda (x) ...) quoted with ' rather than with #'

While #' would be more correct than ', there is no need to quote the
lambda at all.
2018-01-08 01:48:51 -05:00
syl20bnr 46c5dfa4a7 cl-loop instead of loop 2018-01-06 21:38:13 -05:00
duianto b3ddc962ec Fix 3 typos 2018-01-06 11:25:23 -05:00
syl20bnr 326965d4ce Happy New Year 2018! 2018-01-04 02:00:25 -05:00
syl20bnr 6b865deebf core: add support for major mode specific toggles
Modify macro spacemacs|add-toggle to create additional sets of functions for
each supported modes when the toggle is major mode specific.

A toggle is major mode specific when it is bound to keys using the keyword
:evil-leader-for-mode

Updare documentation to add a section on toggles in the Spacemacs concepts.
2018-01-04 01:40:52 -05:00
nashamri f50626c353 Latest updates of spacemacs-theme 2017-12-23 17:28:31 +02:00
syl20bnr 2ed3946d7b emacs-lisp: improve nameless configuration
- Change nameless prefix to > instead of default :
- Change toggle to SPC m >
- Set nameless separator to nil in order to make it work with any type or separator
- Add diminish unicode ⧁
- Define some default global aliases for Spacemacs source code
- Rename layer variable emacs-lisp-nameless-mode to emacs-lisp-hide-namespace-prefix
- Make variable nameless-current-name safe as a local variable for string values
- Set nameless prefix for core-configuration-layer.el
2017-12-17 23:30:24 -05:00
JAremko b4b7d63e41 Fix typo 2017-12-03 18:13:36 +02:00
JAremko 87a2145b4a New export (first working version) 2017-12-03 17:54:55 +02:00
duianto 26c6623148 Remove stray characters from output-dir argument
The output-dir argument seems to have gotten some stray characters.
2017-12-01 18:44:28 +02:00
nashamri d42ec614f2 spacemacs-theme support for treemacs mode 2017-12-01 18:39:12 +02:00
JAremko 489d70c0f0 work on the new html export 2017-11-19 06:28:46 +02:00
syl20bnr 36c15b79f6 core: move versions to new file core/core-versions.el
As we need to have version files available in tests without loading the whole
init.el file.
2017-11-12 10:04:12 -05:00
syl20bnr f290565098 core: new dotfile variable dotspacemacs-use-spacelpa
If non-nil then Spacelpa repository is the primary source to install
a locked version of packages. If nil then Spacemacs will install the lastest
version of packages from MELPA. (default nil)

The default value will be true when we bust all the major bugs.
2017-11-12 09:33:58 -05:00
syl20bnr a363f85d33 core: for elpa dir, replace branch name by a variable set in .lock
New variable configuration-layer-elpa-subdirectory set in .lock file.
Now users creating a branch based on develop or master won't reinstall
all the packages in a new elpa directory.
2017-11-01 23:23:34 -04:00
syl20bnr 8a5771559e core: change scope of elpa stable variables
make them public when they are used outside of core-configuration-layer.el
make them private when they are used only on this file.
2017-11-01 23:23:34 -04:00
syl20bnr e7cd788d06 Update Change Log for 0.200.10 2017-11-01 22:12:57 -04:00
syl20bnr 0ea72bcde7 core: fix computation of elpa directory
Use const input for function configuration-layer/elpa-directory
New const variables used as input:
- configuration-layer--elpa-root-directory
- configuration-layer--rollback-root-directory

Fix computation of elpa directory by using expand-file-name.

Fixes #9805
2017-10-31 00:35:18 -04:00
syl20bnr d15772fadc core: add support for GnuPG signed Spacelpa archives
New dotfile variable dotspacemacs-verify-spacelpa-archives
Default value is nil for now, users wanting to help testing this feature can
set it to t and delete the directory ~/.emacs.d/.cache/stable-elpa and restart
Emacs to download the Spacelpa archive and verify it.

Update function configuration-layer/stable-elpa-download-tarball to download
signature files as well.

Update function configuration-layer//stable-elpa-untar-archive to verify the
downloaded archive using epg library.

Example of signature files can be found here:
https://github.com/syl20bnr/spacelpa/releases/tag/v0.300
2017-10-30 00:57:48 -04:00
syl20bnr bd6226d9fb core: add e key bindings in Quick Help home screen 2017-10-29 22:10:44 -04:00
syl20bnr 41dcccc22b core: add spacemacs-buffer/error like spacemacs-buffer/warning
New function spacemacs-buffer/error that gather all the errors and then display
them in the startup buffer under a new list entry `Errors:`.
Add shortcut `e` to go to errors list entry.
New private function configuration-layer//error to wrap spacemacs-buffer/error
and increment the startup error count that is displayed in a red mode-line when
startup process finishes.
2017-10-29 22:01:39 -04:00
syl20bnr 247b63dac1 core: add (please wait) msg when downloading spacelpa 2017-10-29 21:47:08 -04:00
syl20bnr e63febeafd core: add optional parameter to spacemacs/set-mode-line
redisplay: it non nil then force refresh of the display
2017-10-29 21:43:43 -04:00
syl20bnr 2a11da4ad7 core: add check for gzip executable on Windows to install spacelpa 2017-10-29 21:39:35 -04:00
syl20bnr cc73871cb4 core: Fix issue with custom settings and lazy loading
Fixes #9736
2017-10-29 10:39:48 -04:00
syl20bnr 65d5e42b8e core: add support for stable ELPA repository hosted on GitHub
Use the official spacelpa ELPA repository.
address: https://github.com/syl20bnr/spacelpa

ELPA repository configuration is now in a file called .lock at the root of the
git repository. Its goal is to setup the ELPA repositories for a given branch
and it should not be modified! The philosophy of Spacemacs is to never fork the
git repository and this lock file has been put in the repo on purpose.

Only the master branch will have a .lock file that points to spacelpa, the
develop branch won't use the stable ELPA repository and will continue to behave
like it always did.

BUT for testing purpose and until the first major version of Spacemacs that uses
the stable ELPA repo is released I push a .lock file to develop branch that
points to spacelpa.

I understand that some people can be annoyed by this so the variable
configuration-layer--elpa-archives can be overriden by putting a setq in your
dotfile in the user-init function like this:

  (setq configuration-layer--elpa-archives
        '(("melpa"    . "melpa.org/packages/")
          ("org"      . "orgmode.org/elpa/")
          ("gnu"      . "elpa.gnu.org/packages/")))
2017-10-29 01:20:25 -04:00
syl20bnr 3d10ad6742 core: change default value of dotspacemacs-elpa-subdirectory
Set it to emacs-version as it is the saner defaults here. When updating the
version of emacs, packages should be byte-recompiled. Thus this is safer to
isolate each package by emacs-version.
2017-10-29 00:27:00 -04:00
duianto e2a45e0c39 Fix switch to home buffer moves prev buffers cursor
Switching to the Spacemacs home buffer `SPC b h`, moves the previous buffers
cursor to the top.
2017-10-21 16:32:00 +03:00
bmag 615ed388a5 cycle themes: handle backward argument better and cleanup
Change meaningful values of BACKWARD argument to just nil and non-nil.

Get rid of spacemacs--cycle-themes, it was unnecessary.

Create a defvar for spacemacs--cur-theme.
2017-10-21 15:33:12 +03:00
nashamri 466d6e9b2e Update with the latest changes of spacemacs-theme 2017-10-21 14:45:45 +03:00
JAremko 5b636bcfc9 Update export script 2017-10-18 06:30:43 +03:00
AdrieanKhisbe 9eab3bb6aa Enable backward theme cycling and add dedicated transient-state
Original Commit List
- update cycle-spacemacs-theme function to work backward with universal arg
- add a transient-state hydra to cycle through the modes
- move the transient-state definition in the +distribution spacemacs-base
- refactor using hydra syntax for expression as command
- modified cycle-theme to handle negative command argument
- add keybing for helm-themes in the transient-state
2017-10-15 11:29:21 -04:00
Dean Todevski 4a5ecb2a17 Add support for gruvbox theme variants
Adds support for setting the following gruvbox theme variants
as dotspacemacs-theme:

  - gruvbox-dark-soft

  - gruvbox-dark-medium

  - gruvbox-dark-hard

  - gruvbox-light-soft

  - gruvbox-light-medium

  - gruvbox-light-hard
2017-10-15 11:08:01 -04:00
syl20bnr 41e91a9dcf core: move all dotspacemacs-helm-* variables to layer variables
Add support for backward compatibility via a macro instrad of defvaralias as the
latter was not sufficient to support all the use-cases.
2017-10-08 10:29:34 -04:00
syl20bnr 5ed671b2d5 core: remove wizard question about completion engine.
The default value is now at the distribution level. The user must put the ivy
layer explicitly in the dotfile.

This to be consistent with filetree package which is neotree by default in
the standard spacemacs distribution.

I'm afraid that we add too much wizard questions as the helm/ivy case will
happen more and more in the future. Neotree and Treemacs are the first layers
to follow the Helm and Ivy pattern. I don't want to add a fourth question to
the wizard which makes it heavy and is not as useful for new users.
2017-10-08 10:29:26 -04:00
syl20bnr 67aaf51631 Move neotree to its own layer in new +filtree folder
Add neotree layer to default spacemacs distribution.
2017-10-08 07:51:43 -04:00
syl20bnr dc58801c7d core: refactor shadow mechanism
Shadowing is now control by layer property ':can-shadow' only.
can-shadow is a commutative relation, if layer1 can shadow layer2 then layer2
can shadow layer1.
the shadow operator is a binary operator accepting two layer names, it is not
commutative and the order of the operands is determined by the order of the
layers in the dotfile (like the ownership stealing mechanism).

If ':can-shadow' is set explicity to nil in the dotfile then the layer won't
shadow any layer.
For instance to install both ivy and helm layer:

   (setq dotspacemacs-configuration-layers
   '(
     ivy
     (helm :can-shadow nil)
     )

note that due to the commutative relation the above example can also be
written (in this case, ':can-shadow' should be read ':can-be-shawdowed'):

   (setq dotspacemacs-configuration-layers
   '(
     (ivy :can-shadow nil)
     helm
     )
2017-09-25 23:07:22 -04:00
syl20bnr 95699ee61c core: add layer shadowing system
Layers can now declare in their layers.el file that they shadow one or more
layers using the following functions:

- configuration-layer/shadow-layers
- configuration-layer/shadow-layer

Those function are commutative so:
    (configuration-layer/shadow-layer 'layer1 'layer2)
is the same as
    (configuration-layer/shadow-layer 'layer2 'layer1)
and means that
layer1 shadows layer2
and
layer2 shadows layer1

The typical use-case is helm and ivy layers. Helm shadows the ivy layer and
Ivy shadows the helm layer.

Shadowing is sensitive to the order of declaration of layers in the dotfile,
for instance:

    (setq dotspacemacs-configuration-layers '(
      helm
      ivy
     ))

means that ivy shadows helm so helm layer is effectively ignored,
whereas

    (setq dotspacemacs-configuration-layers '(
      ivy
      helm
     ))

means that helm shadows ivy so ivy layer is effectively ignored.

This mechanism can be turned off using the :can-shadow keyword:

    (setq dotspacemacs-configuration-layers '(
      ivy
      (helm :can-shadow nil)
     ))

means that both ivy and helm layers will be installed (not recommended in this
case)

Note that the `:can-shadow` mechanism will be fully implemented in a next
commit.
2017-09-21 23:56:09 -04:00
JAremko f0bc44738d Add new Docker files for CI
[tools&CI] Add arg -Q to Emacs calls where it is appropriate
2017-08-31 19:12:45 +03:00
syl20bnr 82220fce3a Remove old wording "contribution layer" 2017-08-28 11:33:55 -04:00
Alex Coventry 937a7c3f0c Fix reference to cfgl-package-distant-p 2017-08-27 22:12:58 -04:00
JAremko e1d9249500 CI: fix race in dirs creation 2017-08-19 16:28:45 +03:00
JAremko 014b0e1b44 fix deploy.. again 2017-08-19 16:28:35 +03:00
JAremko 06301b2212 Improve exporting/testing 2017-08-18 20:50:21 +03:00
syl20bnr 2bd08116aa core: fix update of packages
t parameter is not needed anymore since the passed list distant-packages is
already filtered to contain only used packages.

Fixes #9420
2017-08-13 13:21:54 -04:00
syl20bnr 06d7ddbeea core rename argument to NO-CONFIRMATION
instead of `always-upate`.
2017-08-12 20:48:35 -04:00
syl20bnr 6afa753848 core: remove variable configuration-layer--used-distant-packages
- remove variable configuration-layer--used-distant-packages
- rename function configuration-layer//get-distant-packages to
  configuration-layer//filter-distant-packages to better reflect what it does
- Add argument PREDICATE to configuration-layer//filter-distant-packages
- New cfgl-package methods: cfgl-package-used-p and cfgl-package-distant-p
- Add unit tests
2017-08-12 20:48:35 -04:00
bmag 0fb17fa9fa dsm-vars: fix docstrings and comments, better consistency
Add `(default X)` comment to almost all dotspacemacs variables in
dotspacemacs/init function in the template. Exempted are variables with long
default values. (e.g. dotspacemacs-themes)

Remove `(default X)` from doctsring of dotspacemacs variables. It isn't
necessary, the built-in help system already displays the default value
automatically.

Fix some minor grammar and spelling mistakes.
2017-08-09 16:12:51 +03:00
JAremko 98ff30f4bf Fix CI with nested "Features:" list 2017-08-06 08:16:13 +03:00
JAremko c9b668ed30 QF current export with relocate files 2017-08-03 10:23:53 +03:00