Commit graph

261 commits

Author SHA1 Message Date
Dieter Komendera 410b23150e
Make query-replace work when frame is split
This works around an issue in Emacs which args-out-or-range errors when
trying to query-replace in frames which are split vertically or horizontally.

See https://github.com/syl20bnr/spacemacs/issues/9700 and
https://debbugs.gnu.org/cgi/bugreport.cgi?bug=31586
2018-11-04 19:01:16 +02:00
Dieter Komendera 2d7737cd3e
Cache expensive computations in spacemacs/title-prepare 2018-10-13 19:23:38 +03:00
MadAnd 2e50f8c6fc
Optimize spacemacs/title-prepare
spacemacs/title-prepare is being called on every frame re-display, so
eager evaluation of values for every possible format specifier can be too
expensive. For example projectile-project-name is very slow in TRAMP buffers.
2018-10-10 08:05:14 +03:00
et2010 02f573df7f core: fix init test (#11278)
When doom-modeline is used, the init test will fail. This should fix it.
2018-09-10 22:34:42 +01:00
syl20bnr e641e6c6e6 Add doom-emacs mode-line theme
Set dotspacemacs-mode-line-theme to 'doom to enjoy this great minimalistic
mode-line.
2018-09-04 14:53:39 -04:00
MarcoIeni 21c3a87044 Spacemacs documentation improvements
`SPC f e f` key binding is no more present, so moved that table entry to
`SPC h f` in DOCUMENTATION.org.

corrected description of paste transient-state behavior.
2018-08-18 12:22:23 +01:00
John Eismeier 5e3c96562a Propose a couple of spelling corrections 2018-08-02 00:20:06 +03: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 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 de858b2953 Fix startup buffers without spaceline mode line 2018-06-14 01:10:44 -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
James Wang f393ca2ef7 Fix editing style test 2018-06-09 00:05:28 -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
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
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 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 82e02c9ba2 Fix typo in default value for dotspacemacs-emacs-dumper-dump-file 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
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
Szunti d5f7d8b5ca Lastest is a typo 2018-02-17 16:09:06 -05: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
Carl Lange 6da15a0c6e add .spacemacs config for the initial scratch message 2018-01-19 23:04:10 -05:00
syl20bnr ac215effc2 Fix dotfile tests for dotspacemacs-mode-line-theme variable 2018-01-17 11:28:52 -05:00
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 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
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
syl20bnr 326965d4ce Happy New Year 2018! 2018-01-04 02:00:25 -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 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 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 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
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
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
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
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
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
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 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