Commit graph

1588 commits

Author SHA1 Message Date
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
JAremko
d8addb1674 Improve README.org template 2017-08-02 20:42:12 +03:00
JAremko
f5e58bfb37 Shorten messages 2017-08-02 20:41:57 +03:00
JAremko
2ef230369a Convert new exporter into standalone tool 2017-08-02 09:16:23 +03:00
d12frosted
d5ae3a6a1f
use url-hexify-string to encode issue report body
Fixes #9301
2017-07-31 14:58:57 +03:00
duianto
38bf5fd9f2
Update spacemacs template, paste ts docstring
"micro-state" was the previous name for "transient-state".
Reword the sentence and quote the kill-ring variable.
Duplicate the docstring to the dotspacemacs-enable-paste-transient-state
variables docstring in core-dotspacemacs.el.
2017-07-25 21:51:26 +03:00
JAremko
fc00cfa882 core-documentation-edn refactoring 2017-07-25 01:56:29 +03:00
JAremko
b7955d66d4 Assume "no" for lazy installation in the --batch mode 2017-07-25 01:56:13 +03:00
JAremko
72659c59ab Initial impl of export to intermediate doc formats 2017-07-25 01:56:03 +03:00
JAremko
106f98497e Update README.org template
Replace some local Org links with GitHub ones
2017-07-23 01:22:20 +03:00
nashamri
c2fe26dd83 Latest spacemacs-theme updates 2017-07-17 20:18:32 +01:00
Sebastian Nagel
5bca990d8f Fix the base16-solarflare mapping in core-themes-support.el 2017-07-06 08:48:39 +02:00
Eivind Fonn
f4b53d2a4f Rename :depends to :requires 2017-07-03 09:54:53 +02:00
syl20bnr
e2e532bb49 core: change <function>p to <function>-p suffixes for consistency
Also defined aliases for backward compatibility with `usedp` functions.
2017-07-02 10:09:39 -04:00
Eivind Fonn
2ee6c2c977 Fix: Better checking of used packages 2017-07-02 09:41:38 -04:00
Eivind Fonn
db4adde089 Fix: Check owner of dependent packages 2017-07-02 09:41:38 -04:00
Eivind Fonn
69b5f83d5a Fix: Check dependencies for owned packages too
Fixes #9134
2017-07-02 09:41:38 -04:00
syl20bnr
3419247ee8 core: remove unused functions
configuration-layer/load-or-install-protected-package
configuration-layer/load-or-install-package
2017-07-01 18:06:47 -04:00
syl20bnr
dfad77dc47 core: update some doc strings
Rename arguments PKG to PKG-SPECS for consistency with make-layer function.
2017-07-01 17:48:31 -04:00
syl20bnr
cc0d8cafb2 core: rename configuration-layer/sync to configuration-layer/load
Replace the optional argument `no-install` by a global variable named
`spacemacs-sync-packages`.
Rename the hooks to reflect the renaming of the function.
Rename the flag `--no-sync` to the more explicit `--no-package-sync`
2017-07-01 10:54:37 -04:00
ZarsBranchkin
1e340f62f3 add --skip-sync startup flag
This adds a new startup flag `--skip-sync`. It will force spacemacs to skip
package synchonization. This can be useful in cases when you're working under
poor or restrictive network.

Thanks, @zaript, for this idea!
2017-07-01 09:54:21 -04:00
JAremko
907306a117 optimize space-doc-mode 2017-06-25 00:14:29 +03:00
JAremko
48ef00e094 set pretty-docs nil by default 2017-06-23 22:29:55 +03:00
JAremko
c024c746b7 fix export 2017-06-23 22:29:41 +03:00
JAremko
ff333c3c3e Add pretty docs option to .spacemacs 2017-06-23 22:29:31 +03:00
Eivind Fonn
fcf186faff Fix cfgl-layer docstring (concat not evaluated) 2017-06-23 09:27:05 +02:00
JAremko
cd3aa05fab Improve issue reporting 2017-06-22 12:02:28 +02:00
Eivind Fonn
08561d8631 core: implement :depends for package declarations
This replaces the older pattern
:toggle (configuration-layer/package-usedp ..)

This implementation ensures that :disabled-for honors dependent packages, i.e.
if package a depends on package b, which is owned by layer c, and layer c is
disabled for layer d, then neither package a nor b will be configured for layer
d. Previously, this was only true for package a, but not b.

