Commit graph

11551 commits

Author SHA1 Message Date
Lucius Hu
d6eb0f9fe6 rust: Improved LSP Rust server switch functionality
Currently, when `lsp` backend is used for `rust` layer, `SPC m s s` is bound to
`lsp-rust-switch-server`, which temporarily changes the preferred LSP server
for `rust-mode`, but it DOES NOT switch the running LSP server. Users need to
call `lsp-workspace-restart` to finish the switching.

This PR introduced a new function `spacemacs//lsp-rust-switch-server`, which is
a wrapper for the two aforementioned functions
2021-03-19 12:54:41 +01:00
duianto
9e4845b913 Hide drag stuff modeline indicator
"drag" appeared in the mode line after
reloading the configuration: SPC f e R

And wrapped the use-package :init in a: progn
2021-03-19 12:51:58 +01: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
winsphinx
8f1b6b1e04 Prefer downloading org-appear from melpa 2021-03-19 09:08:42 +01:00
Boris Sergeev
b71e5fdb17 Enhance shell-default-position validation spec
to match values listed in it's documentation.
2021-03-19 02:34:30 +02:00
duianto
da00174c11 Fix SPC h SPC, void smartparens-mode
Problem:
With the helm layer, `SPC h SPC` shows:
and: Symbol’s value as variable is void: smartparens-mode

Cause:
The `SPC h SPC` helm buffer generates a section called: Toggles
It checks the status of every toggle mode.

But smartparens-mode has the define-minor-mode :init-value nil

Solution:
Check that the two non-global smartparens modes are bound and true:
smartparens-mode
smartparens-strict-mode

Note:
The smartparens global (strict) mode toggles don't need to be checked,
because they enable smartparens-(strict-)mode.
2021-03-18 23:22:21 +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
Ray
8c43115a63 Ensure required arguments of macro spacemacs|define-custom-layout 2021-03-18 19:29:07 +01:00
emacspace
b86c619cb6 Built-in files auto-update: Thu Mar 18 14:37:56 UTC 2021 2021-03-18 18:07:05 +01:00
duianto
4a4557c3c8 [ci] Update built_in_manifest, add frame and zoom packages
Added: frame-cmds, frame-fns and zoom-frm
2021-03-18 15:31:46 +01:00
JAremko
0f2df2727d Validate .spacemacs variables. 2021-03-18 15:47:02 +02:00
Maximilian Wolff
780a96cfac
[org] Fix unsupported fuzzy link in docs 2021-03-16 23:22:43 +01:00
Maximilian Wolff
8f854da649
Make auto-completion activate/deactivate smartparens properly
auto-completion did not respect the smartparens-mode
defined in the dotfile when disabling/restoring it.

In addition when starting a yasnippet expansion
smartparens-mode was not properly restored resulting
in having smartparens always disabled.

This PR tries to fix both issues. Though judging from
the comments this could kill `hippie-expand` expansion.
However as yasnippet is more common I think this is
to be preferred.
2021-03-16 22:21:40 +01:00
Maximilian Wolff
9ff2004706 Avoid special handling of smartparens in lisp layers
emacs-lisp and common-lisp-layer had both their own
logic to work with smartparens including manually
requiring it.

This PR makes them use the standard functions. In
addition it replaces the manual require with proper
autoloading of smartparens.
2021-03-16 18:54:18 +00:00
Maximilian Wolff
cd25405781 Make smartparens toggles activate/deactivate the right modes
The standard toggles were not respecting the smartparens
mode defined in the dotfile. Also the global mode toggle
was only for the non-strict version.

This PR makes sure that they toggle the correct
smartparens version.
2021-03-16 18:32:38 +00:00
Maximilian Wolff
6018580958 Make layers activate/deactivate the right version of smartparens
Before layers were sometimes only activating the non strict
version of smartparens. Also some were only disabling
the non-strict version leaving some of the smartparens
advices intact.

With this PR, all layers set the right version of smartparens.
Also if the layer is trying to disable it a standard function
will now take care to disable all versions of smartparens.
2021-03-16 17:47:15 +00: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
Daniel Nicolai
4bcdc36f0f Add org-wild-notifier to org-layer
This PR should be a better replacement for #14396. See the last comment of that
PR for motivation.
2021-03-15 18:57:58 +00:00
duianto
07f31743e7 [evilified] Visual state text objects, exchange point/mark
In evilified visual state.
- Add the inner: `i` and outer `a` text objects.
- Add `o` to exchange the point and mark
  (jump between the start and end of the region)
2021-03-15 19:56:33 +01:00
duianto
de1425628c Revert "[evilified] Add evilified normal keys: yank, navigate"
This reverts commit 898e509273.

