Make adapter selection available through the `c-c++-dap-adapters` layer variable
and select the known-good Microsoft C/C++ Extension as a sane default.
According to its website, the Ensime project has been shut down since 2019. We
have been supporting both Ensime and Metals for [a year and a
half](https://github.com/syl20bnr/spacemacs/pull/12234#issuecomment-524916394).
Ensime's GitHub repositories, including its Emacs integration, are archived.
Meanwhile, Metals has been developed actively, regularly releasing new versions.
It has stabilized significantly, and supports an increasingly full set of
features. Scala 3 is just around the corner, and the community is poised to make
the transition smoothly and relatively quickly. Metals supports it already,
whereas of course Ensime does not and never will. In fact, Scala 2 has had
several import minor versions released since Ensime died. Now that it's 2021,
it's time to cut the baggage we are carrying around for Ensime.
This feels like the natural place to put it, though we could also extend this
with other values in the future. I defaulted this behavior to off in order to
not impact folks' current setup.
Classic completions now use company-math if available
however if this fails it should fall back to the
original system to avoid issues with existing
configs.
Combining company-math and company-auctex
Updating documentation and make math-symbol-lists requiring company-math
Back to original readme
math-symbol-lists is used elsewhere and should not be made dependent on the use of company-math
using the result of company-auctex-macros
Add explicit dependency of company-amth to math-symbol-lists
* First working pass
- Runs prettier on save when in ruby-mode.
- Adds `node_modules/.bin/` to local `exec-path`
- This means project-local `prettier` executables are preferred
* Making ruby layer prettier formatting configurable
- Adds a variable to control whether prettier is used to format-on-save.
- Documents use, configuration, and keybindings in the README
* Add to CHANGELOG.develop
* Delete spurious comment
* Use prettier as a dependency only when config variable is present
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.
* 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>
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.
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.
* [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
It builds around graphql-mode
- Syntax highlight and graphql calls with graphql-mode
- Autocomplete with comapy-dabbrev
- Format buffer with prettier
- Go to definition with ahs
* Bind typescript-format to "==" or "=" depending on backend
This fixes a problem when using 'lsp backend: the lsp layer binds its own
formatting functions under "=" as a prefix. The spacemacs/typescript-format
function which the typescript layer defines has advantages over these, mainly
it respects the typescript-fmt-tool variable (uses the formatting tool that
theuser specified).
This patch solves this by keybinding leader+"==" to the function when
typescript-backend is set to 'lsp and binding to leader+"=" in any other case.
* Fix an accidentally deleted keybinding in table in documentation
* use getter for backend variable
Co-authored-by: nanashi0x74 <rian.lindenberger@mpq.se>