Commit Graph

1888 Commits

Author SHA1 Message Date
claude 70f475d782 Fix .spacemacs validation choices 2021-03-20 11:45:32 +02:00
Aaron L. Zeng 454e729ef0 In SPC h d P, print :toggle expression using Elisp syntax
This prints out an expression in valid Lisp syntax, so that, e.g.,
strings in the expression are quoted.
2021-03-19 09:48:44 +01:00
JAremko 369cf7519f Improve spacemacs|defc doc-string 2021-03-18 20:55:08 +02:00
JAremko bbf050734a Don't show customize link in doc-strings of uncustomizable variables. 2021-03-18 20:55:08 +02:00
emacspace b86c619cb6 Built-in files auto-update: Thu Mar 18 14:37:56 UTC 2021 2021-03-18 18:07:05 +01:00
JAremko 0f2df2727d Validate .spacemacs variables. 2021-03-18 15:47:02 +02:00
Maximilian Wolff 7d2ff48d77 Allow disabling smartparens in dotfile
Smartparens seems to cause performance issues for
a lot of users. This PR allows to disable the package
completely.

There are some functions in elisp and common-lisp mode
which dependt on this package and will manually require
it when executed though. But this should only affect
lispers which mostly will want to have some kind of
smartparent functionality anyway.