It broke org-agenda:
Evilified normal keys breaks "t" keabinding in agenda
https://github.com/syl20bnr/spacemacs/issues/14484
2021-03-14 12:12:18 +01:00
Magnus Therning
2fec4a49be [haskell] Add a binding to change the target for the session
Using the correct target for the Haskell session is required when working on a
project with more than one target defined in the Cabal file.
2021-03-14 09:48:15 +01:00
winsphinx
fb41915c5b
[org] Add org-appear support (#14482)
* [org] Add org-appear support

* fixes for org-appear support
2021-03-14 09:47:11 +01:00
duianto
480efa0f3d Remove unused package: move-text 2021-03-14 09:45:13 +01: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
Maximilian Wolff
c4ed6b5d0a
[pdf] defer loading of pdf-view-restore 2021-03-14 00:46:14 +01:00
Ivan Yonchovski
32ead25c35 [lsp] Bind SPC p E to helm-lsp-diagnostics
IMHO this should be global binding, the alternative was `SPC e e` because it can
be used everywhere, e. g. from compilation buffer to find the error causing the
build breakage.
2021-03-14 00:42:56 +01:00
Daniel Nicolai
c7044145ff Add pdf-view-restore to pdf layer
pdf-view-restore implements a solution for pdf-tools to remember and open at the
last viewed page of a document
2021-03-14 00:40:03 +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
898e509273 [evilified] Add evilified normal keys: yank, navigate
evilified normal state is missing some useful keys:
y (evil-yank) and the common navigation keys:
f, F, t, T, w, W, b, B, $, ^

They are available in evilified visual state,
but it's useful to be able to copy text
without having to enter visual state first.

Adding `y` (`evil-yank`), makes the inner (`i`) and outer (`a`),
text objects available in evilified normal state.

This also adds the text objects to evilified visual state.
2021-03-14 00:32:34 +01:00
duianto
94585331ce Replace move-text with drag-stuff
Just like: https://github.com/emacsfodder/move-text

https://github.com/rejeep/drag-stuff.el
also drags one or more (region) lines up or down.

But it also allows for dragging left and right (across end of lines):
- a word: changing place with the next or previous word.
- a region: moving it one character at a time to the left or right.

Added a new key binding: `SPC x .`
that opens the:
```
Drag Stuff Transient State
[k/K] up    [h/H] left   [q] quit
[j/J] down  [l/L] right
```

The `move-text` package isn't removed, even though it isn't used anymore in
Spacemacs.

Because the `evil-unimpaired` elpa directory is generated from the local
Spacemacs `evil-unimpaired.el` file.
https://github.com/syl20bnr/spacemacs/blob/develop/layers/%2Bspacemacs/spacemacs-evil/local/evil-unimpaired/evil-unimpaired.el

Therefore the `evil-unimpaired` key bindings `[e` and `]e` still call the
`move-text` commands.

Until the `evil-unimpaired` elpa directory has been removed and regenerated by
restarting Spacemacs.

Then they will call the new `drag-stuff` commands.

I don't know if/when the `move-text` package can be removed in the future.
2021-03-14 00:29:46 +01:00
Ag Ibragimov
589c16b73a
git: adds orgit-forge so org links can be stored from forge topics (#14450)
* git: adds orgit-forge so org links can be stored from forge topics

* PR feedback

Suggested-by: Lucius Hu <lebensterben@users.noreply.github.com>
2021-03-14 00:26:38 +01:00
Chris
9b9043bc5c
update cask install instructions in README (#14452)
* use 'brew install --cask'

the latest versions of homebrew use the syntax 'brew install --cask' instead of 'brew cask install'

* Update README.md
2021-03-14 00:16:16 +01:00
Ilya Grigoriev
b5e32b42c0 FAQ on including _ in words for * searches
This expands the entry on including underscores and dashes in word motions to discuss `*` and `#` searches. There is a new solution for them is different, and simpler, than the solution for the other motions (but it is difficult to find).

For me, personally, this obviates the necessity of messing with the syntax definitions.

Some related issues: https://github.com/syl20bnr/spacemacs/issues/9740, 
https://github.com/syl20bnr/spacemacs/pull/1248, 
https://github.com/syl20bnr/spacemacs/issues/1261.

Many thanks to lyro@ for fixing https://github.com/emacs-evil/evil/issues/360.
2021-03-14 00:15:24 +01:00
Peixian Wang
34aeca5f98 Add note on which jar to use
Build system for https://github.com/prominic/groovy-language-server generates two different jars, this adds a note on which jar to use.
2021-03-14 00:11:26 +01:00
Ben Swift
b2d89fdc3f [ess] add keybinding for ess-quit 2021-03-14 00:07:57 +01:00
duianto
15decbc67d [evilified] Restore evil-surround
Enable `evil-surround-mode` when exiting evilified state.
If `evil-surround-mode` was enabled.

Currently it only disables `evil-surround-mode`.

This was discovered while exiting `edebug-mode`.

This also removes the unused variable:
`evilified-state--evil-surround`

It might have been intended for this purpose.

Otherwise it can be added back when
a use case for it is introduced.
2021-03-14 00:05:40 +01:00
Kjartan Óli Ágústsson
151d4db884
Add keybindings for org-roam-alias-add (#14480)
* Add keybindings for org-roam-alias-add.

* Fix typo.

Remove unintended t from org-roam-alias-add binding
2021-03-13 23:45:55 +01:00
Corentin
4409d39bec Fixes error if parsing ipython dev version 2021-03-13 23:40:53 +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
duianto
f853124578 Improve editing-style toggles
problem:
The toggle editing style prefix: SPC t E
always shows the same names:
e -> emacs (holy-mode)
h -> hybrid (hybrid-mode)

This causes some confusion about how to
switch to the vim (evil-mode) editing style,
from emacs or hybrid state.

solution:
Show which editing styles one will switch to:

In evil-mode:
e -> emacs (holy-mode)
h -> hybrid (hybrid-mode)

In holy-mode:
e -> vim (evil-mode)
h -> hybrid (hybrid-mode)

In hybrid-mode:
e -> emacs (holy-mode)
h -> vim (evil-mode)
2021-03-13 23:10:24 +01:00
duianto
d424c8d1d1 Bind frame keys using spacemacs|spacebind
This names the SPC F which-key entry.
before: +prefix
after: Frames

And adds "..." to the end of the descriptions,
for the keys that require additional user interactions.
2021-03-13 23:02:40 +01:00
duianto
b7cbcb5ed5 [parinfer] Fix: Wrong number of arguments: setq, 5
cause:
The spacemacs|add-toggle expression,
ended up in the combined setq above.

additional changes:
Separated the combined setqs, to make it
easier see where each assignment starts.

Wrapped the lines at 80 chars to reduce
the need to scroll horizontally.
2021-03-08 10:31:43 +01:00
Maximilian Wolff
de55a45dbd
[parinfer] Switch implementation to parinfer-rust-mode
as parinfer-mode is officially unmaintained now.
2021-03-07 23:09:22 +01:00
duianto
b24fccdbff Update call to purpose-x-magit-multi-on
The upstream fix:
Fix #178: x-magit: don't override backup variable on double activation by bmag https://github.com/bmag/emacs-purpose/pull/179

Made it possible to just call: purpose-x-magit-multi-on
2021-03-04 20:37:11 +01:00
duianto
91f92d82fe Fix purpose and magit: max-lisp-eval-depth
problem:
trying to open a magit buffer after
reloading the configuration: `SPC f e R`

shows the message:
>Lisp nesting exceeds ‘max-lisp-eval-depth’

cause:
purpose-x-magit-multi-on can't be called twice,
without turning it off first: purpose-x-magit-off

Spacemacs, purpose-x-magit-multi-on, Lisp nesting exceeds ‘max-lisp-eval-depth’
https://github.com/bmag/emacs-purpose/issues/178

solution:
in this case we'll only call: purpose-x-magit-multi-on
once per Emacs session.

notes:
this also removes the call to: with-eval-after-load 'magit
because it's handled upstream:
c85dd3c9f7/window-purpose-x.el (L243)
2021-03-04 11:38:48 +01:00
syl20bnr
0a0d623c19 [autohotkey] Enable auto-completion 2021-03-03 22:38:58 -05:00
syl20bnr
a8aa24af45 [autohotkey] Work-around for prog-mode-hook 2021-03-03 22:38:19 -05:00
duianto
6d8101c20e Fix void string-edit-mode
problem:
Trying to describe a key: `C-h k` `j`
shows:
Symbol’s value as variable is void: string-edit-mode

solution
Don't defer the string-edit package.
2021-03-02 11:47:28 +01:00
Daniel Nicolai
721765dccb Update eaf-layer
Emacs-application-framework is actively developed. This PR updates/fixes a small
issue with dark mode toggling due to upstream development. Having three
different keybindings for toggling dark mode is not ideal. But it is at least
working for now. I have no time to closely follow the upstream developments, but
I quickly checked for major changes. This layer still seems to work fine, and
the modifications in this layer (to make EAF behave spacemacsey) are still
relevant.
2021-02-28 22:23:02 +01:00