Commit graph

338 commits

Author SHA1 Message Date
duianto f4999e8242 Restore evil-visual-state-map on edebug exit
problem:
Exiting edebug-mode, leaves the evil-visual-state-map
with only the two key bindings that are defined in:
evilified-state--setup-visual-state-keymap
y       evil-yank
escape  evil-exit-visual-state

solution:
Restore the evil-visual-state-map when exiting edebug-mode.

Added an alias for the new exit function:
evilified-state--evilified-state-on-exit

called: evil-evilified-state-exit
the opposite of: evil-evilified-state
2021-02-20 07:49:43 +01:00
duianto b93bdbd4ad Handle when evil-set-undo-system is missing
problem:
updating Spacemacs without updating the evil package,
breaks Spacemacs on startup:
Symbol's function definition is void: evil-set-undo-system

solution:
make sure that evil-set-undo-system is bound.
2021-02-13 12:01:31 +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
Thanh Vuong a6d364e0f2 [spacemacs-evil] add evil-collection
It is impossible to ignore `evil-collection` anymore. `evil-magit` has been
deprecated recently and moved to `evil-collection`.

It will save time and effort for both Spacemacs and Evil to share and contribute
to `evil-collection` imo.

However I strongly prefer Spacemacs binding scheme over evil-collection's one.
We should only pick what we need from `evil-collection`.

This PR add mechanism to embrace `evil-collection` and apply it to shell layer (`vterm`)
and git layer.
2021-01-30 01:11:07 +00:00
Daniel Nicolai c23a190a72 Add toggles for specific persistent which-key keymaps
Sometimes it is handy to show keymaps persistently with which-key. For example,
to show navigation commands in Info-mode, gnus, eww etc. This PR implements
handy toggles and documentation for that.
2021-01-10 20:32:04 +01:00
duianto f62934620d [base] Fix evil undo
problem:
Pressing: u
in the spacemacs-base distribution, shows:
evil-undo: Symbol’s function definition is void: undo-tree-undo

cause:
The evil undo system is setup as: undo-tree
but undo-tree is loaded in the spacemacs-editing layer,
and the layer isn't used by default in the spacemacs-base distribution.

solution:
Set the evil undo system to undo-tree when the undo-tree package is used.