For the discussion see here #12533.
2021-03-15 20:51:18 +00:00
emacspace 13791616c7
[bot] Auto-update (#14398)
* documentation formatting: Sat Mar 13 23:53:10 UTC 2021

* Built-in files auto-update: Sat Mar 13 23:51:34 UTC 2021
2021-03-14 00:57:56 +01:00
William McBee 7786e11a35
[core] load-env-vars cygwin support (#14442)
Cygwin's paths use forward slashes, not backward slashes.
2021-03-14 00:33:50 +01:00
duianto 2e48899db7 Open home buffer recent files in expected order
problem:
Pressing a number key on the Spacemacs home buffer,
doesn't reliably open the expected recent file.

cause:
The number keys are bound to open the files in the
order they are listed in the `recentf-list`.

The `recentf-list` is updated when a file is saved.

The home buffers recent files list is only updated
when the home buffer is created/refreshed/resized.

solution:
Open the recent files in the order they were listed
when the home buffer was last updated.

Fixes: incorrect order number in recent files on home buffer #14471
2021-03-13 23:19:02 +01:00
William McBee 40c42e6af5 Support system-type 'cygwin
A minor change allowing environment variables to be stored when running Cygwin version of Emacs.
2021-02-28 22:17:07 +01:00
Lin Sun 722fa45ea1 [core-env] #14348 ignore env "DISPLAY" for .spacemacs.env 2021-02-22 23:46:20 +02:00
emacspace 228097a19e
Built-in files auto-update: Sat Feb 13 22:24:06 UTC 2021 2021-02-13 23:30:05 +01:00
JAremko 7238eb03e8 Better .elc cleanup 2021-02-11 16:08:29 +02:00
emacspace e11fb63f2e Built-in files auto-update: Tue Feb 9 14:26:29 UTC 2021 2021-02-09 22:16:33 +01:00
emacspace ea58a79715
Built-in files auto-update: Sun Feb 7 20:27:36 UTC 2021 2021-02-07 22:27:56 +01:00
Thanh Vuong ae65f3cedd
Fix #14213 remove dash and ht from core libs
- delete dash and ht in core
- reimplemented all ht functions we need in `spacemacs-ht.el` and use them
- add dash to spacemacs-bootstrap
2021-02-07 22:22:39 +01:00
duianto 2a4cd98afc [core] Refactor spacemacs-buffer//do-insert-startupify-lists 2021-02-04 22:40:10 +01:00
duianto ba8f5414c9 Add home buffer named shortcuts functions
Define named functions: spacemacs-buffer/jump-to-...
for the home buffer shortcuts. So that a descriptive name is shown,
in for example the view-lossage (C-h l) buffer.

Before:
 r                      ;; anonymous-command
 p                      ;; anonymous-command

After:
 r                      ;; spacemacs-buffer/jump-to-recent-files
 p                      ;; spacemacs-buffer/jump-to-projects
2021-02-03 22:35:34 +01:00
emacspace 137ed73fce Built-in files auto-update: Sun Jan 31 19:57:56 UTC 2021 2021-02-03 03:53:30 +02:00
JAremko 725d585341 Do not delete non existent files 2021-01-31 21:20:52 +02:00
JAremko 16073171d8 Make Spacemacs byte-compilation optional 2021-01-31 13:32:06 +02:00
JAremko 88980363b6 Recompile Spacemacs core .elc files when Emacs version changes 2021-01-31 13:32:06 +02:00
JAremko 6ae9364a57 cleanup 2021-01-31 13:32:06 +02:00
JAremko 9eb11bb7a2 refactor bytecomp 2021-01-31 13:32:06 +02:00
JAremko 370798262e Make sure that some core files never byte compiled 2021-01-31 13:32:06 +02:00
duianto c590d84f72 Fix key: home buffer list Recent Files by Project
The shortcut was searching for "Recent Files:"
instead of the expected: "Recent Files by Project"
2021-01-29 19:38:43 +01:00
duianto 38a314f7cc Limit home buffer recent files numbers to 9 2021-01-29 19:05:47 +01:00
duianto 963e8a9b69 Add home buffer recent files numbers
Prepend numbers to the Recent Files list.
and bind the number keys to open that file.
2021-01-29 18:24:57 +01:00
JAremko 5182a450e6 Rework byte recompile of built-in libs 2021-01-26 12:54:03 +02:00
emacspace e712eae9f1 Built-in files auto-update: Mon Jan 25 02:12:52 UTC 2021 2021-01-25 09:01:25 +02:00
JAremko 0fd0af5d8c Remove core .elc files on rev change 2021-01-25 04:03:14 +02:00
JAremko 6e275d0b83 fix var name in doc-string 2021-01-25 04:03:14 +02:00
JAremko 78a3adc7e4 Refactor core-compile stuff 2021-01-25 04:03:14 +02:00
duianto b4922325c7 [core] Shorten package update restart message
problem:
When the Emacs frame has the default window width (80 characters).

Then the current restart to update message:
Emacs has to be restarted to actually install the new version of the packages (SPC q r)

is cut off at the Emacs frames right edge:
Emacs has to be restarted to actually install the new version of the packages (S

solution:
Shortening the message:
Restart Emacs to install the updated packages. (SPC q r)

says the same thing, and keeps it within 80 characters.
2021-01-24 21:56:14 +01:00
duianto 92796dc121 [dotfile] new var: dotspacemacs-show-trailing-whitespace
Moved the function definitions for:
spacemacs//trailing-whitespace
spacemacs//set-whitespace-style-for-diff

from: spacemacs-default/packages.el
to:   spacemacs-default/funcs.el
2021-01-24 21:54:40 +01:00
Lin Sun ba9e0afa34 [Core] *core-spacemacs.el: fix default-path for compiling built-in libs 2021-01-20 02:54:13 +02:00
emacspace fc20d1b4c1 Built-in files auto-update: Thu Jan 14 11:25:17 UTC 2021 2021-01-18 20:02:37 +02:00
JAremko 787820a7ad Compile built-in libs 2021-01-18 16:52:39 +02:00
JAremko 9f1f0742c7 Make sure that auto recompile starts asap 2021-01-18 16:52:39 +02:00
JAremko b59e0821bc Move forked libs into separate directory 2021-01-18 16:52:39 +02:00
emacspace a65497be79 Built-in files auto-update: Mon Jan 11 22:37:28 UTC 2021 2021-01-14 13:22:53 +02:00
emacspace 54054ee8d4 Built-in files auto-update: Mon Jan 11 09:35:17 UTC 2021 2021-01-11 22:11:01 +00:00
emacspace b59be2b15e Built-in files auto-update: Mon Jan 11 09:12:37 UTC 2021 2021-01-11 11:33:32 +02:00
emacspace 01f8ccbefb Built-in files auto-update: Sun Jan 10 20:14:15 UTC 2021 2021-01-11 11:11:03 +02:00
JAremko 5d76849737 fix latest mocker.el compat 2021-01-09 15:56:41 +02:00
Daniel Nicolai 34e336402f fix page-break-lines-mode alias definition
This definition requires 3 arguments. Having only two can cause Emacs a
wrong-number-of-arguments error. So this PR just adds the date when the orginal
functions were removed and the alias was created.
2021-01-09 08:58:43 +01:00
Keith Pinson 41c4d5c104 [core] support recents-by-projects in dotspacemacs-startup-lists
`dotspacemacs-startup-lists` by default shows a number of recent files and
projects as two separate lists. If I've been working with a lot of files in one
project, then all the recent files are from one project, even if I set `recents`
to a large amount like 24. This change allows me to see the recent files by
project. Suppose, for example, I have a `vegetables` project and a `fruit`
project, and set `dotspacemacs-startup-lists` to `(recents-by-file . (2 . 3))`.
In the home buffer I will see something like:

    ~/vegetables
        lettuce.el
        squash.el
        tomatoes.el
    ~/fruit
        apple.py
        orange.py
        banana.py

Even though only a subpath is displayed for each file, the click functionality
still works---i.e. the link still has the full path under the covers.

I originally asked a [question](https://emacs.stackexchange.com/q/62524/19069)
on Emacs StackExchange to see if there were any pointers or if this was already
a solved problem. After several days of receiving no answers, and having a
little time to poke at it, I figured I'd implement it myself.

What this does not cover: mixing recent files totally outside projects into this
list. Today they are just filtered out. That is a usecase I didn't need so I
figured that could be done in a subsequent pass if somebody wanted it.
2021-01-09 08:50:08 +01:00
JAremko eccdcbb1db Use keymap based replacement for prefixes. 2020-12-22 14:34:29 +02:00
JAremko 8cf703887f Cleanup 2020-12-18 17:45:38 +02:00
JAremko b869a05ebc Store mode based prefixes in keymaps 2020-12-18 17:45:38 +02:00
JAremko eb31481c17 Refactor some names and simplify tests 2020-12-18 17:45:38 +02:00
duianto c0f61fa035 [core] Fix package update restart message
Problem:
When the restart-emacs package is being updated.

The update packages restart message, still shows the (SPC q r) key binding even
though it doesn't work.

Cause:
The member function compared a string against a list of symbols.

A possible improvement:
Explain that the key binding won't work this time.

Before:
Emacs has to be restarted to actually install the new version of the packages (SPC q r).

After:
Emacs has to be restarted to actually install the new version of the packages
(SPC q r) won't work this time, because the restart-emacs package is being updated.
2020-12-08 20:14:52 +01:00
duianto c2fb123248 [core] Update dotfile, font :size comment: int vs float
Add a comment about the font :size difference between:
integer (pixel size)
floating-point (point size)

Point size is recommended, because it's device independent.

source:
https://www.x.org/releases/X11R7.6/doc/xorg-docs/specs/XLFD/xlfd.html

Thanks libensterben for the info about point size being device independent.
https://github.com/syl20bnr/spacemacs/issues/14142#issuecomment-738218635

The font size comment was requested in:
ui/font is too small in default .spacemacs even with all prerequisites #14142
2020-12-08 20:13:13 +01:00
JAremko f761d1e389 cleanup 2020-12-06 07:02:04 +02:00
JAremko 97418aaa4f Do not store major mode replacements in keymap [bugged] 2020-12-04 09:26:09 +02:00
JAremko f31b6f28f0 Store major mode replacements in keymap (when possible).
It should give a good performance boost to which-key since
major mode replacements are stored in a global variable and
we have a lot of them.
2020-12-04 08:15:39 +02:00
thanhvg e3b6464649
[core][tide][lsp] improve spacemacs/set-leader-keys-for-minor-mode and apply it to tide and lsp layers (#14141)
* [core][keybinng] improve minor mode binding

This commit added add a new function defun spacemacs/declare-prefix-for-minor-mode
and improved spacemacs/set-leader-keys-for-minor-mode.

`which-key` package recently introduced a new api
which-key-add-keymap-based-replacements which improves perfomance and allows
prefix and namings to be stored directly in keymap. This is a great improvement.

With this new api we now make change to spacemacs/declare-prefix-for-minor-mode
to manage prefix also. For example:

  (spacemacs/set-leader-keys-for-minor-mode 'lsp-mode
    "=" "format"
    "=b" #'lsp-format-buffer)

Before we had to use another api to bind prefix
spacemacs/declare-prefix-for-mode which only works on major-mode. As lsp-mode is
a minor mode this api causes a lot of problems to which-key performance. An
example is https://github.com/syl20bnr/spacemacs/issues/12455 which led to my
hack in https://github.com/syl20bnr/spacemacs/pull/12474.

The improved spacemacs/set-leader-keys-for-minor-mode will take care of both
prefix and key naming for the minor mode. This will allows us to have a better
set up for dynamic minor modes such as lsp-mode, tide-mode etc.

Also another api is created to make prefix for minor mode:
spacemacs/declare-prefix-for-minor-mode.

Usage:
(spacemacs/declare-prefix-for-minor-mode 'tide-mode "E" "errors")"

* [tide] improve prefix

* [lsp] improve prefix
2020-11-21 07:34:55 +01:00
Ray 31cff79099
Add persistent-scratch and unkillable-scratch into core/spacemacs-editing layer (#14115) 2020-11-14 10:02:51 +01:00
Ray Wang 905d4392c5
Add `spacemacs-scratch-mode-hook`
Also run-hooks in spacemacs/switch-to-scratch-buffer

update CHANGELOG.develop and retrigger workflow
2020-10-23 18:34:25 +02:00
Daniel Nicolai acc136168f
Update additional-packages docstring with info about loading package
Many new users (quite logically) assume that the additional-packages list
behaves like installing a layer, so they assume the file is also loaded
automatically. This commit adds info about the requirement to also load the
package with load/require/use-package in the user-config section of the dotfile.
2020-10-22 23:32:38 +02:00
Lucius Hu f98e66d841 fixed typo in .spacemacs template 2020-10-17 10:19:58 +02:00
Brandon T. Willard ac3c3546a2 Fix misc. compilation warnings 2020-10-15 23:49:33 +02:00
Keith Pinson f4a050bc18 [editing] Integrate evil-vimish-fold via dotspacemacs-folding-method
Not confident that I have plugged this in everywhere that I should have. However
I tested locally and it seems to be working.
2020-10-15 23:21:15 +02:00
mark30247 c6c949156a fixes the wrong display of Release Notes
Quickhelp and Release Notes are currently not correctly displayed in the home buffer. This fixes it.
2020-10-10 04:08:34 +02:00
JAremko 72932b804b fix spacebind prefixing bug 2020-10-08 09:35:40 +03:00
Robert O'Connor 82ba73a1c0
update copyright to 2020 2020-09-23 21:25:01 +02:00
syl20bnr dd94a13a48 [core] Add message feedback about dump result 2020-09-21 02:19:33 -04:00
syl20bnr fd5113d0fb [core] Add a global spinner in mode line when dumping Spacemacs 2020-09-21 02:10:22 -04:00
syl20bnr 04f8d2ac54 [core] Add spinner.el from Artur Malabarba to libs 2020-09-21 01:12:41 -04:00
syl20bnr 2c86ae7426 [core] Display dumper process buffer with universal prefix argument
Display process buffer when the universal prefix argument is set with function
spacemacs/dump-emacs.
2020-09-20 21:17:21 -04:00
syl20bnr e3acd91118 [core] Rename spacemacs|require to spacemacs|require-when-dumping 2020-09-20 21:17:21 -04:00
Maximilian Wolff 0125af2beb
[dotfile] Add warning about using spacelpa
See #13926 for details
2020-09-18 22:05:56 +02:00
syl20bnr 52ec07bb44 [core] Fix installation of unused layer dependencies after SPC h SPC
Fix bug where layer dependencies of all layers (even the unused ones)
are installed after SPC h SPC and then SPC f e R
2020-08-29 21:51:52 -04:00
syl20bnr c3cf2275a7 [core] Remove popup of the dump process buffer 2020-08-29 21:51:52 -04:00
syl20bnr b5f673e0a7 [core] Update message when force dumping 2020-08-29 21:51:52 -04:00
syl20bnr b5ac0ae65a [core] Fix docstring for dotspacemacs-emacs-dumper-dump-file 2020-08-29 21:35:24 -04:00
syl20bnr 65e8d8553b [core] Parse command line argument when using the dumper 2020-08-29 21:35:24 -04:00
Alex d17492e6d5 [core] Fix append path from .spacemacs.env 2020-08-26 22:18:53 +02:00
syl20bnr 39df5e26b6 [editing] Add qwerty-ca-fr layout to evil-swap-keys config 2020-08-21 17:35:24 -04:00
Maximilian Wolff 346be150f9
[core] Replace snoopy with evil-swap-keys and simplify setup
See #9316 for the discussion.
2020-08-18 00:08:01 +02:00
Alex 033647422d Add doom-monokai-spectrum and doom-zenburn themes 2020-08-17 20:12:46 +02:00
Maximilian Wolff ca2cdd0fcc
[core] Fix ugly comment formating
In my last commit I have messed up the comment
formats so that they not longer show correctly
in help buffers. This fixes it.
2020-08-11 00:16:09 +02:00
Maximilian Wolff 793898f818
[core] Move snoopy mode to spacemacs-editing layer 2020-08-11 00:05:40 +02:00
duianto 4b7273cd09 [themes] Sort supported themes alphabetically 2020-07-21 23:29:13 +02:00
Kirill Chernyshov 9e6cfbb83e Add almost-mono-themes into core-themes-support list of aliases 2020-07-20 22:33:29 +02:00
Maximilian Wolff c43b9ea104
[core] Revise "do not delete system package" check
Fixed some smaller issues and added the missing
logging feature.
2020-07-13 00:55:23 +02:00
William Cedervall 52d5d9d98f
Only remove non system pkg
Added "configuration-layer//system-package?" based on package-delete
(pretty much a direct partial copy-paste) so that
"configuration-layer//package-delete" can check if package is a
system package

No crash on spacemacs boot (with unused system-package present).
Though right now "configuration-layer//package-delete" only ignores system
packages instead of reporting them. Not entierly what @nbraud proposed,
but insufficient err-logging is a significantly smaller issue.

Fixes #11160
2020-07-13 00:55:23 +02:00
Maximilian Wolff 5ea876a161
Revise file name abbreviation mechanism
The new variable was not following the naming conventions.
The file was not initialised in core-dotspacemacs.el.
The file was not part of the .spacemacs.template.
2020-07-03 00:52:14 +02:00
Gregor Olenik 111e7a6a36
Use file-name-nondirectory to shorten filenames on home buffer 2020-07-03 00:32:44 +02:00
Mihaly Barasz 0f7693c4d5 Fix spacelpa public key file name
This fixes the issue that users have to import the public key manually
to pass spacelpa archive verification. See #12652
2020-07-01 21:11:33 +02:00
Ag Ibragimov 41276119ea [core] Fix: removes nils from layers list
Spacemacs allows to define layers declaratively like so:

dotspacemacs-configuration-layers
`(,(when (eq system-type 'darwin) 'osx))

The problem - in Linux that would add a nil element into the list, which then
makes it unable to run dotspacemacs/sync-configuration-layers <SPC f e R>, the
tests won't pass.
2020-06-29 07:36:31 +02:00
yqu212 ac83fe3aaa [core] fix broken --timed-requires and --adv-timers under emacs 27 and above
time-date.el requires cl-lib under Emacs 27 and above. Then the around advice
spacemacs//timed-require and spacemacs//load-timer of require will cause
recursive load under emacs 27 and above. The load sequences is: requiring cl-lib
uses autoload function time-since which loads time-date.el and then time-date.el
requires cl-lib.

The solution to break this recursive load sequence is to load time-date.el
before adding the around advice spacemacs//timed-require and
spacemacs//load-timer to require.
2020-06-20 22:54:09 +02:00
Maximilian Wolff c0288e8374
[core] Drop warning from spacemacs|use-package-add-hook
The original idea was to have a warning when
use-package-inject-hooks is set to nil however
having a warning in that macro caused too much
negative side effects and also does not cover
all cases.

Therefore it is to be removed.
2020-06-14 21:09:07 +02:00
Maximilian Wolff 6e6bbe039e
[core] Make spacemacs|use-package-add-hook emit code for warning generation
In my first commit I did not add the warning message properly.
Basically the macro should emit code to create a warning if
the generated code is run and the predicate is not fulfilled.

However in my last commit it did run the code during macro
expansion which would do the testing there which is not
what I wanted.
2020-06-07 21:32:42 +02:00
Maximilian Wolff fbb8354c89
[core] Warn if spacemacs|use-package-add-hook won't have any effect
spacemacs|use-package-add-hook is generating code which
is dependent on use-package-inject-hooks being non-nil.

If this happens now a big warning is written to the log
informing users of a potential issue or problem caused
by their user-config.
2020-06-07 21:09:42 +02:00
Kunal Bhalla cdc189f33d
[RFC] Add poet's variant themes
Someone requested adding poet's variants to the theme -> package mapping in spacemacs at https://github.com/kunalb/poet/issues/20.
2020-06-07 18:40:49 +02:00
duianto 464bd697ef [core] Terminal fix mode line indicator overlap
In a terminal, when a modes mode line name is diminished,
to two characters, and the first one is a unicode character,
then the second character overlaps the right side of the first character.
2020-06-07 18:23:20 +02:00
John Practicalli Stevenson 4349485cc7 Add doom-gruvbox-light theme
Add doom-gruvbox-light theme to prevent Spacemacs from trying to download a
package with the same name from elpa (and failing because there is no such
package).

doom-gruvbox-theme can now be included in dotspacemacs-themes configuration
without generating an error or trying to download a non-existent package.
2020-06-05 13:43:17 +02:00
Evan Klitzke b114dde28d Encode emacs-version in dotspacemacs-emacs-dumper-dump-file 2020-05-18 23:32:46 +02:00
Maximilian Wolff d314cc7eef
Make auto-complete more configurable and efficient for lsp
To optimise performance of lsp mode in emacs 27 and above
I have introduced a new dotfile variable to define the size
of data read from external processes. The default I have
set to the recommended setting from lsp-mode.

In addition I have introduced a new layer variable for
auto-complete-layer to define the minimum prefix length.

I have also added instructions to auto-complete's readme
how to set these variables to the recommended settings
for lsp-mode.

Changes inspired from #13507
2020-05-15 22:22:28 +02:00
Wieland Hoffmann ed8fc556da
Make spacemacs/cycle-spacemacs-theme work with themes with keywords
Themes can now contain keywords in addition to just the theme name like

   dotspacemacs-themes '((name :location (recipe :fetcher github
                                                    :repo "user/repo"))
                         solarized-light
                         solarized-dark)

However, for theme cycling, we first try to detect whether the current
theme (spacemacs--cur-theme) is in the list of cycleable themes and go on from
there. Since spacemacs--cur-theme is just a name, this fails when
spacemacs--cur-theme is the name of a theme that's specified with additional
keywords in dotspacemacs-themes.

To fix this, check if spacemacs--cur-theme is in the list of theme names.
2020-04-16 22:35:36 +02:00
duianto acdb59767c [core] Enable eager spacebind bindings by default 2020-04-15 16:04:17 +02:00
Maximilian Wolff 6a745993e3
Make `dotspacemacs-major-mode-emacs-leader-key` use same default in core 2020-03-21 21:14:01 +01:00
Richard Kim 782ad723a9
Fix emacs major mode leader key binding for GUI emacs 2020-03-21 21:12:50 +01:00
Matt Kramer f1e2d974ed
Make spacemacs/open-junk-file create junk directory and fix counsel issues
This is a squash commit including below commits

Add dotspacemacs--pretty-ignore-subdirs

Within the specified subdirs of `dotspacemacs-start-dir`,
spacemacs/prettify-org-buffer (and hence space-doc-mode) will not be called.
Without this variable, using spacemacs/open-junk-file to create an Org file will
result in prettification, which is not necessarily the desired behavior.

Call make-directory in spacemacs/open-junk-file

This imitates the behavior of open-junk-file.

Prevent spacemacs/open-junk-file from getting confused by Dired

If we're in a dired buffer, counsel-find-file will ignore
current-directory (i.e. junk-dir) and use (dired-current-directory) instead. We
fool Counsel by shadowing major-mode to nil.

Update CHANGELOG.develop re spacemacs/open-junk-file
2020-03-21 20:52:21 +01:00
Muneeb Shaikh bb8ec23ec1 [themes][keybindings] Use apt completion framework for loading theme
Theme transient state key-binding `t` is broken if `ivy` completion framework is
used. The binding unconditionally invokes `helm-themes`.

This change adds a new function which takes care of invoking correct
theme-loader function based on completion framework currently in use.

The old binding used `helm-themes` but the new function uses already defined
`spacemacs/helm-themes` which removes the number of candidates limit.
2020-03-19 10:48:59 +01:00
Muneeb Shaikh b7fd2fab6e [core-themes] Add support for doom-monokai-pro 2020-03-14 09:02:35 +01:00
Maximilian Wolff c7af787257
Add setting to dotfile to deactivate `clean-aindent-mode`
There have been complains about issues with `clean-aindent-mode` from
multiple users. For some of these deactivating the mode in their user-init
did not work as intended. Therefore I have added a setting for it in the
dotfile.
2020-03-13 19:00:48 +01:00
Bruno Morais d4cc5cf916 Add doom-molokai back to supported themes 2020-03-13 18:19:18 +01:00
Bruno Morais 4186ebb658 Replaced doom-molokai with doom-monokai-classic 2020-03-13 08:16:49 +01:00
Muneeb Shaikh 3f526479e3
[themes] add highly accessible themes - modus-{operandi, vivendi}
Modus themes are highly accessible themes for GNU Emacs, conforming with the
highest accessibility standard for colour contrast between background and
foreground values (WCAG AAA standard).

Screenshots: https://gitlab.com/protesilaos/modus-themes/-/wikis/Screenshots
2020-03-12 21:25:44 +01:00
JAremko 6abe62efb5 [spacebind] generate less code 2020-03-12 22:17:17 +02:00
JAremko 710aa947b7 [spacebind] use cl-every 2020-03-11 10:35:11 +02:00
JAremko 62bbff5567 [spacebind] add tests and docs for overrides 2020-03-11 10:35:11 +02:00
JAremko 2e81c032ef [spacebind] enable nested form fmt 2020-03-11 10:35:11 +02:00
JAremko a18b4d76b2 add :label for atl labels 2020-03-10 20:54:57 +02:00
JAremko 130f00e4f3 make key names more coherent 2020-03-10 20:54:57 +02:00
JAremko 7d177d4e66 Improve spacebind docs 2020-03-10 20:54:57 +02:00
Hong Xu 2c99a99d59
Remove executable permission from core/templates/.spacemacs.template
733a3a8199 accidentally adds executable
permission to core/templates/.spacemacs.template. This commit removes
the executable permission.
2020-03-08 12:27:20 +01:00
JAremko 0753287864 rename spacebind -> spacemacs|spacebind
Also fix stuff.
2020-03-05 12:21:01 +02:00
Muneeb Shaikh bb0a118344
[core-themes] Add support for doom-ephemeral 2020-03-05 00:00:38 +01:00
jaremko b83521edbb Add spacebind macro and tests for it 2020-02-27 21:48:40 -05:00
Maximilian Wolff f44047ccdc
Make interactive installation of python layer not fail
If a layer is interactively installed by visiting a file the progress
file is updated without being properly initialized before causing a
division by zero.

Now `spacemacs/update-progress-bar` will ignore the call if
`spacemacs-loading-dots-chunk-threshold` is <= 0.
2020-02-25 22:14:01 +01:00
Zach Pearson 733a3a8199
Add option to hide version string in Spacemacs buffer. 2020-02-24 12:37:37 +01:00
Maximilian Wolff d10ca8d6d5
Update quelpa.el to latest version 2020-02-24 12:04:19 +01:00
Maximilian Wolff fcb79bf55b
Update page-break-lines.el to latest version 2020-02-24 12:02:18 +01:00
Maximilian Wolff 5735221365
Update package-build.el to latest version on melpa 2020-02-24 11:42:41 +01:00
Maximilian Wolff 5ba8159037
Update mocker.el from v0.3.0 to v0.3.1 2020-02-24 11:20:00 +01:00
Maximilian Wolff 2823f2876e
Update ido-vertical-mode from package version 20160429.1037 to 20180618.2101 2020-02-24 01:34:24 +01:00
Maximilian Wolff 2db7d720bc
Upgrade spacemacs-theme to latest version 2020-02-24 01:17:50 +01:00
Maximilian Wolff 2f70ed83ad
Update ht.el from v2.0 to 2.2 2020-02-24 01:10:48 +01:00
Steven Allen 9176e93497
[dump] Fix several dumper issues
This commit contains the following original ones:
[dump] don't assume spacemacs start directory when dumping
[dump] dump to a temporary file and atomically rename it
[dump] cleanup after dumping
2020-02-18 20:41:43 +01:00
Aaron Jensen 840b431cf6
configuration: fix redundant update checking
Fixes #13114
2020-02-09 19:23:19 +00:00
Muneeb Shaikh 0d7d8ce0ed
[themes][doom] Sync with updated list of doom themes
Added following themes:

* doom-acario-dark
* doom-acario-light
* doom-horizon
* doom-laserwave
* doom-manegarm
* doom-material
* doom-oceanic-next
2020-02-09 19:10:38 +00:00
Ag Ibragimov 7f92a4388d fix: ignore nil values in dotspacemacs-configuration-layers
otherwise it throws warnings when layers introduced imperatively, e.g.:

dotspacemacs-configuration-layers
`(
  ,(when (eq system-type 'darwin) 'osx)
  ,(when (eq system-type 'gnu/linux) 'exwm))
2020-02-05 20:54:13 +01:00
duianto ad521fff5c
Spacemacs buffer in other window with prefix arg 2020-02-01 08:53:46 +00:00
duianto 4b451a5fe3
Fix void destructuring-bind after cl pkg deprecation
destructuring-bind is a macro in the deprecated package: cl

SPC-TAB calls: spacemacs/alternate-buffer
In the spacemacs-base distribution, it shows the message:
spacemacs/alternate-buffer: Symbol’s function definition is void: destructuring-bind

Also renamed three instances of destructuring-bind in the rirc layer.
2020-02-01 08:47:55 +00:00
Ivan Yonchovski 06cb81e90a [themes] Add doom-dark+ 2020-01-23 11:05:45 +01:00
Zach Latta 1d2a1fa6e4 Fix capitalization of GitHub
Change instances of "Github" to "GitHub".
2020-01-20 09:14:12 +01:00
Mpho Jele 08d19389cc Frame title setting doesn't need to depend on environment (gui/cli)
Enables frame titles in gui emacsclient frames.
2019-12-22 16:52:41 +01:00
madand 5dc9e2f271
Fix CI builds by reverting a breaking change to `mocker.el`
The change was introduced by #13059. mocker.el is a large piece of legacy code
that depends on deprecated functionality in EIEIO and cannot be trivially
converted to use `cl-lib` by search and replace.
2019-12-15 21:41:51 +00:00
kimr da80634370
converted cl to cl-lib 2019-12-14 20:20:51 +00:00
duianto a52fc88b16
Fix SPC-TAB in spacemacs-base distribution
Problem:
The variable spacemacs-layouts-restrict-spc-tab is defined in:
~/.emacs.d/layers/+spacemacs/spacemacs-layouts/config.el
But the spacemacs-layouts layer isn't loaded by default in spacemacs-base.

Solution:
Check if the variable is bound.
2019-12-08 11:12:35 +01:00
duianto 7feed6215d
Prevent Spacemacs buffer redisplay in filetree window 2019-12-06 22:30:08 +01:00
duianto 623ca354fe
Fix home buffer version and banner
- Removed the first line deletion.
This required the banners to have an empty first line.

- Removed the empty first line from the banners.

- Made sure that there is a single empty line between:
  - The Version and Banner.
  - Banner and Buttons ([?] [Homepage] ...).
  - Version and Buttons (when the banner is hidden).

- Reordered the backend version insertion function call
to match the frontend Spacemacs buffer order.
  - version
  - banner
  - buttons

Before it added:
- the banner
- then the buffers first line was removed
- then the version was added to the first line
- then the buttons were added at the bottom of the buffer
(there are more things added after the buttons,
but they haven't been changed by this commit).

- Removed the version insertion call in:
core/core-spacemacs-buffer.el

The changes above caused the version to appear twice
in the Spacemacs home buffer on startup.

I'm not sure if it has/had other uses.

This seems to be where it was first added to:
core-configuration-layer.el:
core: restore default mode line in home buffer
77161bd591

It was slightly modified in this commit:
core: defer distro insertion in home buffer
cd50d9c069

Here it was joined with the banner:
Fix version injection in home buffer
  Don't inject version if banner is nil
a764eb4eb9

core: condensed versions into one string in left-hand side
  spacemacs-version@emacs-version (distribution)
627e934453

- I had not seen that the version was joined with the
banner on purpose until now.

It seemed useful to still be able to see the versions
if one just wanted to hide the banner.

Therefore I opened this PR (it's been cherry-picked):
Uncouple version from banner in spacemacs buffer #11901
https://github.com/syl20bnr/spacemacs/pull/11901

If there's a good reason to combine them again,
then the changes can be reverted.
2019-12-03 20:44:22 +00:00
Muneeb Shaikh f3f2db8315 Update the list of solarized themes
Upstream has added a blend of solaized themes with different color palettes.
2019-12-02 18:41:23 +01:00
Maximilian Wolff dd7a5d98be
Revise helm recompile package action and bind recompile-elpa
The newly introduced function to compile an elpa package
was very much redundant with the existing recompile-elpa function.

I have adapted recompile-elpa so that it can be used for the helm action too.

In addition I have bound recompile-elpa to `SPC c C-c` to allow users to
easily recompile their entire elpa directory if the need arises.

I have also removed the error handling in the helm action in favor of
standard error reporting via the *Compile-Log* buffer.
2019-11-24 02:07:15 +01:00
Gia Thanh Vuong 94de754504
[core] [helm] add action to recompile an elpa package
How to use: `SCP h p` select package then `F3` or `C-z` and choose `Recompile`

Motivation: Some packages when compiling need other packages to be loaded first.
The pacakage maintainers should make sure of this requirement but sommetimes
they don't. It also doesn't help when Spacemacs is lazy loading and compiles
updated pacakges on startup. So the manual fix for this problem is recompile the
package once Spacemacs has fully loaded. This requires user go to the package
install location to delete elc files and then do a `spacemacs/recompile-elpa`.
This commit will do that chore for them.

This will make fixing the problem with `org-plus-contrib` or `dumb-jump` update
every now and then easier.
2019-11-23 23:40:50 +01:00
Miciah Masters a55df96caa [core] Environment variable caching fixes
Fix several problems with environment variable caching.

First, if a shell printed extra output besides the command output,
spacemacs//init-spacemacs-env included the extra output in .spacemacs.env.
For example, a login shell could print a motd, which would be erroneously
included in .spacemacs.env.  To avoid this, spacemacs//init-spacemacs-env
now redirects the command output to a temporary file and then reads the
file.

Second, spacemacs//init-spacemacs-env sorted lines using the entire
"name=value" string for each line whereas the correct behavior is to sort
only on the "name" part.  To fix this, spacemacs//init-spacemacs-env now
uses sort-regexp-fields with an appropriate regexp to match the "name" part
and ignore the "value" part.

Third, although load-env-vars-set-env added all PATH settings in
.spacemacs.env to exec-path, it set PATH to the first PATH setting in
.spacemacs.env.  Now load-env-vars-set-env sets PATH from exec-path so that
it will reflect that combined value.

Fourth, load-env-vars-set-env set exec-path and PATH without consideration
to the operating system's directory separator.  Now load-env-vars-set-env
converts backslashes to forward slashes when adding path entries to
exec-path and converts forward slashes to backslashes when setting PATH on
platforms that use backslashes.

Fifth, load-env-vars-set-env now normalizes exec-path by deleting trailing
slashes from path entries, converting drive letters in path entries to
lower-case, and deleting duplicate path entries.

Sixth, Spacemacs no longer uses exec-path-from-shell, but a changelog entry
said that it did.  This commit corrects the changelog entry, deletes
another outdated entry, and merges two entries that covered the same
functionality.

Finally, this commit corrects several typos and tries to improve wording in
several docstrings, messages, and comments.

* CHANGELOG.develop: Delete mention of exec-path-from-shell, which
Spacemacs no longer uses by default.  Delete mention of
dotspacemacs-import-env-vars-from-shell and
dotspacemacs-import-env-vars-shell-file-name, which no longer exist.
Merge entries about synchronizing environment variables.
* core/core-env.el (spacemacs-ignored-environment-variables): Fix typos and
mention that the strings are regexps that are matched against the names of
environment variables.
(spacemacs//init-spacemacs-env): Use a temporary file rather than standard
output in order to avoid getting motd and other noise.  Sort lines using
only environment variables' names, not their values.  Better describe the
behavior with respect to spacemacs-ignored-environment-variables, duplicate
settings, and PATH.  Try to make wording clearer.
(spacemacs/edit-env): Fix typos in the docstring.
* core/libs/load-env-vars.el (load-env-vars-set-env): Fix typos in the
docstring.  Delete trailing slashes from path entries in exec-path, convert
drive letters to lower-case, delete duplicate path entries, and convert
backslashes to forward slashes when setting exec-path.  Set PATH from
exec-path, converting forward slashes to backslashes on platforms that use
backslashes.
2019-11-03 22:25:05 +01:00
smile13241324 5fdb89d61d Optimise spacemacs/last-error further
Noticed that I have used if instead of when
and added an obsolete progn.
2019-11-03 20:35:49 +01:00
smile13241324 e74fc70de8 Revise spacemacs/last-error function and change key binding 2019-11-03 20:14:10 +01:00
Benoit Coste 93ac5203b4 Add function 'spacemacs/last-error
Sometimes it is useful to go directly to the last error message in the buffer.
This function recursively calls 'spacemacs/next-error until the last error is
reached.
The binding "SPC e l" is associated with it
2019-11-03 20:14:10 +01:00
Miciah Masters 552fd5953c Update references to macOS
Apple renamed "Mac OS X" to "OS X" in 2012 and then to "macOS" in 2016.
Update references to use the current name.
2019-10-13 12:04:40 +02:00
syl20bnr 584392bd92 [core] Fix layer dependencies based on layer variables
There was a edge case with the declaration of the `lsp` layer in `layers.el`
files.
The `hy` layer depends on the `python` layer which in turn depends on the `lsp`
layer if and only if the `python-backend` layer variable is set to `lsp`.
When the `hy` layer was declared first then it declares the `python` layer
without its layer variables, thus the `lsp` layer was not declared because the
`python-backend` variable was not set.

The fix is to gather all the layer dependencies and resolve them only after all
the used layers have been declared.

* new function `configuration-layer/declare-layer-dependencies`
* replace all calls to `configuration-layer/declare-layer` by the new function
  except for distribution layers (we declare layer dependencies right away in
  distribution layers)
2019-09-30 02:00:48 -04:00
syl20bnr c2443ef7d0 [core] Add lsp layer to .spacemacs template 2019-09-30 00:50:01 -04:00
syl20bnr 42cc5f25f3 [core] Better work-around for GnuTLS bug with emacs 26.1 and 26.2
Use the variable libgnutls-version.
Thanks to CJex.
2019-09-14 22:15:53 -04:00
smile13241324 48ffd37594 Revert "[themes-megapack] Add `ewal-spacemacs-themes` to `themes-megapack` layer."
This reverts commit 883cf97308.
2019-08-26 19:58:34 +02:00
syl20bnr cfb12e9bd5 [core] Improve spacelpa archive verification
* modified function configuration-layer//stable-elpa-verify-archive

Add a `fatal-err` variable to handle critical erros that prevent the
verification to be attempted.
Use the function `epg-verify-file` instead of `epg-verify-string` which seems
to give more reliable results.
2019-08-24 22:50:39 -04:00
syl20bnr 512a1e3b0c [core] Fix some typos in stable ELPA verification prompts 2019-08-23 13:16:39 -04:00
syl20bnr efb2e3b96f [core] Update spacemacs GPG public key 2019-08-23 12:39:22 -04:00
syl20bnr c975fc64ca [core] Improve spacelpa verification and error detection
* modified function configuration-layer//stable-elpa-verify-archive

Gather errors along the verification steps and make a single call to
configuration-layer//stable-elpa-ask-to-continue at the end of the function.

Improve the scope of catched errors so now the users should be prompted when
GPG is not available on the system.
2019-08-23 12:12:51 -04:00
syl20bnr f21abcdcf3 [core] Rewrite of the stable ELPA initialization code
* new function configuration-layer//stable-elpa-disable-repository
* new function configuration-layer//stable-elpa-update-version-file
* new function configuration-layer//stable-elpa-delete-temporary-files
* new function configuration-layer//stable-elpa-ask-to-continue
* new function configuration-layer//stable-elpa-verify-archive
* new function configuration-layer//stable-elpa-disable-repository
* rename function configuration-layer/stable-elpa-download-tarball to
                  configuration-layer//stable-elpa-download-tarball
* new function configuration-layer/stable-elpa-init
* make the function configuration-layer/stable-elpa-version interactive

configuration-layer/stable-elpa-init is called from init.el.
This function then calls the other new function in more clear fashion than the
previous complicated configuration-layer/stable-elpa-download-tarball

The users are now prompt if they want to install the stable ELPA repository when
the verification of the archive failed.
2019-08-23 00:51:21 -04:00
syl20bnr 81d08a6b35 [core] Make spacelpa archive sign verification the default 2019-08-22 15:46:56 -04:00
syl20bnr 427c01c27a [core] Offline work-around for GnuTLS Emacs bug
This assumes that gnutls-cli is available on the system. The work-around won't
be applied if this executable is not available.
2019-08-22 15:11:01 -04:00
syl20bnr 8e469cb391 [core] Remove outdated comment in .spacemacs.template 2019-08-22 13:21:30 -04:00
syl20bnr b12bc7c857 [core] Avoid graphical glitches with empty modeline
It is important that the stable elpa download message in the modeline is always
visible to the user as the donwload can take a while depending on the connection
speed.
2019-08-21 23:30:55 -04:00
syl20bnr 4a8a8b04af [core] Remove unecessary check for gzip executable on Windows
Turns out we don't use it at all. Also tar.exe is part of the standard
MS Windows 10 distribution, it is installed in system32 directory.
2019-08-21 22:44:32 -04:00
syl20bnr b800694d32 [core] Add function for generic error about not found executable
* new function configuration-layer//executable-not-found-error
* use new function for tar and gzip not found errors
2019-08-21 22:30:24 -04:00
syl20bnr e1e972ec7c core: add startup message for GnuTLS work-around 2019-08-21 19:58:09 -04:00
syl20bnr cfc1057af0 core: fix spacelpa support
* new variable configuration-layer-stable-elpa-archive
* add missing sub-directory "packages"
* update .lock file with above changes and bump to archive version 0.400
2019-08-21 19:53:58 -04:00
Dominic Pearson 5d01efbb6d doom-themes: correct theme entries.
Add/remove missing themes from core/core-themes-support.el.
2019-08-21 16:14:50 +02:00
syl20bnr 9fc43ee9cd Remove commented code from previous commit. 2019-08-20 22:47:53 -04:00
syl20bnr 1541f7f515 Make TLS error hack to work offline 2019-08-20 22:34:54 -04:00
syl20bnr 25f639e403 Better hack to prevent TLS issues with Emacs 26.1 and 26.2
Make a test request to check if the bug happens.
If the bug happens then set gnutls-algorithm-priority to a working value.
2019-08-20 15:32:47 -04:00
syl20bnr d19d91f173 Fix Package undo-tree is unavailable
Backport bug fix from 26.3
Fixes #12633
2019-08-19 14:25:22 -04:00
duianto ae51fd7a77 Revert "Improve theme handling to support themes using `spacemacs-theme` custom api"
This reverts commit 5f308b0306.

This message is shown on startup:
spacemacs/startup-hook: Symbol’s value as variable is void: spacemacs-theme-custom-colors
and it broke several things.
2019-08-17 11:07:48 +02:00
smile13241324 5f308b0306 Improve theme handling to support themes using `spacemacs-theme` custom api 2019-08-16 23:05:42 +02:00
Uros Perisic 883cf97308 [themes-megapack] Add `ewal-spacemacs-themes` to `themes-megapack` layer.
Currently, the theme also modifies `spacemacs-dark` if also loaded in
`dotspacemacs-themes`. A
[fix](https://github.com/nashamri/spacemacs-theme/pull/144) for this is on it's
way upstream to `spacemacs-theme`, but the maintainer already gave their
[blessing](https://github.com/nashamri/spacemacs-theme/issues/139).
2019-08-14 22:33:25 +02:00
Thanh Vuong 0e9866efce spacemacs-layout layer: limit commmands to work within layouts
Add options to restrict some functions to current layout's buffers

Thanks smile13241324 and duianto for suggestions and fixing typos
2019-08-12 21:41:12 +02:00
duianto fba9447cfe Add toggle key docs to docstring and which-key mouseover
Added spacemacs|add-toggle key binding documentation strings:
- To the toggle keys function docstring
- And to it's which-key mouseover minibuffer text
2019-08-06 23:38:53 +02:00
duianto 0d4803b1ea Fix formatting core/core-dotspacemacs.el
Fixed:
docstring indentation
limited lines to 80 chars
missing newline warnings
etc.
2019-08-06 17:59:06 +02:00
yqu212 53a0dd85bf Remove dotspacemacs-verbose-loading from .spacemacs.template 2019-08-05 19:10:48 +02:00
smile13241324 85fca8f323 Restore winner-mode auto start without breaking dumping
As winner-mode was moved from init.el to dump-init.el winner-mode
was not longer properly started for non-dumped emacs sessions.
Having winner-mode auto activate at startup did fix the issue
for non-dumping users but in turn broke the dumping process.

I have now moved the necessary winner-mode init to
spacemacs/setup-startup-hook which is only called
in the non-dumping case. To allow customizations I activate
winner-mode prior to loading user-init this will allow users
to deactivate winner-mode in the dotfile and fix ediff themselves
if this is wished for.
2019-08-04 14:49:10 +02:00
smile13241324 421feed1f8 Update spacemacs-theme to remove conflicts with newer themes 2019-08-02 20:20:53 +02:00
nshadov 0e0319968d Remove Unicode triple dot in favor of ASCII one
Remove Unicode triple dot in favor of ASCII one because it breaks
initialization with message:
"*temp file*" default encoding cannot encode
2019-07-30 17:25:42 +02:00
syl20bnr e074784237 Fix regular loading of Emacs (i.e. without a dump file) 2019-07-26 23:20:18 -04:00
syl20bnr b7266b38b5 [dump] Add functions to save and restore load-path 2019-07-26 23:00:47 -04:00
syl20bnr 244ae42d6a [dump] Add new macro to delay execution after dump is loaded
New macro spacemacs|unless-dumping-and-eval-after-loaded-dump
2019-07-26 22:45:12 -04:00
syl20bnr 0c39f63c66 [dump] Move some code to dump-init.el 2019-07-26 22:44:11 -04:00
syl20bnr f51fc8e13b [core] Add pre-dump for layers and function spacemacs/dump-modes 2019-07-26 16:32:27 -04:00
syl20bnr cfd2b110f2 Update documentation and parameters for the portable dumper 2019-07-26 15:36:08 -04:00
duianto 3757ad131c Revert "colorized files and folders in spacemacs buffer lists"
This reverts commit bbb9d3d559.

Reason:
It causes issues on the spacemacs-base distribution.
2019-07-22 00:08:58 +02:00
BadDecisionsAlex bbb9d3d559 colorized files and folders in spacemacs buffer lists 2019-07-21 01:10:08 +02:00
kenranunderscore a69323fb3c Update list of base16 themes 2019-07-18 14:57:51 +02:00
Aaron Zeng cc4ab653c2 Update core-dotspacemacs.el default font size
0ffdb353f9 changed the default config template to use a point size instead of a pixel size.  Change the defvar declaration as well.

Commit modified by duianto:
Updated font size in doc/documentation.org
2019-07-18 11:43:45 +02:00
Fangrui Song c825035e48 core: add reference handler as per jump handler 2019-07-15 12:28:04 +02:00
duianto 0ffdb353f9 Change default font size from 13 to 10.0
13 and 10.0 are visually the same, because:
- Integer specifies the pixel size.
- Floating-point specifies the point size.

Using a default floating-point size has two benefits:
- It's clear that the font size can be changed by floating-point values.
- There won't be an unpleasant surprise that `13` and `13.0` are different
  sizes. For example to make the font slightly larger or smaller than `13`.
  Then `10.0` has to be found first by trial and error.
2019-07-14 21:53:27 +02:00
Miciah Masters ab893e3af0 Restore point in spacemacs/alternate-buffer
* core/core-funcs.el (spacemacs/alternate-buffer): Instead of using
switch-to-buffer, use set-window-buffer-start-and-point, specifying the
previous window start position and point if known.  Replace use of
cl-find-if with cl-find.
* CHANGELOG.develop: Add entry for change to spacemacs/alternate-buffer.
2019-07-01 12:56:31 +02:00
duianto cce5668adb Remove mentions of removed powerline-scale property
Remove mention of powerline-scale property from the
.spacemacs.template font variable comment.

Update the changelog.develop entry for the mode line
separator scale when the utf-8 separator is used.
2019-06-27 22:48:37 +02:00
jcaw d4cca74854 Add support for visual line numbers
Emacs 26 added built-in support for line numbers, relative line numbers, and
visual line numbers. Spacemacs supports only absolute and relative, but there is
no way to access the visual mode. It's hard to get around this, since Spacemacs
abstracts line numbers to a reasonably high degree.

Arguably, `visual` is much more useful than `relative` as a display type. Visual
line numbers are like relative line numbers, but only lines that are actually
showing are counted. This means:

  1. Hidden lines are not counted. If a large amount of text is folded, the line
     numbers won't jump from "10" to "546". This is particularly useful in
     buffers like `magit-status`, where a large amount of information is folded
     by default.

  2. Lines that are wrapped are counted as multiple lines, since they're being
     displayed as multiple lines in the editor. Each visual line will be
     numbered - unlike `relative`, where the entire thing is numbered... Once.

With standard relative line numbers, you can't actually navigate using the line
numbers in the sidebar as soon as folded or wrapped lines are introduced. Since
this is one of the main use cases for relative line numbers, this is a big
problem.

Visual mode fixes that problem. Every line that's being displayed is labelled.
Numbers always correspond to the actual number of lines you'd need to navigate
to reach that line.

This commit extends Spacemacs' line number interface to provide visual line
number support.
2019-06-23 19:16:44 +02:00
Juha Jeronen 672e3db625 Customizable major-mode for new empty buffers
New var: dotspacemacs-new-empty-buffer-major-mode

Set to a symbol naming a mode (e.g. 'text-mode) to apply that major mode to any
buffers newly created in Spacemacs by spacemacs/new-empty-buffer.

Fixes #12382.
2019-06-17 08:26:56 +02:00
sergeiz2 365c92bae5 Add force option to spacemacs//init-spacemacs-env call 2019-06-13 18:42:15 +02:00
Ag Ibragimov cf796a4224 spacemacs/recompile-elpa with argument deletes all existing *.elc files
Rationale: very often users required to find and delete all *.elc files
manually. That's a bit tedious.
2019-06-12 20:15:51 +02:00
Thanh Vuong 02bf928815 [core] fix spacemacs/error-delegate
determine flycheck or emacs error backend using next-error-function instead of
next-error-find-buffer
2019-06-09 17:21:04 +02:00
Vitor Finotti ac17032009 Add inverted Dogemacs banner for dark themes 2019-06-02 21:42:32 +02:00
Alexander Miller 8125be79e4 Workaround for buffer-list-update-hook performance issue.
The call to `format-spec` at the end of `spacemacs/title-prepare` creates
a temporary buffer which invokes `buffer-list-update-hook`. This in turn is
caught by treemacs' follow-mode and can lead to an action that requires a
recalculation of the frame-title, which again creates a new temp-buffer, and
so on.

The result is that in some situations Emacs will put full load on a CPU
core while it is idle (though the UI does remain responsive). The disabling
of the hook for the calculation of the frame title prevents this feedback
loop from forming.

See also https://debbugs.gnu.org/db/34/34765.html

Fixes #12387
2019-06-01 14:18:20 +02:00
bb2020 af1ddfd7bd Add `dotspacemacs-undecorated-at-startup` template variable 2019-06-01 00:01:20 +02:00
ogdenwebb 9bc5679d89 Add more Kaolin themes to spacemacs-theme-name-to-package. 2019-05-29 20:05:08 +02:00
JAremko 30a7b59aa6 Elaborate on README.org tags 2019-05-20 15:25:00 +03:00
JAremko 1554873414 fix links 2019-05-18 13:25:44 +03:00
Anton-Latukha f6660f82d4
Switch to the new layers generator 2019-05-15 21:08:21 +03:00
Miciah Masters 19e4c49126 Fix sort in insert-lazy-install-configuration
Commit 1c4f685b13 replaced
configuration-layer--layers (a list of cfgl-layer objects) with
configuration-layer--used-layers (a list of symbols).  It also changed the
configuration-layer/insert-lazy-install-configuration function to use the
new variable, but it did not change the sort predicate.  Consequently, the
function started failing:

    Wrong type argument: listp, spacemacs-purpose

In addition, because sort is destructive, the function also deleted values
from configuration-layer--used-layers.

This commit fixes the sort predicate so that the function returns the
correct value, and it copies the list before sorting to avoid modifying
configuration-layer--used-layers.

* core/core-configuration-layer.el
(configuration-layer/insert-lazy-install-configuration): Use string<
as the sort predicate, and give sort a copy of the list.
2019-04-26 21:41:39 +02:00
Robert Zaremba 4add7d478d Add emacs banner
To use it put this line in your dotspacemacs/init:
dotspacemacs-startup-banner 100
2019-04-24 22:11:41 +02:00
Florian Bruhin cca6c0549b core: Fix typo in error message 2019-04-24 19:41:24 +02:00
Parker Johnson 0b7d350af9 add startup support for doom-sourcerer theme 2019-04-23 23:13:44 +02:00
JAremko 23842fa77e Simplify descriptions of layers 2019-04-21 22:09:34 +03:00
JAremko 216ebd32b9 Mention tags in README.org template 2019-04-21 22:09:34 +03:00
Henry Hirsch fba6d38bf3 Improve wording of excluded-packages documentation 2019-04-21 13:04:03 +02:00
duianto a76dc11a5b Uncouple version from banner in spacemacs buffer
The line in the Spacemacs home buffer that shows the Spacemacs version, Emacs
version and the Spacemacs distribution, for example: "0.300.0@26.1 (spacemacs)"
were tied to the banner. The line disappeared when the banner was hidden.
2019-04-20 23:53:25 +02:00
duianto 579e2f3017 Sort configuration layers in .spacemacs.template 2019-04-20 22:57:42 +02:00
timor ec5b1f2ad0 core/core-spacemacs-buffer: move up macro definition 2019-04-04 10:48:51 +02:00
bmag 5eff620e83 custom setting: don't write to dotfile before loading all of them
Fixes a bug where saving a custom variable (e.g. package-selected-packages)
before reading the custom settings from dotspacemacs/emacs-custom-settings could
overwrite the stored settings.
2019-02-18 14:21:06 -05:00
syl20bnr 474f945709 defaults: add SPC T N key binding to cycle theme backward 2019-02-10 10:10:51 -05:00
Codruț Constantin Gușoi a2bda16823 Use external tar program for extracting archive 2019-02-01 00:57:46 +02:00
duianto a87300e9c0 Fit Spacemacs home buffer version in terminal 2019-01-29 00:26:21 +02:00
Dieter Komendera b1a958a54c Update quelpa.el to 2c17c4f9 2019-01-20 15:59:04 +02:00
nashamri 5d5a8a5588 Latest theme updates
Summary:

- Update diff and ediff colors (thanks @duianto).
- Support hl-todo mode.
2019-01-20 15:57:28 +02:00
Alexander Miller e7d13da61d Make treemacs the default file browser. 2019-01-20 14:31:36 +02:00
JAremko c7f139e2dc Fiddle with layers.org TOC generation. 2019-01-13 21:48:43 +02:00
JAremko b6949a329e Fix typo 2019-01-13 20:35:45 +02:00
JAremko 19502ec517 Update layers.org generation 2019-01-13 20:27:35 +02:00
RockyRoad cc1764b2ad Recompiling Elpa: don't skip missing .elc files 2018-12-04 21:57:31 -05:00
bmag 745e868b07 update spacemacs theme
Update spacemacs theme to commit c162ad13 upstream.

c162ad13e4
2018-11-09 20:20:26 +02:00
bmag 642b811882 core: update Quelpa to last version 2018-11-09 20:18:47 +02:00
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
Codruț Constantin Gușoi 5c6057226e Encapsulates multiple cursors functionality in a layer 2018-10-27 14:33:42 +03:00
deb0ch afd3c8c127 alternate-buffer without purpose 2018-10-27 12:54:02 +03:00
Kevin Ji e98c1b5113
core: Remove space before question mark 2018-10-18 20:02:24 +03: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
André Peric Tavares 775d584665 Merge file variables in a single line 2018-08-09 22:53:11 +01:00
André Peric Tavares e329582f54 Use lexical binding in dotfile template
Lexical binding is easier to reason about and it's generally recommended for new code. It's faster too.

Dynamic scoping can lead to tricky situations. Example: https://emacs.stackexchange.com/questions/10394/scope-in-lambda

This probably won't break existing code. Most people don't even know the default is dynamic binding.
2018-08-09 22:53:11 +01:00
John Eismeier 5e3c96562a Propose a couple of spelling corrections 2018-08-02 00:20:06 +03:00
sorawee 616ca1443d Fix a typo (overwite -> overwrite) 2018-07-24 00:27:15 +03:00
Compro-Prasad 9662279838 Fix overflow of line in page-break-lines-mode when using line number
This is picked up from

fd3b7e38ad/page-break-lines.el
2018-07-24 00:11:39 +03:00
DonHugo69 e2b2266028 update doom-themes
* doom-challenger-deep
* doom-opera
* doom-opera-light
* doom-solarized-light
2018-07-10 00:12:11 +03:00