As mentioned in https://github.com/syl20bnr/spacemacs/issues/10779#issuecomment-427712967,
emacs 26.1 changed the default behavior for term-char-mode to prevent cursor
movement. This change restores consistent behavior on all versions of emacs and
allows normal-mode motions to work again.
Note that the buffer is still read-only while in normal-mode, so operators that
change the line (such as `C`, `D`, `S`) still don't work.
Fixes#10956Fixes#10779
add an internal variable for `lsp` layer `lsp-layer--active-mode-list`
to keep track of active major modes using lsp,
`spacemacs//lsp-declare-prefixes-for-mode` will check this variable
to decide whether to add prefix to which-key or not
Currently, when a terminal is ended, its window is also closed. This behavior is
not satisfying to all. Thus a layer variable is added to give an option whether
to close window with terminal.
- dap-debug-edit-template is very important for some of the debug adapters so it
is important to have a keybinding for it to improve the discoverability
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.
c-c++-lsp-initialization-options:
-> ccls-initialization-options
-> cquery-extra-init-params (cacheFormat set to "msgpack" by default)
c-c++-lsp-args:
-> ccls-args
-> cquery-extra-args
c-c++-lsp-cache-dir:
-> ccls: Appended to initialization-options
-> cquery-cache-dir
<<Amendment 1 21/12/18>>
Removing 'clangd' from list of lsp clients to squash per-file prompt for
language client.
Updated lsp/packages.el to reflect upstream lsp-mode function name changes.
Python layer -- added if guards to prevent anaconda package loading / keyboard
shortcut config when lsp backend selected.
Replaced opt-in use of `spacemacs/lsp-bind-keys-for-mode` function with
keybindings for the lsp minor mode, which should be enabled for all derived
layers.
<<Amendment 1 26/11/2018>>
Added call to (spacemacs//setup-lsp-jump-handler) to lsp-after-open-hook
<<Amendment 2 04/12/2018>>
Migrated to new lsp-mode package API.
Updated c-c++ layer accordingly.
<<Amendment 3 05/12/2018>>
Incorporated PR feedback / corrections from gessen
<<Amendment 4 05/12/2018>>
Incorporated further feedback / corrections from gessen
- I had some issues related to finding the corresponding shortcuts for each of
the commands and I am looking for suggestions for improvements.
- updated the lsp-java readme since the server installation is now automatic. If
you already have jdt server installation, please run lsp-java-update-server
which will download the related dap-mode related stuff.
- Make sure that you have latest melpa versions of lsp-java, lsp-ui and dap-mode
since several issues related to the java integration were fixed lately.
- dap-mode is pretty young package and it is not extensively tested
- dap-hydra which will be used as a transient state for the breakpoints and
debugging, in general, is not synched with the shortcuts in the layer. I will sync
them once there is agreement on the shortcuts configuration. Also, I have not
updated lsp-java README.org with the corresponding shortcuts for the same
reason.
- The debug integration with the python lsp layer will be implemented in
separate PR.
- There will be few more functions that are going to be added to the dap-mode at
some point and they would require shortcuts too:
* suspend/kill thread I guess - "m d t s" "m d t k"?
* watches - "m d l w"
* exception breakpoints - I have to figure out how it will look like on emacs
side.
* goto point "m d H"?