This commit also fixes:

- configuration-layer/describe-package now shows which post-init and pre-init
  functions are disabled, if any
- Does not recreate all layer objects unconditionally when calling
  configuration-layer/discover-layers. Previously, this led to all layers being
  recreated after e.g. `SPC h SPC`, without any of the dotfile information.
  Since this information is now necessary for
  configuration-layer/describe-package, it’s important that we don’t clear the
  indexed layers when invoking this function.
2017-06-22 11:53:05 +02:00
Aaron Jensen
26aa1c13c8 Remove spurious quote
Fixes parinfer's parsing of .spacemacs
2017-06-21 00:45:16 -07:00
ZarsBranchkin
4353535a98 Fix disabled scrollbar remains 2017-06-21 09:37:05 +02:00
Eivind Fonn
ef12c6073a theming: robustness
Disable all applied themes in all cases, when a theme is applied
2017-06-18 12:38:01 +02:00
Eivind Fonn
c3d344cb8c Allow “default” theme to load properly 2017-06-16 09:30:32 +02:00
nashamri
8d88a2ba1f Little update to spacemacs-theme 2017-06-15 13:24:31 +02:00
duianto
6a84fb3c0e Replace obsolete which-key functions
Problem:
Two which-key functions doc-strings, state that they are obsolete:

(which-key-declare-prefixes KEY-SEQUENCE REPLACEMENT &rest MORE)
This function is obsolete since 2016-10-05;
use ‘which-key-add-key-based-replacements’ instead.

(which-key-declare-prefixes-for-mode MODE KEY-SEQUENCE REPLACEMENT &rest MORE)
This function is obsolete since 2016-10-05;
use ‘which-key-add-major-mode-key-based-replacements’ instead.

Solution:
Replace the obsolete functions.

Searching with `SPC /` through the .emacs.d folder, didn't find any other
occurrences of these functions.
2017-06-15 13:22:13 +02:00
Dela Anthonio
484a99dad0 core: Add support for more doom themes
This commit address #9084.
2017-06-14 10:49:45 +02:00
Codruț Constantin Gușoi
8754575550 Fixes insert point for lazy loaded layers
A recent change in the `.spacemacs.template` made it so that the
`dotspacemacs-configuration-layers` variable name can be found inside a
comment right before the expression that sets it's value. This makes the
lazy insertion fail to detect the proper place to add lazy loaded
layers.

This fix solves the immediate problem but maybe a better solution can
be found.
2017-06-08 21:03:45 +02:00
Eivind Fonn
e61e915555 Revise .spacemacs docstrings
This is an attempt to tighten up the language of the docstrings for
initialization and configuration functions. I realize that's pretty
subjective, so please only use what makes sense. Below is a break-
down to avoid seeming _too_ arbitrary.

Rationale
---------
Headings: We know they're functions, so we don't need to say
'X function'. 'Layer configuration' is called that in the other
functions.

Instructions: Say what I should do.

