Commit graph

887 commits

Author SHA1 Message Date
syl20bnr
45799a0d27 core: remove GUI elements at the beginning 2015-12-13 15:41:24 -05:00
syl20bnr
103b864f0e core: delay creation of spacemacs buffer
Create it after the installation of the theme.
Add a redisplay when the buffer is created.
2015-12-13 15:41:24 -05:00
justbur
6649b6ab1c Don't always start spacemacs buffer in motion state
When editing style is emacs.
Fix #4152
2015-12-12 23:00:55 -05:00
syl20bnr
fc72c37aaf core: fix page-break on home buffer 2015-12-11 03:08:23 -05:00
syl20bnr
4a6fd1b364 core: hide mode-line at startup 2015-12-11 03:07:15 -05:00
syl20bnr
b55381f0e3 core: move buffer creation after GUI elements removal 2015-12-11 02:27:52 -05:00
justbur
052d95541d core: Improve spacemacs-buffer/goto-link-line 2015-12-11 02:25:22 -05:00
justbur
812ba329f2 core: move spacemacs-mode to core-spacemacs-buffer.el
The rationale is to keep the spacemacs buffer related code contained in
the core-spacemacs-buffer.el file.
2015-12-11 02:25:22 -05:00
justbur
f2878d594a core: Factor out spacemacs-buffer creation
Factor out the code related to creating the spacemacs buffer, so that it
can be recreated easily if it gets deleted.
2015-12-11 02:25:19 -05:00
syl20bnr
4be87ef4cb core: rename dotspacemacs-version-check-enable
to dotspacemacs-check-for-update
2015-12-11 01:47:34 -05:00
Eldon Nelson
2b4f259389 Add dotspacemacs variable to skip check for update 2015-12-11 01:40:19 -05:00
Fabien Dubosson
315528c89f Refactor CONTRIBUTING documentations
This commit merge the `CONTRIBUTING.md` and `doc/CONTRIBUTE.org` file
into a new `CONTRIBUTING.org` file. It also refactors the content to be
more organized and make its navigation more goal-oriented.

Github displays a link to the `CONTRIBUTING.*` file when people are
opening new issues or proposing new PRs. This file is important because
it is the entry-point to contributions guidelines for most of the users.
The current setup is non-optimal, even broken, as it adds a level of
indirection, and points to a contributing file that has broken
links (due to the new documentation format). The possible drawback of
the proposed solution is that I'm not sure if it is possible to include
it into the new online documentation as it is not in `doc/` folder.

The other possibility is to keep a small `CONTRIBUTING.md` file, as it
is now, pointing to the new documentation system (once online), but I'm
preferring the proposed solution for the following reasons:

- People that are willing to contribute will probably open Github
  first (for forking, creating PR, etc), not the online documentation.

- It has one level of indirection less when people click on the
  guidelines guide from a new issue/PR.

- `CONTRIBUTING.*` is by convention a special kind of file on github, so
  it's valid reason to break the rule and not having it in the `doc/`
  folder.
2015-12-11 01:09:09 -05:00
Eivind Fonn
ddd5e7112d Fix rollback language 2015-12-09 10:55:32 +01:00
person808
e91002e0c3 Show quickhelp if no dotfile is found. 2015-12-09 01:16:20 -05:00
syl20bnr
741bd0375f core: remove request.el dependency 2015-12-07 23:31:30 -05:00
syl20bnr
4a5ec73edf core: add --insecure command line parameter
Will set dotspacemacs-elpa-https to nil. Useful to be able to install
spacemacs in an environment where https is an issue.
2015-12-07 23:10:44 -05:00
syl20bnr
df353eda54 core: remove duplicated require of core-configuration-layer 2015-12-07 23:02:24 -05:00
Yiming Chen
c7840dc183 Remove trailing spaces in doge banner 2015-12-07 19:38:05 +01:00
syl20bnr
26ecdee0e3 New dotspacemacs variable dotspacemacs-elpa-timeout
Increase timeout from 3 seconds to 5 seconds.
2015-12-06 02:22:49 -05:00
justbur
394fec28e0 keys: Fix an issue with C-i/tab distinction
Before this <tab> => TAB if there is no binding for <tab>, but then
`spacemacs/translate-C-i` turned this into <C-i>, which we don't want
because that would mean having to always bind <tab> when this option is
enabled. This commit adds a check to make sure we can't possibly be
translating from <tab> originally (we only want to capture the C-i
events in the GUI).

Also, fixes C-m translation but leaves it commented.
2015-12-05 13:17:59 -05:00
syl20bnr
855d8f8f44 core: update docsting in dotfile template 2015-12-04 00:28:36 -05:00
justbur
246ebc1a27 core-keys: Enable distinction between C-i and TAB
Added dotfile variable to template and core-dotspacemacs.el

After enabling, if C-i is translated to the "key" <C-i> which allows you
to bind a separate command in the GUI like this

