Commit graph

11274 commits

Author SHA1 Message Date
Daniel Nicolai ad4ee80e56 Add convenient scroll keybindings to epub layer
Similar to the keybindings added to the info layer in PR #14188, I here propose to add the same
keybindings to the epub layer. These J/K keybindings are currently undefined in the epub
layer. These keybindings are used in the Zathura document reader, they are very
convenient and I guess they feel very natural and are preferred over d/u by most people.
2020-12-18 23:40:58 +01:00
Maximilian Wolff 9d7090cee3
[clojure] Add instructions to disable lsp server support
Standard LSP support auto-activates the server
if LSP layer is loaded. I have now added instructions
to explicitly disable this behaviour if someone wants
to work in LSP in one layer but only with CIDER in
clojure.
2020-12-18 23:35:40 +01: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
Hong Xu 47d02ba970 Use transient and set dired-quick-sort-suppress-setup-warning to 'message
Related to #14156
2020-12-16 19:14:12 +01:00
Ray 0f21303cad
Use valign to align tables in spacemacs-org layer (#14196)
* Use valign package in org-mode to align tables

* update CHANGELOG.develop
2020-12-13 22:08:36 +01:00
Maximilian Wolff f4ee26ce33 [dap] Set bindings after setting prefixes 2020-12-13 21:07:07 +00:00
Daniel Nicolai c595640a34 In navigation layer, Bind J/K to scroll up/down in Info-mode
Spacemacs lacks a keybinding alternative to the most natural way of scrolling
Info pages (i.e. SPC) in vanilla emacs.
Anyway, this commit adds J/K to scroll most naturally through info pages.
Currently, in Info-mode, a keybinding for J is not defined while K is bound to
evil-lookup.

Issue #2828 already adresses the inconsistent experience, and in my opinion this
can and should be improved as navigating Info pages is a very crucial part of
using Emacs.

Personally I have bound J/K to scroll page up/down in buffers/pdf/djvu/doc-view,
which I inherited from using the zathura pdf reader, and I think this is a better
default than the default vim alternatives.
2020-12-13 21:58:24 +01:00
emacspace 35b8e063de documentation formatting: Sun Dec 13 10:32:28 UTC 2020 2020-12-13 21:56:49 +01:00
Keith Pinson e7c9eda3fb [markdown] fix: mmm clobbering comment-start in Markdown Git commit
Fixes #14195.
2020-12-13 10:26:56 +00:00
Maximilian Wolff 1be72042e1 [ivy] Add doc for new C-SPC binding 2020-12-13 09:52:43 +00:00
Thanh Vuong 49a4fa072d [ivy] improve key bindings
bind c-spc to  ivy-call-and-recenter
this is the closest thing to helm follow mode in ivy world

unbin `g` key and map `U` for
for ivy-occur-mode-map and ivy-occur-grep-mode-map
2020-12-13 10:36:37 +01:00
Lucius Hu 2d1d338f46
LaTeX: improved i18n support and documentation (#14204)
* LaTeX: improved i18n support and documentation

- Added a new layer config variable `latex-build-engine`, a thin wrapper of
  `TeX-engine`:
  - For better support of non-european character set rendering, `xetex` is
    chosen when it's found on PATH, and when eithe `chinese` or `japanese`
    layer is enabled
- Added a new layer config variable `latex-enable-preview`:
  - When non-nil, `auto-revert-mode` is added to `doc-view-mode-hook`
  - Previously this is described in documentation but requires users to set it
    manually
- Documentation:
  - Added a section that lists are layer config variables
  - Improved all documentation examples, s.t. they are valid elisp forms to be
    evaluated directly
  - Improved the section on backend:
    - Emphsized that LSP layer is always preferred
    - Provided information on installing the language server
  - Added the default value for layer config variable, `latex-nofil-env`

* minor edits

- Updated CHANGELOG.develop
- Renamed `latex-enable-preview` to `latex-refresh-preview`
- Replaced a fuzzy intra-link in documentation with a proper link

Co-authored-by: Lucius Hu <lebensterben@users.noreply.github.com>
2020-12-13 10:33:04 +01: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
Maximilian Wolff bdcf359c2f
Make unicode-font README state the changed default settings 2020-12-08 19:56:03 +01:00
Ade Attwood ddee194ee7 Update ligature to disable some chars and only enable in prog-mode
When ligatures are enabled globally emacs gets pined at 100% CPU. In #13967
there were some ligatures that were highlighted but enabling this only in
prog-mode so emacs dose not get pined at 100% when just enabling with
(unicode-fonts-enable-ligatures t). In #14178 it was highlighted that "\\" had
an issue in the `init.el` so this has been removed

- "//" Issues with doom mode line
- ".." "..." Issues with helm find file
- "--" Issues with magit
2020-12-08 19:46:40 +01:00
niontrix d467fccef3 Fix fsharp-mode auto-completion unreliable
The eglot configuration for automatically starting a server instance when
opening a file is incorrect and thus tries to start the server twice which leads
to more problems down the line. Also the company-backend is not properly setup
so auto-completion does not work reliably when using lsp or eglot.
2020-12-08 19:39:12 +01:00
duianto 62979df319 [git] Fix g magit-refresh for hybrid without evil navigation
This fixes g (magit-refresh), in the hybrid editing style when the variable:
hybrid-style-enable-evilified-state
is: nil

Thanks marienz for reporting the issue and for suggesting to check if the
editing style supports evil navigation.
https://github.com/syl20bnr/spacemacs/issues/14181#issuecomment-739251438
2020-12-06 16:44:49 +01:00
JAremko a915c95226 Disable broken spacelpa tests
So we can have gree PR page for once..
2020-12-06 07:02:04 +02: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
duianto 9c2a208b51 [git] Fix g for magit-refresh with emacs editing style
Fixes: <g> no longer works in Magit status screen #14181
2020-12-01 13:19:20 +01:00
duianto 6f830c149e Fix evil-easymotion in hybrid state 2020-12-01 09:25:34 +01:00
emacspace c629534013 documentation formatting: Sat Nov 28 07:45:27 UTC 2020 2020-11-28 08:52:04 +01:00
Maximilian Wolff d69d2284f7 Fix undefined var during loading of magit 2020-11-28 07:41:05 +00:00
Robert O'Connor 43ba398450 Add evil-easymotion to the features in the README 2020-11-28 07:44:03 +01:00
emacspace 6ce1dc88fc documentation formatting: Fri Nov 27 19:18:09 UTC 2020 2020-11-27 23:02:42 +01:00
Maximilian Wolff be908875cb
Change newly added which-key bindings to use keymap api
The newly added bindings had side effects for
magit. This was caused by which-keys replacement
working on bindings which are identical between
various modes.

To fix this I have changed the api to use the newly
added keymap based replacements which avoid these
issues.

As a side effect they are a ton faster as which
key does not have to compare all available bindings
everytime it opens its help window.

I have also fixed some more missing which-key
description in magit status buffer.
2020-11-27 22:46:56 +01:00
Maximilian Wolff cb9c5c976c
[core] Add missing which-key description for evil-mc
evil-mc puts its bindings behind `gr` but misses
to define a proper which key prefix.
2020-11-27 20:18:32 +01:00
Maximilian Wolff 75248c0b26
[core] Integrate evil-motion layer into the core
In addition add more descriptive texts
for which-keys.
2020-11-27 20:02:44 +01:00
Thanh Vuong 95bafa9693
[vim][new layer] add evil-easymotion layer
layer evil-easymotion for https://github.com/PythonNut/evil-easymotion
bind prefix to `gs`

copy pasta from Doom project https://github.com/hlissner/doom-emacs
2020-11-27 19:23:00 +01:00
Keshav Kini ca7e66ba98 Revert helm-ag/helm-grep binding of RET to default
Currently 'helm-ag-mode-jump-other-window is bound both to RET and to C-o (its
original default binding), while 'helm-ag-mode-jump isn't bound at all (its
original default binding is RET).  This commit removes our customization so that
both 'helm-ag-mode-jump-other-window and 'helm-ag-mode-jump have bindings in the
mode.

The same change is also made for the analogous helm-grep functions, for the same
reason.
2020-11-27 19:19:36 +01:00
Hong Xu 133a7b9280 Add dired-quick-sort layer
This layer helps quickly sorting Dired buffers in various ways, such as
time, size, etc.
I think the underlying package is useful and worth a place in spacemacs.
It has also been promoted by Pragmatic Emacs before (albeit long time
ago): http://pragmaticemacs.com/emacs/speedy-sorting-in-dired-with-dired-quick-sort/

Disclaimer: I'm the author of dired-quick-sort package
2020-11-27 19:11:34 +01:00
Thanh Vuong 4b3ab4052a [tide] fix regression caused by e3b6464649
fix jump handler
2020-11-25 09:17:27 +01:00
emacspace c483818d7e documentation formatting: Sun Nov 22 08:56:33 UTC 2020 2020-11-24 22:22:17 +01:00
John Practicalli Stevenson f9123b1cc5 [clojure] add namespace eval and reload key bindings
Add key binding to evaluate the current namespace form (very useful when
starting CIDER as it loads in clojure.core to enable the cider-clojure-docs
functions to work)

Add keybinding to reload all namespaces into the REPL process

Adjusted key bindings to be lower case under `en` sub-menu.
2020-11-24 21:46:23 +01:00
duianto d9b4b2dc61 [react] Set layer keymaps: javascript as parent to react
Declared key binding prefixes.
And updated the react layer documentation:
- Mentioned the additional key bindings in the javascript layer
- Added a link to the javascript layer
2020-11-24 21:45:16 +01:00
Maximilian Wolff 6d39cd5548
[clojure] Add lsp server support 2020-11-24 21:35:31 +01:00
Maximilian Wolff 77d84b14e0
[graphql] Remove invalid layers tag
Tags must be included in https://github.com/syl20bnr/spacemacs/blob/develop/.ci/spacedoc-cfg.edn#L54
if they are not they break the doc generation. Therefore I have changed this.
2020-11-22 09:53:58 +01: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
John Practicalli Stevenson d929079f28 [clojure] add cider-inspect key bindings
Add cider inspect key bindings missing from Spacemacs
2020-11-21 07:26: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
duianto 8128774090 Handle buffer move/select/swap to last win nr +1 in all frames 2020-11-19 12:36:07 +01:00
Daniel Nicolai 28a4baeea4 Add instructions to open emacs-lisp layer README
in response to issue #14102
2020-11-16 23:41:02 +01:00
Maximilian Wolff 2298d8c141
Move remaining forge functions from github to git layer 2020-11-16 23:36:59 +01:00
Fabián Heredia Montiel b2cb7017e0
Move forge form github to git layer
Supports:
- Github (Both .com and enterprise on premises)
- Gitlab (Both .com and self-hosting)
- gogs / gitea
2020-11-16 23:36:59 +01:00
Rodolfo Hansen 02ff6cd4db
[dhall] Add lsp support (#14139)
* Make showing the treeview in scala a config parameter
* Add dhall lsp server integration
2020-11-16 23:20:10 +01:00