Other: `dotspacemacs/init' -- 'very beginning' is the more common
English idiom.

If I sound strident, it's just 'cause I'm trying to be terse.
This is all opinion so YMMV. I hope it helps.
2017-06-07 12:58:06 +02:00
Benno Fünfstück
abcad3bab0 themes: use package-activate to support dependencies 2017-05-30 10:05:22 +02:00
Eivind Fonn
9c9bdf749a Don’t look in .spacemacs.d/layers if it doesn’t exist 2017-05-29 11:52:31 +02:00
JAremko
e425d50292 don't reroot non-org files
We don't have all Spacemacs files at spacemacs.org so we
shouldn't change links to such files to relative ones.
2017-05-28 04:09:29 +03:00
JAremko
26eb3ff1df Rework spacemacs//reroot-link (now it makes links relative) 2017-05-28 02:35:13 +03:00
bmag
6fd0d2573b New dotvariable: auto-generate layout names
If dotspacemacs-auto-generate-layout-names is non-nil, and the user
tries to open a layout in a position that doesn't yet have a layout,
then create a new layout with an automatically generated name.
2017-05-25 13:40:28 +02:00
Eivind Fonn
0d5fb6da28 Inhibit recentf when inserting startupify lists 2017-05-25 13:35:36 +02:00
Eivind Fonn
03a8f6733f Check toggle condition in status function 2017-05-24 13:05:17 +02:00
Eivind Fonn
7a6a2d0abb More robust dotspacemacs/add-layer
- Don’t greedily search until last paren, just the first one
- Better call on newlines
2017-05-24 12:47:21 +02:00
Ben Gamari
1320f8e8fa Resolve symlinks when warning about duplicate layers
This allows the user to, for instance, include the spacemacs tree as a
git submodule of their configuration repository without seeing
superfluous warnings.
2017-05-24 12:26:25 +02:00
MadAnd
5eeaed75d9 transient-state: Improve handling of additional bindings
Add two new functions: `spacemacs/transient-state-register-add-bindings`
and `spacemacs/transient-state-register-remove-bindings` to prevent layer
authors and end users from dealing with the underlying variables' subtleties.
2017-05-23 16:03:03 +02:00
JAremko
4e83167f88 fix TOC with same headings 2017-05-22 18:32:47 +03:00
JAremko
d16bf3adad update toc-org in spacefmt 2017-05-22 18:32:47 +03:00
Fuqiao Xue
00db1e3d4b Mention the change of dotspacemacs-check-for-update in the documentation
Its default value was changed to nil in 9d72b12245.
2017-05-18 18:22:24 +02:00
syl20bnr
107f70ddf4 replace uninstall with delete also in dotfile template 2017-05-14 22:10:43 -04:00
Leo Joseph Buchignani III
cb8de28b8f replaced "uninstall" with "delete"
to avoid conflation of loading/ignoring with downloading/deleting.
2017-05-14 22:09:02 -04:00
MadAnd
9f3e656c8f Add support for building multi-file local packages with Quelpa
At the moment a Quelpa recipe like `(recipe :fetcher local)` is being translated
to something like
`(recipe :fetcher file :path "my-layer/local/my-pkg/my-pkg.el")`. So we can
build simple single-file local packages.

This commit changes it to translate to the package directory instead of exact lisp
file, so we can build multi-file local packages. Thus, the above example will be
translated to `(recipe :fetcher file :path "my-layer/local/my-pkg")`.

Also, add the relevant info to LAYERS.org.
2017-05-14 13:39:02 -04:00
JAremko
86f4278d4c core: inline permalinks in documentation 2017-05-14 12:49:23 -04:00
JAremko
94205a3e81 Fix css links and various org links 2017-04-29 10:45:52 -04:00
nashamri
f1701ed490 Add permalinks to the doc headings 2017-04-29 10:44:27 -04:00
syl20bnr
8db21403d7 Fix support for fancy frame title 2017-04-28 23:39:41 -04:00
JAremko
9b922957ef spacefmt better logging 2017-04-28 23:29:43 -04:00
JAremko
edc24ef750 MV CONTRIBUTING & COMMUNITY to the root after pub 2017-04-28 23:29:43 -04:00
JAremko
84715966ad Fixes syl20bnr/develop.spacemacs.org#10 2017-04-28 23:25:02 -04:00
Kepi
7e266f4f3c Improve support for fancy frame title 2017-04-28 23:16:22 -04:00
Uri Sharf
cb30ec1df8 Add support for fancy frame title
Acked-by: Uri Sharf <uri.sharf@gmail.com>
2017-04-28 23:13:25 -04:00
JAremko
ca1d3c141a Add spacefmt test to CI 2017-04-20 22:42:21 -04:00
JAremko
fed4a44189 do not annotate HLines with :PROPERTIES: 2017-04-19 23:00:00 -04:00
JAremko
8f982e945c Fix CI 2017-04-19 23:00:00 -04:00
JAremko
798561befa make spacemacs/publish-doc less verbose 2017-04-19 23:00:00 -04:00
nikolaiam
4c6968c297 Fix notation inconsistencies in .spacemacs.template
Replace all instances of <Something x y> with `Something x y', add to missing
2017-04-17 23:17:35 -04:00
Robert (Robby) O'Connor
9660a90022 grammar fix
This was introduced in a85634c. The grammar wasn't correct here -- so this fixes it.
2017-04-17 19:49:16 -04:00
syl20bnr
462f74e7fa doc: Rename copied file CONTRIBUTE.org to CONTRIBUTING.org
Instead we can fix the bad link directly in index.html of the website repo.
2017-04-17 18:05:35 -04:00
smile13241324
c3c2970a50 Fix broken links to missing README files in layers list to fix #8291
Some of the layers do not supply a README.org file which caused
invalid links in the layer list. To avoid this I have changed
spacemacs//generate-layers-from-path to only add links to layers
with a valid README.org file.