(define-key map [C-i] 'c-i-command)

or this

(define-key map (kbd "<C-i>") 'c-i-command)

This has the side effect of no longer making C-i default to TAB in the
GUI, but will not affect the TAB or <tab> bindings.

Removes spacemacs//handle-terminal-keys
2015-12-04 00:23:10 -05:00
Eivind Fonn
c893383fe4 Fix some documentation bugs
- CSS links
- GIFS in published version
- Unify layer doc titles
- Change emoji layer emojis to an image
2015-12-03 23:50:29 -05:00
syl20bnr
61707e593d core: improve installation speed of themes and bootstrap packages
package-refresh-packages was called every time a bootstrap package or
a theme was installed

Use configuration-layer/retrieve-package-archives to install bootstrap
packages and themes
Add a reentrance boolean to configuration-layer/retrieve-package-archives
Add force and quiet optional arguments to configuration-layer/retrieve-package-archives
Force refresh of archive when the user requests an update of packages
2015-12-02 23:53:02 -05:00
syl20bnr
d822241739 core: use request.el to check elpa archive availability
Add request.el to core/libs
Refactor package.el initialization in configuration-layer.el
Cosmetic improvements to loading messages
Remove redefinition of package-refresh-packages
2015-12-02 23:25:00 -05:00
syl20bnr
7be61762ed core: add guards around package-refresh-contents redefinition
Authorize Spacemacs to redefine the function only for tested versions.
2015-12-01 09:48:18 -05:00
justbur
f25d9cc8f9 keys: Allow minor mode leader bindings 2015-12-01 01:29:56 -05:00
syl20bnr
fcb596986f core: add comment 2015-12-01 01:21:03 -05:00
justbur
63ff1926e5 themes: Silence free variable warning
Without this a popup is raised every time emacs25 starts up for
assignment to a free variable
2015-12-01 01:20:18 -05:00
syl20bnr
539f066e9d core: remove debug message 2015-12-01 00:30:59 -05:00
syl20bnr
4d87ea626d core: add a basic timeout of 5s to fetch elpa archive
New file core-emacs-ext.el
This is a basic monkey-patch solution but it will do the job for now.
The timeout amount is not configurable for now.

Tested on 24.5 and 24.3.1

fixes #3284
2015-11-30 00:49:12 -05:00
syl20bnr
a19c0f3d24 core: remove spacemacs/set-key funcs and add a new pre-command-hook
This pre-command-hook translates the special key to the corresponding
emacs function key. This effects only happens in terminal, this hook is
a no-op in GUI.

By doing this we attempt to bring more consistency between the GUI
and the terminal regarding TAB and RET keys.
2015-11-28 23:11:48 -05:00
syl20bnr
d5233a9706 core: new spacemacs function to set keys
spacemacs/set-key
spacemacs/set-key-for-state

These functions find normalized keys which should handle as sanely as
possible the GUI and the terminal.

See docstring of spacemacs//normalize-key for more info.
2015-11-28 00:13:31 -05:00
Fabien Dubosson
028c53fbd7 Create the layer README on create-layer
When using `configuration-layer/create-layer`, the `README.org` file is
not created from the template. This change corrects this.

Close #3259
2015-11-24 23:20:45 +01:00
Eivind Fonn
2918ca2b56 Clean up org loading check 2015-11-23 20:15:09 +01:00
Tony Day
3f72bec69a Added check to catch when org has already been loaded. 2015-11-23 20:11:31 +01:00
Travis B. Hartwell
1ed7658f0f Generate necessary HTML for the Spacemacs docs.
Since there is not an easy way to hook into the title or table of
contents generation, use advising functions to post-process the output
of `org-html-toc' and `org-html-template' to insert the desired content.
Would like a cleaner way of doing this.
2015-11-23 13:44:32 +01:00
Eivind Fonn
32f11b8aa3 Indent spacemacs/set-leader-keys as defun 2015-11-21 18:32:53 +01:00
justbur
e1e850f179 core: Assume all which-key funcs available now 2015-11-21 18:22:51 +01:00
justbur
ee6a486d4c core: Add new set-key functions to core-keybindings
Set up to use bind-map instead of evil-leader for leader key
functionality.

Alias evil-leader funcs and remove package
2015-11-21 18:18:01 +01:00
Sebastian Wiesner
659d585c7a Fix type error in package-archives
The archive name must be a name.

Fixes `SPC a P`.
2015-11-20 11:45:08 +01:00
syl20bnr
629d736b79 core: add package keyword :protected
A protected package cannot be uninstalled nor excluded.
2015-11-19 00:53:57 -05:00
justbur
b294461957 evilified-state: Make into local package 2015-11-18 23:35:01 -05:00
syl20bnr
1061adbac9 New variable dotspacemacs-elpa-https
If non nil use HTTPS otherwise use HTTP.
Default is t.
2015-11-18 13:50:30 -05:00
Alan Schmitt
3dcbaf4166 Inject user-emacs-directory' in async-start' 2015-11-16 10:20:51 +01:00
Bar Magal
1a91e3ea14 Home buffer: make number of recent files configurable #2335
Fixes issue #2335
2015-11-15 12:33:23 +01:00
caleb
1a917c429c fix typo for spacemacs-base option 2015-11-15 12:19:54 +01:00
Jason McCandless
91588dc7a0 Use https for package sources that support it 2015-11-14 00:38:06 -05:00
Eivind Fonn
bfd0782b24 Update layer readme template 2015-11-13 14:50:54 +01:00
Eivind Fonn
c3866382b2 Documentation update
- Add #+HTML_HEAD_EXTRA options to all org files
- HTMLize published documentation via CSS
2015-11-13 14:23:13 +01:00
Rich Alesi
a16e170a41 Fix micro-state error.
Seems like `defdoc` was being defined by the return of `spacemacs//micro-state-set-minibuffer-height`.
2015-11-13 13:54:16 +01:00
syl20bnr
9290acf058 layouts: new variable dotspacemacs-auto-resume-layouts
If non nil then layouts are automatically resumed upon start.
Also always enable persp-mode (i.e. remove lazy loading of it).

Fixes #3736
2015-11-11 00:59:17 -05:00
syl20bnr
4004f8d383 layouts: split dotspacemacs-default-layout-name into 2 variables
dotspacemacs-default-layout-name is only to set the name
new variable dotspacemacs-display-default-layout controls the display
of the default layout in the mode-line
2015-11-11 00:55:42 -05:00
syl20bnr
9e5e309bf0 dotfile: new variable dotspacemacs-max-rollback-slots
Replaces the old spacemacs-number-of-rollback-slots
2015-11-11 00:14:46 -05:00
syl20bnr
098b173877 Split comments to no go past the 80th column in the dotfile template 2015-11-10 23:49:07 -05:00
Eivind Fonn
353acb4070 core: fix function name
Introduced in ddeea31ca4
2015-11-10 23:34:27 +01:00
Eivind Fonn
ddeea31ca4 core: remove dash dependency 2015-11-10 22:40:26 +01:00
Fabian Wilk
55664858ae Rollback slots are now limited.
- Introduced new variable `spacemacs-spacemacs-number-of-rollback-slots'
      which holds the maximum number of desired rollback slots.
    - Introduced functionality to delete oldest rollback slot directories if
      total number exceeds the configuration value.
2015-11-10 22:24:57 +01:00
codefalling
91c00fe76a Add farmhouse-theme 2015-11-09 19:01:35 +01:00
Muneeb Shaikh
6b3e82d2d9 Allow customization of the default layout name in mode-line
- Changed dotspacemacs variable
2015-11-09 18:43:05 +01:00
syl20bnr
aed1811f76 perspectives: big refactoring
- Rename micro-states to "layouts"
- Rename some functions to include "layout" instead of "perspective"
- cleanup variables
- move functions to funcs.el
- move package specific stuff to post-init functions
- changes key bindings
- micro-state documentation rewrite
- change format of the layouts line in the micro-state doc
- defer loading of persp-mode which loads with `SPC l`
- always display the spacemacs home buffer with no switch
- various fixes
- various new bugs :-)
2015-11-09 00:36:09 -05:00
syl20bnr
0389be8a6e micro-state: only grow minibuffer size with a min of 10 2015-11-09 00:36:07 -05:00
syl20bnr
1ac27be88e core: resize minibuffer for docstring of micro-states 2015-11-09 00:36:05 -05:00
syl20bnr
f7a2f9c2cd core: execute :on-enter before :doc in micro-state 2015-11-09 00:36:02 -05:00
Eivind Fonn
4f2b08154c core: Don't delete bootstrap packages as orphans 2015-11-04 20:21:42 +01:00
Eivind Fonn
31a768a172 Update layer README template
With respect to the recent documentation changes
2015-11-04 20:05:37 +01:00
syl20bnr
b405752f6c Remove global infix in dotspacemacs-global-line-numbers
I feel that it is not needed because it makes not a lot of sense to
have it non global since it is a dotfile variable.

Also remove ' from the docstring for consistency.
2015-11-03 00:00:55 -05:00
Fabien Dubosson
612c3df265 Introduce 'relative for global-line-numbers
Allow to use 'relative as value for the dotspacemacs-global-line-numbers
setting. This enable relative global line numbers as it is a common
usage.
2015-11-03 00:00:55 -05:00
Eivind Fonn
212389b24d Fix doc publishing code
- Fix wrong function names and variables
- Move export folder out of source tree, so we don't export the exports
- Add jpg to source image files
2015-11-02 22:30:44 +01:00
ralesi
dcf0c2bbc2 Inject emacs version along with spacemacs version 2015-11-02 00:42:57 -05:00
Yiming Chen
c0570e7481 Fix C-u dotspacemacs/sync-configuration-layers 2015-11-02 00:19:44 -05:00
Eivind Fonn
1070d4b56a Set up documentation publishing 2015-11-01 23:40:36 -05:00
syl20bnr
37cb1bc562 core: fix configuration-layer/package-usedp for excluded packages
Was returning non nil for excluded packages.
Fix exclusion of evil-magit and evilification of magit buffers.
2015-11-01 00:59:29 -04:00
Muneeb Shaikh
db453acbd6 Customizable whitespace-cleanup
- Default: cleanup whitespace on changed lines
2015-10-31 14:16:31 +01:00
Eivind Fonn
15f4db4d10 Re-enter theme cycle in right place after SPC T h 2015-10-29 19:38:52 +01:00
Muneeb Shaikh
8379c2f7af Fixes #1217, SPC T n after SPC T h broken
If we select a theme after spacemacs' startup, then
`spacemacs--cycle-themes` doesn't have the first theme from
`dotspacemacs-themes` so we start over.
2015-10-29 19:32:05 +01:00
Fabien Dubosson
c3299f0eca Make linum toggle local and add a variable for global mode
`global-linum-mode` is making line numbers appearing in `*spacemacs*`
and `helm` buffers, what is annoying.

This change make the linum `SPC t n` toggle buffer-local, and add a
customization variable in `.spacemacs` to enable line numbers globally.
«Globally» here as to be understood as «in `prog-mode` and `text-mode`».
2015-10-29 19:30:06 +01:00
syl20bnr
3dec1ce9ec core: perform local path existence check at configuration time
In order to be able to log the not found path as a warning instead
of crashing.

Also adds unit test to test both valid and invalid local paths.
2015-10-22 22:39:53 -04:00
Fabien Dubosson
ecf35c25e6 Remove the code that reset the first line.
This part doesn't seem to be needed any longer. I tested it in terminal
and in GUI modes, both with spacemacs and spacemacs-base distributions,
both with and without a banner: No visual difference with and without
this code.
2015-10-22 21:46:34 -04:00
Fabien Dubosson
b1590c9071 Prevent spacemacs to overwrite clipboard at startup
Close #3457
2015-10-22 18:46:45 -04:00
Eivind Fonn
0c6065e32d Allow explicit path for package location 2015-10-22 18:27:32 -04:00
syl20bnr
07d28a2d6d micro-state: :exit keyword now accepts a list 2015-10-18 23:35:51 -04:00
syl20bnr
4326ca9534 core: update LV with last version from Hydra 2015-10-18 23:31:57 -04:00
justbur
4640f4ffa2 core-release: Add checks to switch-to-version
Mainly adds a check to make sure the working directory is clean before
switching versions. The automatic update should not remove changes by
the user. They can do that manually if they wish.

Also restructures the function to make it a little easier to follow.
2015-10-18 22:11:15 -04:00
justbur
aa547faed6 config-layer: Correct package update note 2015-10-18 22:11:03 -04:00
Eivind Fonn
be06d945cd Fix Spacemacs buffer notes 2015-10-15 18:38:28 +02:00
justbur
c96183f56a spacemacs-buffer: Distinguish types of updates
Add a spacemacs update button to the spacemacs buffer, and relabel the
package update button to read "Update Packages". This will hopefully
resolve some confusion about updating spacemacs vs. updating the
packages.

I also tweaked the switch-to-version function to make it a little more
verbose to use it for the spacemacs update button.
2015-10-14 00:42:00 -04:00
Fabien Dubosson
f5fb2f654a Correct .spacemacs template's doc and indentation
Change a reference from `spacemacs/config` to the new
`spacemacs/user-config` function. Correct the file indentation.
2015-10-14 00:33:26 -04:00
Eoin Houlihan
1a853d5759 Fix minimize spelling mistake 2015-10-14 00:32:46 -04:00
Daniel Luna
b4545a7b96 Shows error in *Messages* buffer when loading .spacemacs 2015-10-14 00:26:13 -04:00
syl20bnr
455dd22553 core: set error flag when calling user dotfile functions 2015-10-12 09:58:46 -04:00
justbur
8b5428d320 core-dotspacemacs: Make call-func macro safer
Catch errors in executed function and signal them to the user in the
spacemacs buffer. We don't want loading to silently fail because there
is a problem in dotspacemacs/user-config for example.
2015-10-12 09:53:37 -04:00
Amin Bandali
7ebc3bd291 Fix erc notification icon
Introduce and use spacemacs-assets-directory for specifying the
spacemacs assets used in defining the app icon path, instead of a
hardcoded string
2015-10-12 09:37:56 -04:00
syl20bnr
1cf9b73f84 core: replace powerline by spaceline 2015-10-11 00:16:47 -04:00
Eivind Fonn
92254bc3af code: refresh modeline after syncing 2015-10-10 23:21:03 -04:00
Eivind Fonn
3a2bd94e05 Fix bug introduced in df6b530 2015-10-07 22:33:29 +02:00
syl20bnr
3c7ad38e4d core: remove dotspacemacs-verbose-loading
verbose is activate with --init-debug
2015-10-07 15:51:40 -04:00
justbur
7a288656b1 debug-init: Get more info from debug-init
1. Make sure debug-on-error stays on
2. Force verbose loading
3. Detect long requires and loads (with --timed-requires)
4. Start profiler (with --profile)
2015-10-07 15:51:40 -04:00
syl20bnr
0cbe01433d Move (setq help-window-select 't) to spacemacs-base 2015-10-07 15:51:40 -04:00
sooheon
984f5aa3d8 Keep focus while navigating *help* buffers
As discussed in issue #2659.
2015-10-07 15:51:39 -04:00
syl20bnr
df6b530f0f core: remove unneeded parenthesis 2015-10-07 15:51:39 -04:00
person808
c1b6293268 Replace eval-after-load with with-eval-after-load.
We now backport the macro for 24.3 so we can use it everywhere.
2015-10-07 15:51:39 -04:00
justbur
539ff07890 core-keys: Allow major-mode-leader to be nil
The dotfile says that setting the major-mode leaders to nil will disable
the functionality, but there were a couple of places where that option
was not being respected.
2015-10-07 15:51:39 -04:00
Eivind Fonn
e9c5e168d6 core: remove special handling of spacemacs-theme and solarized theme
Also remove the local solarized-theme package
2015-10-07 15:51:39 -04:00
Eivind Fonn
def1a8df2b core: Spacemacs home as initial buffer for clients 2015-10-07 15:51:39 -04:00
Yen-Chin Lee
2a983671af Fix some cl-lib function with prefix
Since emacs 24.3, function in cl-lib should with cl- prefix.

Signed-off-by: Yen-Chin Lee <coldnew.tw@gmail.com>
2015-10-07 15:51:39 -04:00
person808
28c5298f4c Use built-in evil variable to set Y behavior. 2015-10-05 12:17:27 +02:00
Eivind Fonn
a64e1cf5d0 Document cursor color by state only in GUI
Fix #1944

[ci-skip]
2015-10-05 12:07:45 +02:00
syl20bnr
96ef3d1e9a evilified: rebind SPC to ' 2015-09-29 21:35:03 -04:00
syl20bnr
14bad7b99c evilified: rebind : to | 2015-09-29 21:27:21 -04:00
syl20bnr
347fc731a6 evilified: rebind / to \ 2015-09-29 21:16:25 -04:00
syl20bnr
169d1622e8 core: set ad-redefinition-action to accept
resolves #192
resolves #2893
2015-09-29 21:10:59 -04:00
Syohei YOSHIDA
2bd94c18d3 Loading warnings for using warning-minimum-level 2015-09-29 15:05:36 +09:00
syl20bnr
cd3fb97d3b Bump version to 0.105 2015-09-28 23:53:20 -04:00
syl20bnr
2cfc9a5a60 dotfile: fix template 2015-09-28 23:41:11 -04:00
syl20bnr
2c6e48cb32 Update release note to include Y remapping to y$ 2015-09-28 23:36:51 -04:00
Xue Fuqiao
1af3428b82 Typo fixes 2015-09-28 23:23:32 -04:00
syl20bnr
14fd2b48e9 New variable dotspacemacs-remap-Y-to-y$ 2015-09-28 23:09:44 -04:00
syl20bnr
383b1bec20 Update dotspacemacs/config and dotspacemacs/init occurrences 2015-09-28 02:05:18 -04:00
syl20bnr
7c42ed713e Update release notes 2015-09-28 01:31:50 -04:00
syl20bnr
4b869b9821 core: add comment for with-eval-after-load backport 2015-09-27 21:03:48 -04:00
justbur
1898cdcb90 core: Add with-eval-after-load backport 2015-09-27 21:02:15 -04:00
syl20bnr
5637f0963c core: fix crash at startup due to bad require 2015-09-26 00:36:01 -04:00
syl20bnr
773076a1be core: remove core-evilify-keymap.el
Move its contents to core-evilified-state.el
2015-09-26 00:26:16 -04:00
syl20bnr
d237d56c23 evilify: simplify implementation and fix tests 2015-09-26 00:11:34 -04:00
syl20bnr
5d654767ea evilify: fix visual state hooks breaking keymaps 2015-09-25 21:55:37 -04:00
syl20bnr
994daaf398 evilify: Add pre-command-hook to visual state as well 2015-09-25 21:46:01 -04:00
syl20bnr
6e89fe33b1 evilify: new pre-command-hook to dispatch commands
Use a pre-command-hook to introspect current keymap under point and
dispatch the command to evilified-state keymap or mode keymap.
2015-09-25 21:29:48 -04:00
justbur
aded834a57 evilify: Only modify map in evilified state
Possible fix for #3078
2015-09-25 21:07:04 -04:00
syl20bnr
1c04c07b98 core: fix evil-escape in evilified buffer 2015-09-25 20:21:07 -04:00
syl20bnr
3a829ce89e core: fix key bindings in visual state for evilified buffers 2015-09-25 00:27:52 -04:00
syl20bnr
d97d2d410c core: remove a bunch of duplicate functions... 2015-09-25 00:27:52 -04:00
person808
952a848738 Add missing value to dotfile tests. 2015-09-23 18:08:28 -10:00
syl20bnr
7a2e604741 core: remove 'post value for :step property
post value for package :step property is both useless and considered
harmful. It would hijack the determinism of the loading order.

'pre value is used very very rarely and I even think it is not even
used since most of the time a package that must be loaded in pre step
is a bootstrap package. But we keep 'pre since it can be useful to
have it for _exceptional_ cases.
2015-09-24 00:02:02 -04:00
justbur
042f1635a5 evilified-state: Add C-z to emacs-state 2015-09-23 23:31:05 -04:00
syl20bnr
5402dae81b core: add new :location value -> built-in
Can be used to configure built-in packages
2015-09-23 22:01:47 -04:00
syl20bnr
f294ba3887 core: remove 'private value for :location
While doing the tests I encountered an edge case where a package owned
by the dotfile could be passed either a 'private or 'local location
which is ambiguous (moreover where do we put packages with 'local
location ?).

We remove the ambiguity by removing the 'private value and push the
path ~/.emacs.d/private/local/pkg/ when the owner of a local
package PKG is the dotfile.

When the owner of a local package is a layer then the load path is
in the "local" subdirectory of the layer directory. It adds no value
to use the old 'private location in this case.
2015-09-20 00:49:18 -04:00
Eivind Fonn
92c792c18e Allow local packages without owner 2015-09-19 18:44:19 -04:00
syl20bnr
ff2ff60830 core: fix configuration-layer/create-layer
Missing name parameter for configuration-layer//copy-template
2015-09-19 01:37:45 -04:00
syl20bnr
c111ff24af core: make private location work with dotfile owner 2015-09-19 01:36:48 -04:00
Eivind Fonn
c169b78eed Add private package location 2015-09-19 01:11:11 -04:00
justbur
89ec2d7096 Add back core-keys: Rewrite emacs-leader handling
Brings back the changes made in
dad786bc8d with an additional fix for
evil-org whose config was unbinding important leader keys in org-mode
2015-09-19 01:07:26 -04:00
syl20bnr
fe4d6a7d79 core: fix dotspacemacs/install and tweak choice descriptions 2015-09-19 01:05:17 -04:00
Robert O'Connor
2a274767d3 Switch the default distribution to spacemacs
This will cause a lot of confusion for newcomers.
2015-09-19 01:02:51 -04:00
syl20bnr
220b15a734 Revert "core-keys: Rewrite emacs-leader handling"
This reverts commit dad786bc8d.
2015-09-17 23:41:48 -04:00
syl20bnr
3f18a09560 core: install and uninstall package from package-alist
Consult the archive only when the user actually update the packages.
Fixes #2956
2015-09-17 23:06:43 -04:00
justbur
dad786bc8d core-keys: Rewrite emacs-leader handling
This is how evil-leader gets `SPC m` to work for mode specific bindings,
and we need to mirror this step for `M-m`. This is big change, but in
order for `M-m` to work properly we need to remap it to the mode-map
whenever possible.
2015-09-17 22:35:51 -04:00
Eivind Fonn
fa32b9be5c More flexible additional packages
When the package already exists, use configuration-layer/make-package
to copy information into the existing package object.

This allows overwriting location, step and excluded, but NOT owner,
pre-layers or post-layers.
2015-09-17 22:32:54 -04:00
person808
7b43896910 Fix showing snippets in company popup.
Fixes #2387 #2051
2015-09-16 22:37:08 -04:00
Robert O'Connor
b4e6e52d0e Remove Tromey.
Fixes #3049
2015-09-16 21:41:37 -04:00
justbur
02fbfbe74f core-conf-layer: Use NOSAVE for pack. update (v25)
Should fix #2849. The new package-delete tries to save changes to the
selected package variable during the update process and this can cause
conflicts with how spacemacs wants to update packages (and even lead to
the .spacemacs file being deleted. This is also unnecessary, because we
are only deleting the packages temporarily to be installed at the next
boot, so there should be no need to update this variable.

This change only affects Emacs 25 users.
2015-09-16 21:41:08 -04:00
Bar Magal
b4c10a4749 Fix update error when a distant package is unavailable
Instead of error, show a warning that the unavailable package(s) were
skipped. This should handle situations were a package is temporarily
unavailable from MELPA (or other sources).
2015-09-16 21:38:40 -04:00
syl20bnr
a4fd6407b2 core: tweak prompt for dotfile recovery 2015-09-16 21:37:42 -04:00
Christopher McCloud
44f1ee55d7 add recovery from malformed .dotfile to core
If spacemacs encounters errors on the initial load of the user
.spacemacs file, now defaults to loading the default template.
Additionally, temporarily suspends pruning of orphan packages to make it
easier for users to recover after they fix their dotfile.

Previously, errors would cause the spacemacs boot process to halt,
leaving users with an almost stock emacs configuration. Now, users will
have a default spacemacs available to them to fix the error.

adds layer preservation.

add prompt for preferred editing style on recovery

Remove advice after first run.

add dotspacemacs/safe-load as function.

moves style prompt into dotspacemacs/init advice

add hybrid as valid editing style.

move conditional into dotspacemacs/load-file.
2015-09-16 21:28:12 -04:00
Markus Bertheau
1054e6e7ce Add which-key prefixes for major-mode leaders
Without this, prefixes configured for `SPC m` bindings don't show up for
the major mode leaders.
2015-09-16 21:24:28 -04:00
Robert O'Connor
3f2e885811 Rename spacemacs-core to spacemacs-base
Per the discussion in #3002. A comment in #3047 prompted this PR.
2015-09-16 21:22:35 -04:00
Eivind Fonn
018c5c0908 Fix bug with define-prefix-command (2) 2015-09-16 16:40:39 +02:00
Eivind Fonn
ac9c96fb1a Fix bug with define-prefix-command 2015-09-16 16:39:01 +02:00
Eivind Fonn
a764eb4eb9 Fix version injection in home buffer
Don't inject version if banner is nil
2015-09-13 22:54:16 -04:00
syl20bnr
8aa4eadc74 core: move prefix funcs to new file core-keybindings.el 2015-09-13 22:53:15 -04:00
Eivind Fonn
de64218dcd Add distribution to describe-system 2015-09-13 22:24:02 -04:00
justbur
098e43c8ff Temporary fix for #2995
This sets the default distribution back to spacemacs. This is for people
who for whatever reason don't set `dotspacemacs-distribution` in their
dotfile.
2015-09-12 13:52:52 +02:00
syl20bnr
cd50d9c069 core: defer distro insertion in home buffer 2015-09-11 23:14:16 -04:00
syl20bnr
3b7d66d118 sync-configuration-layers: add option to skip tests 2015-09-11 23:04:55 -04:00
syl20bnr
77161bd591 core: restore default mode line in home buffer 2015-09-11 23:04:01 -04:00
syl20bnr
6e0ca23db8 core: set default distribution in template to spacemacs-core
Also remove version-control layer from template and add emacs-lisp
to initial value for dotspacemacs-configuration-layers
2015-09-11 23:00:33 -04:00
justbur
f59cb5b215 core: Add choice of distro on install
Ref #2926
2015-09-11 21:27:36 -04:00
justbur
6eab954afe Use + instead of ! for layer categories
Helm seems to treat "!" specially in pattern matching, so having a ! in
the pattern string when traversing directories is problematic. This
change fixes #2737, because as far as I can tell "+" has no special
meaning in a helm pattern.

Of course, we can choose a different character, but I'm fond of "+" as
representing "more layers here".
2015-09-11 00:13:51 -04:00
syl20bnr
91bb21788f core: simplify and fix visual state in evilified buffers
Fix cherry-pick of selected commit in visual state
2015-09-09 23:45:05 -04:00
syl20bnr
c17db0dcb0 core: minor update of warning message when a layer does not exist 2015-09-09 23:45:04 -04:00
justbur
cc9287863b core: Fix #2952 by not loading missing layer
This issues a warning if the layer was declared in the dotfile but not
found through the layer discovery mechanism.
2015-09-09 23:45:04 -04:00
syl20bnr
b53b5db967 spacemacs-core: remove SPC f e s and SPC f e c
Now the user should use `SPC f e h` helm-spacemacs.
This is due to the fact that spacemacs layer is now a regular layer
stored in the "layers" directory.
2015-09-08 01:01:46 -04:00
syl20bnr
6b33031dc5 core: dotspacemacs-distribution, spacemacs-core layer and rename contrib
- Rename contrib directory to layers
- Add new variable dotspacemacs-distribution
- Move spacemacs layer to layers/!distribution
- New layer spacemacs-core in layers/!distribution
- User can now set dotspacemacs-distribution to spacemacs or
  spacemacs-core (default spacemacs)

spacemacs-core is very lightweight layer sufficient to build upon
spacemacs.
2015-09-07 23:44:43 -04:00
syl20bnr
37609161c8 tests: Add configuration layer functional tests 2015-09-07 19:42:22 -04:00
d12frosted
c43a8e958e respect setting startup banner to nil #2911 2015-09-07 14:26:33 -04:00
syl20bnr
d44b9429dc core: add default value to docstrings in dotfile template 2015-09-07 01:06:29 -04:00
ralesi
2ccb4ab7df Allow specification of helm location. 2015-09-07 01:06:29 -04:00
syl20bnr
d11fb1c4a0 core: add variable dotspacemacs-helm-no-header
Hide the helm header whenever there is only one source.
Also correctly set back the default height for headers.
2015-09-07 01:06:29 -04:00
d12frosted
8440a380f2 fix setting custom banner path 2015-09-07 01:06:27 -04:00
syl20bnr
555927c7ec core: use package-alist to resolve orphans
instead of the downloaded package archive. It fixes a case where
a package maintainer removes a dependency D of a package P and spacemacs
detects it which has the effect of deleting the obsolete package D, but
package-alist is not yet updated, because package-alist is updated only
when P is reinstalled (or upgraded).
2015-09-07 01:06:27 -04:00
justbur
bd8369918b Clean-up which-key dotfile options 2015-09-07 01:06:27 -04:00
Tim Jäger
91057d5986 Switched dotfile options to which-key
Renamed option
Added buffer position option
Updated template
Updated documentation
2015-09-07 01:06:27 -04:00
d12frosted
82c905559a fix return binding in terminal for spacemacs-mode 2015-09-04 09:38:15 +02:00
syl20bnr
8adc82d1ae core: actually read :disabled-for layer property
Also it is not need to pass a list, example:

```
(setq dotspacemacs-configuration-layers
   '((auto-completion :disabled-for org git)))
```

Will disable auto-completion for org and git layers.
2015-09-03 13:17:02 -04:00
syl20bnr
88d30d7074 core: add :disabled-for keyword for declared layers
Example:

(setq dotspacemacs-configuration-layers
'((auto-completion :disabled-for (org))))

Will not run any org/pre-init-xxx or org/post-init-xxx functions where
xxx is a package owned by the auto-completion layer.

Limitation:

If ownership of an auto-completion package P is stolen by another layer L
then :disabled-for must also be declared with L, otherwise the P will
be configured for org.

(setq dotspacemacs-configuration-layers
'((auto-completion :disabled-for (org))
  (L :disabled-for (org)))

The user should not change the default owner of a layer unless really
required (for instance to use his own fork).
2015-09-02 23:10:30 -04:00
syl20bnr
719080f533 core: rename configuration-layer/filter-packages to
configuration-layer/filter-objects
2015-09-02 23:10:30 -04:00
Eivind Fonn
973a1b6c48 Bugfix: call user-config when syncing layers 2015-09-02 08:28:02 +02:00
syl20bnr
fba874d64d core: add hybrid as allowed value in dotfile 2015-08-31 23:35:28 -04:00
syl20bnr
92b8c31e36 core: always execute all dotfile tests 2015-08-31 23:27:18 -04:00
syl20bnr
cf5e12100d core: save dotfile before executing the tests 2015-08-31 23:26:47 -04:00
syl20bnr
18611cfbd2 core: compute list of dotspacemacs variables for init tests 2015-08-31 23:16:14 -04:00
syl20bnr
04b2a3a459 core: tweak dotfile test results buffer modes
Make it read-only in view mode with indent mode one.
Disable flyspell if necessary.
2015-08-31 22:14:12 -04:00
syl20bnr
40c01e67b7 core: wrap long lines in core-dotspacemacs.el 2015-08-31 22:08:10 -04:00
syl20bnr
c688f29738 core: rename dotspacemacs/config to dotspacemacs/user-config
in template dotfile.
Display a warning when dotspacemacs/config is encountered; support for
dotspacemacs/config will be dropped in 0.105.0
2015-08-31 22:02:43 -04:00
syl20bnr
26b2a5c029 core: execute dotfile tests when SPC f e R
The test results buffer is displayed only if there are errors.
Make dotspacemacs/test-dotfile return non-nil when all the tests passed.
dotspacemacs/test-dotfile takes an optional parameter to hide the
result buffer.
2015-08-31 21:52:47 -04:00
justbur
a30695c459 Convert dotspacemacs-tests to org-mode output 2015-08-31 21:26:10 -04:00
justbur
51022543a8 Add tests for correctness of .spacemacs
Note this makes a critical (but backwards compatible) change
to .spacemacs.template
2015-08-31 21:26:03 -04:00
Eivind Fonn
c6ba7d9300 Refactor test system
Should allow easier testing of layers, not just core
2015-08-31 21:16:34 -04:00
ralesi
4d96e652ad Set up resize setting to enable auto-resize for helm. 2015-08-30 23:54:11 -04:00
Eivind Fonn
b981bf5739 Don't produce on/off toggles if status is nil
They don't make sense in this context, and will produce unexpected
results.
2015-08-26 22:27:09 -04:00