Now if undo-tree isn't setup, then:
- u   uses the default Emacs undo command.
- C-r says: Customize ‘evil-undo-system’ for redo functionality.
2020-12-30 20:46:20 +01:00
Keith Pinson af078784b8
[core] add z$ as Evil keybinding for set-selective-display (#14146)
* [core] add z$ as Evil keybinding for set-selective-display

This is a feature whose equivalent I had looked for previously and not found. I
bumped into it in [this excellent
article](https://karthinks.com/software/batteries-included-with-emacs/) which is
a survey of "batteries included" parts of Emacs. He mentions Spacemacs (in a
positive light) in the article, but the article is a lot about what you can do
_without_ distributions like Spacemacs, Doom, or Prelude. As such, this seems
like an opportunity to make Spacemacs even better---i.e. by making these
relatively unknown batteries that are already present in Emacs more discoverable
in Spacemacs.

I put it in the folding menu `z` because that fits its usecase. I used `$`
because:
* the out-of-the-box Emacs keybindings is `C-x $`.
* the menu is already fairly saturated
* I didn't know what else to base the mnemonic on because
  * I'm not aware of a Vim equivalent
  * The name of the Emacs function itself is nondescriptive of its behavior

I couldn't find any keybinding documentation table to add it to. Please let me
know if I missed something.

* [core] DWIM in z$ as suggested by @lebensterben
2020-11-21 07:25:22 +01:00
nanashi0x74 76849892e1 Fix three typos in various files
This commit fixes typos in doc/layers.org and the readme.org files of bootstrap and
java layers.
2020-10-19 11:48:51 +02:00
khjcph dad4406f70 Only set undo system if fun. exists.
The PR fixes an issue where spacemacs is in a bad state after upgrading. I
suppose what happens is that `evil-set-undo-system` is invoked before `evil` is necessarily the correct version.
2020-10-14 18:44:40 +02:00
duianto e096d6dd1e Set evil-undo-system to undo-tree 2020-10-10 21:55:06 +02:00
Robert O'Connor 9ada738efd update copyright year to 2020 2020-10-05 20:48:10 +02:00
Robert O'Connor 82ba73a1c0
update copyright to 2020 2020-09-23 21:25:01 +02:00
duianto 1e677bb532 Revert "[spacemacs-bootstrap] Fix mode-line evil state foreground"
This reverts commit 4562da2b56.

Revert reason:
emacsclient broken on develop branch by commit 4562da2b5
https://github.com/syl20bnr/spacemacs/issues/13766
2020-07-13 22:20:37 +02:00
duianto 4562da2b56 [spacemacs-bootstrap] Fix mode-line evil state foreground
The evil state foreground color on the mode-line was set to
the mode-line background color.

This caused problems with some themes.
[FEATURE REQUEST] Darker option for mode-line color codes #13731

Solution:
Set the evil state foreground color to the darker of the
mode-line face foreground or background colors.
2020-07-12 20:53:51 +02:00
JAremko 6145a566e8 Remove docker distribution
This days there are better ways.
2020-06-25 14:30:55 +03:00
duianto 78b45b4167 Fix typo in holy-mode latin function name
Noticed by phoe:
Typos in holy-mode.el · Issue #13576
https://github.com/syl20bnr/spacemacs/issues/13576
2020-06-18 13:02:06 +02:00
Steve Lorimer 464fed8757 [which-key] fixup for change to help text for "buffer-to-window-N" so which-key-replacement-alist works again 2020-06-11 00:52:08 +02:00
syl20bnr ab3511cfb5 [which-key] Improve readibility
* add column padding
* group prefixes together
* display a minimum of 6 lines
2020-03-05 21:04:51 -05:00
syl20bnr 9685095454 Use spacebind for keybaord macro key bindings 2020-03-05 21:04:51 -05:00
JAremko 0753287864 rename spacebind -> spacemacs|spacebind
Also fix stuff.
2020-03-05 12:21:01 +02:00
jaremko b83521edbb Add spacebind macro and tests for it 2020-02-27 21:48:40 -05:00
syl20bnr 978be09f6b [base] Refactor keyboard macro key bindings 2020-02-23 09:42:20 -05:00
Muneeb Shaikh 0ab1e45fe4 [evilified-state] Map C-w to evil-window-map
Fix https://github.com/syl20bnr/spacemacs/issues/13197

Motivation: https://github.com/syl20bnr/spacemacs/issues/13197#issuecomment-577051372
2020-01-22 09:36:19 +01:00
madand 37fdd1ef87 Toggleable hint for the Scrolling Transient State (~SPC N~)
By default the full hint is shown, which is consistent with the behavior before
this commit.
2019-12-25 08:20:50 +01:00
kimr da80634370
converted cl to cl-lib 2019-12-14 20:20:51 +00:00
Brian Wignall 4df6c9035f
Fix typos 2019-12-05 22:23:04 +01:00
duianto 9e184994ad Hide spacemacs// command prefixes in which-key
spacemacs/ was already hidden, but commands starting with
spacemacs// showed a leading slash: /<command name>
2019-11-24 22:14:02 +01:00
Miciah Masters 97ba556142 Various documentation copy-edits
Follow up the changes in the previous commit with some minor improvements
to formatting, grammar, spelling, and wording.

* layers/+distributions/spacemacs-docker/README.org: Replace "+" with
"and".
* layers/+email/mu4e/README.org: Use full sentences in the comments in the
mu4e-alert example.
* layers/+intl/japanese/README.org: Use verbatim markers for names of
files, functions, packages, and variables.  Capitalize "Linux".
* layers/+os/osx/README.org: Capitalize "Emacs", "Vim", and "Evil".
* layers/+os/osx/config.el (osx-command-as, osx-use-dictionary-app):
* layers/+os/osx/keybindings.el (spacemacs/system-is-mac): Improve
docstrings.
* layers/+readers/dash/README.org: Capitalize "API", "Helm", and "Ivy".
* layers/+spacemacs/spacemacs-defaults/config.el
(delete-by-moving-to-trash): Use full sentences in comment.
* layers/+spacemacs/spacemacs-defaults/funcs.el
(spacemacs/toggle-frame-fullscreen-non-native): Improve docstrings.
2019-10-13 12:04:59 +02: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
madand 89b006b432 Fix hybrid-mode error when dumping (fixes #11923) 2019-09-13 23:25:21 +02:00
syl20bnr 08dc9567b8 [dump] Delay holy and hybrid config after dump is loaded 2019-07-26 22:46:08 -04:00
duianto b9e61e6437 Add transient state keys _, j, k
Thanks sdwolfz for the suggestion to add underscore to the transient states,
then the shift key doesn't have to be released if it was held down to press `+`.

Added key bindings:
Evil numbers:
`SPC n _` decrease number under point
in the transient state:
`j` decrease number under point
`k` increase number under point

`SPC T T _` decrease transparency
`SPC z x _` scale down font
`SPC z f _` zoom out frame

Update documentation:
Zoom frame:
`q` quit transient state

Evil numbers:
`SPC n =` increase number under point
`SPC n _` decrease number under point
`0..9` add a number prefix argument
`q` quit transient state

Fixed a typo and made a small rewrite of the tip about using a prefix argument.

Added keys to transient states:
Font scaling:
Added `_` scale down
Reordered `k` assignment to match the order in the transient state

Frame transparency:
Added `_` decrease
Reordered `k` assignment to match the order in the transient state

Evil numbers:
Added `k` increase
Added `_` and `j` decrease

Zoom frame:
Added `_` zoom frame out
Reordered `k` assignment to match the order in the transient state

Which-key entries for Evil numbers `SPC n`:
Group together keys that call the same command:
From: + and =
To:   +,=

From: - and _
To:   -,_
2019-07-14 22:56:57 +02:00
duianto 9aaef2a22b Update Scrolling Transient State
Added new key bindings:
- In the Buffer column:
Added "g" and "G":
[</g] beg
[>/G] end
- In a new Other column:
[q] quit

Reordered the columns:
From: Large to small: buffer, full page, half page, line/column
To: Small to large: line/column, half page, full page, buffer

Reason: The most used (first listed) bindings are probably not scroll to the
"beginning" or "end" of the buffer.

Rearranged the half page columns two instances of "down/up" to one "down" and
one "up".

Reduced the TS width:
- Separated the line/column and full page keys to one "down" and one "up", and
the buffer keys to one "beginning" and one "end".
- Renamed "beginning" to "beg".

Reordered the key bindings (TS) logically: "up" above "down".

Reordered the key bindings (code):
Arranged them in the same order as the columns in the TS.
2019-06-13 00:49:43 +02:00
duianto 3868a5364f [doc] Fix typos and add missing/remove extra ~
Add missing ~ (tilde) around key bindings.
Remove an extra ~.
2019-06-01 20:40:22 +02:00
emacspace 2aa62bb5ed documentation formatting: Tue May 28 14:41:10 UTC 2019 2019-05-28 17:43:54 +03:00
JAremko ce4e6e355f tag docs 2019-05-28 17:35:49 +03:00
JAremko e89f6f8537 fix html installer (docker dist) 2019-05-28 17:35:49 +03:00
emacspace c7c348a676 documentation formatting: Sun May 26 20:58:52 UTC 2019 2019-05-27 01:23:35 +03:00
JAremko 4da94bc4ca Use single dockerfile
At the moment of this commit
the images haven't been updated yet
2019-05-20 15:25:00 +03:00
Dominik Schrempf 15d8a03e5b `spacemacs-theme'; no overrides.
Do not override customizable settings from `spacemacs-theme', since those should
be set on a per user basis in the configuration file.
2019-05-16 00:00:31 +02:00
Anton-Latukha f6660f82d4
Switch to the new layers generator 2019-05-15 21:08:21 +03:00
JAremko 77c680160e Add placeholder tags 2019-05-05 20:40:47 +03:00
JAremko 5d02b1c4bb Add more tags 2019-05-03 03:44:19 +03:00
emacspace 202da65b1c documentation formatting: Sun Apr 21 20:04:25 UTC 2019 2019-04-22 23:16:20 +02:00
JAremko 23842fa77e Simplify descriptions of layers 2019-04-21 22:09:34 +03:00
Scott Moynes 5510749ea2 Fix typo in holy-mode 2019-04-18 23:29:48 +02:00
duianto 3de7081950 Cleanup which-key names
Moved:
- ("ai" "irc") to both the `erc` and `rcirc` layers. They don't have to be
  renamed until the layers are loaded.

- ("ay" "ipython notebook") to the `ipython-notebook` layer.

- ("p$" "projects/shell")
  ("'"  "open shell")
  ("as" "shells")
  to the `shell` layer.

- The commands with keybindings from spacemacs-bootstrap/packages.el to
  spacemacs-defaults/keybindings.el.

Removed:
- ("gd" "diff") it seems to be an old group name, there's no `SPC g d` group at
  the moment.

- ("Re" "elisp") and ("Rp" "pcre") because they have moved to:
  ("xr" "regular expressions")
  ("xre" "elisp")
  ("xrp" "pcre")

- ("xm" "move") seems to be an old move text group, the current keybindings are
  `SPC x J` and `SPC x K` which opens the Move Text Transient State.

- ("b" "persp-buffers") because `SPC b` is also renamed as ("b" "buffers") which
  is more general and not persp-mode specific.
2019-02-18 14:35:00 -05:00
syl20bnr 3dd753945f bootstrap: refactore which key replacement list
And enable multiple replacements.
2019-02-10 10:11:38 -05:00
syl20bnr 66f7b9dda1 Fix undefined function spacemacs-docker//load-env when SPC f e R 2019-02-09 17:31:27 -05:00