I have also removed an invalid check to exclude the non existing directory
"distribution" from the layers list. I think that originally the folder
"distributions" should have been excluded but this is not longer
a feasible action as there is at least one layer with a valid README.org
file in there today. So now we add links to all layers providing a
README.org file independent of their category.
2017-04-17 17:58:02 -04:00
smile13241324
092f98f51c Fix broken link to CONTRIBUTE.org in documentation to fix #8290
In 2015 a file CONTRIBUTE.org was existing in the /doc folder.
In addition a CONTRIBUTING.md file was existing in the project root folder.
This was merged into a CONTRIBUTING.org file, which is still located in the project root.
However the documentation publishing system was still looking only in the doc folder.
In addition the external documentation is still referring to the old CONTRIBUTE.html which is not longer existing.

I have now included a new function called prior to publishing
which is copying the documents from the projects root into the doc folder.
As a side effect it renames the CONTRIBUTING.org to the old CONTRIBUTE.org
to support the external documentation.
2017-04-17 17:54:42 -04:00
syl20bnr
f7599c4665 core: Fix spacemacs/diminish-undo and add documentation about it 2017-04-13 00:17:24 -04:00
hodge
099bd00bb9 add a interactive function spacemacs/diminish-undo 2017-04-12 23:51:51 -04:00
JAremko
3f84a535f2 Improve spacefmt
- Add new test cases and fixes
- Asks for arguments
- cleanup code
2017-04-11 23:38:45 -04:00
syl20bnr
2d0c3ae92c Rename dotspacemacs-zone-when-idle-for to dotspacemacs-zone-out-when-idle
Set key binding to SPC T Z
Improve the configuration a bit by selecting only the most interesting pgm
2017-04-09 23:55:00 -04:00
JAremko
96be9c9aeb zonefy 2017-04-09 23:26:14 -04:00
Yi Liu
c97983b090 Fix spelling 2017-04-09 22:59:06 -04:00
Alexander Iljin
7e3c4a3ac3 Fix some typos in the dotfile template comments 2017-04-09 18:16:57 -04:00
syl20bnr
12eacab665 Fix typo in release note 2017-04-06 23:12:47 -04:00
syl20bnr
2d8d3046c6 Bump version to 0.200.9 and add release note 2017-04-06 23:10:42 -04:00
syl20bnr
f79a1693ec Update release info 2017-04-02 01:57:30 -04:00
Robert O'Connor
e9ff9f09c6 Remove trailing whitespace from all files 2017-03-26 13:06:43 -04:00
deb0ch
8226f0070f do not filter for alternating buffers 2017-03-24 22:29:52 +03:00
Steven Allen
6b08224ad7 Always return t from use-package pre/post hooks.
Hooks that don't do this will prevent any further configuration of the package.

Docs: 53bf803f1d/use-package.el (L125)
Context: https://github.com/syl20bnr/spacemacs/pull/8543/files#r106792261
2017-03-24 14:26:56 +03:00
syl20bnr
0a338d03ed core: jump-handers, :async can now take a predicate function
Allow to check wether a precondition is met before actually executing an async
jump handler.
2017-03-19 12:40:36 -04:00
bmag
e624e8f0fa Update spacemacs-theme
Updated to commit:
80f40d21ff
2017-03-13 21:13:37 +02:00
bmag
a1c02ba323 dsm-line-numbers: support parent modes, fix mode restriction
Specifying parent modes (e.g. prog-mode) in :enabled-for-modes and
:disabled-for-modes keys in dotspacemacs-line-numbers catches derived
modes (e.g. c-mode) as well.

Fix bug where an empty :disabled-for-modes and a non-empty :enabled-for-modes
enabled line numbers everywhere, instead of only in modes specified in
:enabled-for-modes. (see https://github.com/syl20bnr/spacemacs/issues/8482)

Add auxiliary function spacemacs/derived-mode-p, similar to derived-mode-p but
takes a major-mode as an argument instead of using the current major-mode.
2017-03-13 21:04:00 +02:00
syl20bnr
6212795523 core: allow users to set custom-file variable
In this case Spacemacs won't write custom variables to the
dotspacemacs/emacs-custom-settings variable.

Move setq and add-advice to spacemacs/initialize-custom-file which is now
called in spacemacs/init function just after dotspacemacs/user-init function.
2017-03-12 12:10:21 -04:00
syl20bnr
af6727c617 core: fix indentation rules for declare-prefix functions 2017-02-12 23:44:52 -05:00
syl20bnr
c5fd3dac04 core: fix theme application
Force theme do be disabled when applying them at the end of loading.
Fix computation of theme package directory when theme is a symbol.

Fixes #8319
2017-02-11 17:23:14 -05:00
syl20bnr
252547aa81 core: add support for :location keyword in dotspacemacs-themes
New functions:
- configuration-layer/get-location-directory which return the location on disk
given a location
- spacemacs//get-theme-directory which returns the location on disk of the
theme

Add note in documentation to warn about the directory name when :location local
is used, the directory name is the package name not the theme name.
2017-02-05 23:47:17 -05:00
syl20bnr
be7ba7f920 core: filter out private vars in dotspacemacs/get-variable-string-list 2017-02-05 20:28:10 -05:00
syl20bnr
ddfb996b20 line number: broke enable-p condition into functions
Also remove the docstring about SPC h SPC as it is already implied for the other
options in the dotfile.

Note that this commit modifies one condition, namely disabled mode condition.
It removes the first test:

    (not (spacemacs/mplist-get dotspacemacs-line-numbers :enabled-for-modes))

as it is not necessary since we have a `or` in the enable-p condition. Disabled
modes will be checked only if the current major mode is not explicitly enabled
(as intented).
2017-02-05 13:10:30 -05:00
deb0ch
a28e17c4d3 line numbers: finer configuration of line numbers activation 2017-02-05 12:47:19 -05:00
syl20bnr
a85634cd5a core: display message in mode-line while uninstalling packages 2017-02-03 11:40:19 -05:00
syl20bnr
5b9d368a5f core: fix loading of some themes
Fix loading of some themes like sanityinc-tomorrow-night
2017-02-02 18:28:51 -05:00
syl20bnr
747bd7c6fb core: fix broken theme application in terminal
Fixes #8252
2017-02-01 23:26:22 -05:00
syl20bnr
415b29b140 core: dotspacemacs-themes entries now accept package properties
It is now possible to use package properties like :location in
dotspacemacs-themes.

Added hooks ran at the beginning and end of configuration-layer/sync:
- configuration-layer-pre-sync-hook
- configuration-layer-post-sync-hook

configuration-layer-pre-sync-hook is used to hook the new function
spacemacs//add-theme-packages-to-additional-packages. This new function updates
dotspacemacs--additional-theme-packages variables.

Update documentation to mention the new feature.
2017-02-01 22:59:03 -05:00
deb0ch
a23761c383 minor elisp convention fix 2017-01-31 17:54:19 +01:00
syl20bnr
b3c8ebc816 core: improve theme application
Add all theme packages defined in dotspacemacs-themes to the variable
dotspacemacs-additional-packages and delay the application of user theme at the
end of startup (only when user theme cannot be applied at the very beginning
of Emacs startup).

This has nice properties:
- we leverage the layer system to handle the theme packages installation and
  cleanup.
- theme packages are automatically owned by the dotfile preventing them from
being garbage collected.
- the protected package mechanism is now obsolete since themes were the last
packages using it. This mechanism may be removed in a near future.

Thanks to TheBB for the initial idea.
2017-01-25 23:37:57 -05:00
syl20bnr
05c8ac8ba7 core: don't reset mode-line when displaying text in spacemacs home buffer 2017-01-25 23:37:57 -05:00
syl20bnr
90fe6074eb core: add some feedback test in mode-line during startup
A message is displayed while indexing layers and installing packages.
2017-01-25 23:37:57 -05:00
d12frosted
5be07e90d2 temporarily fix value of configuration-layer--elpa-archives 2017-01-25 10:38:59 +02:00
syl20bnr
9ac779a2e4 core: import spacemacs-theme into libs
Distribute spacemacs-theme with Spacemacs so we don't need to download the
package of the theme at startup. It was delaying the display of the home buffer.

Now Spacemacs fallback to spacemacs-dark theme if the user theme cannot be
applied. Spacemacs then tries to install and reapply the user theme. If
successful, at the subsequent startups the user theme is applied right away
instead of spacemacs-dark. If the installation failed then we display a warning
informing the user and suggesting some actions.

There is now no package left to be installed manually at the start of Spacemacs.
2017-01-25 00:30:31 -05:00
syl20bnr
dcfa00488e Minor comment change 2017-01-25 00:28:15 -05:00
syl20bnr
66d359f364 core: fix startup graphical glitch
Since Emacs 25.1 I got screen flickering when packages are installed on
startup.
Shuffling the UI elements removal seems to fix it on my system using X.

It may have the opposite effect on other users setup.
2017-01-25 00:24:02 -05:00
syl20bnr
973f6fe5ae core: import ido-vertical-mode into core/libs
It provides more intuitive way to display the wizard.
2017-01-23 23:52:57 -05:00
syl20bnr
1afa0f8faa core: import quelpa and package-build into core/libs
Remove the need to fetch these libs from the internet.
2017-01-23 23:52:57 -05:00
syl20bnr
1a9c5ea8ad core: force installation of org-contrib-plus instead of org
Thanks to the power provided by Lisp, hack package-install to patch on the
fly org and org dependencies installations in order to install org-plus-contrib
instead.
2017-01-22 23:23:39 -05:00
syl20bnr
65fea08de3 core: add support for local elpa repositories
It is now possible to add local elpa repositories to private variable
configuration-layer--elpa-archives for instance:

(defvar configuration-layer--elpa-archives
  '(("spacelpa" . "~/.emacs.d/.cache/spacelpa/"))
  "List of ELPA archives required by Spacemacs.")

New functions:
- configuration-layer//package-archive-absolute-pathp
- configuration-layer//package-archive-local-pathp
2017-01-22 17:55:59 -05:00
syl20bnr
1846984bd0 core: add support for interpreter-mode-alist to layer lazy installation
Update python lazy declaration as an example.
Still need to update the auto-layer.el file for other modes.
2017-01-22 13:41:04 -05:00
syl20bnr
220bbabd36 core: fix computation of package installation lazyness
Fix computation of package installation lazyness when the variable
dotspacemacs-enable-lazy-installation is set to all.

Improve methods on cfgl-layer class to be able to return a list of packages with
or without their properties.

Update tests to reflect the changes.
2017-01-22 13:37:12 -05:00
syl20bnr
7dde962ec8 core: Improve configuration-layer/create-elpa-repository
Fetch the archives before creating the elpa repository.
2017-01-22 00:40:02 -05:00
syl20bnr
984a3f956b core: fix delayed warning display in emacs 25.5
Discard the warnings produced when packages are byte-compiled which fix the
popup of the *Compile-Log* window at the end of the installation.
If emacs has been launch with argument `--debug-init` we don't discard the
warnings.
2017-01-22 00:37:10 -05:00
syl20bnr
6dac7d8ce9 core: correctly index packages installed by spacemacs core
Function configuration-layer/load-or-install-package now correctly add the
installed packages to indexed-package hash map.
Those packages are put under the special layer `system`.
2017-01-22 00:34:08 -05:00
syl20bnr
9909a95ad3 core: add ~ character to detect local package archives 2017-01-22 00:32:34 -05:00
syl20bnr
333f762b36 core: name startup-hook function and move spacemacs-buffer//startup-hook 2017-01-22 00:31:30 -05:00
syl20bnr
c6bf7f7664 core: new functions to synchronize distant ELPA packages with local repo
New functions:
configuration-layer//download-elpa-file
configuration-layer//sync-elpa-packages-files
2017-01-18 00:24:14 -05:00
syl20bnr
273e1e94d6 core: add function to create spacelpa archive-contents
This is the first stone toward Spacemacs own ELPA repository.
New function configuration-layer/create-spacelpa-repository which creates the
archive-contents file for the Spacelpa repository containing all the ELPA
packages supported by Spacemacs (and only them).
2017-01-17 00:24:32 -05:00
syl20bnr
afb2efcf56 core: minor functions renaming in core-configuration-layer.el
configuration-layer//get-packages-dependencies --> configuration-layer//get-packages-upstream-dependencies-from-alist
 configuration-layer//get-implicit-packages --> configuration-layer//get-implicit-packages-from-alist
2017-01-17 00:23:04 -05:00
syl20bnr
cf5dac00ad core: move and rename spacemacs//get-package-directory
Move it to core-configuration-layer.el
Rename it to configuration-layer/get-elpa-package-install-directory
2017-01-17 00:20:59 -05:00
syl20bnr
14e690d82c core: add parameter to configuration-layer/make-all-packages
New parameter `skip-layer-discovery', if non-nil then rediscovery of layers
is skipped (used essentialy for the tests).
2017-01-15 23:14:20 -05:00
syl20bnr
2875ed4b0c Speedup SPC h SPC for both helm and ivy
The layer files were loaded twice because the global variable controlling
the loading of layer files was not explicity set at the layer discovery phase.
2017-01-15 22:19:56 -05:00
syl20bnr
3162f0e19b core: factorize code in configuration-layer/make-all-packages 2017-01-15 22:19:56 -05:00
syl20bnr
c66f13b7cb core: fix preparation-function signature in publish-doc and exclude dockerfiles
Also respect 80 chars per lines a various places
2017-01-12 23:19:53 -05:00
syl20bnr
105a0a1ad8 Fix variable is void: system-info in spacemacs/report-issue
Fixes #8028
2017-01-12 22:19:39 -05:00
syl20bnr
fb27ede558 Bump year in copyright headers
Happy New Year 2017!
2017-01-05 23:08:17 -05:00
d12frosted
e87a251138
align list of supported themes 2017-01-04 22:12:14 +02:00
Jeffrey Enns
0a418c6286
Add missing base16 themes 2017-01-04 22:10:56 +02:00
syl20bnr
74fdbb6795 Refactor and simplify company backends declaration
Enabling a company backend for a specific mode was a tedious tasks with code
scattered at different locations, one for local variable definitions, one for
company hook function definitions and another where the backends were pushed to
the local variables (which was problematic, since we ended up pushing the same
backends over and over again with `SPC f e R`, pushes have been replaced by
add-to-list calls in the new macro).

All these steps are now put together at one place with the new macro
spacemacs|add-company-backends, check its docstring for more info on its
arguments.

This macro also allows to define arbitrary buffer local variables to tune
company for specific modes (similar to layer variables via a keyword :variables)

The code related to company backends management has been moved to the
auto-completion layer in the funcs.el file. A nice side effect of this move is
that it enforces correct encapsulation of company backends related code. We can
now easily detect if there is some configuration leakage when the
auto-completion layer is not used. But we loose macro expansion at file loading
time (not sue it is a big concern though).

The function spacemacs|enable-auto-complete was never used so it has been
deleted which led to the deletion of the now empty file core-auto-completion.el.

The example in LAYERS.org regarding auto-completion is now out of date and has
been deleted. An example to setup auto-completion is provided in the README.org
file of the auto-completion layer.
2017-01-02 00:39:04 -05:00
Adel Qalieh
8e7fe6e1f2
Add keybinding for spacemacs/alternate-window
spacemacs/alternate-window was suggested to switch between the last selected
window, or the window-analog of SPC TAB (spacemacs/alternate-buffer). This is
part of a larger family of functions, such as spacemacs/jump-to-last-layout on
SPC l TAB and eyebrowse-last-window-config on SPC l w TAB.

Resolves #7845
2016-12-27 09:50:10 +02:00
syl20bnr
f5957eb877 core: cleanup layers discovery
Some directories were added twice.
Make it more explicit in the code which directories we look into and filter out
directories that don't exist. Emit a warning if an unknown directory is
provided.
2016-12-25 15:14:20 -05:00
Bez Hermoso
5323dd60b8 Added new base16 themes 2016-12-24 21:00:30 +02:00
deb0ch
f8cb17eaf4
home-buffer: fix error on footer insertion when window is narrow 2016-12-22 16:31:13 +02:00
syl20bnr
467a5cc0ff core: move some functions to their correct source file 2016-12-18 12:05:10 -05:00
syl20bnr
28f2a6079d core: add explanation about double loading of customs in code
The explanation was in the previous commit message but it should be made more
obvious, so I move it directly into the source code.
2016-12-18 11:50:50 -05:00
syl20bnr
0ab8b7ba35 core: fix deletion of some custom settings when installing new packages
Given the loading process of Spacemacs we have no choice but to set the
custom settings twice:
- once at the very beginning of startup
- once at the very end of loading

The first application of custom settings is to be sure that Emacs knows all the
defined settings before saving them to a file (otherwise we loose all the
settings that Emacs does not know of).
The second application is to override any settings set in dotfile functions
like `dotspacemacs/user-config`, users expect the custom settings to be the
effective ones.

This double loading issue is independent from the managment method used for
custom settings. Even with a separate custom-settings file explicitly loaded in
the dotfile we would have been forced to load this file twice to acheive the
expected result described here.

Note: Loading custom-settings twice is not ideal since they can have side
effects! Maybe an inhibit variable in Emacs can supress these side effects?
2016-12-18 11:46:23 -05:00
syl20bnr
a5c486364b core: fix "select deleted buffer"
Fixes #7898 #7963 #7976

For the fix to work, the file .custome-settings in .cache directory must
be delete once.
2016-12-18 02:07:45 -05:00
syl20bnr
679da2436a core: scope minor-mode specific key bindigns under major-mode leader
Also remove unnecessary bindings for org-edit-src-exit
2016-12-16 08:57:45 -05:00
d12frosted
5dbfaf3a8d
encode ; in issue report body 2016-12-14 18:23:44 +02:00
Markus Koller
766c284332 Disable paste transient state by default
To match the default configuration template which also disables it.
See https://github.com/syl20bnr/spacemacs/issues/6251#issuecomment-262289770
2016-11-24 23:05:55 +01:00
syl20bnr
6ae2fbcfa9 core: use an advice to write custom settings to dotfile
Should fix #7816
2016-11-23 16:32:10 -05:00
syl20bnr
e699f1816a core: wrap Emacs custom in a dotfile new function
New function `dotspacmacs/emacs-custom-settings` wrapping Emacs
custom settings sexps.
`dotspacemacs/emacs-custom-settings` is called just after the user
configuration (`dotspacemacs/user-config`)

Customize cannot write its auto-generated sexps inside a function, to
accomplish this we trick Emacs by setting the custom file to a file
in `.cache` directory, the path to this file is defined by the variable
`spacemacs--custom-file`. At the startup of Emacs we read this file
to insert its content inside the function
`dotspacemacs/emacs-custom-settings` in the dotfile, this is done in the
function `spacemacs/write-custom-settings-to-dotfile`.

I don't think we need to write the custom settings to the dotfile when
exiting Emacs as well, since we do it at startup at the very beginning
(i.e. before actually loading the dotfile) we should be OK.

Fixes #5170
2016-11-22 22:55:36 -05:00
syl20bnr
034f2ea059 core: add support for conventional SPC m g G to jump-to-definition
Unfortunately the point jumps two times and we cannot use save-excursion due
to jump-to-definition being asynchronous depending on the handler.
2016-11-22 09:20:03 -05:00
Eivind Fonn
5c912e942f Don’t toggle maximized if already maximized 2016-11-20 18:59:57 -05:00
Keshav Kini
39667d3c87 Don't suggest SPC q r if restart-emacs is missing
When upgrading packages, Spacemacs backs up the old versions of the
packages and then tells the user to restart Emacs using `SPC q r` so
that the new version will be auto-installed.  But `SPC q r` doesn't
work if restart-emacs is one of the packages which is being upgraded,
and hence isn't currently installed.
2016-11-20 18:57:52 -05:00
Wieland Hoffmann
9fb5086fd1 Use "non-nil" in .spacemacs.template
Replace the mixture of "non nil" and "non-nil" with the latter. It seems to be
the form used by Emacs itself (for example in the docstring of `when`).
2016-11-20 18:55:12 -05:00
syl20bnr
c7370cc592 core: use memq instead of multiple calls to eq 2016-11-20 13:38:02 -05:00
Chris Kaukis
1038c84597 Add Doom themes to required dependencies for dash 2016-11-20 13:33:38 -05:00
Eoin Houlihan
51c27f7db3 Add ripgrep to search tools in template 2016-11-11 17:42:25 +00:00
ksjogo
12284e16b0 Removed deprecated insert-string and replace by insert 2016-11-11 15:23:49 +02:00